| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- import math
- NUM_VERTS_X = 30
- NUM_VERTS_Y = 30
- totalVerts = NUM_VERTS_X*NUM_VERTS_Y
- totalTriangles = 2*(NUM_VERTS_X-1)*(NUM_VERTS_Y-1)
- offset = -50.0
- TRIANGLE_SIZE = 1.
- waveheight=0.1
- gGroundVertices = [None] * totalVerts*3
- gGroundIndices = [None] * totalTriangles*3
- i=0
- for i in range (NUM_VERTS_X):
- for j in range (NUM_VERTS_Y):
- gGroundVertices[(i+j*NUM_VERTS_X)*3+0] = (i-NUM_VERTS_X*0.5)*TRIANGLE_SIZE
- gGroundVertices[(i+j*NUM_VERTS_X)*3+1] = (j-NUM_VERTS_Y*0.5)*TRIANGLE_SIZE
- gGroundVertices[(i+j*NUM_VERTS_X)*3+2] = waveheight*math.sin(float(i))*math.cos(float(j)+offset)
-
- index=0
- for i in range (NUM_VERTS_X-1):
- for j in range (NUM_VERTS_Y-1):
- gGroundIndices[index] = 1+j*NUM_VERTS_X+i
- index+=1
- gGroundIndices[index] = 1+j*NUM_VERTS_X+i+1
- index+=1
- gGroundIndices[index] = 1+(j+1)*NUM_VERTS_X+i+1
- index+=1
- gGroundIndices[index] = 1+j*NUM_VERTS_X+i
- index+=1
- gGroundIndices[index] = 1+(j+1)*NUM_VERTS_X+i+1
- index+=1
- gGroundIndices[index] = 1+(j+1)*NUM_VERTS_X+i
- index+=1
- #print(gGroundVertices)
- #print(gGroundIndices)
- print("o Terrain")
- for i in range (totalVerts):
- print("v "),
- print(gGroundVertices[i*3+0]),
- print(" "),
- print(gGroundVertices[i*3+1]),
- print(" "),
- print(gGroundVertices[i*3+2])
-
- for i in range (totalTriangles):
- print("f "),
- print(gGroundIndices[i*3+0]),
- print(" "),
- print(gGroundIndices[i*3+1]),
- print(" "),
- print(gGroundIndices[i*3+2]),
- print(" ")
-
|