Visualization Library 2.0.0
A lightweight C++ OpenGL middleware for 2D/3D graphics
|
[Download] [Tutorials] [All Classes] [Grouped Classes] |
Wrapper of glPatchParameter(), specifies the parameters for patch primitives, used by vl::DrawCall::setPatchParameter(). More...
#include <PatchParameter.hpp>
Public Member Functions | |
PatchParameter () | |
Constructor. More... | |
void | apply () const |
Applies the glPatchParameter values. More... | |
void | setPatchVertices (int vertices) |
Specifies the number of vertices that will be used to make up a single patch primitive. More... | |
int | patchVertices () const |
Returns the number of vertices that will be used to make up a single patch primitive. More... | |
void | setPatchDefaultOuterLevel (const fvec4 &level) |
The four floating-point values corresponding to the four outer tessellation levels for each subsequent patch to be used when no tessellation control shader is present. More... | |
const fvec4 & | patchDefaultOuterLevel () const |
The four floating-point values corresponding to the four outer tessellation levels for each subsequent patch to be used when no tessellation control shader is present. More... | |
void | setPatchDefaultInnerLevel (const fvec2 &level) |
The two floating-point values corresponding to the tow inner tessellation levels for each subsequent patch to be used when no tessellation control shader is present. More... | |
const fvec2 & | patchDefaultInnerLevel () const |
The two floating-point values corresponding to the tow inner tessellation levels for each subsequent patch to be used when no tessellation control shader is present. More... | |
Public Member Functions inherited from vl::Object | |
Object () | |
Constructor. More... | |
Object (const Object &other) | |
Copy constructor: copies the name, ref count mutex and user data. More... | |
Object & | operator= (const Object &other) |
Copy operator: copies the object's name, ref count mutex and user data. More... | |
const std::string & | objectName () const |
The name of the object, by default set to the object's class name. More... | |
void | setObjectName (const char *name) |
The name of the object, by default set to the object's class name in debug builds. More... | |
void | setObjectName (const std::string &name) |
The name of the object, by default set to the object's class name in debug builds. More... | |
void | setRefCountMutex (IMutex *mutex) |
The mutex used to protect the reference counting of an Object across multiple threads. More... | |
IMutex * | refCountMutex () |
The mutex used to protect the reference counting of an Object across multiple threads. More... | |
const IMutex * | refCountMutex () const |
The mutex used to protect the reference counting of an Object across multiple threads. More... | |
int | referenceCount () const |
Returns the number of references of an object. More... | |
void | incReference () const |
Increments the reference count of an object. More... | |
void | decReference () |
Decrements the reference count of an object and deletes it if both automaticDelete() is true the count reaches 0. More... | |
void | setAutomaticDelete (bool autodel_on) |
If set to true the Object is deleted when its reference count reaches 0. More... | |
bool | automaticDelete () const |
If set to true the Object is deleted when its reference count reaches 0. More... | |
template<class T > | |
T * | as () |
Casts an Object to the specified class. More... | |
template<class T > | |
const T * | as () const |
Casts an Object to the specified class. More... | |
Protected Attributes | |
int | mPatchVertices |
fvec4 | mPatchDefaultOuterLevel |
fvec2 | mPatchDefaultInnerLevel |
Protected Attributes inherited from vl::Object | |
std::string | mObjectName |
IMutex * | mRefCountMutex |
int | mReferenceCount |
bool | mAutomaticDelete |
Additional Inherited Members | |
Protected Member Functions inherited from vl::Object | |
virtual | ~Object () |
Wrapper of glPatchParameter(), specifies the parameters for patch primitives, used by vl::DrawCall::setPatchParameter().
See also http://www.opengl.org/sdk/docs/man4/xhtml/glPatchParameter.xml
Definition at line 44 of file PatchParameter.hpp.
|
inline |
Constructor.
Definition at line 50 of file PatchParameter.hpp.
|
inline |
Applies the glPatchParameter values.
Definition at line 56 of file PatchParameter.hpp.
References vl::Has_GL_Version_4_0, mPatchDefaultInnerLevel, mPatchDefaultOuterLevel, mPatchVertices, vl::Vector4< T_Scalar >::ptr(), vl::Vector2< T_Scalar >::ptr(), VL_CHECK, and VL_CHECK_OGL.
|
inline |
The two floating-point values corresponding to the tow inner tessellation levels for each subsequent patch to be used when no tessellation control shader is present.
Definition at line 92 of file PatchParameter.hpp.
References mPatchDefaultInnerLevel.
Referenced by vlX::VLXClassWrapper_PatchParameter::exportPatchParameter().
|
inline |
The four floating-point values corresponding to the four outer tessellation levels for each subsequent patch to be used when no tessellation control shader is present.
Definition at line 84 of file PatchParameter.hpp.
References mPatchDefaultOuterLevel.
Referenced by vlX::VLXClassWrapper_PatchParameter::exportPatchParameter().
|
inline |
Returns the number of vertices that will be used to make up a single patch primitive.
Definition at line 76 of file PatchParameter.hpp.
References mPatchVertices.
Referenced by vlX::VLXClassWrapper_PatchParameter::exportPatchParameter().
|
inline |
The two floating-point values corresponding to the tow inner tessellation levels for each subsequent patch to be used when no tessellation control shader is present.
Definition at line 88 of file PatchParameter.hpp.
References mPatchDefaultInnerLevel.
Referenced by vlX::VLXClassWrapper_PatchParameter::importPatchParameter().
|
inline |
The four floating-point values corresponding to the four outer tessellation levels for each subsequent patch to be used when no tessellation control shader is present.
Definition at line 80 of file PatchParameter.hpp.
References mPatchDefaultOuterLevel.
Referenced by vlX::VLXClassWrapper_PatchParameter::importPatchParameter().
|
inline |
Specifies the number of vertices that will be used to make up a single patch primitive.
Patch primitives are consumed by the tessellation control shader (if present) and subsequently used for tessellation. When primitives are specified using glDrawArrays or a similar function, each patch will be made from vertices control points, each represented by a vertex taken from the enabeld vertex arrays. vertices must be greater than zero, and less than or equal to the value of GL_MAX_PATCH_VERTICES.
Definition at line 73 of file PatchParameter.hpp.
References mPatchVertices.
Referenced by vlX::VLXClassWrapper_PatchParameter::importPatchParameter().
|
protected |
Definition at line 97 of file PatchParameter.hpp.
Referenced by apply(), patchDefaultInnerLevel(), and setPatchDefaultInnerLevel().
|
protected |
Definition at line 96 of file PatchParameter.hpp.
Referenced by apply(), patchDefaultOuterLevel(), and setPatchDefaultOuterLevel().
|
protected |
Definition at line 95 of file PatchParameter.hpp.
Referenced by apply(), patchVertices(), and setPatchVertices().
Visualization Library 2.0.0 Reference Documentation
Updated on Wed Dec 23 2020 12:44:10.
© Copyright Michele Bosi. All rights reserved.