tge/engine/dgl/lensFlare.h
2017-04-17 06:17:10 -06:00

66 lines
1.5 KiB
C++
Executable File

//-----------------------------------------------------------------------------
// Torque Game Engine
// Copyright (C) GarageGames.com, Inc.
//-----------------------------------------------------------------------------
#ifndef _LENSFLARE_H_
#define _LENSFLARE_H_
#ifndef _GTEXMANAGER_H_
#include "dgl/gTexManager.h"
#endif
#ifndef _PLATFORM_H_
#include "platform/platform.h"
#endif
#ifndef _MMATH_H_
#include "math/mMath.h"
#endif
#ifndef _TVECTOR_H_
#include "core/tVector.h"
#endif
#ifndef _COLOR_H_
#include "core/color.h"
#endif
//**************************************************************************
// Lens flare data
//**************************************************************************
struct LFlare
{
ColorF color;
TextureHandle tex;
F32 size; // size in screen pixels (scaled to 640x480)
F32 offset; // offset of flare along flare line values around 0.0-1.0 are good
LFlare()
{
dMemset( this, 0, sizeof( LFlare ) );
color.set( 1.0, 1.0, 1.0, 1.0 );
}
};
//**************************************************************************
// Lens Flare
//**************************************************************************
class LensFlare
{
private:
Vector <LFlare*> mFlareList;
void renderFlare( Point3F &pos, const LFlare &flare );
public:
~LensFlare();
void addFlare( LFlare &flare );
void render( const MatrixF &camTrans, const Point3F &lightPos );
};
#endif