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 enumList of buffer object types supported as shader parameter.Nested classes/interfaces inherited from class com.openinventor.inventor.nodes.SoNode
SoNode.RenderModesNested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand -
Field Summary
FieldsModifier and TypeFieldDescriptionfinal SoSFBufferObjectAnSoBufferObjectcontaining data.The buffer type.Fields inherited from class com.openinventor.inventor.nodes.SoShaderParameter
identifier, nameFields 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, writeMethods inherited from class com.openinventor.inventor.fields.SoFieldContainer
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, set, setToDefaultsMethods inherited from class com.openinventor.inventor.misc.SoBase
dispose, getName, isDisposable, isSynchronizable, setName, setSynchronizableMethods inherited from class com.openinventor.inventor.Inventor
getNativeResourceHandle
-
Field Details
-
buffer
AnSoBufferObjectcontaining 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()
-