X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fvertexbuilder.h;h=7a1c943c9ed18b7f6f2330cdc67b0ebb76bc4197;hb=8e9d872c2ba8dc633d29a673ba93adf38d262a5c;hp=764fef500ab0108eae10a10b815eac5be6a06598;hpb=524515ae47ea553e8e1b9381c2027208f2d096db;p=libs%2Fgl.git diff --git a/source/vertexbuilder.h b/source/vertexbuilder.h index 764fef50..7a1c943c 100644 --- a/source/vertexbuilder.h +++ b/source/vertexbuilder.h @@ -1,10 +1,3 @@ -/* $Id$ - -This file is part of libmspgl -Copyright © 2007, 2009-2010 Mikko Rasa, Mikkosoft Productions -Distributed under the LGPL -*/ - #ifndef MSP_GL_VERTEXBUILDER_H_ #define MSP_GL_VERTEXBUILDER_H_ @@ -12,6 +5,7 @@ Distributed under the LGPL #include "color.h" #include "matrix.h" #include "vector.h" +#include "vertexformat.h" namespace Msp { namespace GL { @@ -67,6 +61,24 @@ public: nor = Vector3(tn.x, tn.y, tn.z); } + void tangent(float x, float y, float z) + { tangent(Vector3(x, y, z)); } + + void tangent(const Vector3 &t) + { + Vector4 tt = mtx.top()*Vector4(t.x, t.y, t.z, 0); + attrib(get_component_type(TANGENT3), tt); + } + + void binormal(float x, float y, float z) + { binormal(Vector3(x, y, z)); } + + void binormal(const Vector3 &b) + { + Vector4 tb = mtx.top()*Vector4(b.x, b.y, b.z, 0); + attrib(get_component_type(BINORMAL3), tb); + } + void texcoord(float s) { texcoord(s, 0, 0, 1); }