|
Developer Documentation
|
Classes | |
| struct | ViewerResources |
Public Slots | |
| QString | version () |
Signals | |
| void | log (Logtype _type, QString _message) |
| void | log (QString _message) |
Signals inherited from BaseInterface | |
| virtual void | updateView () |
| Update current view in Main Application. More... | |
| virtual void | setSlotDescription (QString _slotName, QString _slotDescription, QStringList _parameters, QStringList _descriptions) |
| Set a description for a public slot. More... | |
| virtual void | setRenderer (unsigned int _viewer, QString _rendererName) |
| Set a renderer for the given viewer. More... | |
Signals inherited from LoggingInterface | |
| virtual void | log (Logtype _type, QString _message)=0 |
| virtual void | log (QString _message)=0 |
Public Member Functions | |
| QString | name () |
| Return a name for the plugin. More... | |
| QString | description () |
| Return a description of what the plugin is doing. More... | |
Private Types | |
| enum | { PEEL_SHADER_WIREFRAME = 0, PEEL_SHADER_HIDDENLINE = 1, PEEL_SHADER_TEXTURED = 0x1, PEEL_SHADER_PHONG = 0x2, PEEL_SHADER_GOURAUD = 0x4, PEEL_SHADER_FLAT = 0x8, PEEL_SHADER_VERTEXCOLORS = 0x10, PEEL_NUM_COMBINATIONS = 0x20, PEEL_SHADER_NUM_FLAGS = 5 } |
| enum | LightType { LIGHTTYPE_DIRECTIONAL = 0, LIGHTTYPE_POINT, LIGHTTYPE_SPOT } |
| light type enumeration | |
Private Slots | |
| void | initializePlugin () |
| void | exit () |
| void | render (ACG::GLState *_glState, Viewer::ViewerProperties &_properties) |
| QString | rendererName () |
| void | supportedDrawModes (ACG::SceneGraph::DrawModes::DrawMode &_mode) |
| QString | checkOpenGL () |
Private Member Functions | |
| void | destroyResources () |
| free all gl resources | |
| void | destroyResources (int _viewerId) |
| free viewer specific gl resources | |
| void | reloadResources (int _viewerId) |
| reload gl resources | |
| void | drawQuadProj (float _x0=-1.0f, float _y0=1.0f, float _w=2.0f, float _h=2.0f) |
| draw a quad in projection space (only positions) | |
| void | traverseLightNodes (BaseNode *_node) |
| find all light nodes in the scene | |
| void | generatePeelingShaders (GLSL::StringList *_strVertexShaderOut, GLSL::StringList *_strFragmentShaderOut, GLSL::StringList *_strGeometryShaderOut, bool _textured, bool _flatShaded, bool _phong, bool _vertexColor, bool _wireFrame) |
| peel shader generator based on lights and texture mode | |
| void | updatePeelingShaderSet () |
| regenerates peeling shaders based on light nodes in scenegraph | |
| void | drawScenePass (ACG::GLState *_glState, ACG::SceneGraph::DrawModes::DrawMode _drawMode, BaseNode *_sceneGraphRoot) |
| draw the current scene | |
| void | drawScenePeelPass (ACG::GLState *_glState, ACG::SceneGraph::DrawModes::DrawMode _drawMode, BaseNode *_sceneGraphRoot, int _peelPass) |
| template<class Action > | |
| void | traverseDraw (BaseNode *_node, Action &_action, ACG::SceneGraph::DrawModes::DrawMode _globalDrawMode, int _pass, int _peelPass) |
| template<class Action > | |
| bool | traverseDrawApplyAction (BaseNode *_node, Action &_action, ACG::SceneGraph::DrawModes::DrawMode _globalDrawMode, int _pass, int _peelPass) |
| unsigned int | getPeelShaderIndex (ACG::SceneGraph::DrawModes::DrawMode _drawMode) |
| converts a drawmode to the correct shading program index | |
Private Member Functions inherited from BaseInterface | |
| virtual void | noguiSupported () |
| virtual | ~BaseInterface () |
| Destructor. | |
| virtual void | blockScenegraphUpdates (bool _block) |
| Tell the core to prevent scenegraph updates. More... | |
| virtual void | updatedObject (int _objectId) |
| An object has been changed or added by this plugin. More... | |
| virtual void | updatedObject (int _identifier, const UpdateType &_type) |
| An object has been changed or added by this plugin. More... | |
| virtual void | nodeVisibilityChanged (int _identifier) |
| A scenegraph node has been shown or hidden. More... | |
| virtual void | getCurrentRenderer (unsigned int _viewer, QString &_rendererName) |
| Get the current renderer for the given viewer. More... | |
Private Member Functions inherited from RenderInterface | |
| virtual | ~RenderInterface () |
| Destructor. | |
| virtual QAction * | optionsAction () |
| Return options menu. More... | |
| virtual QString | renderObjectsInfo (bool _outputShaderInfo) |
| Return a qstring of the current render objects. More... | |
| virtual void | reloadShaders () |
| Reload any renderer specific shaders. More... | |
Private Member Functions inherited from LoggingInterface | |
| virtual | ~LoggingInterface () |
| Destructor. | |
Private Attributes | |
| std::map< int, ViewerResources > | viewerRes_ |
| GLSL::Shader * | blendShaders_ [8] |
| shader resources | |
| GLSL::Program * | blendDualPeelProg_ [4] |
| depth peeling programs | |
| GLSL::Shader * | peelShaders_ [PEEL_NUM_COMBINATIONS *3] |
| generated shader set | |
| GLSL::Program * | peelProgs_ [PEEL_NUM_COMBINATIONS] |
| generates shader programs | |
| GLuint | blendQueryID_ |
| fragment query | |
| ACG::GLState * | glStateTmp_ |
| current glState ptr for hiddenline rendering | |
| GLuint | numLights_ |
| number of used lights in the scene | |
| LightType | lightTypes_ [16] |
| registered lights in the scene | |
| GLuint | glLightIDs_ [16] |
| matching GL light id | |
Definition at line 61 of file ClassicDepthPeeling.hh.
|
inlinevirtual |
Return a description of what the plugin is doing.
This function has to return a basic description of the plugin
Implements BaseInterface.
Definition at line 84 of file ClassicDepthPeeling.hh.
|
inlinevirtual |
Return a name for the plugin.
This Function has to return the name of the plugin.
Implements BaseInterface.
Definition at line 83 of file ClassicDepthPeeling.hh.