PeriDyno 1.0.0
Loading...
Searching...
No Matches
dyno::GLSurfaceVisualModule Class Reference

#include <GLSurfaceVisualModule.h>

Inheritance diagram for dyno::GLSurfaceVisualModule:
Collaboration diagram for dyno::GLSurfaceVisualModule:

Public Member Functions

 GLSurfaceVisualModule ()
 
 ~GLSurfaceVisualModule () override
 
virtual std::string caption () override
 Return the caption.
 
 DECLARE_ENUM (EColorMode, CM_Object=0, CM_Vertex=1, CM_Texture=2)
 
 DEF_ENUM (EColorMode, ColorMode, EColorMode::CM_Object, "Color Mode")
 
 DEF_VAR (bool, UseVertexNormal, false, "")
 
 DEF_ARRAY_IN (Vec3f, Color, DeviceType::GPU, "")
 
 DEF_ARRAY_IN (Vec3f, Normal, DeviceType::GPU, "")
 
 DEF_ARRAY_IN (Vec2f, TexCoord, DeviceType::GPU, "")
 
 DEF_ARRAY_IN (TopologyModule::Triangle, NormalIndex, DeviceType::GPU, "")
 
 DEF_ARRAY_IN (TopologyModule::Triangle, TexCoordIndex, DeviceType::GPU, "")
 
- Public Member Functions inherited from dyno::GLVisualModule
 GLVisualModule ()
 
 ~GLVisualModule () override
 
void setColor (const Color &color)
 
void setMetallic (float metallic)
 
void setRoughness (float roughness)
 
void setAlpha (float alpha)
 
virtual bool isTransparent () const
 
void draw (const RenderParams &rparams)
 
void release ()
 
 DEF_VAR (Color, BaseColor, Color(0.8f, 0.8f, 0.8f), "")
 
 DEF_VAR (Real, Metallic, 0.0f, "")
 
 DEF_VAR (Real, Roughness, 0.5f, "")
 
 DEF_VAR (Real, Alpha, 1.0f, "")
 
- Public Member Functions inherited from dyno::VisualModule
 VisualModule ()
 
virtual ~VisualModule ()
 
void setVisible (bool bVisible)
 
bool isVisible ()
 
std::string getModuleType () override
 
- Public Member Functions inherited from dyno::Module
 Module (std::string name="default")
 
 ~Module (void) override
 
bool initialize ()
 
void update ()
 
void setName (std::string name)
 
std::string getName () override
 
virtual void setParentNode (Node *node)
 Set the parent node.
 
NodegetParentNode ()
 
SceneGraphgetSceneGraph ()
 
bool isInitialized ()
 
bool attachField (FBase *field, std::string name, std::string desc, bool autoDestroy=true) override
 Attach a field to Base.
 
bool isInputComplete ()
 Check the completeness of input fields.
 
bool isOutputCompete ()
 
 DEF_VAR (bool, ForceUpdate, false, "")
 
void setUpdateAlways (bool b)
 Set the update strategy for the module.
 
- Public Member Functions inherited from dyno::OBase
 OBase ()
 
 ~OBase () override
 
virtual bool captionVisible ()
 Whether to hide the caption in the GUI.
 
virtual std::string description ()
 Return a description for the node or module, override this function to support user-defined description.
 
bool addField (FBase *data)
 Add a field to Base FieldID will be set to the name of Field by default.
 
bool addField (FieldID name, FBase *data)
 Add a field to Base.
 
bool addFieldAlias (FieldID name, FBase *data)
 
bool addFieldAlias (FieldID name, FBase *data, FieldMap &fieldAlias)
 
bool findField (FBase *data)
 Find a field by its pointer.
 
bool findFieldAlias (const FieldID name)
 Find a field by its name.
 
bool findFieldAlias (const FieldID name, FieldMap &fieldAlias)
 Find a field in fieldAlias by its name This function is typically called by other functions.
 
bool removeField (FBase *data)
 Remove a field by its pointer.
 
bool removeFieldAlias (const FieldID name)
 Remove a field by its name.
 
bool removeFieldAlias (const FieldID name, FieldMap &fieldAlias)
 
FBasegetField (const FieldID name)
 Return a field by its name.
 
std::vector< FBase * > & getAllFields ()
 
template<typename T>
TgetField (FieldID name)
 
bool isAllFieldsReady ()
 Check the completeness of all required fields.
 
std::vector< FieldIDgetFieldAlias (FBase *data)
 
int getFieldAliasCount (FBase *data)
 
void setBlockCoord (float x, float y)
 
float bx ()
 
float by ()
 
bool findInputField (FBase *field)
 
