Attached are several fixes to dtAnim which I hope will be considered for inclusion into Delta 3D:
- Adds ReleaseGLObjects() to dtAnim::Cal3DDatabase and dtAnim::Cal3DLoader
This is necessary to reset OpenGL handles if the application needs to re-create the OpenGL context, for example when reconfiguring the OpenGL window.
- Fixed a couple of bugs that prevented Cal3D hardware submeshes for working properly.&nbps; Because the space available to store uniforms in the shader is limited and can be exceeded if a character has many bones, cal3d can split a single character mesh into multiple meshes affected by a subset of bones.&nbps; This
- Bone weights and bone indices are denoted in shader as vertex attributes rather than packed into texture coordinates.
- Adds VBO_Offset_ constants instead of literal offsets so the layout of the vertex buffer can be more easily modified
- Added support for tangent space vectors to be associated with vertices.&nbps; This is necessary to support normal mapping in the fragment shader.
- Provides an updated hardware vertex shader for characters based on these changes
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally by: r.erik.johnson
Hi, thanks for the changes!
I hate to ask, but can you re-attach your changes as an SVN patch file? It's troublesome trying to figure out which SVN revision your changes came from. Having a SVN patch is *much* easier and less error prone when it comes to validating your changes.
Much appreciated,
Erik
Here you go.&nbps; Creating the patch also allowed me to go back and clean it up a bit.
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally by: r.erik.johnson
Perfect, thanks. It will take awhile to digest the changes and verify everything is backwards compatible, but we'll get started on it.
Thanks,
Erik