/// <summary> /// Add the 4 vertices corresponding to a sample point. /// </summary> /// <param name="center"></param> /// <param name="neighbors"></param> private void AddVertex(Vector3 center, Color neighbors) { localVerts[numVerts++] = new WaterVertex(center, new Vector2(-1.0f, -1.0f), neighbors); localVerts[numVerts++] = new WaterVertex(center, new Vector2(1.0f, -1.0f), neighbors); localVerts[numVerts++] = new WaterVertex(center, new Vector2(1.0f, 1.0f), neighbors); localVerts[numVerts++] = new WaterVertex(center, new Vector2(-1.0f, 1.0f), neighbors); }
private void SetUpVertices() { vertices = new WaterVertex[width * length]; for (int x = 0; x < width; x++) { for (int z = 0; z < length; z++) { vertices[x + z * width] = new WaterVertex(new Vector3(x, 0, z), Vector3.Normalize(new Vector3(0, 1, 0)), new Vector2((float)x / 30.0f * size, (float)z / 30.0f * size), (float)Game.rand.NextDouble() * 2 - 1); } } }
public void WriteWaterVertex(WaterVertex v) { _stream.WriteFloat4(v.Position); _stream.WriteFloat4(v.Position2); _stream.WriteFloat4(v.Position3); _stream.WriteFloat4(v.Position4); _stream.WriteFloat4(v.Position5); _stream.WriteFloat4(v.Position6); _stream.WriteFloat4(v.Position7); _stream.WriteFloat4(v.Position8); _stream.WriteFloat4(v.Texcoord); _stream.WriteFloat3(v.Texcoord2); _stream.WriteFloat4(v.Normal); _stream.WriteFloat4(v.Normal2); _stream.WriteFloat4(v.Normal3); _stream.WriteFloat4(v.Normal4); _stream.WriteFloat2(v.Normal5); _stream.WriteFloat3(v.Texcoord3); }
private void SetUpVertices() { vertices = new WaterVertex[width * length]; for (int x = 0; x < width; x++) { for (int z = 0; z < length; z++) { vertices[x + z * width] = new WaterVertex(new Vector3(x, 0, z), Vector3.Normalize(new Vector3(0, 1, 0)), new Vector2((float)x / 30.0f * size, (float)z / 30.0f * size), (float)Game.rand.NextDouble()*2-1); } } }