bool addInputField (FBase *field)
 
bool removeInputField (FBase *field)
 
std::vector< FBase * > & getInputFields ()
 
bool findOutputField (FBase *field)
 
bool addOutputField (FBase *field)
 
bool addToOutput (FBase *field)
 
bool removeOutputField (FBase *field)
 
bool removeFromOutput (FBase *field)
 
std::vector< FBase * > & getOutputFields ()
 
bool findParameter (FBase *field)
 
bool addParameter (FBase *field)
 
bool removeParameter (FBase *field)
 
std::vector< FBase * > & getParameters ()
 
- Public Member Functions inherited from dyno::Object
 Object ()
 
virtual ~Object ()
 
ObjectId objectId ()
 

Protected Member Functions

virtual void updateImpl () override
 
virtual void paintGL (const RenderParams &rparams) override
 
virtual void updateGL () override
 
virtual bool initializeGL () override
 
virtual void releaseGL () override
 
- Protected Member Functions inherited from dyno::GLVisualModule
virtual void preprocess () override final
 
virtual void postprocess () override final
 
bool validateInputs () override final
 
- Protected Member Functions inherited from dyno::Module
virtual bool initializeImpl ()
 
virtual bool validateOutputs ()
 
virtual bool requireUpdate ()
 
virtual void updateStarted ()
 Two functions called at the beginning and end of update() used for debug.
 
virtual void updateEnded ()
 

Protected Attributes

ProgrammShaderProgram
 
Buffer mRenderParamsUBlock
 
Buffer mPBRMaterialUBlock
 
VertexArray mVAO
 
unsigned int mNumTriangles = 0
 
XBuffer< Vec3fmVertexPosition
 
XBuffer< Vec3fmVertexColor
 
XBuffer< TopologyModule::TrianglemVertexIndex
 
XBuffer< Vec3fmNormal
 
XBuffer< TopologyModule::TrianglemNormalIndex
 
XBuffer< Vec2fmTexCoord
 
XBuffer< TopologyModule::TrianglemTexCoordIndex
 
unsigned int mInstanceCount = 0
 
- Protected Attributes inherited from dyno::OBase
std::vector< FBase * > fields_input
 
std::vector< FBase * > fields_output
 
std::vector< FBase * > fields_param
 

Additional Inherited Members

- Public Types inherited from dyno::OBase
typedef std::vector< FBase * > FieldVector
 
typedef std::map< FieldID, FBase * > FieldMap
 
- Static Public Member Functions inherited from dyno::Object
static bool registerClass (ClassInfo *ci)
 
static ObjectcreateObject (std::string name)
 
static std::map< std::string, ClassInfo * > * getClassMap ()
 
static ObjectId baseId ()
 Base Id.
 

Detailed Description

Definition at line 30 of file GLSurfaceVisualModule.h.

Constructor & Destructor Documentation

◆ GLSurfaceVisualModule()

dyno::GLSurfaceVisualModule::GLSurfaceVisualModule ( )

Definition at line 14 of file GLSurfaceVisualModule.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ~GLSurfaceVisualModule()

dyno::GLSurfaceVisualModule::~GLSurfaceVisualModule ( )
override

Definition at line 33 of file GLSurfaceVisualModule.cpp.

Member Function Documentation

◆ caption()

std::string dyno::GLSurfaceVisualModule::caption ( )
overridevirtual

Return the caption.

Returns
The default value is the class name, override this virtual function to return a user-defined caption name

Reimplemented from dyno::OBase.

Reimplemented in dyno::GLInstanceVisualModule.

Definition at line 46 of file GLSurfaceVisualModule.cpp.

◆ DECLARE_ENUM()

dyno::GLSurfaceVisualModule::DECLARE_ENUM ( EColorMode ,
CM_Object = 0,
CM_Vertex = 1,
CM_Texture = 2 )

◆ DEF_ARRAY_IN() [1/5]

dyno::GLSurfaceVisualModule::DEF_ARRAY_IN ( TopologyModule::Triangle ,
NormalIndex ,
DeviceType::GPU ,
""  )

◆ DEF_ARRAY_IN() [2/5]

dyno::GLSurfaceVisualModule::DEF_ARRAY_IN ( TopologyModule::Triangle ,
TexCoordIndex ,
DeviceType::GPU ,
""  )

◆ DEF_ARRAY_IN() [3/5]

dyno::GLSurfaceVisualModule::DEF_ARRAY_IN ( Vec2f ,
TexCoord ,
DeviceType::GPU ,
""  )

◆ DEF_ARRAY_IN() [4/5]

dyno::GLSurfaceVisualModule::DEF_ARRAY_IN ( Vec3f ,
Color ,
DeviceType::GPU ,
""  )

