소스 검색

gpu: do not convert integers in vertex streams to floats.

legacy
Sam Hocevar sam 12 년 전
부모
커밋
67113aa9f0
1개의 변경된 파일16개의 추가작업 그리고 7개의 파일을 삭제
  1. +16
    -7
      src/gpu/vertexbuffer.cpp

+ 16
- 7
src/gpu/vertexbuffer.cpp 파일 보기

@@ -358,15 +358,24 @@ void VertexDeclaration::SetStream(VertexBuffer *vb, ShaderAttrib attr1,
if (type_index < 0 || type_index >= sizeof(tlut) / sizeof(*tlut))
type_index = 0;

/* Normalize unsigned bytes by default, because it's usually
* some color information. */
GLboolean normalize = (tlut[type_index].type == GL_UNSIGNED_BYTE)
|| (tlut[type_index].type == GL_BYTE);

# if !defined __CELLOS_LV2__
glVertexAttribPointer((GLint)reg, tlut[type_index].size,
tlut[type_index].type, normalize,
stride, (GLvoid const *)(uintptr_t)offset);
if (type_index <= 12)
{
/* Normalize unsigned bytes by default, because it's usually
* some color information. */
GLboolean normalize = (tlut[type_index].type == GL_UNSIGNED_BYTE)
|| (tlut[type_index].type == GL_BYTE);
glVertexAttribPointer((GLint)reg, tlut[type_index].size,
tlut[type_index].type, normalize,
stride, (GLvoid const *)(uintptr_t)offset);
}
else
{
glVertexAttribIPointer((GLint)reg, tlut[type_index].size,
tlut[type_index].type,
stride, (GLvoid const *)(uintptr_t)offset);
}
# else
switch (usage)
{


불러오는 중...
취소
저장