Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008 #ifndef __SP_DIRECT3D9_SHADERCLASS_H__
00009 #define __SP_DIRECT3D9_SHADERCLASS_H__
00010
00011
00012 #include "Base/spStandard.hpp"
00013
00014 #if defined(SP_COMPILE_WITH_DIRECT3D9)
00015
00016
00017 #include "RenderSystem/spShaderProgram.hpp"
00018
00019 #if defined(SP_PLATFORM_WINDOWS)
00020 # include <d3d9.h>
00021 # include <d3dx9shader.h>
00022 #endif
00023
00024
00025 namespace sp
00026 {
00027 namespace video
00028 {
00029
00030
00031 class SP_EXPORT Direct3D9ShaderClass : public ShaderClass
00032 {
00033
00034 public:
00035
00036 Direct3D9ShaderClass();
00037 ~Direct3D9ShaderClass();
00038
00039 void bind(const scene::MaterialNode* Object = 0);
00040 void unbind();
00041
00042 bool link();
00043
00044 private:
00045
00046
00047
00048 IDirect3DDevice9* D3DDevice_;
00049
00050 IDirect3DVertexShader9* VertexShaderObject_;
00051 IDirect3DPixelShader9* PixelShaderObject_;
00052
00053 };
00054
00055
00056 }
00057
00058 }
00059
00060
00061 #endif
00062
00063 #endif
00064
00065
00066
00067