Skip to content

Commit d9b995f

Browse files
committed
remove indices from compact triangle and run test_wavefront with same parameters as gpu benchmark
1 parent fb057ca commit d9b995f

File tree

2 files changed

+6
-10
lines changed

2 files changed

+6
-10
lines changed

docs/src/test_wavefront.jl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,17 @@ include("wavefront-renderer.jl")
1616

1717
geom, ctx = example_scene()
1818
bvh = BVH(geom)
19-
ibvh = Raycore.InstancedBVH(geom)
19+
# ibvh = Raycore.InstancedBVH(geom)
2020
begin
21-
img = fill(RGBf(0, 0, 0), 1024, 2048)
21+
img = fill(RGBf(0, 0, 0), 400, 720)
2222
renderer = WavefrontRenderer(img, bvh, ctx)
2323
@btime render!(renderer)
2424
nothing
2525
end
2626
renderer.framebuffer
2727
renderer_instanced.framebuffer
2828
begin
29-
img = fill(RGBf(0, 0, 0), 1024, 2048)
29+
img = fill(RGBf(0, 0, 0), 400, 720)
3030
renderer_instanced = WavefrontRenderer(
3131
img, ibvh, ctx;
3232
camera_pos=Point3f(0, -0.9, -2.5),
@@ -43,7 +43,7 @@ using FileIO
4343
save("wavefront.png", map(col -> mapc(c -> clamp(c, 0f0, 1f0), col), renderer.framebuffer))
4444

4545
using AMDGPU
46-
amd_renderer = to_gpu(ROCArray, renderer_instanced);
46+
amd_renderer = to_gpu(ROCArray, renderer);
4747
Array(@btime render!(amd_renderer))
4848

4949
using pocl_jll, OpenCL

src/bvh.jl

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -84,14 +84,12 @@ Fields:
8484
- edge1: v1 - v0 edge vector
8585
- edge2: v2 - v0 edge vector
8686
- normal: Face normal (4th component for alignment)
87-
- indices: [material_idx, primitive_idx] for shading
8887
"""
8988
struct CompactTriangle
9089
v0::SVector{4, Float32}
9190
edge1::SVector{4, Float32}
9291
edge2::SVector{4, Float32}
9392
normal::SVector{4, Float32}
94-
indices::SVector{2, UInt32}
9593
end
9694

9795
"""
@@ -113,7 +111,6 @@ Convert a Triangle to CompactTriangle format with pre-computed edge vectors.
113111
SVector{4, Float32}(edge1[1], edge1[2], edge1[3], 0f0),
114112
SVector{4, Float32}(edge2[1], edge2[2], edge2[3], 0f0),
115113
SVector{4, Float32}(face_normal[1], face_normal[2], face_normal[3], 0f0),
116-
SVector{2, UInt32}(tri.material_idx, tri.primitive_idx)
117114
)
118115
end
119116

@@ -292,9 +289,8 @@ function _init(
292289
)
293290
dim = maximum_extent(centroid_bounds)
294291
( # Create leaf node.
295-
!is_valid(centroid_bounds)
296-
||
297-
centroid_bounds.p_min[dim] == centroid_bounds.p_max[dim]
292+
!is_valid(centroid_bounds) ||
293+
centroid_bounds.p_min[dim] == centroid_bounds.p_max[dim]
298294
) && return _create_leaf()
299295
# Partition primitives into sets and build children.
300296
if n_primitives <= 2 # Equally-sized subsets.

0 commit comments

Comments
 (0)