RenderManAPI  24.0
RixSceneGraph.h File Reference
#include "RiTypesHelper.h"
#include "RixInterfaces.h"

Go to the source code of this file.

Classes

struct  DisplayChannel
 Scene graph display channel description. More...
 
struct  Shader
 Scene graph shader node descriptions. More...
 
class  Material
 Scene graph material description. More...
 
class  Group
 Base class for scene graph DAG nodes. More...
 
class  Camera
 Camera DAG node used for rendering and texture projections. More...
 
class  ClippingPlane
 Clipping plane DAG node with arbitrary orientation. More...
 
class  AnalyticLight
 Analytic light DAG node support RixLight plug-ins. More...
 
class  Geometry
 Special geometry DAG node. More...
 
class  Quadric
 Quadric geometry DAG node. More...
 
class  Mesh
 Polygon or subdivision mesh. More...
 
class  Points
 Points DAG node. More...
 
class  Volume
 Volume geometry. More...
 
class  Blobby
 Blobby Implicit Surfaces. More...
 
class  Curves
 Curves. More...
 
class  NuPatch
 NuPatch. More...
 
class  Procedural
 Procedural primitive. More...
 
class  Scene
 RixInterface for constructing and manipulating scene graphs. More...
 
struct  Scene::ScopedEdit
 Define scoped edit block. More...
 
class  RixSGManager
 Entry point for constructing and manipulating scene graphs. More...
 

Namespaces

 stats
 

Macros

#define k_RixSGManagerVersion   3
 
#define RMAN_SCENEGRAPH_NAMESPACE   scenegraph
 
#define RMAN_SCENEGRAPH_NAMESPACE_OPEN_SCOPE
 
#define RMAN_SCENEGRAPH_NAMESPACE_CLOSE_SCOPE   }
 

Typedefs

typedef uint64_t(* UpdateIdCallback) (void *ctx, Group const *node, RtUString const &path)
 Callback type used to optionally set object ids. More...
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Blobby RixSGBlobby
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Camera RixSGCamera
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::ClippingPlane RixSGClippingPlane
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Curves RixSGCurves
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::DagType RixSGDagType
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::DisplayChannel RixSGDisplayChannel
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Error RixSGError
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Geometry RixSGGeometry
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Group RixSGGroup
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Material RixSGMaterial
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Mesh RixSGMesh
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::NuPatch RixSGNuPatch
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Points RixSGPoints
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Procedural RixSGProcedural
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Quadric RixSGQuadric
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Scene RixSGScene
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Shader RixSGShader
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::ShaderType RixSGShaderType
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::UpdateIdCallback RixSGUpdateIdCallback
 
typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Volume RixSGVolume
 

Enumerations

enum  Error { Error::k_Success, Error::k_InvalidState, Error::k_InvalidInput }
 Scene graph error codes. More...
 
enum  DagType {
  DagType::k_Group, DagType::k_Camera, DagType::k_ClippingPlane, DagType::k_AnalyticLight,
  DagType::k_Geometry, DagType::k_Quadric, DagType::k_Mesh, DagType::k_NuPatch,
  DagType::k_Curves, DagType::k_Points, DagType::k_Blobby, DagType::k_Volume,
  DagType::k_Procedural
}
 Scene graph DAG node types. More...
 
enum  ShaderType {
  ShaderType::k_Invalid, ShaderType::k_Pattern, ShaderType::k_Bxdf, ShaderType::k_Integrator,
  ShaderType::k_Light, ShaderType::k_LightFilter, ShaderType::k_Projection, ShaderType::k_Displacement,
  ShaderType::k_SampleFilter, ShaderType::k_DisplayFilter, ShaderType::k_Display
}
 Scene graph shading node types. More...
 

Variables

RMAN_SCENEGRAPH_NAMESPACE_CLOSE_SCOPE RMAN_NAMESPACE_CLOSE_SCOPE typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::AnalyticLight RixSGAnalyticLight
 

Macro Definition Documentation

◆ k_RixSGManagerVersion

#define k_RixSGManagerVersion   3

◆ RMAN_SCENEGRAPH_NAMESPACE

#define RMAN_SCENEGRAPH_NAMESPACE   scenegraph

