ScanMountGoat/SFGraphics

Add support for non interleaved vertex attributes to generic mesh

ScanMountGoat opened this issue · 1 comments

This will probably need to be a separate class due to the differences in how attributes are handled. A separate buffer should be stored for each attribute to avoid the issues from using a global buffer.

https://stackoverflow.com/questions/14249634/opengl-vaos-and-multiple-buffers

  • Separate non related code into abstract class
  • Generic Mesh Non Interleaved
  • Unit Tests for attribute validation.
  • Configure buffers and attributes separately
  • Configure buffers and attributes in one function if whole buffer is used
  • Add buffer using an existing buffer object (allows sharing a buffer between meshes)

glVertexAttribBinding and glBindVertexBuffer will likely be required to support Smash Ultimate's buffers. This will require bumping the OpenGL version to 4.30. It may be possible to create this functionality using the existing functions.
https://www.khronos.org/opengl/wiki/Vertex_Specification#Separate_attribute_format