Code movin' and cleanup again, in the GL plugin. Planning to turn NativeVertexFormat into something cachable, instead of locked to each VertexLoader.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@948 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
hrydgard
2008-10-24 23:08:46 +00:00
parent a03f39ac36
commit 72d8c3344b
30 changed files with 591 additions and 474 deletions

View File

@ -317,9 +317,9 @@ void VertexLoader::SetupTexCoord(int num, int mode, int format, int elements, in
}
}
void VertexLoader::WriteCall(void (LOADERDECL *func)(void *))
void VertexLoader::WriteCall(TPipelineFunction func)
{
m_PipelineStates[m_numPipelineStates++] = func;;
m_PipelineStates[m_numPipelineStates++] = func;
}
using namespace Gen;

View File

@ -48,7 +48,7 @@ int ComputeVertexSize(u32 components);
#include "DataReader.h"
#define LOADERDECL __cdecl
typedef void (LOADERDECL *TPipelineFunction)(void*);
typedef void (LOADERDECL *TPipelineFunction)(const void*);
class VertexLoader
{
@ -127,7 +127,7 @@ public:
void Compile();
void PrepareRun();
void RunVertices(int count);
void WriteCall(void (LOADERDECL *func)(void *));
void WriteCall(TPipelineFunction func);
int GetVertexSize(){return m_VertexSize;}
//VtxDesc - global

View File

@ -82,7 +82,7 @@ inline u32 _Read32(u32 iAddress)
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
void LOADERDECL Color_ReadDirect_24b_888(void* _p)
void LOADERDECL Color_ReadDirect_24b_888(const void *_p)
{
u32 col = DataReadU8()<<RSHIFT;
col |= DataReadU8()<<GSHIFT;
@ -90,22 +90,22 @@ void LOADERDECL Color_ReadDirect_24b_888(void* _p)
_SetCol(col | (0xFF<<ASHIFT));
}
void LOADERDECL Color_ReadDirect_32b_888x(void* _p){
void LOADERDECL Color_ReadDirect_32b_888x(const void *_p){
u32 col = DataReadU8()<<RSHIFT;
col |= DataReadU8()<<GSHIFT;
col |= DataReadU8()<<BSHIFT;
_SetCol(col | (0xFF<<ASHIFT));
DataReadU8();
}
void LOADERDECL Color_ReadDirect_16b_565(void* _p)
void LOADERDECL Color_ReadDirect_16b_565(const void *_p)
{
_SetCol565(DataReadU16());
}
void LOADERDECL Color_ReadDirect_16b_4444(void *_p)
void LOADERDECL Color_ReadDirect_16b_4444(const void *_p)
{
_SetCol4444(DataReadU16());
}
void LOADERDECL Color_ReadDirect_24b_6666(void* _p)
void LOADERDECL Color_ReadDirect_24b_6666(const void *_p)
{
u32 val = DataReadU8()<<16;
val|=DataReadU8()<<8;
@ -120,7 +120,7 @@ void LOADERDECL Color_ReadDirect_24b_6666(void* _p)
// else
// col |= 0xFF<<ASHIFT;
//
void LOADERDECL Color_ReadDirect_32b_8888(void* _p)
void LOADERDECL Color_ReadDirect_32b_8888(const void *_p)
{
u32 col = DataReadU8()<<RSHIFT;
col |= DataReadU8()<<GSHIFT;
@ -136,33 +136,33 @@ void LOADERDECL Color_ReadDirect_32b_8888(void* _p)
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
void LOADERDECL Color_ReadIndex8_16b_565(void* _p)
void LOADERDECL Color_ReadIndex8_16b_565(const void *_p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR+colIndex]);
u16 val = Memory_Read_U16(iAddress);
_SetCol565(val);
}
void LOADERDECL Color_ReadIndex8_24b_888(void* _p)
void LOADERDECL Color_ReadIndex8_24b_888(const void *_p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR+colIndex]);
_SetCol(_Read24(iAddress));
}
void LOADERDECL Color_ReadIndex8_32b_888x(void* _p)
void LOADERDECL Color_ReadIndex8_32b_888x(const void *_p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR]+colIndex);
_SetCol(_Read24(iAddress));
}
void LOADERDECL Color_ReadIndex8_16b_4444(void* _p)
void LOADERDECL Color_ReadIndex8_16b_4444(const void *_p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR+colIndex]);
u16 val = Memory_Read_U16(iAddress);
_SetCol4444(val);
}
void LOADERDECL Color_ReadIndex8_24b_6666(void* _p)
void LOADERDECL Color_ReadIndex8_24b_6666(const void *_p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR+colIndex]);
@ -172,7 +172,7 @@ void LOADERDECL Color_ReadIndex8_24b_6666(void* _p)
_SetCol6666(val);
}
void LOADERDECL Color_ReadIndex8_32b_8888(void* _p)
void LOADERDECL Color_ReadIndex8_32b_8888(const void *_p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR+colIndex]);
@ -181,33 +181,33 @@ void LOADERDECL Color_ReadIndex8_32b_8888(void* _p)
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
void LOADERDECL Color_ReadIndex16_16b_565(void* _p)
void LOADERDECL Color_ReadIndex16_16b_565(const void *_p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR+colIndex]);
u16 val = Memory_Read_U16(iAddress);
_SetCol565(val);
}
void LOADERDECL Color_ReadIndex16_24b_888(void* _p)
void LOADERDECL Color_ReadIndex16_24b_888(const void *_p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR+colIndex]);
_SetCol(_Read24(iAddress));
}
void LOADERDECL Color_ReadIndex16_32b_888x(void* _p)
void LOADERDECL Color_ReadIndex16_32b_888x(const void *_p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR+colIndex]);
_SetCol(_Read24(iAddress));
}
void LOADERDECL Color_ReadIndex16_16b_4444(void* _p)
void LOADERDECL Color_ReadIndex16_16b_4444(const void *_p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR+colIndex]);
u16 val = Memory_Read_U16(iAddress);
_SetCol4444(val);
}
void LOADERDECL Color_ReadIndex16_24b_6666(void* _p)
void LOADERDECL Color_ReadIndex16_24b_6666(const void *_p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR+colIndex]);
@ -216,7 +216,7 @@ void LOADERDECL Color_ReadIndex16_24b_6666(void* _p)
(Memory_Read_U8(iAddress)<<16);
_SetCol6666(val);
}
void LOADERDECL Color_ReadIndex16_32b_8888(void* _p)
void LOADERDECL Color_ReadIndex16_32b_8888(const void *_p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_COLOR+colIndex] + (Index * arraystrides[ARRAY_COLOR+colIndex]);

