SHDR : SHDR_GetUniformRegister (untested)

This commit is contained in:
Jordan Rabet 2014-03-13 15:50:43 +01:00
parent 1a01acbd8e
commit 7c7d25f911
2 changed files with 16 additions and 0 deletions

View File

@ -60,6 +60,7 @@ typedef struct{
DVLB_s* SHDR_ParseSHBIN(u32* shbinData, u32 shbinSize); DVLB_s* SHDR_ParseSHBIN(u32* shbinData, u32 shbinSize);
void SHDR_UseProgram(DVLB_s* dvlb, u8 id); void SHDR_UseProgram(DVLB_s* dvlb, u8 id);
void SHDR_FreeDVLB(DVLB_s* dvlb); void SHDR_FreeDVLB(DVLB_s* dvlb);
s8 SHDR_GetUniformRegister(DVLB_s* dvlb, char* name, u8 programID);
void DVLP_SendCode(DVLP_s* dvlp); void DVLP_SendCode(DVLP_s* dvlp);
void DVLP_SendOpDesc(DVLP_s* dvlp); void DVLP_SendOpDesc(DVLP_s* dvlp);

View File

@ -57,6 +57,21 @@ DVLB_s* SHDR_ParseSHBIN(u32* shbinData, u32 shbinSize)
return ret; return ret;
} }
s8 SHDR_GetUniformRegister(DVLB_s* dvlb, char* name, u8 programID)
{
if(!dvlb || !name)return -1;
DVLE_s* dvle=&dvlb->DVLE[programID];
int i; DVLE_uniformEntry_s* u=dvle->uniformTableData;
for(i=0;i<dvle->uniformTableSize;i++)
{
if(!strcmp(dvle->symbolTableData[u->symbolOffset],name))return (s8)u->startReg;
u++;
}
return -1;
}
//hm //hm
static inline u8 minu8(u8 a, u8 b) static inline u8 minu8(u8 a, u8 b)
{ {