Render Stability

From Second Life Wiki
Jump to navigation Jump to search


Objectives

  • Intermediate goal: Abstract OpenGL calls so that state can be tracked for the purpose of isolating GL driver bugs
  • Ultimate goal: Abstract all OpenGL usage so that SecondLife can be easily ported to another renderer (e.g. DirectX)

See Also

Tasks

GL Cleanup

  • Reduce the number of places the viewer makes calls to OpenGL so that markers can be set before each call
    • Then, if the viewer crashes even without generating a call stack, the marker value is returned, helping to isolate where the crash occurred

GL Abstraction

  • Complete LLVertexBuffer abstraction
  • Material abstraction
    • shader and texture setup
  • Vertex Buffer Auditing
  • Minimize LLGLState Calls