View File

@ -24,7 +24,7 @@
// ==============================================================================
// Direct
// ==============================================================================
void LOADERDECL PosMtx_ReadDirect_UByte(void* _p)
void LOADERDECL PosMtx_ReadDirect_UByte(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
int index = DataReadU8() & 0x3f;
@ -33,7 +33,7 @@ void LOADERDECL PosMtx_ReadDirect_UByte(void* _p)
}
int s_texmtxread = 0, s_texmtxwrite = 0;
void LOADERDECL TexMtx_ReadDirect_UByte(void* _p)
void LOADERDECL TexMtx_ReadDirect_UByte(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
int index = DataReadU8() & 0x3f;

View File

@ -128,7 +128,7 @@ VertexLoader_Normal::GetFunction(unsigned int _type, unsigned int _format, unsig
// Normal_DirectByte
//
void LOADERDECL
VertexLoader_Normal::Normal_DirectByte(void* _p)
VertexLoader_Normal::Normal_DirectByte(const void* _p)
{
varray->SetNormalX(0, ((float)(signed char)DataReadU8()+0.5f) / 127.5f);
varray->SetNormalY(0, ((float)(signed char)DataReadU8()+0.5f) / 127.5f);
@ -139,7 +139,7 @@ VertexLoader_Normal::Normal_DirectByte(void* _p)
// Normal_DirectShort
//
void LOADERDECL
VertexLoader_Normal::Normal_DirectShort(void* _p)
VertexLoader_Normal::Normal_DirectShort(const void* _p)
{
varray->SetNormalX(0, ((float)(signed short)DataReadU16()+0.5f) / 32767.5f);
varray->SetNormalY(0, ((float)(signed short)DataReadU16()+0.5f) / 32767.5f);
@ -150,7 +150,7 @@ VertexLoader_Normal::Normal_DirectShort(void* _p)
// Normal_DirectFloat
//
void LOADERDECL
VertexLoader_Normal::Normal_DirectFloat(void* _p)
VertexLoader_Normal::Normal_DirectFloat(const void* _p)
{
varray->SetNormalX(0, DataReadF32());
varray->SetNormalY(0, DataReadF32());
@ -161,7 +161,7 @@ VertexLoader_Normal::Normal_DirectFloat(void* _p)
// Normal_DirectByte3
//
void LOADERDECL
VertexLoader_Normal::Normal_DirectByte3(void* _p)
VertexLoader_Normal::Normal_DirectByte3(const void* _p)
{
for (int i=0; i<3; i++)
{
@ -175,7 +175,7 @@ VertexLoader_Normal::Normal_DirectByte3(void* _p)
// Normal_DirectShort3
//
void LOADERDECL
VertexLoader_Normal::Normal_DirectShort3(void* _p)
VertexLoader_Normal::Normal_DirectShort3(const void* _p)
{
for (int i=0; i<3; i++)
{
@ -189,7 +189,7 @@ VertexLoader_Normal::Normal_DirectShort3(void* _p)
// Normal_DirectFloat3
//
void LOADERDECL
VertexLoader_Normal::Normal_DirectFloat3(void* _p)
VertexLoader_Normal::Normal_DirectFloat3(const void* _p)
{
for (int i=0; i<3; i++)
{
@ -209,7 +209,7 @@ VertexLoader_Normal::Normal_DirectFloat3(void* _p)
// Normal_Index8_Byte
//
void LOADERDECL
VertexLoader_Normal::Normal_Index8_Byte(void* _p)
VertexLoader_Normal::Normal_Index8_Byte(const void* _p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_NORMAL] + (Index * arraystrides[ARRAY_NORMAL]);
@ -223,7 +223,7 @@ VertexLoader_Normal::Normal_Index8_Byte(void* _p)
// Normal_Index8_Short
//
void LOADERDECL
VertexLoader_Normal::Normal_Index8_Short(void* _p)
VertexLoader_Normal::Normal_Index8_Short(const void* _p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_NORMAL] + (Index * arraystrides[ARRAY_NORMAL]);
@ -237,7 +237,7 @@ VertexLoader_Normal::Normal_Index8_Short(void* _p)
// Normal_Index8_Float
//
void LOADERDECL
VertexLoader_Normal::Normal_Index8_Float(void* _p)
VertexLoader_Normal::Normal_Index8_Float(const void* _p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_NORMAL] + (Index * arraystrides[ARRAY_NORMAL]);
@ -251,7 +251,7 @@ VertexLoader_Normal::Normal_Index8_Float(void* _p)
// Normal_Index8_Byte3
//
void LOADERDECL
VertexLoader_Normal::Normal_Index8_Byte3(void* _p)
VertexLoader_Normal::Normal_Index8_Byte3(const void* _p)
{
if (index3)
{
@ -283,7 +283,7 @@ VertexLoader_Normal::Normal_Index8_Byte3(void* _p)
// Normal_Index8_Short3
//
void LOADERDECL
VertexLoader_Normal::Normal_Index8_Short3(void* _p)
VertexLoader_Normal::Normal_Index8_Short3(const void* _p)
{
if (index3)
{
@ -315,7 +315,7 @@ VertexLoader_Normal::Normal_Index8_Short3(void* _p)
// Normal_Index8_Float3
//
void LOADERDECL
VertexLoader_Normal::Normal_Index8_Float3(void* _p)
VertexLoader_Normal::Normal_Index8_Float3(const void* _p)
{
if (index3)
{
@ -353,7 +353,7 @@ VertexLoader_Normal::Normal_Index8_Float3(void* _p)
// Normal_Index16_Byte
//
void LOADERDECL
VertexLoader_Normal::Normal_Index16_Byte(void* _p)
VertexLoader_Normal::Normal_Index16_Byte(const void* _p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_NORMAL] + (Index * arraystrides[ARRAY_NORMAL]);
@ -367,7 +367,7 @@ VertexLoader_Normal::Normal_Index16_Byte(void* _p)
// Normal_Index16_Short
//
void LOADERDECL
VertexLoader_Normal::Normal_Index16_Short(void* _p)
VertexLoader_Normal::Normal_Index16_Short(const void* _p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_NORMAL] + (Index * arraystrides[ARRAY_NORMAL]);
@ -381,7 +381,7 @@ VertexLoader_Normal::Normal_Index16_Short(void* _p)
// Normal_Index8_Float
//
void LOADERDECL
VertexLoader_Normal::Normal_Index16_Float(void* _p)
VertexLoader_Normal::Normal_Index16_Float(const void* _p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_NORMAL] + (Index * arraystrides[ARRAY_NORMAL]);
@ -395,7 +395,7 @@ VertexLoader_Normal::Normal_Index16_Float(void* _p)
// Normal_Index16_Byte3
//
void LOADERDECL
VertexLoader_Normal::Normal_Index16_Byte3(void* _p)
VertexLoader_Normal::Normal_Index16_Byte3(const void* _p)
{
if (index3)
{
@ -427,7 +427,7 @@ VertexLoader_Normal::Normal_Index16_Byte3(void* _p)
// Normal_Index16_Short3
//
void LOADERDECL
VertexLoader_Normal::Normal_Index16_Short3(void* _p)
VertexLoader_Normal::Normal_Index16_Short3(const void* _p)
{
if (index3)
{
@ -459,7 +459,7 @@ VertexLoader_Normal::Normal_Index16_Short3(void* _p)
// Normal_Index16_Float3
//
void LOADERDECL
VertexLoader_Normal::Normal_Index16_Float3(void* _p)
VertexLoader_Normal::Normal_Index16_Float3(const void* _p)
{
if (index3)
{

View File

@ -65,26 +65,26 @@ private:
static TPipelineFunction m_funcTable[NUM_NRM_TYPE][NUM_NRM_FORMAT][NUM_NRM_ELEMENTS];
// direct
static void LOADERDECL Normal_DirectByte(void* _p);
static void LOADERDECL Normal_DirectShort(void* _p);
static void LOADERDECL Normal_DirectFloat(void* _p);
static void LOADERDECL Normal_DirectByte3(void* _p);
static void LOADERDECL Normal_DirectShort3(void* _p);
static void LOADERDECL Normal_DirectFloat3(void* _p);
static void LOADERDECL Normal_DirectByte(const void* _p);
static void LOADERDECL Normal_DirectShort(const void* _p);
static void LOADERDECL Normal_DirectFloat(const void* _p);
static void LOADERDECL Normal_DirectByte3(const void* _p);
static void LOADERDECL Normal_DirectShort3(const void* _p);
static void LOADERDECL Normal_DirectFloat3(const void* _p);
// index8
static void LOADERDECL Normal_Index8_Byte(void* _p);
static void LOADERDECL Normal_Index8_Short(void* _p);
static void LOADERDECL Normal_Index8_Float(void* _p);
static void LOADERDECL Normal_Index8_Byte3(void* _p);
static void LOADERDECL Normal_Index8_Short3(void* _p);
static void LOADERDECL Normal_Index8_Float3(void* _p);
static void LOADERDECL Normal_Index8_Byte(const void* _p);
static void LOADERDECL Normal_Index8_Short(const void* _p);
static void LOADERDECL Normal_Index8_Float(const void* _p);
static void LOADERDECL Normal_Index8_Byte3(const void* _p);
static void LOADERDECL Normal_Index8_Short3(const void* _p);
static void LOADERDECL Normal_Index8_Float3(const void* _p);
// index16
static void LOADERDECL Normal_Index16_Byte(void* _p);
static void LOADERDECL Normal_Index16_Short(void* _p);
static void LOADERDECL Normal_Index16_Float(void* _p);
static void LOADERDECL Normal_Index16_Byte3(void* _p);
static void LOADERDECL Normal_Index16_Short3(void* _p);
static void LOADERDECL Normal_Index16_Float3(void* _p);
static void LOADERDECL Normal_Index16_Byte(const void* _p);
static void LOADERDECL Normal_Index16_Short(const void* _p);
static void LOADERDECL Normal_Index16_Float(const void* _p);
static void LOADERDECL Normal_Index16_Byte3(const void* _p);
static void LOADERDECL Normal_Index16_Short3(const void* _p);
static void LOADERDECL Normal_Index16_Float3(const void* _p);
};

View File

@ -63,7 +63,7 @@ void LOADERDECL _ReadPosFloatMem(int iAddress, TVtxAttr* pVtxAttr)
varray->SetPosZ(1.0);
}
void LOADERDECL Pos_ReadDirect_UByte(void* _p)
void LOADERDECL Pos_ReadDirect_UByte(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
varray->SetPosX((float)DataReadU8() * posScale);
@ -75,7 +75,7 @@ void LOADERDECL Pos_ReadDirect_UByte(void* _p)
varray->SetPosZ(1.0);
}
void LOADERDECL Pos_ReadDirect_Byte(void* _p)
void LOADERDECL Pos_ReadDirect_Byte(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
varray->SetPosX((float)(s8)DataReadU8() * posScale);
@ -87,7 +87,7 @@ void LOADERDECL Pos_ReadDirect_Byte(void* _p)
varray->SetPosZ(1.0);
}
void LOADERDECL Pos_ReadDirect_UShort(void* _p)
void LOADERDECL Pos_ReadDirect_UShort(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
@ -100,7 +100,7 @@ void LOADERDECL Pos_ReadDirect_UShort(void* _p)
varray->SetPosZ(1.0);
}
void LOADERDECL Pos_ReadDirect_Short(void* _p)
void LOADERDECL Pos_ReadDirect_Short(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
@ -113,7 +113,7 @@ void LOADERDECL Pos_ReadDirect_Short(void* _p)
varray->SetPosZ(1.0);
}
void LOADERDECL Pos_ReadDirect_Float(void* _p)
void LOADERDECL Pos_ReadDirect_Float(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
@ -130,14 +130,14 @@ void LOADERDECL Pos_ReadDirect_Float(void* _p)
// Index 8
// ==============================================================================
void LOADERDECL Pos_ReadIndex8_UByte(void* _p)
void LOADERDECL Pos_ReadIndex8_UByte(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_POSITION] + (Index * arraystrides[ARRAY_POSITION]);
_ReadPos8Mem<u8>(iAddress, pVtxAttr);
}
void LOADERDECL Pos_ReadIndex8_Byte(void* _p)
void LOADERDECL Pos_ReadIndex8_Byte(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
u8 Index = DataReadU8();
@ -145,7 +145,7 @@ void LOADERDECL Pos_ReadIndex8_Byte(void* _p)
_ReadPos8Mem<s8>(iAddress, pVtxAttr);
}
void LOADERDECL Pos_ReadIndex8_UShort(void* _p)
void LOADERDECL Pos_ReadIndex8_UShort(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
u8 Index = DataReadU8();
@ -153,7 +153,7 @@ void LOADERDECL Pos_ReadIndex8_UShort(void* _p)
_ReadPos16Mem<u16>(iAddress, pVtxAttr);
}
void LOADERDECL Pos_ReadIndex8_Short(void* _p)
void LOADERDECL Pos_ReadIndex8_Short(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
u8 Index = DataReadU8();
@ -161,7 +161,7 @@ void LOADERDECL Pos_ReadIndex8_Short(void* _p)
_ReadPos16Mem<s16>(iAddress, pVtxAttr);
}
void LOADERDECL Pos_ReadIndex8_Float(void* _p)
void LOADERDECL Pos_ReadIndex8_Float(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
u8 Index = DataReadU8();
@ -173,28 +173,28 @@ void LOADERDECL Pos_ReadIndex8_Float(void* _p)
// Index 16
// ==============================================================================
void LOADERDECL Pos_ReadIndex16_UByte(void* _p){
void LOADERDECL Pos_ReadIndex16_UByte(const void* _p){
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_POSITION] + (Index * arraystrides[ARRAY_POSITION]);
_ReadPos8Mem<u8>(iAddress, pVtxAttr);
}
void LOADERDECL Pos_ReadIndex16_Byte(void* _p){
void LOADERDECL Pos_ReadIndex16_Byte(const void* _p){
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_POSITION] + (Index * arraystrides[ARRAY_POSITION]);
_ReadPos8Mem<s8>(iAddress, pVtxAttr);
}
void LOADERDECL Pos_ReadIndex16_UShort(void* _p){
void LOADERDECL Pos_ReadIndex16_UShort(const void* _p){
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_POSITION] + (Index * arraystrides[ARRAY_POSITION]);
_ReadPos16Mem<u16>(iAddress, pVtxAttr);
}
void LOADERDECL Pos_ReadIndex16_Short(void* _p)
void LOADERDECL Pos_ReadIndex16_Short(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
u16 Index = DataReadU16();
@ -202,7 +202,7 @@ void LOADERDECL Pos_ReadIndex16_Short(void* _p)
_ReadPos16Mem<s16>(iAddress, pVtxAttr);
}
void LOADERDECL Pos_ReadIndex16_Float(void* _p)
void LOADERDECL Pos_ReadIndex16_Float(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
u16 Index = DataReadU16();

View File

@ -20,7 +20,7 @@
extern int tcIndex;
void LOADERDECL TexCoord_ReadDirect_UByte(void* _p)
void LOADERDECL TexCoord_ReadDirect_UByte(const void* _p)
{
varray->SetU(tcIndex, DataReadU8() * tcScaleU[tcIndex]);
if (tcElements[tcIndex])
@ -28,7 +28,7 @@ void LOADERDECL TexCoord_ReadDirect_UByte(void* _p)
tcIndex++;
}
void LOADERDECL TexCoord_ReadDirect_Byte(void* _p)
void LOADERDECL TexCoord_ReadDirect_Byte(const void* _p)
{
varray->SetU(tcIndex, (s8)DataReadU8() * tcScaleU[tcIndex]);
if (tcElements[tcIndex])
@ -36,7 +36,7 @@ void LOADERDECL TexCoord_ReadDirect_Byte(void* _p)
tcIndex++;
}
void LOADERDECL TexCoord_ReadDirect_UShort(void* _p)
void LOADERDECL TexCoord_ReadDirect_UShort(const void* _p)
{
varray->SetU(tcIndex, DataReadU16() * tcScaleU[tcIndex]);
if (tcElements[tcIndex])
@ -44,14 +44,14 @@ void LOADERDECL TexCoord_ReadDirect_UShort(void* _p)
tcIndex++;
}
void LOADERDECL TexCoord_ReadDirect_Short(void* _p)
void LOADERDECL TexCoord_ReadDirect_Short(const void* _p)
{
varray->SetU(tcIndex, (s16)DataReadU16() * tcScaleU[tcIndex]);
if (tcElements[tcIndex])
varray->SetV(tcIndex, (s16)DataReadU16() * tcScaleV[tcIndex]);
tcIndex++;
}
void LOADERDECL TexCoord_ReadDirect_Float(void* _p)
void LOADERDECL TexCoord_ReadDirect_Float(const void* _p)
{
varray->SetU(tcIndex, DataReadF32() * tcScaleU[tcIndex]);
if (tcElements[tcIndex])
@ -60,7 +60,7 @@ void LOADERDECL TexCoord_ReadDirect_Float(void* _p)
}
// ==================================================================================
void LOADERDECL TexCoord_ReadIndex8_UByte(void* _p)
void LOADERDECL TexCoord_ReadIndex8_UByte(const void* _p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_TEXCOORD0+tcIndex] + (Index * arraystrides[ARRAY_TEXCOORD0+tcIndex]);
@ -70,7 +70,7 @@ void LOADERDECL TexCoord_ReadIndex8_UByte(void* _p)
varray->SetV(tcIndex, (float)(u8)Memory_Read_U8(iAddress+1) * tcScaleV[tcIndex]);
tcIndex++;
}
void LOADERDECL TexCoord_ReadIndex8_Byte(void* _p)
void LOADERDECL TexCoord_ReadIndex8_Byte(const void* _p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_TEXCOORD0+tcIndex] + (Index * arraystrides[ARRAY_TEXCOORD0+tcIndex]);
@ -81,7 +81,7 @@ void LOADERDECL TexCoord_ReadIndex8_Byte(void* _p)
tcIndex++;
}
void LOADERDECL TexCoord_ReadIndex8_UShort(void* _p)
void LOADERDECL TexCoord_ReadIndex8_UShort(const void* _p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_TEXCOORD0+tcIndex] + (Index * arraystrides[ARRAY_TEXCOORD0+tcIndex]);
@ -91,7 +91,7 @@ void LOADERDECL TexCoord_ReadIndex8_UShort(void* _p)
varray->SetV(tcIndex, (float)(u16)Memory_Read_U16(iAddress+2) * tcScaleV[tcIndex]);
tcIndex++;
}
void LOADERDECL TexCoord_ReadIndex8_Short(void* _p)
void LOADERDECL TexCoord_ReadIndex8_Short(const void* _p)
{
u8 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_TEXCOORD0+tcIndex] + (Index * arraystrides[ARRAY_TEXCOORD0+tcIndex]);
@ -101,7 +101,7 @@ void LOADERDECL TexCoord_ReadIndex8_Short(void* _p)
varray->SetV(tcIndex, (float)(s16)Memory_Read_U16(iAddress+2) * tcScaleV[tcIndex]);
tcIndex++;
}
void LOADERDECL TexCoord_ReadIndex8_Float(void* _p)
void LOADERDECL TexCoord_ReadIndex8_Float(const void* _p)
{
u16 Index = DataReadU8();
u32 iAddress = arraybases[ARRAY_TEXCOORD0+tcIndex] + (Index * arraystrides[ARRAY_TEXCOORD0+tcIndex]);
@ -118,7 +118,7 @@ void LOADERDECL TexCoord_ReadIndex8_Float(void* _p)
// ==================================================================================
void LOADERDECL TexCoord_ReadIndex16_UByte(void* _p)
void LOADERDECL TexCoord_ReadIndex16_UByte(const void* _p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_TEXCOORD0+tcIndex] + (Index * arraystrides[ARRAY_TEXCOORD0+tcIndex]);
@ -134,7 +134,7 @@ void LOADERDECL TexCoord_ReadIndex16_UByte(void* _p)
}
tcIndex++;
}
void LOADERDECL TexCoord_ReadIndex16_Byte(void* _p)
void LOADERDECL TexCoord_ReadIndex16_Byte(const void* _p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_TEXCOORD0+tcIndex] + (Index * arraystrides[ARRAY_TEXCOORD0+tcIndex]);
@ -151,7 +151,7 @@ void LOADERDECL TexCoord_ReadIndex16_Byte(void* _p)
tcIndex++;
}
void LOADERDECL TexCoord_ReadIndex16_UShort(void* _p)
void LOADERDECL TexCoord_ReadIndex16_UShort(const void* _p)
{
TVtxAttr* pVtxAttr = (TVtxAttr*)_p;
u16 Index = DataReadU16();
@ -168,7 +168,7 @@ void LOADERDECL TexCoord_ReadIndex16_UShort(void* _p)
}
tcIndex++;
}
void LOADERDECL TexCoord_ReadIndex16_Short(void* _p)
void LOADERDECL TexCoord_ReadIndex16_Short(const void* _p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_TEXCOORD0+tcIndex] + (Index * arraystrides[ARRAY_TEXCOORD0+tcIndex]);
@ -184,7 +184,7 @@ void LOADERDECL TexCoord_ReadIndex16_Short(void* _p)
}
tcIndex++;
}
void LOADERDECL TexCoord_ReadIndex16_Float(void* _p)
void LOADERDECL TexCoord_ReadIndex16_Float(const void* _p)
{
u16 Index = DataReadU16();
u32 iAddress = arraybases[ARRAY_TEXCOORD0+tcIndex] + (Index * arraystrides[ARRAY_TEXCOORD0+tcIndex]);