Loading...
Searching...
No Matches
HdMaterialNetworkSchema Class Reference

The MaterialNetwork schema is a container schema that defines a material for a specific render context. More...

#include <materialNetworkSchema.h>

+ Inheritance diagram for HdMaterialNetworkSchema:

Classes

class  Builder
 Utility class for setting sparse sets of child data source fields to be filled as arguments into BuildRetained. More...
 

Public Member Functions

Schema retrieval
 HdMaterialNetworkSchema (HdContainerDataSourceHandle container)
 
Member accessor
HD_API HdMaterialNodeContainerSchema GetNodes () const
 Maps node names to material nodes.
 
HD_API HdMaterialConnectionContainerSchema GetTerminals () const
 Maps terminal names to material connections.
 
HD_API HdMaterialInterfaceSchema GetInterface () const
 Describes the material's interface (public UI).
 
HD_API HdSampledDataSourceContainerSchema GetConfig () const
 
- Public Member Functions inherited from HdSchema
 HdSchema (HdContainerDataSourceHandle container)
 
HD_API HdContainerDataSourceHandle GetContainer () const
 Returns the container data source that this schema is interpreting.
 
HD_API bool IsDefined () const
 
 operator bool () const
 Returns true if this schema is applied on top of a non-null container.
 

Static Public Member Functions

Schema construction
static HD_API HdContainerDataSourceHandle BuildRetained (const HdContainerDataSourceHandle &nodes, const HdContainerDataSourceHandle &terminals, const HdContainerDataSourceHandle &interface, const HdContainerDataSourceHandle &config)
 

Additional Inherited Members

- Public Types inherited from HdSchema
using UnderlyingDataSource = HdContainerDataSource
 
- Protected Member Functions inherited from HdSchema
template<typename T >
T::Handle _GetTypedDataSource (TfToken name) const
 Returns a datasource of the requested type for the given name: schema implementations can use this to ask for child containers, sampled values, vectors, etc.
 
- Protected Attributes inherited from HdSchema
HdContainerDataSourceHandle _container
 

Detailed Description

The MaterialNetwork schema is a container schema that defines a material for a specific render context.

A network is composed of nodes, terminals, and interface.

See also the Material schema documentation for ASCII art diagram.

Definition at line 57 of file materialNetworkSchema.h.

Constructor & Destructor Documentation

◆ HdMaterialNetworkSchema()

HdMaterialNetworkSchema ( HdContainerDataSourceHandle  container)
inline

Definition at line 63 of file materialNetworkSchema.h.

Member Function Documentation

◆ BuildRetained()

static HD_API HdContainerDataSourceHandle BuildRetained ( const HdContainerDataSourceHandle &  nodes,
const HdContainerDataSourceHandle &  terminals,
const HdContainerDataSourceHandle &  interface,
const HdContainerDataSourceHandle &  config 
)
static
Deprecated:
Use Builder instead.

Builds a container data source which includes the provided child data sources. Parameters with nullptr values are excluded. This is a low-level interface. For cases in which it's desired to define the container with a sparse set of child fields, the Builder class is often more convenient and readable.

◆ GetInterface()

HD_API HdMaterialInterfaceSchema GetInterface ( ) const

Describes the material's interface (public UI).

A material's public interface has user-authored order, grouping, naming, and mappings.

◆ GetNodes()

HD_API HdMaterialNodeContainerSchema GetNodes ( ) const

Maps node names to material nodes.

Each material node is a container that is defined by the MaterialNode schema. The topology of the network is expressed by the connections found on each material node.

◆ GetTerminals()

HD_API HdMaterialConnectionContainerSchema GetTerminals ( ) const

Maps terminal names to material connections.

Each connection is a container defined by the MaterialConnection schema.


The documentation for this class was generated from the following file: