20 #ifndef PAWS_OBJECT_VIEW_HEADER 21 #define PAWS_OBJECT_VIEW_HEADER 23 #include <iengine/rendermanager.h> 24 #include <iengine/camera.h> 25 #include <iengine/engine.h> 26 #include <iengine/light.h> 27 #include <iengine/material.h> 28 #include <iengine/mesh.h> 29 #include <iengine/movable.h> 30 #include <iengine/sector.h> 32 #include <imesh/object.h> 34 #include <cstool/csview.h> 35 #include <csutil/csstring.h> 36 #include <csutil/leakguard.h> 37 #include <ibgloader.h> 58 void View(iMeshWrapper* wrapper);
63 void View(iMeshFactoryWrapper* wrapper);
68 bool View(
const char* factName);
72 bool Setup(iDocumentNode* node);
82 bool LoadMap(
const char* map,
const char* sector);
107 bool OnMouseDown(
int button,
int mod,
int x,
int y);
108 bool OnMouseUp(
int button,
int mod,
int x,
int y);
111 void Rotate(
int speed,
float radians);
112 void Rotate(
float radians);
128 void LockCamera(csVector3 where, csVector3 at,
bool mouseDownUnlock =
false,
bool mouseDownRotate =
false);
157 bool mouseDownUnlock;
158 bool mouseDownRotate;
159 csVector3 cameraPosition;
162 csVector3 oldPosition;
172 bool mouseControlled;
174 csRef<iBgLoader> loader;
175 csRef<iSector> stage;
177 csRef<iEngine> engine;
178 csRef<iRenderManagerTargets> rmTargets;
179 csRef<iMeshWrapper> mesh;
180 csRef<iSector> meshSector;
181 csRef<iView> meshView;
182 csRef<iTextureHandle> stageTarget;
183 csRef<iTextureHandle> meshTarget;
190 void RotateTemp(
int speed,
float radians);
201 csRef<iThreadReturn> meshFactory;
void Draw()
Draws the widget and all of it's children.
CREATE_PAWS_FACTORY(pawsObjectView)
bool CreateMap()
Creates a default map.
This widget is used to view a mesh in it's own seperate world.
void SetCharApp(psCharAppearance *cApp)
bool OnMouseDown(int button, int mod, int x, int y)
Manage mouse down event to test for and apply window changes.
bool OnMouseExit()
Called whenever the mouse leaves this widget.
bool LoadMap(const char *map, const char *sector)
Loads a map to use as the backdrop.
bool Setup(iDocumentNode *node)
Creates the room ( world ) for the mesh to be placed.
A manager class that handles all the details of a characters appearance.
void SetID(unsigned int id)
Assign this view an ID.
void Draw3D(iGraphics3D *)
void LockCamera(csVector3 where, csVector3 at, bool mouseDownUnlock=false, bool mouseDownRotate=false)
void EnableMouseControl(bool v)
psCharAppearance * GetCharApp()
void OnResize()
Sets the new position of the close button.
iMeshWrapper * GetObject()
bool OnMouseUp(int button, int mod, int x, int y)
Manage mouse up event.
void View(iMeshWrapper *wrapper)
Make a copy of this mesh to view.
csVector3 & GetCameraPosModifier()
void Rotate(int speed, float radians)
void SetCameraPosModifier(csVector3 &mod)
bool ContinueLoad(bool onlyMesh=false)
Continues an existing map load.