10 #ifndef GR_PrimAgentShape_h
11 #define GR_PrimAgentShape_h
25 GR_VulkanAgentData() {}
50 const char *
className()
const override {
return "GR_PrimAgentShape"; }
61 bool first_init)
override;
74 unsigned int pick_type,
76 bool has_pick_map)
override;
87 {
return myVisibilityFlag; }
95 static void cleanupShaders();
124 void updatePrimID(
RV_Render *
r,
bool geo_changed);
125 void updateColor(
RV_Render *
r,
bool geo_changed);
132 void freeVertexArrays();
133 void updatePrimIDGL(
RE_Render *
r,
bool geo_changed);
134 void updateColorGL(
RE_Render *
r,
bool geo_changed);
138 int64 myLastInstVersion;
139 int myTransformSerial;
140 int mySelectionSerial;
145 bool myDeformingShape;
146 bool myVisibilityFlag;
148 bool myLastLODEnable;
A collection of Vulkan UBO, SSBO, and Image shader bindings (descriptor set)
bool inViewFrustum(const UT_Matrix4D &objviewprojj, const UT_BoundingBoxD *bbox=nullptr) override
int renderPick(RE_RenderContext r, const GR_DisplayOption *opt, unsigned int pick_type, GR_PickStyle pick_style, bool has_pick_map) override
UT_NON_COPYABLE(GT_VulkanAgentData)
RE_VertexArray * myColorVA
void render(RE_RenderContext r, GR_RenderMode render_mode, GR_RenderFlags flags, GR_DrawParms dp) override
Set of parameters sent to GR_Primitive::viewUpdate().
void shadingMode(GR_ShadingMode shading_mode)
void viewUpdate(RE_RenderContext r, const GR_ViewUpdateParms &parms) override
GT_API const UT_StringHolder cache_name
SYS_FORCE_INLINE TO_T UTverify_cast(FROM_T from)
Temporary container for either a RV_Render and an RE_Render.
std::unique_ptr< T, Deleter > UT_UniquePtr
A smart pointer for unique ownership of dynamically allocated objects.
set of parameters sent to GR_Primitive::update()
GR_PrimAcceptResult acceptPrimitive(GT_PrimitiveType t, int geo_type, const GT_PrimitiveHandle &ph, const GEO_Primitive *prim) override
bool updateOnViewChange(const GR_DisplayOption &opt) const override
If this primitive requires an update when the view changes, return true.
Handle to the main interface of Vulkan.
const char * className() const override
Return a string version of this class's name.
GR_DispOptChange displayOptionChange(const GR_DisplayOption &opts, bool first_init) override
A shape belonging to agents, instanced with material assignments.
void update(RE_RenderContext r, const GT_PrimitiveHandle &primh, const GR_UpdateParms &p) override
GR_BasePrimType getBasePrimType() const override
The base primitive type is usually NORMAL unless this is a packed type.
bool requiresAlphaPass() const override
Return true if this primitive requires an alpha pass.
Simple class for a mutli-integer cache tag.
bool getSingleTransform(UT_Matrix4D &mat) const override