33 fxShutter::fxShutter(
void)
40 fxShutter::~fxShutter(
void)
44 void fxShutter::animate(laTimer &t)
46 if( (_tt.reminder() > 0.5) || (!_bOn) ) _tt.animate(t);
50 void fxShutter::draw(
laRenderer *r, laPoint3 pos)
52 PROFILE_REN(fxShutter_draw);
54 double w = laSystemIntegrator::getSettings()->graphics_resolution_w;
55 double h = laSystemIntegrator::getSettings()->graphics_resolution_h;
59 if( _tt.reminder()>0.5 )
60 progress = 1 - 1*( _tt.reminder()-0.5 )*2;
62 progress = 1*( _tt.reminder() )*2;
64 alpha = _color[3]* progress;
65 size = _bCinematic ? 100 * progress : 0;
67 if(_bCinematic || _bCharacterEmphasis)
69 glEnable(GL_STENCIL_TEST);
70 glStencilFunc(GL_NOTEQUAL, 1, 0xFFF );
71 glStencilOp(GL_KEEP, GL_KEEP, GL_REPLACE);
78 r->styleSet( laColor(_color.r(), _color.g(), _color.b(), (
unsigned char)alpha) );
86 r->styleSet( laColor(0, 0, 0, 255) );
90 if(_bCinematic || _bCharacterEmphasis) glDisable(GL_STENCIL_TEST);
virtual void modeTexture(M_BOOL bOn)=0
Enable/disable texturing.
virtual void vquadsDrawSingle(laPoint2 *ar_uv=NULL)=0
Draw a single VQ (Note this is slower than drawing an array of VQ and should be avoided) ...
void vquadsMakeXYRect(unsigned nIndex, const laPoint3 &pos, const laPoint3 &sz, const laPoint2 &uv, const laPoint2 &uv_sz)
Makes a quad aligned to the XY plane; (handy for GUI rendering )
virtual void vquadsDraw(unsigned nQuads, laPoint2 *ar_uv=NULL, laColor *ar_color=NULL, M_BOOL bBillboards=M_FALSE, M_BOOL bUseColorArrays=M_FALSE)=0
Draw an array of VQ, starting with the psecified pointers (or the first VQ if null) ...
virtual void modeDepthBuffer(M_BOOL bOn)=0
Enable/disable depth buffer.
Virtual interface for the Engine graphics renderer.