Qt3D Renderer Submission: Difference between revisions
Jump to navigation
Jump to search
AutoSpider (talk | contribs) (Add "cleanup" tag) |
AutoSpider (talk | contribs) (Remove non-functioning "toc" command) |
||
Line 2: | Line 2: | ||
[[Category:Developing_with_Qt::Qt3D]] | [[Category:Developing_with_Qt::Qt3D]] | ||
= Qt3D Renderer Submission = | = Qt3D Renderer Submission = |
Latest revision as of 12:33, 17 April 2015
This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine. Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean. |
Qt3D Renderer Submission
OpenGL Rendering
The actual OpenGL Rendering takes place in the RenderThread context. The thread is woken up when a RenderQueue is completed.
The rendering goes as follow :
- For each RenderView in the Frame queue
- Set the Viewport
- Set the Camera
- Clear the scene
- For each RenderCommand in the RenderView
- Create and bind the RenderCommand's VAO if it doesn't already exists for a given MeshData
- Bind the OpenGLProgram to use for the given Material/RenderPass/Technique
- Set the attributes
- Release the VAO
- Set the DrawState to be used for the current Material/RenderPass/Technique
- Set the Mesh matrix
- Set the Mesh Material
- Set the uniforms for the given Material
- Bind the VAO
- OpenGL draw call
- Release and Destroy VAO