AvogadroLibs Development

From wiki.openchemistry.org
Revision as of 16:14, 2 June 2012 by Marcus.hanwell (talk | contribs) (Writing a few thoughts on the render pass.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Current development tasks:

  • Impostor rendering
    • Speheres [Done]
    • Cylinders
  • Plugins
    • Rendering
    • Tools
    • Extensions

Design of the rendering pipeline. Using GL 2.1, and aiming to only use features present in GLES 2.0 so that embedded systems can be targeted in future. There is no immediate mode rendering, all rendering components must put any visible elements into the scene graph in order for it to be rendered. Buffer objects are used to reduce memory copying from CPU to GPU.

This means that multiple render methods can be run simultaneously, allowing for a non-blocking interface with the opportunity for block copying of data to the GPU once it is in the correct form. It also prevents one slow rendering method from keeping other methods from returning quickly and interactively. Once an render method completes it will be queued for rendering to screen.