Class SoGeometryShader

All Implemented Interfaces:
SafeDisposable

public class SoGeometryShader extends SoShaderObject
Node that defines a geometry shader. This node defines a geometry shader.

See SoShaderProgram for general information about using shaders and shader parameters.

See parent class SoShaderObject for details about using the inherited fields.

Notes:

Limitations:

  • Transparency and fast editing are compatible with shader modified geometry, but most actions use the vertices of the basic shape (the vertices stored in the scene graph). This includes, for example, SoGetBoundingBoxAction, SoGetPrimitiveCountAction and SoRayPickAction.
  • The input primitive type must match the primitive type used with the rendering command that renders with this shader program. Valid inputs are points, lines and triangles so shapes like SoCube, SoIndexedFaceSet defines with quads or polygons, SoQuadMesh are not compatible with SoGeometryShader.

File format/default:

GeometryShader {

    sourceProgram ""
    sourceType FILENAME
    isActive true
    parameter NULL
}

See Also:
  • Constructor Details

    • SoGeometryShader

      public SoGeometryShader()
      Constructor.
  • Method Details

    • isSupported

      public static boolean isSupported(SoShaderObject.SourceTypes sourceType)
      Calls isSupported(sourceType, (com.openinventor.inventor.misc.SoState)null).
    • isSupported

      public static boolean isSupported(SoShaderObject.SourceTypes sourceType, SoState state)
      Indicates if geometry shaders in the specified language are supported by your graphics board. When using a debug build of Open Inventor, some "no context available" warning messages may be generated. You can ignore them or see SoGLExtension for an example of using SoGLContext to avoid them.