The DejaVU Framework -- hush 3.1

include: graphic-directx-game-14-XFileDemo-Vertex.h /home/ae/www/media


- [up] [top] - index make include source logic grammar scripts html configure mx slides talks scenes reports projects
<body bgcolor="#FFFFFF" text="#000000">

//=============================================================================
// Vertex.h by Frank Luna (C) 2005 All Rights Reserved.
//
// This file contains all of our vertex structures.  We will add to it
// as needed throughout the book.
//=============================================================================

include <d3dx9.h>

ifndef VERTEX_H
define VERTEX_H

// Call in constructor and destructor, respectively, of derived application class.
void InitAllVertexDeclarations();
void DestroyAllVertexDeclarations();

//===============================================================
struct VertexPos
{
        VertexPos():pos(0.0f, 0.0f, 0.0f){}
        VertexPos(float x, float y, float z):pos(x,y,z){}
        VertexPos(const D3DXVECTOR3& v):pos(v){}

        D3DXVECTOR3 pos;
        static IDirect3DVertexDeclaration9* Decl;
};

//===============================================================
struct VertexCol
{
        VertexCol():pos(0.0f, 0.0f, 0.0f),col(0x00000000){}
        VertexCol(float x, float y, float z, D3DCOLOR c):pos(x,y,z), col(c){}
        VertexCol(const D3DXVECTOR3& v, D3DCOLOR c):pos(v),col(c){}

        D3DXVECTOR3 pos;
        D3DCOLOR    col;
        static IDirect3DVertexDeclaration9* Decl;
};

//===============================================================
struct VertexPN
{
        VertexPN()
                :pos(0.0f, 0.0f, 0.0f),
                normal(0.0f, 0.0f, 0.0f){}
        VertexPN(float x, float y, float z, 
                float nx, float ny, float nz):pos(x,y,z), normal(nx,ny,nz){}
        VertexPN(const D3DXVECTOR3& v, const D3DXVECTOR3& n)
                :pos(v),normal(n){}

        D3DXVECTOR3 pos;
        D3DXVECTOR3 normal;
        static IDirect3DVertexDeclaration9* Decl;
};

//===============================================================
struct VertexPNT
{
        VertexPNT()
                :pos(0.0f, 0.0f, 0.0f),
                normal(0.0f, 0.0f, 0.0f),
                tex0(0.0f, 0.0f){}
        VertexPNT(float x, float y, float z, 
                float nx, float ny, float nz,
                float u, float v):pos(x,y,z), normal(nx,ny,nz), tex0(u,v){}
        VertexPNT(const D3DXVECTOR3& v, const D3DXVECTOR3& n, const D3DXVECTOR2& uv)
                :pos(v),normal(n), tex0(uv){}

        D3DXVECTOR3 pos;
        D3DXVECTOR3 normal;
        D3DXVECTOR2 tex0;

        static IDirect3DVertexDeclaration9* Decl;
};

endif // VERTEX_H
<hr> <style type="text/css"> div.mainnavigate { margin: 20px 2px; /* background-color: #ffffff; */ border: 1px solid black; } </style> <div class=xnavigate> [] <black>readme</black> course(s) preface <black>I</black> 1 2 <black>II</black> 3 4 <black>III</black> 5 6 7 <black>IV</black> 8 9 10 <black>V</black> 11 12 afterthought(s) <black>appendix</black> reference(s) example(s) <black>resource(s)</black> _ </div> <hr>

(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author. </div> <script src="http://www.google-analytics.com/urchin.js" type="text/javascript"> </script> <script type="text/javascript"> _uacct = "UA-2780434-1"; urchinTracker(); </script> </body> </html> <hr> <hr> <table cellpadding=10> <tr> <td> <address> Hush Online Technology </address> hush@cs.vu.nl <br>04/07/09 </td><td> </td> <td></td><td></td><td></td><td></td><td></td><td></td><td></td> <td> </td> </tr> </table>