15#include <vsg/app/CompileTraversal.h>
16#include <vsg/maths/box.h>
17#include <vsg/maths/sphere.h>
18#include <vsg/utils/ShaderSet.h>
19#include <vsg/utils/SharedObjects.h>
28 bool two_sided =
false;
29 bool blending =
false;
30 bool greyscale =
false;
32 bool instance_colors_vec4 =
true;
33 bool instance_positions_vec3 =
false;
34 bool billboard =
false;
53 vec3 position = {0.0f, 0.0f, 0.0f};
54 vec3 dx = {1.0f, 0.0f, 0.0f};
55 vec3 dy = {0.0f, 1.0f, 0.0f};
56 vec3 dz = {0.0f, 0.0f, 1.0f};
57 vec4 color = {1.0f, 1.0f, 1.0f, 1.0f};
66 position = (
bb.min +
bb.max) * 0.5f;
67 dx.set(
bb.max.x -
bb.min.x, 0.0f, 0.0f);
68 dy.set(0.0f,
bb.max.y -
bb.min.y, 0.0f);
69 dz.set(0.0f, 0.0f,
bb.max.z -
bb.min.z);
76 dx.set(
sp.radius * 2.0f, 0.0f, 0.0f);
77 dy.set(0.0f,
sp.radius * 2.0f, 0.0f);
78 dz.set(0.0f, 0.0f,
sp.radius * 2.0f);
87 int result = compare_region(position, transform,
rhs.position);
88 if (result)
return result < 0;
90 if ((result = compare_pointer(
positions,
rhs.positions)))
return result < 0;
91 return compare_pointer(colors,
rhs.colors) < 0;
102 bool verbose =
false;
134 using GeometryMap = std::map<GeometryInfo, ref_ptr<Node>>;
136 GeometryMap _capsules;
138 GeometryMap _cylinders;
140 GeometryMap _spheres;
141 GeometryMap _heightfields;
void assignCompileTraversal(ref_ptr< CompileTraversal > ct)
assign compile traversal to enable compilation.
GeometryInfo struct provides geometry related settings supported by Builder.
Definition Builder.h:44
ref_ptr< Data > positions
when using geometry instancing use vec3Array with vec3{x,y,z} and for billboards use vec4Array with v...
Definition Builder.h:82
bool cullNode
cullNode flag indicates whether a CullNode should decorate the creted subgraph
Definition Builder.h:61
StateInfo struct provides state related settings supported by Builder.
Definition Builder.h:26
bool wireframe
greyscale image
Definition Builder.h:31
std container adapter for allocating with MEMORY_AFFINITY_NODES
Definition Allocator.h:138