#include <landscapevb_info.h>
Definition at line 42 of file landscapevb_info.h.
Public Member Functions | |
void | setupVertexBuffer (CVertexBuffer &vb, bool forVertexProgram) |
void | setupVertexBufferHard (IVertexBufferHard &vb, void *vcoord, bool forVertexProgram) |
Data Fields | |
uint32 | AlphaInfoOff |
void * | AlphaInfoPointer |
uint32 | ColorOff |
void * | ColorPointer |
uint32 | DeltaPosOff |
void * | DeltaPosPointer |
uint32 | GeomInfoOff |
void * | GeomInfoPointer |
uint32 | NumVertices |
uint32 | TexCoordOff0 |
uint32 | TexCoordOff1 |
void * | TexCoordPointer0 |
void * | TexCoordPointer1 |
void * | VertexCoordPointer |
uint32 | VertexFormat |
uint32 | VertexSize |
Private Member Functions | |
void | setupNullPointers () |
void | setupPointersForVertexProgram () |
|
Definition at line 46 of file landscapevb_info.cpp. References AlphaInfoPointer, ColorPointer, DeltaPosPointer, GeomInfoPointer, TexCoordPointer0, TexCoordPointer1, and VertexCoordPointer. Referenced by setupVertexBuffer(), and setupVertexBufferHard().
00047 { 00048 VertexCoordPointer= NULL; 00049 TexCoordPointer0= NULL; 00050 TexCoordPointer1= NULL; 00051 ColorPointer= NULL; 00052 GeomInfoPointer= NULL; 00053 DeltaPosPointer= NULL; 00054 AlphaInfoPointer= NULL; 00055 } |
|
Definition at line 59 of file landscapevb_info.cpp. References AlphaInfoOff, AlphaInfoPointer, DeltaPosOff, DeltaPosPointer, GeomInfoOff, GeomInfoPointer, TexCoordOff0, TexCoordOff1, TexCoordPointer0, TexCoordPointer1, uint8, and VertexCoordPointer. Referenced by setupVertexBuffer(), and setupVertexBufferHard().
00060 { 00061 // see CLandscapeVBAllocator for program definition. 00062 uint8 *vcoord= (uint8*)VertexCoordPointer; 00063 00064 TexCoordPointer0= vcoord + TexCoordOff0; 00065 TexCoordPointer1= vcoord + TexCoordOff1; 00066 GeomInfoPointer= vcoord + GeomInfoOff; 00067 DeltaPosPointer= vcoord + DeltaPosOff; 00068 AlphaInfoPointer= vcoord + AlphaInfoOff; 00069 } |
|
Definition at line 73 of file landscapevb_info.cpp. References AlphaInfoOff, ColorOff, ColorPointer, DeltaPosOff, GeomInfoOff, NL3D::CVertexBuffer::getColorOff(), NL3D::CVertexBuffer::getColorPointer(), NL3D::CVertexBuffer::getNumVertices(), NL3D::CVertexBuffer::getTexCoordOff(), NL3D::CVertexBuffer::getTexCoordPointer(), NL3D::CVertexBuffer::getValueOffEx(), NL3D::CVertexBuffer::getVertexCoordPointer(), NL3D::CVertexBuffer::getVertexFormat(), NL3D::CVertexBuffer::getVertexSize(), NL3D_LANDSCAPE_VPPOS_ALPHAINFO, NL3D_LANDSCAPE_VPPOS_DELTAPOS, NL3D_LANDSCAPE_VPPOS_GEOMINFO, NL3D_LANDSCAPE_VPPOS_TEX0, NL3D_LANDSCAPE_VPPOS_TEX1, setupNullPointers(), setupPointersForVertexProgram(), TexCoordOff0, TexCoordOff1, TexCoordPointer0, TexCoordPointer1, and VertexCoordPointer. Referenced by NL3D::CLandscapeVBAllocator::lockBuffer().
00074 { 00075 VertexFormat= vb.getVertexFormat(); 00076 VertexSize= vb.getVertexSize(); 00077 NumVertices= vb.getNumVertices(); 00078 00079 if(NumVertices==0) 00080 { 00081 setupNullPointers(); 00082 return; 00083 } 00084 00085 VertexCoordPointer= vb.getVertexCoordPointer(); 00086 00087 if(forVertexProgram) 00088 { 00089 // With VertexCoordPointer setuped, init for VP. 00090 TexCoordOff0= vb.getValueOffEx(NL3D_LANDSCAPE_VPPOS_TEX0); // v[8]= Tex0. 00091 TexCoordOff1= vb.getValueOffEx(NL3D_LANDSCAPE_VPPOS_TEX1); // v[9]= Tex1. 00092 GeomInfoOff= vb.getValueOffEx(NL3D_LANDSCAPE_VPPOS_GEOMINFO); // v[10]= GeomInfos. 00093 DeltaPosOff= vb.getValueOffEx(NL3D_LANDSCAPE_VPPOS_DELTAPOS); // v[11]= EndPos-StartPos 00094 // Init Alpha Infos only if enabled (enabled if Value 5 are). 00095 AlphaInfoOff= 0; 00096 if( vb.getVertexFormat() & (1<<NL3D_LANDSCAPE_VPPOS_ALPHAINFO) ) 00097 AlphaInfoOff= vb.getValueOffEx(NL3D_LANDSCAPE_VPPOS_ALPHAINFO); // v[12]= AlphaInfos 00098 00099 // update Ptrs. 00100 setupPointersForVertexProgram(); 00101 } 00102 else 00103 { 00104 TexCoordOff0= vb.getTexCoordOff(0); 00105 TexCoordOff1= vb.getTexCoordOff(1); 00106 TexCoordPointer0= vb.getTexCoordPointer(0, 0); 00107 TexCoordPointer1= vb.getTexCoordPointer(0, 1); 00108 00109 // In Far0, we don't have Color component. 00110 if(VertexFormat & CVertexBuffer::PrimaryColorFlag) 00111 { 00112 ColorOff= vb.getColorOff(); 00113 ColorPointer= vb.getColorPointer(); 00114 } 00115 else 00116 { 00117 ColorOff= 0; 00118 ColorPointer= NULL; 00119 } 00120 } 00121 00122 } |
|
Definition at line 124 of file landscapevb_info.cpp. References AlphaInfoOff, ColorOff, ColorPointer, DeltaPosOff, GeomInfoOff, NL3D::IVertexBufferHard::getNumVertices(), NL3D::IVertexBufferHard::getValueOff(), NL3D::IVertexBufferHard::getVertexFormat(), NL3D::IVertexBufferHard::getVertexSize(), NL3D_LANDSCAPE_VPPOS_ALPHAINFO, NL3D_LANDSCAPE_VPPOS_DELTAPOS, NL3D_LANDSCAPE_VPPOS_GEOMINFO, NL3D_LANDSCAPE_VPPOS_TEX0, NL3D_LANDSCAPE_VPPOS_TEX1, setupNullPointers(), setupPointersForVertexProgram(), TexCoordOff0, TexCoordOff1, TexCoordPointer0, TexCoordPointer1, uint8, and VertexCoordPointer. Referenced by NL3D::CLandscapeVBAllocator::lockBuffer().
00125 { 00126 VertexFormat= vb.getVertexFormat(); 00127 VertexSize= vb.getVertexSize(); 00128 NumVertices= vb.getNumVertices(); 00129 00130 if(NumVertices==0) 00131 { 00132 setupNullPointers(); 00133 return; 00134 } 00135 00136 VertexCoordPointer= vcoord; 00137 00138 if(forVertexProgram) 00139 { 00140 // With VertexCoordPointer setuped, init for VP. 00141 TexCoordOff0= vb.getValueOff(NL3D_LANDSCAPE_VPPOS_TEX0); // v[8]= Tex0. 00142 TexCoordOff1= vb.getValueOff(NL3D_LANDSCAPE_VPPOS_TEX1); // v[9]= Tex1. 00143 GeomInfoOff= vb.getValueOff(NL3D_LANDSCAPE_VPPOS_GEOMINFO); // v[10]= GeomInfos. 00144 DeltaPosOff= vb.getValueOff(NL3D_LANDSCAPE_VPPOS_DELTAPOS); // v[11]= EndPos-StartPos 00145 // Init Alpha Infos only if enabled (enabled if Value 5 are). 00146 AlphaInfoOff= 0; 00147 if( vb.getVertexFormat() & (1<<NL3D_LANDSCAPE_VPPOS_ALPHAINFO) ) 00148 AlphaInfoOff= vb.getValueOff(NL3D_LANDSCAPE_VPPOS_ALPHAINFO); // v[12]= AlphaInfos 00149 00150 // update Ptrs. 00151 setupPointersForVertexProgram(); 00152 } 00153 else 00154 { 00155 TexCoordOff0= vb.getValueOff (CVertexBuffer::TexCoord0); 00156 TexCoordOff1= vb.getValueOff (CVertexBuffer::TexCoord1); 00157 TexCoordPointer0= (uint8*)vcoord + TexCoordOff0; 00158 TexCoordPointer1= (uint8*)vcoord + TexCoordOff1; 00159 00160 // In Far0, we don't have Color component. 00161 if(VertexFormat & CVertexBuffer::PrimaryColorFlag) 00162 { 00163 ColorOff= vb.getValueOff (CVertexBuffer::PrimaryColor); 00164 ColorPointer= (uint8*)vcoord + ColorOff; 00165 } 00166 else 00167 { 00168 ColorOff= 0; 00169 ColorPointer= NULL; 00170 } 00171 } 00172 } |
|
Definition at line 62 of file landscapevb_info.h. Referenced by setupPointersForVertexProgram(), setupVertexBuffer(), and setupVertexBufferHard(). |
|
Definition at line 59 of file landscapevb_info.h. Referenced by setupNullPointers(), and setupPointersForVertexProgram(). |
|
Definition at line 54 of file landscapevb_info.h. Referenced by setupVertexBuffer(), and setupVertexBufferHard(). |
|
Definition at line 51 of file landscapevb_info.h. Referenced by setupNullPointers(), setupVertexBuffer(), and setupVertexBufferHard(). |
|
Definition at line 61 of file landscapevb_info.h. Referenced by setupPointersForVertexProgram(), setupVertexBuffer(), and setupVertexBufferHard(). |
|
Definition at line 58 of file landscapevb_info.h. Referenced by setupNullPointers(), and setupPointersForVertexProgram(). |
|
Definition at line 60 of file landscapevb_info.h. Referenced by setupPointersForVertexProgram(), setupVertexBuffer(), and setupVertexBufferHard(). |
|
Definition at line 57 of file landscapevb_info.h. Referenced by setupNullPointers(), and setupPointersForVertexProgram(). |
|
Definition at line 47 of file landscapevb_info.h. |
|
Definition at line 52 of file landscapevb_info.h. Referenced by setupPointersForVertexProgram(), setupVertexBuffer(), and setupVertexBufferHard(). |
|
Definition at line 53 of file landscapevb_info.h. Referenced by setupPointersForVertexProgram(), setupVertexBuffer(), and setupVertexBufferHard(). |
|
Definition at line 49 of file landscapevb_info.h. Referenced by setupNullPointers(), setupPointersForVertexProgram(), setupVertexBuffer(), and setupVertexBufferHard(). |
|
Definition at line 50 of file landscapevb_info.h. Referenced by setupNullPointers(), setupPointersForVertexProgram(), setupVertexBuffer(), and setupVertexBufferHard(). |
|
Definition at line 48 of file landscapevb_info.h. Referenced by setupNullPointers(), setupPointersForVertexProgram(), setupVertexBuffer(), and setupVertexBufferHard(). |
|
Definition at line 45 of file landscapevb_info.h. |
|
Definition at line 46 of file landscapevb_info.h. |