00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CS_IMPPRCTX_H__
00020 #define __CS_IMPPRCTX_H__
00021
00022 #include <stdarg.h>
00023 #include "csutil/ref.h"
00024 #include "cstool/proctex.h"
00025 #include "csgeom/vector3.h"
00026
00027 struct iEngine;
00028 struct iLoader;
00029 struct iGraphics3D;
00030 struct iKeyboardDriver;
00031 struct iSector;
00032 struct iVFS;
00033 struct iEvent;
00034 struct iRenderView;
00035 struct iTextureHandle;
00036 struct iObjectRegistry;
00037 struct iVirtualClock;
00038 struct iThingState;
00039 struct iMaterialWrapper;
00040 struct iMeshWrapper;
00041 struct iGeneralFactoryState;
00042 class csEngineProcTex;
00043 class csImposterMesh;
00044
00045 class csImposterProcTex : public csProcTexture
00046 {
00047 private:
00048 csRef<iEngine> Engine;
00049 csRef<iRenderView> View;
00050 csImposterMesh *mesh;
00051 bool imposter_ready;
00052
00053 public:
00054 csImposterProcTex (csImposterMesh *parent,iObjectRegistry *objreg);
00055 ~csImposterProcTex ();
00056
00057 bool GetImposterReady () { return imposter_ready; }
00058 void SetImposterReady (bool r) { imposter_ready = r; }
00059 virtual bool PrepareAnim ();
00060 virtual void Animate (csTicks current_time);
00061 };
00062
00063 #endif // __CS_IMPPRCTX_H__
00064