Skip to content

Commit 3f2dba4

Browse files
authored
Merge pull request #170 from bvssvni/master
Added adaptive sub-tiling
2 parents 46cbaf0 + 8ed6641 commit 3f2dba4

File tree

2 files changed

+412
-6
lines changed

2 files changed

+412
-6
lines changed

process3d/src/lib.rs

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,13 @@ mod tests {
148148
assert_eq!(b.1, 0xff);
149149
}
150150

151+
#[test]
152+
fn test_tile_size() {
153+
use crate::tile::tile_size;
154+
155+
assert_eq!(tile_size([10, 10], [0, 0], 1), [0.2, 0.2]);
156+
}
157+
151158
#[test]
152159
fn test_ray_triangle_chunk_hit_all_update() {
153160
use crate::ray::ray_triangle_chunk_hit_all_update;
@@ -699,4 +706,25 @@ mod tests {
699706
assert_eq!(fog.update(5.0, red), FogState::Commit {
700707
color: semi_blue, distance: 5.0});
701708
}
709+
710+
#[test]
711+
fn test_sub_tile() {
712+
use crate::tile::*;
713+
714+
assert_eq!(optimal_sub_tile_size(32), 36);
715+
assert_eq!(optimal_sub_tile_size(15), 24);
716+
assert_eq!(optimal_sub_tile_size(8), 12);
717+
assert_eq!(optimal_sub_tile_size(39), 48);
718+
assert_eq!(optimal_sub_tile_size(50), 60);
719+
assert_eq!(optimal_sub_tile_size(70), 120);
720+
assert_eq!(optimal_sub_tile_size(25), 36);
721+
722+
assert_eq!(sub_tile(48, 100, 100), 24);
723+
assert_eq!(sub_tile(48, 500, 100), 16);
724+
assert_eq!(sub_tile(48, 1000, 100), 12);
725+
assert_eq!(sub_tile(48, 5000, 100), 6);
726+
assert_eq!(sub_tile(48, 10000, 100), 4);
727+
assert_eq!(sub_tile(48, 100000, 100), 2);
728+
assert_eq!(sub_tile(48, 10000000, 100), 2);
729+
}
702730
}

0 commit comments

Comments
 (0)