summaryrefslogtreecommitdiffstats
path: root/src/graphics/engine/modelfile.cpp
diff options
context:
space:
mode:
authorPiotr Dziwinski <piotrdz@gmail.com>2012-08-13 00:14:42 +0200
committerPiotr Dziwinski <piotrdz@gmail.com>2012-08-13 00:14:42 +0200
commit712154bc4fcfb50c05c57a875e3b2affdc5e2b1b (patch)
tree9b13ef9f64cf272a8c67effdb62c2459306bd167 /src/graphics/engine/modelfile.cpp
parent146ad47e4afbf1fe82763c94c2cd2209285f869f (diff)
downloadcolobot-712154bc4fcfb50c05c57a875e3b2affdc5e2b1b.tar.gz
colobot-712154bc4fcfb50c05c57a875e3b2affdc5e2b1b.tar.bz2
colobot-712154bc4fcfb50c05c57a875e3b2affdc5e2b1b.zip
Rendering functions, documentation
- rewrote the render functions for CEngine, CCloud and CWater - added documentation
Diffstat (limited to 'src/graphics/engine/modelfile.cpp')
-rw-r--r--src/graphics/engine/modelfile.cpp44
1 files changed, 22 insertions, 22 deletions
diff --git a/src/graphics/engine/modelfile.cpp b/src/graphics/engine/modelfile.cpp
index 844958f..9d7a389 100644
--- a/src/graphics/engine/modelfile.cpp
+++ b/src/graphics/engine/modelfile.cpp
@@ -723,25 +723,18 @@ bool Gfx::CModelFile::ReadDXF(std::istream &stream, float min, float max)
bool Gfx::CModelFile::CreateEngineObject(int objRank, int addState)
{
- /*char texName1[20];
- char texName2[20];
- int texNum, i, state;
-
- for (int i = 0; i < m_trianglesUsed; i++)
+ for (int i = 0; i < static_cast<int>( m_triangles.size() ); i++)
{
- if (! m_triangles[i].used) continue;
+ int state = m_triangles[i].state;
- state = m_triangles[i].state;
- strcpy(texName1, m_triangles[i].texName);
- texName2[0] = 0;
+ /* TODO ???
+ if (texName1 == "plant.png")
+ state |= Gfx::ENG_RSTATE_ALPHA;
- if ( strcmp(texName1, "plant.tga") == 0 ) // ???
+ if (m_triangles[i].tex2Name.empty())
{
- state |= D3DSTATEALPHA;
- }
+ int texNum = 0;
- if ( m_triangles[i].texNum2 != 0 )
- {
if ( m_triangles[i].texNum2 == 1 )
{
texNum = m_engine->RetSecondTexture();
@@ -760,15 +753,22 @@ bool Gfx::CModelFile::CreateEngineObject(int objRank, int addState)
state |= D3DSTATEDUALw;
}
sprintf(texName2, "dirty%.2d.tga", texNum); // ???
- }
+ }*/
+
+ std::vector<Gfx::VertexTex2> vs;
+ vs.push_back(m_triangles[i].p1);
+ vs.push_back(m_triangles[i].p2);
+ vs.push_back(m_triangles[i].p3);
+
+ m_engine->AddTriangles(objRank, vs,
+ m_triangles[i].material,
+ state + addState,
+ m_triangles[i].tex1Name,
+ m_triangles[i].tex2Name,
+ m_triangles[i].min,
+ m_triangles[i].max, false);
+ }
- m_engine->AddTriangle(objRank, &m_triangles[i].p1, 3,
- m_triangles[i].material,
- state + addState,
- texName1, texName2,
- m_triangles[i].min,
- m_triangles[i].max, false);
- }*/
return true;
}