]> git.tdb.fi Git - libs/gl.git/blobdiff - source/core/vertexarray.cpp
Include only tangent in mesh data and calculate binormal on the fly
[libs/gl.git] / source / core / vertexarray.cpp
index 712e76e6011c2ce8aec1e70668d4e8f0ec76f21b..347e42595a1387bf7630a87344a6dc96f7425ac3 100644 (file)
@@ -74,9 +74,16 @@ VertexArray::Loader::Loader(VertexArray &a):
        add("generic", static_cast<void (Loader::*)(unsigned, float, float)>(&Loader::generic));
        add("generic", static_cast<void (Loader::*)(unsigned, float, float, float)>(&Loader::generic));
        add("generic", static_cast<void (Loader::*)(unsigned, float, float, float, float)>(&Loader::generic));
-       add("tangent", static_cast<void (Loader::*)(float, float, float)>(&Loader::tangent));
-       add("binormal", static_cast<void (Loader::*)(float, float, float)>(&Loader::binormal));
+       add("group", static_cast<void (Loader::*)(int)>(&Loader::group));
+       add("group", static_cast<void (Loader::*)(int, int)>(&Loader::group));
+       add("group", static_cast<void (Loader::*)(int, int, int)>(&Loader::group));
+       add("group", static_cast<void (Loader::*)(int, int, int, int)>(&Loader::group));
+       add("weight", static_cast<void (Loader::*)(float)>(&Loader::weight));
+       add("weight", static_cast<void (Loader::*)(float, float)>(&Loader::weight));
+       add("weight", static_cast<void (Loader::*)(float, float, float)>(&Loader::weight));
+       add("weight", static_cast<void (Loader::*)(float, float, float, float)>(&Loader::weight));
 
+       // Deprecated
        add("vertex2",   static_cast<void (Loader::*)(float, float)>(&Loader::vertex));
        add("vertex3",   static_cast<void (Loader::*)(float, float, float)>(&Loader::vertex));
        add("vertex4",   static_cast<void (Loader::*)(float, float, float, float)>(&Loader::vertex));
@@ -95,8 +102,13 @@ VertexArray::Loader::Loader(VertexArray &a):
        add("generic2",  static_cast<void (Loader::*)(unsigned, float, float)>(&Loader::generic));
        add("generic3",  static_cast<void (Loader::*)(unsigned, float, float, float)>(&Loader::generic));
        add("generic4",  static_cast<void (Loader::*)(unsigned, float, float, float, float)>(&Loader::generic));
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
        add("tangent3",  static_cast<void (Loader::*)(float, float, float)>(&Loader::tangent));
        add("binormal3", static_cast<void (Loader::*)(float, float, float)>(&Loader::binormal));
+       add("tangent", static_cast<void (Loader::*)(float, float, float)>(&Loader::tangent));
+       add("binormal", static_cast<void (Loader::*)(float, float, float)>(&Loader::binormal));
+#pragma GCC diagnostic pop
 }
 
 } // namespace GL