1
0
mirror of https://github.com/Halofreak1990/XFXFramework synced 2024-12-26 13:49:34 +01:00
XFXFramework/include/Graphics/BasicEffect.h
Tom Lint 7e74ae8683 Added System::Type
Added TypeInfo for all relevant types
Added comments
Updated DependencyProperty to work with System::Type
Fixed casing on PropertyMetadata
2013-07-12 21:30:13 +02:00

68 lines
1.5 KiB
C++

/*****************************************************************************
* BasicEffect.h *
* *
* XFX::Graphics::BasicEffect class definition file *
* Copyright (c) XFX Team. All Rights Reserved *
*****************************************************************************/
#ifndef _XFX_GRAPHICS_BASICEFFECT_
#define _XFX_GRAPHICS_BASICEFFECT_
#include <Graphics/Effect.h>
#include <Matrix.h>
#include <Vector3.h>
namespace XFX
{
namespace Graphics
{
class DirectionalLight;
class GraphicsDevice;
class Texture2D;
/**
* Contains a basic rendering effect.
*/
class BasicEffect : public Effect
{
private:
int dirtyFlags;
protected:
BasicEffect(BasicEffect const * const cloneSource);
void OnApply();
public:
float Alpha;
Vector3 AmbientLightColor;
Vector3 DiffuseColor;
DirectionalLight* getDirectionalLight0() const;
DirectionalLight* getDirectionalLight1() const;
DirectionalLight* getDirectionalLight2() const;
Vector3 EmissiveColor;
Vector3 FogColor;
bool FogEnabled;
float FogEnd;
float FogStart;
bool LightingEnabled;
bool PreferPerPixelLighting;
Matrix Projection;
Vector3 SpecularColor;
float SpecularPower;
Texture2D* Texture;
bool TextureEnabled;
bool VertexColorEnabled;
Matrix View;
Matrix World;
BasicEffect(GraphicsDevice * const device);
~BasicEffect();
Effect* Clone() const;
void EnableDefaultLighting();
static const Type& GetType();
};
}
}
#endif //_XFX_GRAPHICS_BASICEFFECT_