GPU Interop Example: RpResource Allocator
Example node showing how to allocate a CUDA-interoperable RpResource in a pre-render graph. The node allocates two new RpResources for the supplied prim which match the size of the array of points of the prim. One RpResource can be used to deform and render the prim, without actually mutating the input prim, while the other holds the original point values.
Installation
To use this node enable omni.graph.nodes in the Extension Manager.
Inputs
Name |
Type |
Descripton |
Default |
---|---|---|---|
Prim Points (inputs:points) |
|
The array of points of the input prim meshes. |
[] |
Prim Path (inputs:primPath) |
|
The path of the prim for which we allocate a new RpResources. |
|
Reload (inputs:reload) |
|
Setting this to true will force the reallocation of the RpResource. This should be used when changing the input prims. |
False |
Stream (inputs:stream) |
|
The CUDA Stream used to order the CUDA commands scheduled by this graph execution. |
0 |
Verbose (inputs:verbose) |
|
If true, the node will log detailed messages during the execution. Can negatively impact performance. |
False |
Outputs
Name |
Type |
Descripton |
Default |
---|---|---|---|
Point Counts (outputs:pointCountCollection) |
|
Point count for each prim being deformed. The size of the array is equal to the number of allocator nodes of this type found in the graph. |
None |
Prim Paths (outputs:primPathCollection) |
|
Path for each prim for which a new RpResource was allocated. The size of the array is equal to the number of allocator nodes of this type found in the graph. |
None |
Reload (outputs:reload) |
|
If true, the RpResources will be reallocated during the node compute. |
False |
Resource Pointer Collection (outputs:resourcePointerCollection) |
|
Pointers to the allocated RpResources. Two resources are allocated per prim: one for the rest positions and one for deformed positions. |
None |
Stream (outputs:stream) |
|
The CUDA Stream used to order the CUDA commands scheduled by this graph execution. |
None |
Metadata
Name |
Value |
---|---|
Unique ID |
omni.graph.nodes.RpResourceExampleAllocator |
Version |
1 |
Extension |
omni.graph.nodes |
Has State? |
False |
Implementation Language |
C++ |
Default Memory Type |
cpu |
Generated Code Exclusions |
None |
uiName |
GPU Interop Example: RpResource Allocator |
Categories |
examples,graph:preRender |
Generated Class Name |
OgnRpResourceExampleAllocatorDatabase |
Python Module |
omni.graph.nodes |