Тема: C3D Engine
Показать сообщение отдельно
Старый 13.07.2012, 15:56   #152
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: C3D Engine

RENDER->bindBuffer(_vbo, BT_ARRAY);
	RENDER->vertexAttribPointer(shader->getPositionAttrib(), 3, RENDER->oFLOAT(), RENDER->oFALSE(),  sizeof(Vertex), (const void*)0);
	if(shader->getNormalAttrib() != -1) RENDER->vertexAttribPointer(shader->getNormalAttrib(), 3, RENDER->oFLOAT(),  RENDER->oFALSE(),sizeof(Vertex), (const void*)12);
	if(shader->getTexcoordAttrib() != -1)RENDER->vertexAttribPointer(shader->getTexcoordAttrib(), 2, RENDER->oFLOAT(), RENDER->oFALSE(), sizeof(Vertex), (const void*)24);

	RENDER->bindBuffer(_ibo, BT_ELEMENT);
	RENDER->drawElements(RENDER->oTRIANGLES(), _icount, RENDER->oUNSIGNED_SHORT(), 0);
семь виртуальных вызовов на отрисовку вместо одного... такто спички, но всеж...
(Offline)
 
Ответить с цитированием