◆ RMAN_SCENEGRAPH_NAMESPACE_CLOSE_SCOPE

#define RMAN_SCENEGRAPH_NAMESPACE_CLOSE_SCOPE   }

◆ RMAN_SCENEGRAPH_NAMESPACE_OPEN_SCOPE

#define RMAN_SCENEGRAPH_NAMESPACE_OPEN_SCOPE
Value:
{
#define RMAN_SCENEGRAPH_NAMESPACE
Definition: RixSceneGraph.h:58

Typedef Documentation

◆ RixSGBlobby

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Blobby RixSGBlobby

◆ RixSGCamera

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Camera RixSGCamera

◆ RixSGClippingPlane

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::ClippingPlane RixSGClippingPlane

◆ RixSGCurves

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Curves RixSGCurves

◆ RixSGDagType

◆ RixSGDisplayChannel

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::DisplayChannel RixSGDisplayChannel

◆ RixSGError

◆ RixSGGeometry

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Geometry RixSGGeometry

◆ RixSGGroup

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Group RixSGGroup

◆ RixSGMaterial

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Material RixSGMaterial

◆ RixSGMesh

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Mesh RixSGMesh

◆ RixSGNuPatch

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::NuPatch RixSGNuPatch

◆ RixSGPoints

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Points RixSGPoints

◆ RixSGProcedural

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Procedural RixSGProcedural

◆ RixSGQuadric

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Quadric RixSGQuadric

◆ RixSGScene

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Scene RixSGScene

◆ RixSGShader

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Shader RixSGShader

◆ RixSGShaderType

◆ RixSGUpdateIdCallback

◆ RixSGVolume

typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::Volume RixSGVolume

◆ UpdateIdCallback

typedef uint64_t(* UpdateIdCallback) (void *ctx, Group const *node, RtUString const &path)

Callback type used to optionally set object ids.

Enumeration Type Documentation

◆ DagType

enum DagType
strong

Scene graph DAG node types.

Enumerator
k_Group 

Grouping and transformations.

See also
Group
k_Camera 

Cameras.

See also
Camera
k_ClippingPlane 

Clipping planes.

See also
ClippingPlane
k_AnalyticLight 

Analytic lights.

See also
AnalyticLight
k_Geometry 

Special geometry.

See also
Geometry
k_Quadric 

Quadric geometry, e.g. spheres.

See also
Quadric
k_Mesh 

Polygon and subdivision meshes.

See also
Mesh
k_NuPatch 

Nurbs patches.

See also
NuPatch
k_Curves 

Hair, ribbion, and curve geometry.

See also
Curves
k_Points 

Point particle and disk geometry.

See also
Points
k_Blobby 

Implicit surface geometry.

See also
Blobby
k_Volume 

Volume geometry.

See also
Volume
k_Procedural 

Custom proceudral geometry.

See also
Procedural

◆ Error

enum Error
strong

Scene graph error codes.

Enumerator
k_Success 

No error.

k_InvalidState 

Operation not permitted in current state.

k_InvalidInput 

Operation input is invalid.

◆ ShaderType

enum ShaderType
strong

Scene graph shading node types.

Enumerator
k_Invalid 

Invalid shading node.

k_Pattern 

Textural pattern.

See also
RixPattern
k_Bxdf 

Surface, subsurface, volumetric scattering.

See also
RixBxdfFactory
k_Integrator 

Integrator.

See also
RixIntegrator
k_Light 

Analytic and geometric light emission.

See also
RixLightFactory
k_LightFilter 

Light emission filter.

See also
RixLightFilter
k_Projection 

Camera projection.

See also
RixProjectionFactory
k_Displacement 

Surface displacement.

See also
RixDisplacementFactory
k_SampleFilter 

Primary sample filter.

See also
RixSampleFilter
k_DisplayFilter 

Pixel filter.

See also
RixDisplayFilter
k_Display 

Output display driver.

See also
ndspy.h

Variable Documentation

◆ RixSGAnalyticLight

RMAN_SCENEGRAPH_NAMESPACE_CLOSE_SCOPE RMAN_NAMESPACE_CLOSE_SCOPE typedef RMAN_NAMESPACE::RMAN_SCENEGRAPH_NAMESPACE::AnalyticLight RixSGAnalyticLight