OpenGL에서 정렬 된 삼각형이있는 삼각형 격자를 만들려고합니다. 나는 꼭지점 버퍼와 인덱스 버퍼를 가지고있다. 나는 부분적으로 성공했지만, 스크린 샷에서 볼 수 있듯이 그리드의 절반이 잘못 렌더링됩니다. 왜 그런지 알 수는 없습니다.삼각형 격자, 반쪽이 잘못되었습니다.
내 코드
float[] vertices = new float[2 * rows * columns];
int counter = 0;
for(int r = 0; r <rows; r++){
for(int c = 0; c < columns; c++){
vertices[counter ++] = (float)r/(rows-1);
vertices[counter ++] = (float)c/(columns -1);
}
}
int[] indices = new int[4 * (rows) * (columns)];
int counter = 0;
for(int r = 0; r < rows; r++){
for(int c =0; c <= columns; c++){
if(r % 2 == 0){
if(c == columns){
indices[counter ++] = (c-1) + (r+1)*columns;
indices[counter ++] = (c-1) + (r+1)*columns;
}else{
indices[counter ++] = c + r * columns;
indices[counter ++] = c + (r+1) * columns;
}
}else{
if(c == columns){
indices[counter ++] = (columns) - c + (r +1) * columns;
indices[counter ++] = (columns) - c + (r +1) * columns;
}else{
indices[counter ++] = (columns - 1) - c + (r + 1) * columns;
indices[counter ++] = r*columns + (columns-1) - c;
}
}
}
}
원시적 인 재시작 색인을 읽어 보시기 바랍니다. – ybungalobill