Change the triangle pattern used for terrain (Fixes #2459)

test
scrawl 10 years ago
parent 5cb61fa01c
commit 20af2b67a8

@ -59,13 +59,27 @@ Ogre::HardwareIndexBufferSharedPtr createIndexBuffer(unsigned int flags, unsigne
{ {
for (size_t col = colStart; col < colEnd; col += increment) for (size_t col = colStart; col < colEnd; col += increment)
{ {
indices.push_back(verts*col+row); // diamond pattern
indices.push_back(verts*(col+increment)+row+increment); if ((row + col%2) % 2 == 1)
indices.push_back(verts*col+row+increment); {
indices.push_back(verts*(col+increment)+row);
indices.push_back(verts*(col+increment)+row+increment);
indices.push_back(verts*col+row+increment);
indices.push_back(verts*col+row); indices.push_back(verts*col+row);
indices.push_back(verts*(col+increment)+row); indices.push_back(verts*(col+increment)+row);
indices.push_back(verts*(col+increment)+row+increment); indices.push_back(verts*(col)+row+increment);
}
else
{
indices.push_back(verts*col+row);
indices.push_back(verts*(col+increment)+row+increment);
indices.push_back(verts*col+row+increment);
indices.push_back(verts*col+row);
indices.push_back(verts*(col+increment)+row);
indices.push_back(verts*(col+increment)+row+increment);
}
} }
} }

Loading…
Cancel
Save