26 #ifndef __GLTF_REFINER_h__
27 #define __GLTF_REFINER_h__
60 const int32 NOT_IN_SUBMESH = -1;
94 bool output_custom_attribs =
false;
95 bool exporting_skin =
false;
98 bool blendshape =
false;
109 CachedData* base_shape_cached_data =
nullptr;
136 RefineOptions options,
140 void setAddingSubsequentFrames(
bool use);
144 void animateInstanceXforms(
148 void setBlendShapeInfo(BlendShapeInfo info);
183 struct Attrib_CopyResult
192 template <
typename T,
typename FUNC_CAST>
204 template <
typename T =
void>
210 bool ExportAttribute(
215 uint32 addBlendShapeAttribute(
218 GLTF_Primitive& prim,
221 bool addBoneCaptureAttribs(
231 const RefineOptions myOptions;
233 CachedData myCachedData;
235 bool myAddingSubsequentFrames;
237 GLTF_BaseErrorManager* myErrorManager;
240 CachedData* myPolygonMeshCachedData;
241 BlendShapeInfo myBlendShapeInfo;
263 template <
typename T>
267 for (
exint idx = 0; idx < tuple_size; idx++)
271 if (
SYSabs(attr_arr[of1] - attr_arr[of2]) > myTol)
280 template <
typename T>
285 int arr_size1 = arr_sizes[pt_1];
286 int arr_size2 = arr_sizes[pt_2];
288 if (arr_size1 != arr_size2)
296 for (
exint arr_idx = 0; arr_idx < arr_size1; arr_idx++)
298 if (
SYSabs(vals[off1+arr_idx] - vals[off2+arr_idx]) > myTol)
307 template <
typename T>
315 template <
typename T>
GLsizei GLenum const void * indices
MeshNameSource mesh_name_source
getFileOption("OpenEXR:storage") storage
GLsizei const GLchar *const * path
A reference counter base class for use with UT_IntrusivePtr.
GA_API const UT_StringHolder trans
GLint GLenum GLboolean GLsizei stride
A mesh of unconnected points.
bool allowThreading() const override
Return true if the refinement allows threaded refinement of primitives.
GLuint const GLchar * name
std::function< T > UT_Function
The base class for all GT primitive types.
UT_IntrusivePtr< GLTF_Refiner > GLTF_RefinerHandle
Processes primitives generated by refinement process.
Container for a GU packed primitive.
UT_StringHolder mesh_name_val
A map of string to various well defined value types.
An array of numeric values (int32, int64, fpreal16, fpreal32, fpreal64)