43 #include "Core-Level-JR.h"
44 #include "laStagesJR.h"
48 _pTileSet->getSky()->draw(r);
52 void laLevel::drawInterface(
laRenderer *r, laPoint3 ptBasePos) {
55 for(
unsigned i=0; i<_nObjCnt; i++)
56 _arObjects[i]->drawInterface(r, ptBasePos);
64 PROFILE_REN(laLevel_draw);
65 ASSERT(pfirst,
"Nil first segment");
66 ASSERT(nSegments,
"Zero semgnets to draw, must be at least one");
72 getTS()->getBackgroundElement()->drawGeometry(r);
77 ps = pfirst; n = nSegments;
80 laPoint3 ofs1( (ps->_nSegmentIndex)*
M_UNIT*M_SEGW, 0, 0 ), ofs(
M_UNIT*M_SEGW, 0, 0 );
82 r->transTranslate( ofs1 );
85 getTS()->getElement( ps->getBackgroundElement() )->drawGeometry(r, 0);
87 r->transTranslate( ofs );
89 }
while( ps && (--n) );
96 ps = pfirst; n = nSegments;
102 }
while( ps && (--n) );
106 ps = pfirst; n = nSegments;
113 laPoint3 pos( (ps->_nSegmentIndex)*
M_UNIT*M_SEGW, 0, 0 );
115 r->transTranslate(pos);
116 getTS()->getElement( ps->getBackgroundElement() )->drawFx(r);
120 }
while( ps && (--n) );
123 getTS()->getBackgroundElement()->drawFx(r);
132 r->lightMakeSunlight(0,_pTileSet->getLightElement()->getPoint(
"light-vector"));
134 r->lightAmbient(0, _pTileSet->getLightElement()->getColor(
"light-ambient") );
135 r->lightDiffuse(0, _pTileSet->getLightElement()->getColor(
"light-diffuse") );
136 r->lightSpecular(0, _pTileSet->getLightElement()->getColor(
"light-specular") );
159 PROFILE_REN(laLevel__draw_pass_1);
171 r->vtex(_pNoiseTex, getTS()->getBackgroundElement()->getDouble(
"terrain-noise-scale"));
172 r->styleSet( laColor(255,255,255,255) );
177 laElement *pef = _pTileSet->getFogElement();
180 r->fogColor( pef->getColor(
"fog-color") );
181 r->fogRange( pef->getDouble(
"foreground-fog-near")*
M_UNIT ,pef->getDouble(
"foreground-fog-far")*
M_UNIT);
188 PROFILE_REN(laLevel__draw_pass_1a);
192 r->lightAmbient(0, getTS()->getLightElement()->getColor(
"light-ambient-obj"));
197 PROFILE_REN(laLevel__draw_pass_2);
212 void laLevel::animate(laTimer &t,
laSegment* pfirst,
unsigned nSegments)
215 PROFILE_ANIM(laLevel_animate);
216 ASSERT(pfirst,
"Nil first segment");
217 ASSERT(nSegments,
"Zero semgnets to animate, must be at least one");
224 }
while( ps && (--nSegments) );
virtual void modeFog(M_BOOL bOn)=0
Enable/disable fox.
#define M_UNIT
Unit of 1 meter.
Base Class for Tileset Elements.
Object outline properties.
virtual void modeOutline(const laOutline &outline)
Set outline parameters.
Virtual interface for the Engine graphics renderer.
virtual void modeLight(M_BOOL bOn)=0
Enable/disable lighting.
virtual double modeBlendFilter(const double &dMinVisisbleAlpha)=0
Set a "blend filter" (cutting out elements with opacity lower than dMinVisisbleAlpha) ...