diff options
author | Kévin Dietrich <kevin.dietrich@mailoo.org> | 2020-08-19 16:46:50 +0300 |
---|---|---|
committer | Kévin Dietrich <kevin.dietrich@mailoo.org> | 2020-08-19 16:47:09 +0300 |
commit | aa1e4baa22b3393dc723d48061c9781f4b8b42c7 (patch) | |
tree | abef7319b60e2a1faa5ce227ed8c73ac2d37e1f4 /intern/cycles/render/mesh.h | |
parent | 3e56dd8fd9210735c654661c8ada5a5f92623826 (diff) |
Cycles : add a Volume Geometry Node
This splits the volume related data (properties for rendering and attributes) of the Mesh node
into a new `Volume` node type.
This `Volume` node derives from the `Mesh` class since we generate a mesh for the bounds of the
volume, as such we can safely work on `Volumes` as if they were `Meshes`, e.g. for BVH creation.
However such code should still check for the geometry type of the object to be `MESH` or `VOLUME`
which may be bug prone if this is forgotten.
This is part of T79131.
Reviewed By: brecht
Maniphest Tasks: T79131
Differential Revision: https://developer.blender.org/D8538
Diffstat (limited to 'intern/cycles/render/mesh.h')
-rw-r--r-- | intern/cycles/render/mesh.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/intern/cycles/render/mesh.h b/intern/cycles/render/mesh.h index d0cf4d557aa..c8286a01e2c 100644 --- a/intern/cycles/render/mesh.h +++ b/intern/cycles/render/mesh.h @@ -52,6 +52,9 @@ struct PackedPatchTable; /* Mesh */ class Mesh : public Geometry { + protected: + Mesh(const NodeType *node_type_, Type geom_type_); + public: NODE_DECLARE @@ -133,10 +136,6 @@ class Mesh : public Geometry { array<int> triangle_patch; /* must be < 0 for non subd triangles */ array<float2> vert_patch_uv; - float volume_clipping; - float volume_step_size; - bool volume_object_space; - array<SubdFace> subd_faces; array<int> subd_face_corners; int num_ngons; |