OpenSubdiv: MTLPatchShaderSource Class Reference

| OpenSubdiv

Loading...
Searching...
No Matches
Static Public Member Functions | List of all members
MTLPatchShaderSource Class Reference

Provides shader source which can be used by client code. More...

`#include <mtlPatchShaderSource.h>`

## Static Public Member Functions
static std::string | GetPatchBasisShaderSource ()
| Returns shader source which can be used to evaluate position and first and second derivatives on piecewise parametric patches resulting from subdivision refinement.
static std::string | GetPatchDrawingShaderSource ()
| Returns shader source which can be used while drawing piecewise parametric patches resulting from subdivision refinement, e.g. while using GPU HW tessellation.
Alternative methods
These methods return shader source which can be used while drawing. Unlike the methods above, the source returned by these methods includes support for legacy patch types along with dependencies on specific resource bindings and interstage shader variable declarations.
static std::string | GetCommonShaderSource ()
static std::string | GetVertexShaderSource (Far::PatchDescriptor::Type type)
static std::string | GetHullShaderSource (Far::PatchDescriptor::Type type)
static std::string | GetDomainShaderSource (Far::PatchDescriptor::Type type)
static std::string | GetVertexShaderSource (Far::PatchDescriptor::Type type, Far::PatchDescriptor::Type fvarType)
| Deprecated.
static std::string | GetHullShaderSource (Far::PatchDescriptor::Type type, Far::PatchDescriptor::Type fvarType)
static std::string | GetDomainShaderSource (Far::PatchDescriptor::Type type, Far::PatchDescriptor::Type fvarType)

## Detailed Description

Provides shader source which can be used by client code.

Definition at line 40 of file mtlPatchShaderSource.h.

## Member Function Documentation

## ◆ GetCommonShaderSource()

static std::string GetCommonShaderSource | ( |  | ) |
| static

## ◆ GetDomainShaderSource() [1/2]

static std::string GetDomainShaderSource | ( | Far::PatchDescriptor::Type | type | ) |
| static

## ◆ GetDomainShaderSource() [2/2]

static std::string GetDomainShaderSource | ( | Far::PatchDescriptor::Type | type,
|  | Far::PatchDescriptor::Type | fvarType )
| static

## ◆ GetHullShaderSource() [1/2]

static std::string GetHullShaderSource | ( | Far::PatchDescriptor::Type | type | ) |
| static

## ◆ GetHullShaderSource() [2/2]

static std::string GetHullShaderSource | ( | Far::PatchDescriptor::Type | type,
|  | Far::PatchDescriptor::Type | fvarType )
| static

## ◆ GetPatchBasisShaderSource()

static std::string GetPatchBasisShaderSource | ( |  | ) |
| static

Returns shader source which can be used to evaluate position and first and second derivatives on piecewise parametric patches resulting from subdivision refinement.

## ◆ GetPatchDrawingShaderSource()

static std::string GetPatchDrawingShaderSource | ( |  | ) |
| static

Returns shader source which can be used while drawing piecewise parametric patches resulting from subdivision refinement, e.g. while using GPU HW tessellation.

## ◆ GetVertexShaderSource() [1/2]

static std::string GetVertexShaderSource | ( | Far::PatchDescriptor::Type | type | ) |
| static

## ◆ GetVertexShaderSource() [2/2]

static std::string GetVertexShaderSource | ( | Far::PatchDescriptor::Type | type,
|  | Far::PatchDescriptor::Type | fvarType )
| static

Deprecated.

These methods are deprecated. Clients should determine the patch type of a face-varying patch by inspecting the face-varying patch array descriptors.

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

- opensubdiv/osd/mtlPatchShaderSource.h