Package com.openinventor.inventor.nodes
Class SoShaderParameterBufferObject
java.lang.Object
com.openinventor.inventor.Inventor
com.openinventor.inventor.misc.SoBase
com.openinventor.inventor.fields.SoFieldContainer
com.openinventor.inventor.nodes.SoNode
com.openinventor.inventor.nodes.SoShaderParameter
com.openinventor.inventor.nodes.SoShaderParameterBufferObject
- All Implemented Interfaces:
SafeDisposable
Shader parameter node storing a buffer object.
This node allows the application to provide a buffer object to a shader program. The shader program can access this buffer as a GLSL Shader Storage Buffer Object.
SoShaderParameterBufferObject
nodes are usually added to the shader program's
bufferObjects field to affect only that specific shader program, but can also be inserted in the scene graph and affect all subsequent shader programs.
NOTE: If inserted directly in the scene graph, SoShaderParameterBufferObject
is not cacheable. This means that all parent SoSeparator
nodes will not be able to create render caches. This may reduce rendering performance.
File format/default:
SoShaderParameterBufferObject
{
buffer | NULL |
bufferType | SHADER_STORAGE_BUFFER |
- Since:
- Open Inventor 9.8
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
List of buffer object types supported as shader parameter.Nested classes/interfaces inherited from class com.openinventor.inventor.nodes.SoNode
SoNode.RenderModes
Nested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand
-
Field Summary
FieldsModifier and TypeFieldDescriptionfinal SoSFBufferObject
AnSoBufferObject
containing data.The buffer type.Fields inherited from class com.openinventor.inventor.nodes.SoShaderParameter
identifier, name
Fields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class com.openinventor.inventor.nodes.SoNode
affectsState, callback, copy, copy, distribute, doAction, getAlternateRep, getBoundingBox, getByName, getMatrix, getPrimitiveCount, getRenderEngineMode, getRenderUnitID, GLRender, GLRenderBelowPath, GLRenderInPath, GLRenderOffPath, grabEventsCleanup, grabEventsSetup, handleEvent, isBoundingBoxIgnoring, isOverride, pick, rayPick, search, setOverride, touch, write
Methods inherited from class com.openinventor.inventor.fields.SoFieldContainer
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, set, setToDefaults
Methods inherited from class com.openinventor.inventor.misc.SoBase
dispose, getName, isDisposable, isSynchronizable, setName, setSynchronizable
Methods inherited from class com.openinventor.inventor.Inventor
getNativeResourceHandle
-
Field Details
-
buffer
AnSoBufferObject
containing data. In order to avoid a CPU to GPU copy, it is recommended to use anSoGpuBufferObject
. Default is null. -
bufferType
The buffer type. Default is SHADER_STORAGE_BUFFER. The only legal values are SHADER_STORAGE_BUFFER and UNIFORM_BUFFER.
-
-
Constructor Details
-
SoShaderParameterBufferObject
public SoShaderParameterBufferObject()
-