LegacyShader
-
class HPS::LegacyShader
The LegacyShader class contains objects for importing shader source files and enumerations used when defining legacy shaders in Visualize. Legacy shaders are for internal use only - customers should not use legacy shaders.
Public Types
-
enum Parameterization
Enumeration of the parameterization sources for legacy shaders, i.e., how to map the legacy shader to geometry.
Values:
-
enumerator Cylinder
Use a cylindrical mapping for the legacy shader.
-
enumerator PhysicalReflection
LegacyShader Parameterization.
-
enumerator Object
Use the (x,y,z) coordinates for the object before transforms have been applied for the legacy shader.
-
enumerator NaturalUV
Use the natural mapping for meshes, NURBS surfaces and shells for the legacy shader. For meshes, legacy shaders will be stretched in the range [0,1]. For NURBS surfaces, legacy shaders will be mapped in the range [0,(control point count - degree)]. For shells, legacy shaders will be mapped such that u=x+z and v=x+y where (x,y,z) is in object space.
-
enumerator ReflectionVector
LegacyShader Parameterization.
-
enumerator SurfaceNormal
LegacyShader Parameterization.
-
enumerator Sphere
Use a spherical mapping for the legacy shader.
-
enumerator UV
Use the mapping explicitly defined on the geometry for the legacy shader.
-
enumerator World
Use the (x, y, z) coordinates for the object after transforms have been applied for the legacy shader.
-
enumerator Cylinder
-
class File
The File class provides a function to import legacy shader files.
Public Static Functions
-
static LegacyShaderKit Import(char const *in_file_name, ImportOptionsKit const &in_options)
Performs a synchronous import of the specified legacy shader file. The function returns a LegacyShaderKit with the source code from the legacy shader file and with the specified options. May throw an IOException if a problem occurs during import.
- Parameters
in_file_name – Name of legacy shader file from which to get the source code.
in_options – Options to set on the LegacyShaderKit returned by this function.
- Returns
A LegacyShaderKit containing the source from the specified file and with the specified options.
-
static LegacyShaderKit Import(char const *in_file_name, ImportOptionsKit const &in_options)
-
class ImportOptionsKit : public HPS::Kit
The ImportOptionsKit class contains settings that will be set on the LegacyShaderKit which is returned by File::Import.
Public Functions
-
virtual bool Empty() const
Indicates whether this ImportOptionsKit has any values set on it.
- Returns
true if no values are set on this ImportOptionsKit, false otherwise.
-
bool Equals(ImportOptionsKit const &in_kit) const
Check if the source ImportOptionsKit is equivalent to this ImportOptionsKit.
- Parameters
in_kit – The source ImportOptionsKit to compare to this ImportOptionsKit.
- Returns
true if the objects are equivalent, false otherwise.
-
ImportOptionsKit()
The default constructor creates an empty ImportOptionsKit object.
-
ImportOptionsKit(ImportOptionsKit &&in_that)
The move constructor creates an ImportOptionsKit by transferring the underlying impl of the rvalue reference to this ImportOptionsKit thereby avoiding a copy and allocation.
- Parameters
in_that – An rvalue reference to an ImportOptionsKit to take the impl from.
-
ImportOptionsKit(ImportOptionsKit const &in_kit)
The copy constructor creates a new ImportOptionsKit object that contains the same settings as the source ImportOptionsKit.
- Parameters
in_kit – The source ImportOptionsKit to copy.
-
inline virtual HPS::Type ObjectType() const
This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).
- Returns
The declared type of the object in question, which may differ from the true, underlying type.
-
bool operator!=(ImportOptionsKit const &in_kit) const
Check if the source ImportOptionsKit is not equivalent to this ImportOptionsKit.
- Parameters
in_kit – The source ImportOptionsKit to compare to this ImportOptionsKit.
- Returns
true if the objects are not equivalent, false otherwise.
-
ImportOptionsKit &operator=(ImportOptionsKit &&in_that)
The move assignment operator transfers the underlying impl of the rvalue reference to this ImportOptionsKit thereby avoiding a copy.
- Parameters
in_that – An rvalue reference to an ImportOptionsKit to take the impl from.
- Returns
A reference to this ImportOptionsKit.
-
ImportOptionsKit &operator=(ImportOptionsKit const &in_kit)
Copies the source ImportOptionsKit into this ImportOptionsKit.
- Parameters
in_kit – The source ImportOptionsKit to copy.
- Returns
A reference to this ImportOptionsKit.
-
bool operator==(ImportOptionsKit const &in_kit) const
Check if the source ImportOptionsKit is equivalent to this ImportOptionsKit.
- Parameters
in_kit – The source ImportOptionsKit to compare to this ImportOptionsKit.
- Returns
true if the objects are equivalent, false otherwise.
-
void Set(ImportOptionsKit const &in_kit)
Copies the source ImportOptionsKit into this ImportOptionsKit.
- Parameters
in_kit – The source ImportOptionsKit to copy.
-
ImportOptionsKit &SetMultitexture(bool in_state)
Sets whether to apply diffuse textures from layers greater than <span class=’code>0 on top of the legacy shader when it is applied to geometry.
- Parameters
in_state – Whether to apply diffuse textures from layers greater than 0 on top of the legacy shader when it is applied to geometry. If true, the additional textures will be applied; if false, the additional textures will not be applied.
- Returns
A reference to this ImportOptionsKit.
-
ImportOptionsKit &SetParameterizationSource(Parameterization in_source)
Sets the parameterization source for the legacy shader.
- Parameters
in_source – The parameterization source for the legacy shader.
- Returns
A reference to this ImportOptionsKit.
-
ImportOptionsKit &SetTransformMatrix(MatrixKit const &in_transform)
Sets the transform matrix for the legacy shader.
- Parameters
in_transform – The transform matrix for the legacy shader.
- Returns
A reference to this ImportOptionsKit.
-
void Show(ImportOptionsKit &out_kit) const
Copies this ImportOptionsKit into the given ImportOptionsKit.
- Parameters
out_kit – The ImportOptionsKit to populate with the contents of this ImportOptionsKit.
-
bool ShowMultitexture(bool &out_state) const
Shows whether to apply diffuse textures from layers greater than 0 on top of the legacy shader when it is applied to geometry.
- Parameters
out_state – whether to apply diffuse textures from layers greater than 0 on top of the legacy shader when it is applied to geometry.
- Returns
true if the flag is valid, false otherwise.
-
bool ShowParameterizationSource(Parameterization &out_source) const
Shows the parameterization source for the legacy shader.
- Parameters
out_source – The parameterization source for the legacy shader.
- Returns
true if the parameterization source is valid, false otherwise.
-
bool ShowTransformMatrix(MatrixKit &out_transform) const
Shows the transform matrix for the legacy shader.
- Parameters
out_transform – The transform matrix for the legacy shader.
- Returns
true if the transform is valid, false otherwise.
-
ImportOptionsKit &UnsetEverything()
Removes all settings from this ImportOptionsKit.
- Returns
A reference to this ImportOptionsKit.
-
ImportOptionsKit &UnsetMultitexture()
Removes whether to apply diffuse textures from layers greater than 0 on top of the legacy shader when it is applied to geometry.
- Returns
A reference to this ImportOptionsKit.
-
ImportOptionsKit &UnsetParameterizationSource()
Removes the parameterization source for the legacy shader.
- Returns
A reference to this ImportOptionsKit.
-
ImportOptionsKit &UnsetTransformMatrix()
Removes the transform matrix for the legacy shader.
- Returns
A reference to this ImportOptionsKit.
-
virtual ~ImportOptionsKit()
Public Static Attributes
-
static const HPS::Type staticType = HPS::Type::LegacyShaderImportOptionsKit
-
virtual bool Empty() const
-
enum Parameterization