◆ DEF_ARRAY_IN() [5/5]

dyno::GLSurfaceVisualModule::DEF_ARRAY_IN ( Vec3f ,
Normal ,
DeviceType::GPU ,
""  )

◆ DEF_ENUM()

dyno::GLSurfaceVisualModule::DEF_ENUM ( EColorMode ,
ColorMode ,
EColorMode::CM_Object ,
"Color Mode"  )

◆ DEF_VAR()

dyno::GLSurfaceVisualModule::DEF_VAR ( bool ,
UseVertexNormal ,
false ,
""  )

◆ initializeGL()

bool dyno::GLSurfaceVisualModule::initializeGL ( )
overrideprotectedvirtual

Implements dyno::GLVisualModule.

Reimplemented in dyno::GLInstanceVisualModule.

Definition at line 51 of file GLSurfaceVisualModule.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ paintGL()

void dyno::GLSurfaceVisualModule::paintGL ( const RenderParams & rparams)
overrideprotectedvirtual

Implements dyno::GLVisualModule.

Definition at line 205 of file GLSurfaceVisualModule.cpp.

◆ releaseGL()

void dyno::GLSurfaceVisualModule::releaseGL ( )
overrideprotectedvirtual

Implements dyno::GLVisualModule.

Reimplemented in dyno::GLInstanceVisualModule.

Definition at line 78 of file GLSurfaceVisualModule.cpp.

Here is the caller graph for this function:

◆ updateGL()

void dyno::GLSurfaceVisualModule::updateGL ( )
overrideprotectedvirtual

Implements dyno::GLVisualModule.

Reimplemented in dyno::GLInstanceVisualModule.

Definition at line 103 of file GLSurfaceVisualModule.cpp.

Here is the caller graph for this function:

◆ updateImpl()

void dyno::GLSurfaceVisualModule::updateImpl ( )
overrideprotectedvirtual

Reimplemented from dyno::GLVisualModule.

Reimplemented in dyno::GLInstanceVisualModule.

Definition at line 143 of file GLSurfaceVisualModule.cpp.

Here is the caller graph for this function:

Member Data Documentation

◆ mInstanceCount

unsigned int dyno::GLSurfaceVisualModule::mInstanceCount = 0
protected

Definition at line 104 of file GLSurfaceVisualModule.h.

◆ mNormal

XBuffer<Vec3f> dyno::GLSurfaceVisualModule::mNormal
protected

Definition at line 91 of file GLSurfaceVisualModule.h.

◆ mNormalIndex

XBuffer<TopologyModule::Triangle> dyno::GLSurfaceVisualModule::mNormalIndex
protected

Definition at line 92 of file GLSurfaceVisualModule.h.

◆ mNumTriangles

unsigned int dyno::GLSurfaceVisualModule::mNumTriangles = 0
protected

Definition at line 85 of file GLSurfaceVisualModule.h.

◆ mPBRMaterialUBlock

Buffer dyno::GLSurfaceVisualModule::mPBRMaterialUBlock
protected

Definition at line 82 of file GLSurfaceVisualModule.h.

◆ mRenderParamsUBlock

Buffer dyno::GLSurfaceVisualModule::mRenderParamsUBlock
protected

Definition at line 81 of file GLSurfaceVisualModule.h.

◆ mShaderProgram

Program* dyno::GLSurfaceVisualModule::mShaderProgram
protected

Definition at line 78 of file GLSurfaceVisualModule.h.

◆ mTexCoord

XBuffer<Vec2f> dyno::GLSurfaceVisualModule::mTexCoord
protected

Definition at line 94 of file GLSurfaceVisualModule.h.

◆ mTexCoordIndex

XBuffer<TopologyModule::Triangle> dyno::GLSurfaceVisualModule::mTexCoordIndex
protected

Definition at line 95 of file GLSurfaceVisualModule.h.

◆ mVAO

VertexArray dyno::GLSurfaceVisualModule::mVAO
protected

Definition at line 84 of file GLSurfaceVisualModule.h.

◆ mVertexColor

XBuffer<Vec3f> dyno::GLSurfaceVisualModule::mVertexColor
protected

Definition at line 88 of file GLSurfaceVisualModule.h.

◆ mVertexIndex

XBuffer<TopologyModule::Triangle> dyno::GLSurfaceVisualModule::mVertexIndex
protected

Definition at line 89 of file GLSurfaceVisualModule.h.

◆ mVertexPosition

XBuffer<Vec3f> dyno::GLSurfaceVisualModule::mVertexPosition
protected

Definition at line 87 of file GLSurfaceVisualModule.h.


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