#ifndef __KOOPATLAS_CAMERA_H #define __KOOPATLAS_CAMERA_H #include "koopatlas/core.h" class dWorldCamera_c : public dBase_c { public: int onCreate(); int onDelete(); int onExecute(); int onDraw(); dWorldCamera_c(); EGG::Screen screen; EGG::LookAtCamera camera3d; EGG::ProjectOrtho projection2d; EGG::LookAtCamera camera2d; Vec camPos, camTarget, camUp; float currentX, currentY, zoomLevel; void calculateScreenGeometry(); float zoomDivisor, screenLeft, screenTop, screenWidth, screenHeight; void doStuff(float); void generateCameraMatrices(); void updateCameras(); static dWorldCamera_c *build(); static dWorldCamera_c *instance; }; #endif