|
| | RAY_ProcGT (const GT_PrimitiveHandle &prim, bool use_multi_segments=true, fpreal shutter_close=-1) |
| |
| | RAY_ProcGT (const UT_Array< GT_PrimitiveHandle > &primitives, fpreal shutter_close=-1) |
| |
| | ~RAY_ProcGT () override |
| |
| void | dump (bool dump_full_geo=false) |
| |
| void | instanceVelocityBlur (const GT_DataArrayHandle &v, const GT_DataArrayHandle &w, const GT_DataArrayHandle &a, const GT_DataArrayHandle &pivot) |
| |
| int | velocityBlur () const |
| |
| void | setTopLevel (bool v) |
| |
|
| const char * | className () const override |
| |
| int | initialize (const UT_BoundingBox *box) override |
| |
| void | getBoundingBox (UT_BoundingBox &box) override |
| |
| void | render () override |
| |
| bool | canGenerateInstancedGeometry () const override |
| |
| | RAY_Procedural () |
| |
| virtual | ~RAY_Procedural () |
| |
| virtual bool | isEqual (const RAY_Procedural *) const |
| |
| int | lookupParmToken (const char *name) const |
| |
| RAY_ProceduralGeo | createGeometry () const |
| | Allocate geometry for this procedural. More...
|
| |
| const int64 * | getIParm (int token, size_t &size) const |
| |
| const fpreal64 * | getFParm (int token, size_t &size) const |
| |
| const UT_StringHolder * | getSParm (int token, size_t &size) const |
| |
| const int64 * | getIParm (const char *name, size_t &size) const |
| |
| const fpreal64 * | getFParm (const char *name, size_t &size) const |
| |
| const UT_StringHolder * | getSParm (const char *name, size_t &size) const |
| |
| bool | import (const char *name, int32 *value, int vectorsize) const |
| |
| bool | import (const char *name, int64 *value, int vectorsize) const |
| |
| bool | import (const char *name, fpreal32 *value, int vectorsize) const |
| |
| bool | import (const char *name, fpreal64 *value, int vectorsize) const |
| |
| bool | import (const char *name, UT_String &result, int idx=0) const |
| |
| bool | import (const char *name, UT_StringHolder &result, int idx=0) const |
| |
| bool | import (RAY_Handle handle, const char *name, int32 *value, int vectorsize) const |
| |
| bool | import (RAY_Handle handle, const char *name, int64 *value, int vectorsize) const |
| |
| bool | import (RAY_Handle handle, const char *name, fpreal32 *value, int vectorsize) const |
| |
| bool | import (RAY_Handle handle, const char *name, fpreal64 *value, int vectorsize) const |
| |
| bool | import (RAY_Handle handle, const char *name, UT_String &result, int idx=0) const |
| |
| bool | import (RAY_Handle handle, const char *name, UT_StringHolder &result, int idx=0) const |
| |
| bool | importAll (RAY_Handle handle, UT_Options &settings, bool local_only=false) const |
| |
| RAY_ROProceduralGeo | createGeometry (GU_DetailHandle &gdh) const |
| |
| RAY_ROProceduralGeo | createGeometry (GU_ConstDetailHandle &gdh) const |
| |
| RAY_ROProceduralGeo | createGeometry (const GU_DetailHandle *gdh, int nsegments, const fpreal *shutter_times=nullptr) const |
| |
| RAY_ROProceduralGeo | createGeometry (const GU_ConstDetailHandle *gdh, int nsegments, const fpreal *shutter_times=nullptr) const |
| |
| RAY_ProceduralData * | data () |
| |
|
| const GA_Attribute * | queryGeometrySegment (const GA_Attribute *attr, int seg) const |
| |
| void | clearGeometrySegments (GA_Attribute *attr) |
| |
| fpreal | getLevelOfDetail (const UT_BoundingBox &box) const |
| |
| RAY_ProceduralChildPtr | createChild () const |
| |
| void | openGeometryObject () |
| |
| void | addGeometry (GU_Detail *gdp, fpreal shutter) |
| |
| int | openProceduralObject () |
| | Open a procedural object. More...
|
| |
| void | addProcedural (RAY_Procedural *proc) |
| |
| int | addProcedural (int argc, char *argv[], const UT_BoundingBox *box=0) |
| |
| void | openVolumeObject () |
| | Open a volume object. More...
|
| |
| void | addVolume (VGEO_Volume *volume, fpreal shutter) |
| |
| void | setPreTransform (const UT_Matrix4D &transform, fpreal shutter) |
| |
| void | setTransform (const UT_Matrix4D &transform, fpreal shutter) |
| |
| void | setStylerInfo (const RAY_StylerInfo &styler_info) |
| |
| bool | setShopMaterialPath (const char *shop_materialpath, const char *material_override=nullptr, const char *property_map=nullptr) |
| |
| void | debugSettings (const char *style="object") const |
| | Print out the object's settings to stderr. More...
|
| |
| void | processPrimitiveMaterial (const GEO_Primitive *prim) |
| |
| void | closeObject () |
| |
| bool | parseMaterialIFD (const char *filename) |
| |
| int | queryWorldTransformSamples () const |
| | Query the number of transform samples for the world. More...
|
| |
| UT_Matrix4D | queryWorldTransform (int sample) const |
| | Get the world transform. More...
|
| |
| RAY_ObjectHandle | queryObject (const char *name) const |
| |
| RAY_MaterialHandle | queryMaterial (const char *name) const |
| |
| RAY_LightHandle | queryLight (const char *name) const |
| |
| int | queryTransformSamples (RAY_Handle handle) const |
| |
| UT_Matrix4D | queryTransform (RAY_Handle handle, int sample) const |
| |
| const UT_Matrix4D & | queryShaderTransform (RAY_ObjectHandle handle, int sample) const |
| |
| const STY_Styler & | queryStyler (RAY_ObjectHandle handle) const |
| |
| const char * | queryName (RAY_Handle handle) const |
| |
| const char * | queryRootName () const |
| | Get the name of the object which owns this procedural. More...
|
| |
| int | queryGeometrySamples (RAY_ObjectHandle handle) const |
| |
| RAY_ROProceduralGeo | queryGeometry (RAY_ObjectHandle handle) const |
| |
| bool | changeSetting (const char *name, const char *value, const char *style="object") |
| |
| bool | changeSetting (const char *name, int argc, const char *const *argv, const char *style="object") |
| |
| bool | changeSetting (const char *name, int argc, const int *argv, const char *style="object") |
| |
| bool | changeSetting (const char *name, int argc, const fpreal *argv, const char *style="object") |
| |
| bool | declareSetting (const char *name, const char *value) |
| |
| bool | declareSetting (const char *name, int argc, const char *const *argv) |
| |
| bool | declareSetting (const char *name, int argc, const int *argv) |
| |
| bool | declareSetting (const char *name, int argc, const fpreal *argv) |
| |
| static void | lookupPrimitiveMaterialAttributes (const GEO_Detail &geo, RAY_PrimitiveMaterialAttributes &attribs) |
| |
Procedural to render a single GT primitive.
When rendering GT primitives, they will be refined until they hit geometry that Mantra can handle.
When GT_PRIM_INSTANCE primitives are encountered, the procedural will create multiple instance objects in mantra, allowing the geometry to be shared between instances automatically. In addition, the following uniform/detail attributes are handled on the instance primitives:
- shop_materialpath
Assign a material for the instance. This calls RAY_Procedural::setShopMaterialPath(). If the shop_materialpath is found, then additional attributes (material_override and property_override) are evaluated to handle shader argument and property overrides.
lightcategories
Set the lightcategories property on the instance
- lightmask
Set the lightmask property on the instance. Note that this may not handle light instancing properly.
- categories
Set the categories for instance.
- Examples:
- RAY/RAY_DemoGT.C.
Definition at line 48 of file RAY_ProcGT.h.
A mantra procedural to render a GT primitive. If the GT primitive has multiple segments, the primitive will be rendered with deformation motion blur unless use_multi_segments is false.
When multi-segment blur is active, the shutter_close can be specified. If the shutter_close is less than 0, the value will be imported from the camera:shutter setting. If shutter_close is 0, multi-segment blur will be disabled.
If the GT primitive has the proper sub-frame sampling time, then you likely want to set the shutter_close to 1.0.