diff options
Diffstat (limited to 'src/3d')
| -rw-r--r-- | src/3d/bvh.cc | 3 | ||||
| -rw-r--r-- | src/3d/renderer.cc | 3 | ||||
| -rw-r--r-- | src/3d/sdf_cpu.h | 10 | ||||
| -rw-r--r-- | src/3d/visual_debug.cc | 20 |
4 files changed, 21 insertions, 15 deletions
diff --git a/src/3d/bvh.cc b/src/3d/bvh.cc index 0c6bf9a..5f7abef 100644 --- a/src/3d/bvh.cc +++ b/src/3d/bvh.cc @@ -72,7 +72,8 @@ int build_recursive(std::vector<BVHNode>& nodes, if (extent.z > (axis == 0 ? extent.x : extent.y)) axis = 2; - float split = (centroid_bounds.min[axis] + centroid_bounds.max[axis]) * 0.5f; + float split = + (centroid_bounds.min[axis] + centroid_bounds.max[axis]) * 0.5f; // Partition int mid = start; diff --git a/src/3d/renderer.cc b/src/3d/renderer.cc index 64f6fc3..684fda9 100644 --- a/src/3d/renderer.cc +++ b/src/3d/renderer.cc @@ -243,7 +243,8 @@ void Renderer3D::create_pipeline() { WGPUPipelineLayout pipeline_layout = wgpuDeviceCreatePipelineLayout(device_, &pl_desc); - const char* asset_data = (const char*)GetAsset(AssetId::ASSET_SHADER_RENDERER_3D); + const char* asset_data = + (const char*)GetAsset(AssetId::ASSET_SHADER_RENDERER_3D); std::string main_code = asset_data; std::string shader_source = ShaderComposer::Get().Compose({}, main_code); diff --git a/src/3d/sdf_cpu.h b/src/3d/sdf_cpu.h index 1e461f6..e0f1b3f 100644 --- a/src/3d/sdf_cpu.h +++ b/src/3d/sdf_cpu.h @@ -45,10 +45,12 @@ inline float sdPlane(vec3 p, vec3 n, float h) { template <typename F> inline vec3 calc_normal(vec3 p, F sdf_func, float e = 0.001f) { const float d2e = 2.0f * e; - return vec3( - sdf_func(vec3(p.x + e, p.y, p.z)) - sdf_func(vec3(p.x - e, p.y, p.z)), - sdf_func(vec3(p.x, p.y + e, p.z)) - sdf_func(vec3(p.x, p.y - e, p.z)), - sdf_func(vec3(p.x, p.y, p.z + e)) - sdf_func(vec3(p.x, p.y, p.z - e))) + return vec3(sdf_func(vec3(p.x + e, p.y, p.z)) - + sdf_func(vec3(p.x - e, p.y, p.z)), + sdf_func(vec3(p.x, p.y + e, p.z)) - + sdf_func(vec3(p.x, p.y - e, p.z)), + sdf_func(vec3(p.x, p.y, p.z + e)) - + sdf_func(vec3(p.x, p.y, p.z - e))) .normalize(); } diff --git a/src/3d/visual_debug.cc b/src/3d/visual_debug.cc index ab4cb6c..86f12b4 100644 --- a/src/3d/visual_debug.cc +++ b/src/3d/visual_debug.cc @@ -182,18 +182,20 @@ void VisualDebug::add_box(const mat4& transform, const vec3& local_extent, } } -void VisualDebug::add_aabb(const vec3& min, const vec3& max, const vec3& color) { - vec3 p[] = {{min.x, min.y, min.z}, {max.x, min.y, min.z}, {max.x, max.y, min.z}, - {min.x, max.y, min.z}, {min.x, min.y, max.z}, {max.x, min.y, max.z}, +void VisualDebug::add_aabb(const vec3& min, const vec3& max, + const vec3& color) { + vec3 p[] = {{min.x, min.y, min.z}, {max.x, min.y, min.z}, + {max.x, max.y, min.z}, {min.x, max.y, min.z}, + {min.x, min.y, max.z}, {max.x, min.y, max.z}, {max.x, max.y, max.z}, {min.x, max.y, max.z}}; DebugLine edges[] = { - {p[0], p[1], color}, {p[1], p[2], color}, {p[2], p[3], color}, - {p[3], p[0], color}, // Front - {p[4], p[5], color}, {p[5], p[6], color}, {p[6], p[7], color}, - {p[7], p[4], color}, // Back - {p[0], p[4], color}, {p[1], p[5], color}, {p[2], p[6], color}, - {p[3], p[7], color} // Connections + {p[0], p[1], color}, {p[1], p[2], color}, + {p[2], p[3], color}, {p[3], p[0], color}, // Front + {p[4], p[5], color}, {p[5], p[6], color}, + {p[6], p[7], color}, {p[7], p[4], color}, // Back + {p[0], p[4], color}, {p[1], p[5], color}, + {p[2], p[6], color}, {p[3], p[7], color} // Connections }; for (const auto& l : edges) { |
