00001 #ifndef D3MATERIAL_H
00002 #define D3MATERIAL_H
00003
00004 #include "Graphics/GRVisual.h"
00005 #include "Graphics/GRMaterial.h"
00006 #include <WinDX/D3D/WXD3D.h>
00007
00008 namespace Spr {;
00009
00010 class SPR_DLL D3Material:public GRVisual{
00011 public:
00012 struct ColorRGB{
00013 float r, g, b;
00014 };
00015 struct ColorRGBA{
00016 float r, g, b, a;
00017 };
00018 struct XMaterial{
00019 ColorRGBA face;
00020 float power;
00021 ColorRGB specular;
00022 ColorRGB emissive;
00023 };
00024 SGOBJECTDEF(D3Material);
00025 D3Material();
00026 D3Material(GRMaterial& gm);
00027
00028 D3DMATERIAL_SPR material;
00029
00030 WXINTFV(Direct3DTexture) texture;
00031 UTString textureFilename;
00032
00033 bool bOpaque;
00034
00035 virtual void Render(SGFrame* n, GRRender* render);
00036 void SetXMaterial(XMaterial xmat);
00037 XMaterial GetXMaterial();
00038 };
00039
00040 }
00041 #endif