Hoops Visualize HPS  version 2018-SP2
Hoops Visualize HPS 3D Rendering Engine
Looking for a senior C++ dev?
I'm looking for work. Hire me!
HPS::Shader Class Reference

The Shader class contains objects for importing shader source files and enumerations used when defining shaders in Visualize. More...

#include <hps.h>

Classes

class  File
 The File class provides a function to import shader files. More...
 
class  ImportOptionsKit
 The ImportOptionsKit class contains settings that will be set on the ShaderKit which is returned by File::Import. More...
 

Public Types

enum  Parameterization : uint32_t {
  Parameterization::Cylinder,
  Parameterization::PhysicalReflection,
  Parameterization::Object,
  Parameterization::NaturalUV,
  Parameterization::ReflectionVector,
  Parameterization::SurfaceNormal,
  Parameterization::Sphere,
  Parameterization::UV,
  Parameterization::World
}
 Enumeration of the parameterization sources for shaders, i.e., how to map the shader to geometry. More...
 

Private Member Functions

 Shader ()
 Private default constructor to prevent instantiation. More...
 

Detailed Description

The Shader class contains objects for importing shader source files and enumerations used when defining shaders in Visualize.

Shaders are for internal use only - customers should not use shaders.

Member Enumeration Documentation

◆ Parameterization

enum HPS::Shader::Parameterization : uint32_t
strong

Enumeration of the parameterization sources for shaders, i.e., how to map the shader to geometry.

Enumerator
Cylinder 

Use a cylindrical mapping for the shader.

PhysicalReflection 

Shader Parameterization.

Object 

Use the (x,y,z) coordinates for the object before transforms have been applied for the shader.

NaturalUV 

Use the natural mapping for meshes, NURBS surfaces and shells for the shader.

For meshes, shaders will be stretched in the range [0,1]. For NURBS surfaces, shaders will be mapped in the range [0,(control point count - degree)]. For shells, shaders will be mapped such that u=x+z and v=x+y where (x,y,z) is in object space.

ReflectionVector 

Shader Parameterization.

SurfaceNormal 

Shader Parameterization.

Sphere 

Use a spherical mapping for the shader.

UV 

Use the mapping explicitly defined on the geometry for the shader.

World 

Use the (x, y, z) coordinates for the object after transforms have been applied for the shader.

Constructor & Destructor Documentation

◆ Shader()

HPS::Shader::Shader ( )
private

Private default constructor to prevent instantiation.


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