glBegin(GL_TRIANGLES);
for(int i=0; i < nNumTriangles*3; i+=3)
{
if(bSwitch)
{
// glColor4f(0.0f, (pvVerts->y/3.5f)/256.0f, 0.0f, 1.0f);
</font>
glTexCoord2f(((pvVerts[<font color=purple>i</font>]->x/32.0f)/512.0f), 1.0f - ((pvVerts[<font color=purple>i</font>]->z/32.0f)/512.0f));
<font color=gray>// glTexCoord2f((pvVerts->z/32.0f)/500.0f, (pvVerts->x/32.0f)/500.0f);
</font>
glVertex3f(pvVerts[<font color=purple>i</font>]->x, pvVerts[<font color=purple>i</font>]->y, pvVerts[<font color=purple>i</font>]->z);
<font color=gray>// glColor4f(0.0f, (pvVerts[i+1]->y/3.5f)/256.0f, 0.0f, 1.0f);
</font>
glTexCoord2f((pvVerts[<font color=purple>i+1</font>]->x/32.0f)/512.0f, 1.0f - ((pvVerts[<font color=purple>i+1</font>]->z/32.0f)/512.0f));
<font color=gray>// glTexCoord2f((pvVerts[i+1]->z/32.0f)/500.0f, (pvVerts[i+4]->x/32.0f)/500.0f);
</font>
glVertex3f(pvVerts[<font color=purple>i+1</font>]->x, pvVerts[<font color=purple>i+1</font>]->y, pvVerts[<font color=purple>i+1</font>]->z);
<font color=gray>// glColor4f(0.0f, (pvVerts[i+2]->y/3.5f)/256.0f, 0.0f, 1.0f);
</font>
glTexCoord2f((pvVerts[<font color=purple>i+2</font>]->x/32.0f)/512.0f, 1.0f - ((pvVerts[<font color=purple>i+2</font>]->z/32.0f)/512.0f));
<font color=gray>// glTexCoord2f((pvVerts[i+2]->z/32.0f)/500.0f, (pvVerts[i+2]->x/32.0f)/500.0f);
</font>
glVertex3f(pvVerts[<font color=purple>i+2</font>]->x, pvVerts[<font color=purple>i+2</font>]->y, pvVerts[<font color=purple>i+2</font>]->z);
}
<font color=blue>else</font>
{
<font color=gray>// glColor4f(0.0f, (pvVerts[i+2]->y/3.5f)/256.0f, 0.0f, 1.0f);
</font>
glTexCoord2f((pvVerts[<font color=purple>i+2</font>]->x/32.0f)/512.0f, 1.0f - ((pvVerts[<font color=purple>i+2</font>]->z/32.0f)/512.0f));
<font color=gray>// glTexCoord2f((pvVerts[i+2]->z/32.0f)/500.0f, (pvVerts[i+2]->x/32.0f)/500.0f);
</font>
glVertex3f(pvVerts[<font color=purple>i+2</font>]->x, pvVerts[<font color=purple>i+2</font>]->y, pvVerts[<font color=purple>i+2</font>]->z);
<font color=gray>// glColor4f(0.0f, (pvVerts[i+1]->y/3.5f)/256.0f, 0.0f, 1.0f);
</font>
glTexCoord2f((pvVerts[<font color=purple>i+1</font>]->x/32.0f)/512.0f, 1.0f - ((pvVerts[<font color=purple>i+1</font>]->z/32.0f)/512.0f));
<font color=gray>// glTexCoord2f((pvVerts[i+1]->z/32.0f)/500.0f, (pvVerts[i+1]->x/32.0f)/500.0f);
</font>
glVertex3f(pvVerts[<font color=purple>i+1</font>]->x, pvVerts[<font color=purple>i+1</font>]->y, pvVerts[<font color=purple>i+1</font>]->z);
<font color=gray>// glColor4f(0.0f, (pvVerts->y/3.5f)/256.0f, 0.0f, 1.0f);
</font>
glTexCoord2f((pvVerts[<font color=purple>i</font>]->x/32.0f)/512.0f, 1.0f - ((pvVerts[<font color=purple>i</font>]->z/32.0f)/512.0f));
<font color=gray>// glTexCoord2f((pvVerts->z/32.0f)/500.0f, (pvVerts->x/32.0f)/500.0f);
</font>
glVertex3f(pvVerts[<font color=purple>i</font>]->x, pvVerts[<font color=purple>i</font>]->y, pvVerts[<font color=purple>i</font>]->z);
}
bSwitch = !bSwitch;
}
glEnd();
</pre><!–ENDSCRIPT–>
<HR>
"There aint gonna be no tea and crumpets!"
<SPAN CLASS=editedby>[edited by - griffenjam on June 4, 2003 2:49:48 PM]</SPAN>
<SPAN CLASS=editedby>[edited by - griffenjam on June 4, 2003 2:50:47 PM]</SPAN>
Problem with texturing landscape.
I've just recently added texturing code to my landscape/quadtree and while it works it doesn't match up quite right. The texture does not match the landscape. I create the texture and the heightmap in PSP 8, I create the heightmap first, copy and past it as a new image and create the texture from that. I thought it would line up because it has the exact same properties as the heightmap, but it doesn't.
Here is my drawing code.
Edit: My heightmap spacing is 32.0f and my texture size is 512x512.
Why do you take 1.0f - the Z texture coordinate? Wouldn''t this cause the texture map to be inverted compared to the heightmap?
Not sure if that is true, but just a thought!
I should probably be working now...
Not sure if that is true, but just a thought!
I should probably be working now...
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement