Work on smooth blending.

This commit is contained in:
David Williams
2007-08-17 18:59:06 +00:00
parent 48094c972a
commit 7b43990aa7
5 changed files with 15 additions and 18 deletions

View File

@ -773,9 +773,9 @@ namespace Ogre
//Add the vertex
Vertex vertex(vertex0);
if(material0 == material)
vertex.colour = Vector4(1.0,1.0,1.0,1.0);
vertex.alpha = 1.0;
else
vertex.colour = Vector4(0.0,0.0,0.0,0.0);
vertex.alpha = 0.0;
vertexData[material].push_back(Vertex(vertex));
triangle.v0 = vertexData[material].size()-1;
vertexIndices[vertexScaledX][vertexScaledY][vertexScaledZ][material] = vertexData[material].size()-1;
@ -800,9 +800,9 @@ namespace Ogre
//Add the vertex
Vertex vertex(vertex1);
if(material1 == material)
vertex.colour = Vector4(1.0,1.0,1.0,1.0);
vertex.alpha = 1.0;
else
vertex.colour = Vector4(0.0,0.0,0.0,0.0);
vertex.alpha = 0.0;
vertexData[material].push_back(Vertex(vertex));
triangle.v1 = vertexData[material].size()-1;
vertexIndices[vertexScaledX][vertexScaledY][vertexScaledZ][material] = vertexData[material].size()-1;
@ -827,9 +827,9 @@ namespace Ogre
//Add the vertex
Vertex vertex(vertex2);
if(material2 == material)
vertex.colour = Vector4(1.0,1.0,1.0,1.0);
vertex.alpha = 1.0;
else
vertex.colour = Vector4(0.0,0.0,0.0,0.0);
vertex.alpha = 0.0;
vertexData[material].push_back(Vertex(vertex));
triangle.v2 = vertexData[material].size()-1;
vertexIndices[vertexScaledX][vertexScaledY][vertexScaledZ][material] = vertexData[material].size()-1;

View File

@ -40,7 +40,7 @@ namespace Ogre
decl->removeAllElements();
decl->addElement(0, 0, VET_FLOAT3, VES_POSITION);
decl->addElement(0, 3 * sizeof(float), VET_FLOAT3, VES_NORMAL);
decl->addElement(0, 6 * sizeof(float), VET_FLOAT4, VES_DIFFUSE);
decl->addElement(0, 6 * sizeof(float), VET_FLOAT1, VES_TEXTURE_COORDINATES);
//LogManager::getSingleton().logMessage("Creating Vertex Buffer");
HardwareVertexBufferSharedPtr vbuf =
@ -81,10 +81,7 @@ namespace Ogre
*prPos++ = verticesToSet[i].normal.y;
*prPos++ = verticesToSet[i].normal.z;
*prPos++ = verticesToSet[i].colour.x;
*prPos++ = verticesToSet[i].colour.y;
*prPos++ = verticesToSet[i].colour.z;
*prPos++ = verticesToSet[i].colour.w;
*prPos++ = verticesToSet[i].alpha;
if(verticesToSet[i].position.x < vaabMin.x)
vaabMin.x = verticesToSet[i].position.x;