From 828c0dcb41b56f36a46dc9e36c57b75142c0d951 Mon Sep 17 00:00:00 2001 From: MusicalProgrammer <38636805+MusicalProgrammer@users.noreply.github.com> Date: Wed, 30 May 2018 21:19:46 -0400 Subject: [PATCH] Merge branch 'master' into MusicalProgrammer --- AudioPlayer.cpp | 3 +- AudioPlayer.h | 2 +- BaseButtonInstance.cpp | 9 + BaseButtonInstance.h | 1 + DataModelInstance.cpp | 34 ++ DataModelInstance.h | 16 + Globals.cpp | 11 + Globals.h | 14 + Instance.cpp | 91 ++++- Instance.h | 13 +- PhysicalInstance.cpp | 45 +++ PhysicalInstance.h | 5 +- SDL.dll | Bin 237568 -> 499712 bytes WorkspaceInstance.cpp | 14 + WorkspaceInstance.h | 12 + main.cpp | 812 +++++++++++++++++------------------------ 16 files changed, 599 insertions(+), 483 deletions(-) create mode 100644 DataModelInstance.cpp create mode 100644 DataModelInstance.h create mode 100644 Globals.cpp create mode 100644 Globals.h create mode 100644 WorkspaceInstance.cpp create mode 100644 WorkspaceInstance.h diff --git a/AudioPlayer.cpp b/AudioPlayer.cpp index bfbc2c1..5c5e595 100644 --- a/AudioPlayer.cpp +++ b/AudioPlayer.cpp @@ -32,7 +32,6 @@ void AudioPlayer::init() /* Open the audio device and start playing sound! */ if ( SDL_OpenAudio(&fmt, NULL) < 0 ) { fprintf(stderr, "Unable to open audio: %s\n", SDL_GetError()); - exit(1); } SDL_PauseAudio(0); } @@ -58,7 +57,7 @@ void mixaudio(void *unused, Uint8 *stream, int len) } } -void AudioPlayer::PlaySound(std::string fileString) +void AudioPlayer::playSound(std::string fileString) { if(initiated) diff --git a/AudioPlayer.h b/AudioPlayer.h index 772accc..7467064 100644 --- a/AudioPlayer.h +++ b/AudioPlayer.h @@ -6,6 +6,6 @@ class AudioPlayer public: AudioPlayer(void); ~AudioPlayer(void); - static void PlaySound(std::string); + static void playSound(std::string); static void init(); }; diff --git a/BaseButtonInstance.cpp b/BaseButtonInstance.cpp index 5259e99..99dfa46 100644 --- a/BaseButtonInstance.cpp +++ b/BaseButtonInstance.cpp @@ -1,4 +1,5 @@ #include "BaseButtonInstance.h" +#include "Globals.h" bool floatBottom = false; bool floatRight = false; @@ -12,6 +13,14 @@ BaseButtonInstance::BaseButtonInstance(void) listener = NULL; } +void BaseButtonInstance::render(RenderDevice* rd) +{ + DataModelInstance* dataModel = Globals::dataModel; + Vector2 pos = Vector2(dataModel->mousex,dataModel->mousey); + drawObj(rd, pos, dataModel->mouseButton1Down); + Instance::render(rd); +} + BaseButtonInstance::~BaseButtonInstance(void) { delete listener; diff --git a/BaseButtonInstance.h b/BaseButtonInstance.h index 688299c..6322426 100644 --- a/BaseButtonInstance.h +++ b/BaseButtonInstance.h @@ -8,6 +8,7 @@ class BaseButtonInstance : public Instance public: BaseButtonInstance(void); virtual ~BaseButtonInstance(void); + virtual void render(RenderDevice* rd); virtual void drawObj(RenderDevice* rd, Vector2 mousePos, bool mouseDown); virtual bool mouseInButton(float, float, RenderDevice* rd); virtual void onMouseClick(); diff --git a/DataModelInstance.cpp b/DataModelInstance.cpp new file mode 100644 index 0000000..26bdcb2 --- /dev/null +++ b/DataModelInstance.cpp @@ -0,0 +1,34 @@ +#include "DataModelInstance.h" + + +WorkspaceInstance* workspace; +Instance* guiRoot; +float mousex; +float mousey; +bool mouseButton1Down; + + +DataModelInstance::DataModelInstance(void) +{ + workspace = new WorkspaceInstance(); + guiRoot = new Instance(); + children.push_back(workspace); + className = "dataModel"; + mousex = 0; + mousey = 0; + mouseButton1Down = false; +} + +DataModelInstance::~DataModelInstance(void) +{ +} + +WorkspaceInstance* DataModelInstance::getWorkspace() +{ + return workspace; +} + +Instance* DataModelInstance::getGuiRoot() +{ + return guiRoot; +} diff --git a/DataModelInstance.h b/DataModelInstance.h new file mode 100644 index 0000000..5c6f887 --- /dev/null +++ b/DataModelInstance.h @@ -0,0 +1,16 @@ +#pragma once +#include "instance.h" +#include "WorkspaceInstance.h" + +class DataModelInstance : + public Instance +{ +public: + DataModelInstance(void); + ~DataModelInstance(void); + WorkspaceInstance* getWorkspace(); + Instance* getGuiRoot(); + float mousex; + float mousey; + bool mouseButton1Down; +}; diff --git a/Globals.cpp b/Globals.cpp new file mode 100644 index 0000000..3cc0e67 --- /dev/null +++ b/Globals.cpp @@ -0,0 +1,11 @@ +#include "Globals.h" + +DataModelInstance* Globals::dataModel = NULL; +int const Globals::gen = 0; +int const Globals::major = 0; +int const Globals::minor = 4; +int const Globals::patch = 2; + +Globals::Globals(void){} + +Globals::~Globals(void){} diff --git a/Globals.h b/Globals.h new file mode 100644 index 0000000..8c6e277 --- /dev/null +++ b/Globals.h @@ -0,0 +1,14 @@ +#pragma once +#include "DataModelInstance.h" + +class Globals +{ +public: + Globals(void); + ~Globals(void); + static DataModelInstance* dataModel; + static const int gen; + static const int major; + static const int minor; + static const int patch; +}; \ No newline at end of file diff --git a/Instance.cpp b/Instance.cpp index b981f8b..3872eba 100644 --- a/Instance.cpp +++ b/Instance.cpp @@ -3,20 +3,103 @@ #include "Instance.h" std::string name; -Instance* parent; -static std::string className = "DataModel"; +Instance* parent = NULL; +std::vector children; +static std::string className = "BaseInstance"; Instance::Instance(void) { + parent = NULL; name = "Default Game Instance"; - className = "DataModel"; + className = "BaseInstance"; +} + +void Instance::render(RenderDevice* rd) +{ + for(size_t i = 0; i < children.size(); i++) + { + children.at(i)->render(rd); + } } Instance::~Instance(void) { - name = "Default Game Instance"; + for(size_t i = 0; i < children.size(); i++) + { + delete children.at(i); + } } +std::string Instance::getClassName() +{ + return className; +} +std::vector Instance::getChildren() +{ + return children; +} +std::vector Instance::getAllChildren() +{ + if(!children.empty()) + { + std::vector totalchildren = children; + for(size_t i = 0; i < children.size(); i++) + { + std::vector subchildren = children.at(i)->getAllChildren(); + if(!subchildren.empty()) + totalchildren.insert(totalchildren.end(), subchildren.begin(), subchildren.end()); + } + return totalchildren; + } + return children; +} +void Instance::setParent(Instance* newParent) +{ + if(parent != NULL) + { + parent->removeChild(this); + } + parent = newParent; + if(newParent != NULL) + { + newParent->addChild(this); + } +} + +Instance* Instance::getParent() +{ + return parent; +} + +void Instance::addChild(Instance* newChild) +{ + children.push_back(newChild); +} + +void Instance::removeChild(Instance* oldChild) +{ + for(size_t i = 0; i < children.size(); i++) + { + if(children.at(i) == oldChild) + { + children.erase(children.begin() + i); + } + } +} + +Instance* Instance::findFirstChild(std::string name) +{ + Instance* child = NULL; + for(size_t i = 0; i < children.size(); i++) + { + if(children.at(i)->name == name) + { + child = children.at(i); + break; + } + } + return child; +} diff --git a/Instance.h b/Instance.h index 8a58954..f379d63 100644 --- a/Instance.h +++ b/Instance.h @@ -7,6 +7,17 @@ public: Instance(void); virtual ~Instance(void); std::string name; - Instance* parent; // Another pointer. + virtual void render(RenderDevice*); + std::vector children; // All children. + std::string getClassName(); + Instance* findFirstChild(std::string); + std::vector getChildren(); + std::vector getAllChildren(); + void setParent(Instance*); + void addChild(Instance*); + void removeChild(Instance*); + Instance* getParent(); +protected: std::string className; + Instance* parent; // Another pointer. }; diff --git a/PhysicalInstance.cpp b/PhysicalInstance.cpp index faa740a..416551e 100644 --- a/PhysicalInstance.cpp +++ b/PhysicalInstance.cpp @@ -10,6 +10,7 @@ Color3 color; bool changed = true; Box itemBox = Box(); + PhysicalInstance::PhysicalInstance(void) { name = "Default PhysicalInstance"; @@ -23,7 +24,38 @@ PhysicalInstance::PhysicalInstance(void) velocity = Vector3(0,0,0); rotVelocity = Vector3(0,0,0); } +void PhysicalInstance::setSize(Vector3 newSize) +{ + int minsize = 1; + int maxsize = 512; + changed = true; + int sizex = (int)newSize.x; + if(sizex <= 0) + sizex = 1; + if(sizex > 512) + sizex = 512; + int sizey = (int)newSize.y; + if(sizey <= 0) + sizey = 1; + if(sizey > 512) + sizey = 512; + + int sizez = (int)newSize.z; + if(sizez <= 0) + sizez = 1; + if(sizez > 512) + sizez = 512; + + size = Vector3(sizex, sizey, sizez); + + + +} +Vector3 PhysicalInstance::getSize() +{ + return size; +} Vector3 PhysicalInstance::getPosition() { return position; @@ -61,6 +93,19 @@ Box PhysicalInstance::getBox() return itemBox; } +void PhysicalInstance::render(RenderDevice* rd) +{ + Draw::box(getBox(), rd, color, Color4::clear()); + if(!children.empty()) + { + for(size_t i = 0; i < children.size(); i++) + { + children.at(i)->render(rd); + } + } + +} + PhysicalInstance::~PhysicalInstance(void) { } diff --git a/PhysicalInstance.h b/PhysicalInstance.h index bc3f859..8731067 100644 --- a/PhysicalInstance.h +++ b/PhysicalInstance.h @@ -7,7 +7,7 @@ class PhysicalInstance : public: PhysicalInstance(void); ~PhysicalInstance(void); - Vector3 size; + virtual void render(RenderDevice*); Vector3 velocity; Vector3 rotvelocity; CoordinateFrame cFrame; @@ -18,6 +18,9 @@ public: void setCFrame(CoordinateFrame); Box getBox(); CoordinateFrame getCFrameRenderBased(); + Vector3 getSize(); + void setSize(Vector3); private: Vector3 position; + Vector3 size; }; diff --git a/SDL.dll b/SDL.dll index 86975e6f6163abde27828d963c603af6c10beb4b..6e77db715e794d13ce7a95b17158f951eb1699f8 100644 GIT binary patch literal 499712 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 XJ}pop_+osqy&8ua(7Sd@VA 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 +#include #include "Instance.h" #include "resource.h" #include "PhysicalInstance.h" #include "TextButtonInstance.h" #include "ImageButtonInstance.h" +#include "DataModelInstance.h" #include "AudioPlayer.h" +#include "Globals.h" #include #if G3D_VER < 61000 #error Requires G3D 6.10 #endif HWND hwnd; -static const float VNUM = 0.01F; + static std::string title = ""; -static const std::string VERSION = "PRE-ALPHA "; -static std::vector instances; -static std::vector instances_2D; -static Instance* dataModel; +static DataModelInstance* dataModel; GFontRef fntdominant = NULL; GFontRef fntlighttrek = NULL; Ray testRay; @@ -42,22 +42,19 @@ static int index = 2; static std::string cameraSound = ""; static std::string clickSound = ""; static std::string dingSound = ""; -static float TIMERVAL = 60.0F; -static int SCOREVAL = 0; static G3D::TextureRef go = NULL; static G3D::TextureRef go_ovr = NULL; static G3D::TextureRef go_dn = NULL; VARAreaRef varStatic = NULL; -static float mousex = 0; -static float mousey = 0; +//static float dataModel->mousex = 0; +//static float dataModel->mousey = 0; static int cursorid = 0; static G3D::TextureRef cursor = NULL; -static bool mouseButton1Down = false; +//static bool dataModel->mouseButton1Down = false; static bool running = true; static bool mouseMovedBeginMotion = false; static bool showMouse = true; //Controller -static bool moving = false; static bool forwards = false; static bool backwards = false; static bool left = false; @@ -70,19 +67,11 @@ static const int CURSOR = 0; static const int ARROWS = 1; static const int RESIZE = 2; static int mode = CURSOR; +bool dragging = false; Vector3 cameraPos = Vector3(0,2,10); -Vector3 focalPointT = Vector3(0,0,0); Vector2 oldMouse = Vector2(0,0); float moveRate = 0.5; Instance* selectedInstance = NULL; -/** - This simple demo applet uses the debug mode as the regular - rendering mode so you can fly around the scene. - */ - - - - class Demo : public GApplet { @@ -146,23 +135,13 @@ class App : public GApp { HWND getHWND(); HWND getPropertyHWND(); HWND getMainHWND(); - Vector3 getFocalPoint(); - void setFocalPoint(Vector3 vect); + //void addHWND(HWND hwnd); private: HWND hwnd; HWND propertyHWnd; HWND mainHWnd; - Vector3 focalPoint; }; -Vector3 App::getFocalPoint() -{ - return focalPoint; -} -void App::setFocalPoint(Vector3 vect) -{ - focalPoint=vect; -} App *usableApp = NULL; HWND App::getHWND() @@ -186,10 +165,6 @@ Demo::Demo(App* _app) : GApplet(_app), app(_app) { void clearInstances() { - for(size_t i = 0; i < instances.size(); i++) - { - delete instances.at(i); - } delete dataModel; } @@ -199,7 +174,6 @@ void OnError(int err, std::string msg = "") usableApp->window()->setMouseVisible(true); std::string emsg = "An unexpected error has occured and DUOM 5 has to quit. We're sorry!" + msg; clearInstances(); - //DialogBox(NULL, MAKEINTRESOURCE(IDD_DIALOG1), NULL, NULL); MessageBox(NULL, emsg.c_str(),"Dynamica Crash", MB_OK); exit(err); } @@ -237,23 +211,20 @@ std::string Convert (float number){ PhysicalInstance* makePart() { PhysicalInstance* part = new PhysicalInstance(); - instances.push_back(part); return part; } TextButtonInstance* makeTextButton() { TextButtonInstance* part = new TextButtonInstance(); - instances.push_back(part); - instances_2D.push_back(part); return part; } ImageButtonInstance* makeImageButton(G3D::TextureRef newImage = NULL, G3D::TextureRef overImage = NULL, G3D::TextureRef downImage = NULL, G3D::TextureRef disableImage = NULL) { ImageButtonInstance* part = new ImageButtonInstance(newImage,overImage, downImage, disableImage); - instances.push_back(part); - instances_2D.push_back(part); +// instances.push_back(part); +// instances_2D.push_back(part); return part; } @@ -266,7 +237,7 @@ public: void CameraButtonListener::onButton1MouseClick(BaseButtonInstance* button) { - AudioPlayer::PlaySound(cameraSound); + AudioPlayer::playSound(cameraSound); CoordinateFrame frame = usableApp->debugCamera.getCoordinateFrame(); if(button->name == "CenterCam") centerCam = true; @@ -291,7 +262,7 @@ void GUDButtonListener::onButton1MouseClick(BaseButtonInstance* button) { if(selectedInstance != NULL) { - AudioPlayer::PlaySound(dingSound); + AudioPlayer::playSound(dingSound); if(button->name == "Duplicate") { @@ -309,8 +280,8 @@ void RotateButtonListener::onButton1MouseClick(BaseButtonInstance* button) { if(selectedInstance != NULL) { - AudioPlayer::PlaySound(clickSound); - if(selectedInstance->className == "Part") + AudioPlayer::playSound(clickSound); + if(selectedInstance->getClassName() == "Part") { PhysicalInstance* part = (PhysicalInstance*) selectedInstance; if(button->name == "Tilt") @@ -327,17 +298,11 @@ void deleteInstance() { if(selectedInstance != NULL) { - for(size_t i = 0; i < instances.size(); i++) - { - if(instances.at(i) == selectedInstance) - { - Instance* deleting = instances.at(i); - instances.erase(instances.begin() + i); - delete deleting; - selectedInstance = NULL; - AudioPlayer::PlaySound(GetFileInPath("/content/sounds/pageturn.wav")); - } - } + if(selectedInstance->getParent() != NULL) + selectedInstance->getParent()->removeChild(selectedInstance); + delete selectedInstance; + selectedInstance = NULL; + AudioPlayer::playSound(GetFileInPath("/content/sounds/pageturn.wav")); } } @@ -365,7 +330,7 @@ void ModeSelectionListener::onButton1MouseClick(BaseButtonInstance* button) { CoordinateFrame frame = usableApp->debugCamera.getCoordinateFrame(); - + std::vector instances_2D = dataModel->getGuiRoot()->getAllChildren(); for(size_t i = 0; i < instances_2D.size(); i++) { if(instances_2D.at(i)->name == "Cursor" || instances_2D.at(i)->name == "Resize" || instances_2D.at(i)->name == "Arrows") @@ -391,7 +356,7 @@ void initGUI() button->boxBegin = Vector2(0, -24); button->boxEnd = Vector2(80, 0); button->floatBottom = true; - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button->font = fntlighttrek; button->textColor = Color3(0,255,255); button->textOutlineColor = Color4::clear(); @@ -403,7 +368,7 @@ void initGUI() button->boxBegin = Vector2(0, -48); button->boxEnd = Vector2(80, -24); button->floatBottom = true; - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button->font = fntlighttrek; button->textColor = Color3(0,255,255); button->textOutlineColor = Color4::clear(); @@ -415,7 +380,7 @@ void initGUI() button->boxBegin = Vector2(0, -72); button->boxEnd = Vector2(80, -48); button->floatBottom = true; - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button->font = fntlighttrek; button->textColor = Color3(0,255,255); button->textOutlineColor = Color4::clear(); @@ -427,7 +392,7 @@ void initGUI() button->boxBegin = Vector2(0, -96); button->boxEnd = Vector2(80, -72); button->floatBottom = true; - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button->font = fntlighttrek; button->textColor = Color3(0,255,255); button->textOutlineColor = Color4::clear(); @@ -439,7 +404,7 @@ void initGUI() button->boxBegin = Vector2(0, -120); button->boxEnd = Vector2(80, -96); button->floatBottom = true; - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button->font = fntlighttrek; button->textColor = Color3(0,255,255); button->boxOutlineColor = Color3(0,255,255); @@ -450,7 +415,7 @@ void initGUI() button = makeTextButton(); button->boxBegin = Vector2(0, 0); button->boxEnd = Vector2(125, 25); - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button->font = fntlighttrek; button->textColor = Color3::white(); button->boxColor = Color4::clear(); @@ -463,7 +428,7 @@ void initGUI() button = makeTextButton(); button->boxBegin = Vector2(125, 0); button->boxEnd = Vector2(250, 25); - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button->font = fntlighttrek; button->textColor = Color3::white(); button->boxColor = Color4::clear(); @@ -476,7 +441,7 @@ void initGUI() button = makeTextButton(); button->boxBegin = Vector2(250, 0); button->boxEnd = Vector2(375, 25); - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button->font = fntlighttrek; button->textColor = Color3::white(); button->boxColor = Color4::clear(); @@ -489,7 +454,7 @@ void initGUI() button = makeTextButton(); button->boxBegin = Vector2(375, 0); button->boxEnd = Vector2(500, 25); - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button->font = fntlighttrek; button->textColor = Color3::white(); button->boxColor = Color4::clear(); @@ -502,7 +467,7 @@ void initGUI() button = makeTextButton(); button->boxBegin = Vector2(500, 0); button->boxEnd = Vector2(625, 25); - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button->font = fntlighttrek; button->textColor = Color3::white(); button->boxColor = Color4::clear(); @@ -525,7 +490,7 @@ void initGUI() button->setAllColorsSame(); button->font = fntlighttrek; button->fontLocationRelativeTo = Vector2(10, 0); - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button = makeTextButton(); @@ -539,7 +504,7 @@ void initGUI() button->setAllColorsSame(); button->font = fntlighttrek; button->fontLocationRelativeTo = Vector2(10, 0); - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button = makeTextButton(); button->boxBegin = Vector2(0,265); @@ -552,7 +517,7 @@ void initGUI() button->setAllColorsSame(); button->font = fntlighttrek; button->fontLocationRelativeTo = Vector2(10, 0); - button->parent = dataModel; + button->setParent(dataModel->getGuiRoot()); button->name = "Duplicate"; button->setButtonListener(new GUDButtonListener()); @@ -561,7 +526,7 @@ void initGUI() instance->name = "go"; instance->size = Vector2(65,65); instance->position = Vector2(6.5, 25); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); @@ -572,14 +537,14 @@ void initGUI() Texture::fromFile(GetFileInPath("/content/images/ArrowTool_ds.png"))); instance->size = Vector2(50,50); instance->position = Vector2(15, 90); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "Cursor"; instance->setButtonListener(new ModeSelectionListener()); instance = makeImageButton(Texture::fromFile(GetFileInPath("/content/images/ScaleTool.png")),Texture::fromFile(GetFileInPath("/content/images/ScaleTool_ovr.png")),Texture::fromFile(GetFileInPath("/content/images/ScaleTool_dn.png")),Texture::fromFile(GetFileInPath("/content/images/ScaleTool_ds.png"))); instance->size = Vector2(40,40); instance->position = Vector2(0, 140); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "Resize"; instance->setButtonListener(new ModeSelectionListener()); @@ -591,7 +556,7 @@ void initGUI() Texture::fromFile(GetFileInPath("/content/images/MoveTool_ds.png"))); instance->size = Vector2(40,40); instance->position = Vector2(40, 140); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "Arrows"; instance->setButtonListener(new ModeSelectionListener()); @@ -602,7 +567,7 @@ void initGUI() Texture::fromFile(GetFileInPath("/content/images/SelectionRotate_ds.png"))); instance->size = Vector2(30,30); instance->position = Vector2(10, 175); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "Rotate"; instance->setButtonListener(new RotateButtonListener()); @@ -613,7 +578,7 @@ void initGUI() Texture::fromFile(GetFileInPath("/content/images/SelectionTilt_ds.png"))); instance->size = Vector2(30,30); instance->position = Vector2(40, 175); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "Tilt"; instance->setButtonListener(new RotateButtonListener()); @@ -625,7 +590,7 @@ void initGUI() Texture::fromFile(GetFileInPath("/content/images/Delete_ds.png"))); instance->size = Vector2(40,46); instance->position = Vector2(20, 284); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "Delete"; instance->setButtonListener(new DeleteListener()); @@ -637,7 +602,7 @@ void initGUI() instance->floatBottom = true; instance->floatRight = true; instance->position = Vector2(-77, -90); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "ZoomIn"; instance->setButtonListener(new CameraButtonListener()); @@ -649,7 +614,7 @@ void initGUI() instance->floatBottom = true; instance->floatRight = true; instance->position = Vector2(-77, -31); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "ZoomOut"; instance->setButtonListener(new CameraButtonListener()); @@ -661,7 +626,7 @@ void initGUI() instance->floatBottom = true; instance->floatRight = true; instance->position = Vector2(-110, -50); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "PanLeft"; instance->setButtonListener(new CameraButtonListener()); @@ -673,7 +638,7 @@ void initGUI() instance->floatBottom = true; instance->floatRight = true; instance->position = Vector2(-45, -50); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "PanRight"; instance->setButtonListener(new CameraButtonListener()); @@ -685,7 +650,7 @@ void initGUI() instance->floatBottom = true; instance->floatRight = true; instance->position = Vector2(-77, -60); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "CenterCam"; instance->setButtonListener(new CameraButtonListener()); @@ -697,7 +662,7 @@ void initGUI() instance->floatBottom = true; instance->floatRight = true; instance->position = Vector2(-105, -75); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "TiltUp"; instance->setButtonListener(new CameraButtonListener()); @@ -709,7 +674,7 @@ void initGUI() instance->floatBottom = true; instance->floatRight = true; instance->position = Vector2(-40, -75); - instance->parent = dataModel; + instance->setParent(dataModel->getGuiRoot()); instance->name = "TiltDown"; instance->setButtonListener(new CameraButtonListener()); } @@ -720,89 +685,90 @@ void Demo::onInit() { // Called before Demo::run() beings - dataModel = new Instance(); - dataModel->parent = NULL; + dataModel = new DataModelInstance(); + dataModel->setParent(NULL); dataModel->name = "undefined"; + + Globals::dataModel = dataModel; initGUI(); PhysicalInstance* test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3(0.2F,0.3F,1); - test->size = Vector3(24,1,24); + test->setSize(Vector3(24,1,24)); test->setPosition(Vector3(0,0,0)); - test->setCFrame(test->getCFrame() * Matrix3::fromEulerAnglesXYZ(0,toRadians(90),0)); - //selectedInstance = test; + test->setCFrame(test->getCFrame() * Matrix3::fromEulerAnglesXYZ(0,toRadians(40),toRadians(40))); test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3(.5F,1,.5F); - test->size = Vector3(4,1,2); + test->setSize(Vector3(4,1,2)); test->setPosition(Vector3(-10,1,0)); test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3(.5F,1,.5F); - test->size = Vector3(4,1,2); + test->setSize(Vector3(4,1,2)); test->setPosition(Vector3(10,1,0)); test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3::gray(); - test->size = Vector3(4,1,2); + test->setSize(Vector3(4,1,2)); test->setPosition(Vector3(7,2,0)); test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3::gray(); - test->size = Vector3(4,1,2); + test->setSize(Vector3(4,1,2)); test->setPosition(Vector3(-7,2,0)); test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3::gray(); - test->size = Vector3(4,1,2); + test->setSize(Vector3(4,1,2)); test->setPosition(Vector3(4,3,0)); test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3::gray(); - test->size = Vector3(4,1,2); + test->setSize(Vector3(4,1,2)); test->setPosition(Vector3(-5,3,0)); test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3::gray(); - test->size = Vector3(4,1,2); + test->setSize(Vector3(4,1,2)); test->setPosition(Vector3(1,4,0)); test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3::gray(); - test->size = Vector3(4,1,2); + test->setSize(Vector3(4,1,2)); test->setPosition(Vector3(-3,4,0)); test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3::gray(); - test->size = Vector3(4,1,2); + test->setSize(Vector3(4,1,2)); test->setPosition(Vector3(-2,5,0)); test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3::gray(); - test->size = Vector3(4,1,2); + test->setSize(Vector3(4,1,2)); test->setPosition(Vector3(0,6,0)); test = makePart(); - test->parent = dataModel; + test->setParent(dataModel->getWorkspace()); test->color = Color3::gray(); - test->size = Vector3(-4,-1,-2); + test->setSize(Vector3(4,1,2)); test->setPosition(Vector3(2,7,0)); @@ -843,19 +809,18 @@ void Demo::onCleanup() { void Demo::onLogic() { // Add non-simulation game logic and AI code here - for(size_t i = 0; i < instances_2D.size(); i++) + + Instance* obj = dataModel->getGuiRoot()->findFirstChild("Delete"); + if(obj != NULL) { - if(instances_2D.at(i)->name == "Delete") - { - ImageButtonInstance* button = (ImageButtonInstance*)instances_2D.at(i); - if(selectedInstance == NULL) - button->disabled = true; - else - button->disabled = false; - - } + ImageButtonInstance* button = (ImageButtonInstance*)obj; + if(selectedInstance == NULL) + button->disabled = true; + else + button->disabled = false; } + } @@ -864,10 +829,10 @@ void Demo::onNetwork() { } -double getVectorDistance(Vector3 vector1, Vector3 vector2) -{ - return pow(pow((double)vector1.x - (double)vector2.x, 2) + pow((double)vector1.y - (double)vector2.y, 2) + pow((double)vector1.z - (double)vector2.z, 2), 0.5); -} +//double getVectorDistance(Vector3 vector1, Vector3 vector2) +//{ +// return pow(pow((double)vector1.x - (double)vector2.x, 2) + pow((double)vector1.y - (double)vector2.y, 2) + pow((double)vector1.z - (double)vector2.z, 2), 0.5); +//} void Demo::onSimulation(RealTime rdt, SimTime sdt, SimTime idt) { if(dataModel->name != title) @@ -878,99 +843,67 @@ void Demo::onSimulation(RealTime rdt, SimTime sdt, SimTime idt) { } CoordinateFrame frame = app->debugCamera.getCoordinateFrame(); - - if (moving) + if(forwards) { - cameraPos = frame.translation; - if(forwards) - { - forwards = false; - frame.translation = Vector3(cameraPos.x, cameraPos.y, cameraPos.z) + frame.lookVector()*moveRate; - } - else if(backwards) - { - backwards = false; - frame.translation = Vector3(cameraPos.x, cameraPos.y, cameraPos.z) - frame.lookVector()*moveRate; - } - if(left) - { - left = false; - frame.translation = Vector3(cameraPos.x, cameraPos.y, cameraPos.z) + frame.leftVector()*moveRate; - } - else if(right) - { - right = false; - frame.translation = Vector3(cameraPos.x, cameraPos.y, cameraPos.z) + frame.rightVector()*moveRate; - } - moving=false; - app->setFocalPoint(frame.translation + frame.lookVector() * 15); + forwards = false; + cameraPos = Vector3(cameraPos.x, cameraPos.y, cameraPos.z) + frame.lookVector()*moveRate; } - //app->debugCamera.setPosition(cameraPos); + else if(backwards) + { + backwards = false; + cameraPos = Vector3(cameraPos.x, cameraPos.y, cameraPos.z) - frame.lookVector()*moveRate; + } + if(left) + { + left = false; + cameraPos = Vector3(cameraPos.x, cameraPos.y, cameraPos.z) + frame.leftVector()*moveRate; + } + else if(right) + { + right = false; + cameraPos = Vector3(cameraPos.x, cameraPos.y, cameraPos.z) + frame.rightVector()*moveRate; + } + app->debugCamera.setPosition(cameraPos); if(centerCam) { - CoordinateFrame frame = app->debugCamera.getCoordinateFrame(); - - Vector3 focalPos; + CoordinateFrame frame = CoordinateFrame(app->debugCamera.getCoordinateFrame().translation); if(selectedInstance == NULL) - { - focalPos=Vector3(0,0,0); - frame.lookAt(focalPos); - app->setFocalPoint(focalPos); - } + frame.lookAt(Vector3(0,0,0)); else - { - focalPos=((PhysicalInstance*)selectedInstance)->getPosition()/2; - frame.lookAt(focalPos); - app->setFocalPoint(focalPos); - } - + frame.lookAt(((PhysicalInstance*)selectedInstance)->getPosition()); app->debugController.setCoordinateFrame(frame); - //app->debugCamera.setCoordinateFrame(frame); centerCam = false; - } - - float camAngleY=0; - float camAngleX=0; - float camAngleZ=0; - //test+=0.1f; - - - //app->debugController.setCoordinateFrame(frame); - //app->setFocalPoint(Vector3(0,0,0)); - - float panDirection=0; - - if (panLeft) + if(panRight) { - panDirection=toRadians(-45); - panLeft = false; - } - if (panRight) - { - panDirection=toRadians(45); panRight = false; - } + CoordinateFrame frame = app->debugCamera.getCoordinateFrame(); + float y = frame.translation.y; + CoordinateFrame frame2 = CoordinateFrame(frame.rotation, frame.translation + frame.lookVector()*25); + Vector3 focus = frame.translation+frame.lookVector()*25; + frame2 = frame2 * Matrix3::fromEulerAnglesXYZ(0,toRadians(45),0); + frame2 = frame2 - frame2.lookVector()*25; + cameraPos = Vector3(frame2.translation.x, y, frame2.translation.z); + CoordinateFrame newFrame = CoordinateFrame(frame2.rotation, Vector3(frame2.translation.x, y, frame2.translation.z)); + newFrame.lookAt(focus); + app->debugController.setCoordinateFrame(newFrame); - if(panDirection!=0) + } + if(panLeft) { - Vector3 camPos = frame.translation; - Vector3 focalPoint = app->getFocalPoint(); - CoordinateFrame localFrame = CoordinateFrame(); - CoordinateFrame cf = CoordinateFrame(Vector3(focalPoint.x,0,focalPoint.z)); - cf.lookAt(Vector3(camPos.x,0,camPos.z)); - cf=cf*Matrix3::fromEulerAnglesXYZ(0,panDirection,0); - float distd = (Vector3(camPos.x,0,camPos.z)-Vector3(focalPoint.x,0,focalPoint.z)).magnitude(); - cf=cf+cf.lookVector()*distd; // Distance - cf=cf+Vector3(0,camPos.y,0); - cf.lookAt(focalPoint); - //Vector3 camerapoint = frame.translation; - messageTime = System::time(); - cameraPos=camPos; - app->debugController.setCoordinateFrame(cf); + panLeft = false; + CoordinateFrame frame = app->debugCamera.getCoordinateFrame(); + float y = frame.translation.y; + CoordinateFrame frame2 = CoordinateFrame(frame.rotation, frame.translation + frame.lookVector()*25); + Vector3 focus = frame.translation+frame.lookVector()*25; + frame2 = frame2 * Matrix3::fromEulerAnglesXYZ(0,toRadians(-45),0); + frame2 = frame2 - frame2.lookVector()*25; + cameraPos = Vector3(frame2.translation.x, y, frame2.translation.z); + CoordinateFrame newFrame = CoordinateFrame(frame2.rotation, Vector3(frame2.translation.x, y, frame2.translation.z)); + newFrame.lookAt(focus); + app->debugController.setCoordinateFrame(newFrame); } - if(tiltUp) { tiltUp = false; @@ -993,13 +926,7 @@ void Demo::onSimulation(RealTime rdt, SimTime sdt, SimTime idt) { } - -//void readMouseGUIInput() -//{ - -//} - -double getOSVersion() { +/*double getOSVersion() { OSVERSIONINFO osvi; ZeroMemory(&osvi, sizeof(OSVERSIONINFO)); @@ -1008,7 +935,7 @@ double getOSVersion() { GetVersionEx(&osvi); std::string version = Convert(osvi.dwMajorVersion) + "." + Convert(osvi.dwMinorVersion); return ::atof(version.c_str()); -} +}*/ //User Input void Demo::onUserInput(UserInput* ui) { @@ -1037,7 +964,6 @@ void Demo::onUserInput(UserInput* ui) { showMouse = true; app->debugController.setActive(false); } - if(ui->keyPressed(SDLK_LSHIFT) || ui->keyPressed(SDLK_RSHIFT)) { moveRate = 1; @@ -1049,13 +975,13 @@ void Demo::onUserInput(UserInput* ui) { if(ui->keyPressed(SDL_MOUSE_WHEEL_UP_KEY)) { - AudioPlayer::PlaySound(cameraSound); + AudioPlayer::playSound(cameraSound); CoordinateFrame frame = app->debugCamera.getCoordinateFrame(); cameraPos = cameraPos + frame.lookVector()*2; } if(ui->keyPressed(SDL_MOUSE_WHEEL_DOWN_KEY)) { - AudioPlayer::PlaySound(cameraSound); + AudioPlayer::playSound(cameraSound); CoordinateFrame frame = app->debugCamera.getCoordinateFrame(); cameraPos = cameraPos - frame.lookVector()*2; } @@ -1077,56 +1003,40 @@ void Demo::onUserInput(UserInput* ui) { app->setDebugMode(!app->debugMode()); } } - if(ui->keyDown(SDLK_LCTRL)) - { - if(ui->keyPressed('v')) - { - messageTime = System::time(); - message = Convert(getOSVersion()); - } - } - if(ui->keyPressed(SDLK_F8)) - { - //index++; - //if(index >= 7) - //{ - // index = 0; - //} - messageTime = System::time(); - message = "FPS has been locked at " + Convert(FPSVal[index]); + //if(ui->keyPressed(SDLK_F8)) + //{ + // messageTime = System::time(); + // message = "FPS has been locked at " + Convert(FPSVal[index]); //setDesiredFrameRate(FPSVal[index]); - } - mousex = ui->getMouseX(); - mousey = ui->getMouseY(); - mouseButton1Down = ui->keyDown(SDL_LEFT_MOUSE_KEY); + //} + dataModel->mousex = ui->getMouseX(); + dataModel->mousey = ui->getMouseY(); + dataModel->mouseButton1Down = ui->keyDown(SDL_LEFT_MOUSE_KEY); if(ui->keyDown(SDLK_UP)) { forwards = true; - moving = true; } else if(ui->keyDown(SDLK_DOWN)) { backwards = true; - moving = true; } if(ui->keyDown(SDLK_LEFT)) { left = true; - moving = true; } else if(ui->keyDown(SDLK_RIGHT)) { right = true; - moving = true; } if(ui->keyPressed(SDL_LEFT_MOUSE_KEY)) { bool onGUI = false; + std::vector instances_2D = dataModel->getGuiRoot()->getAllChildren(); for(size_t i = 0; i < instances_2D.size(); i++) { - if(instances_2D.at(i)->className == "TextButton" || instances_2D.at(i)->className == "ImageButton") + if(instances_2D.at(i)->getClassName() == "TextButton" || instances_2D.at(i)->getClassName() == "ImageButton") { BaseButtonInstance* button = (BaseButtonInstance*)instances_2D.at(i); if(button->mouseInButton(ui->mouseXY().x, ui->mouseXY().y, app->renderDevice)) @@ -1139,12 +1049,13 @@ void Demo::onUserInput(UserInput* ui) { if(!onGUI) { selectedInstance = NULL; - testRay = app->debugCamera.worldRay(mousex, mousey, app->renderDevice->getViewport()); + testRay = app->debugCamera.worldRay(dataModel->mousex, dataModel->mousey, app->renderDevice->getViewport()); float nearest=std::numeric_limits::infinity(); Vector3 camPos = app->debugCamera.getCoordinateFrame().translation; + std::vector instances = dataModel->getWorkspace()->getAllChildren(); for(size_t i = 0; i < instances.size(); i++) { - if(instances.at(i)->className == "Part" && instances.at(i)->parent == dataModel) + if(instances.at(i)->getClassName() == "Part") { PhysicalInstance* test = (PhysicalInstance*)instances.at(i); float time = testRay.intersectionTime(test->getBox()); @@ -1154,6 +1065,9 @@ void Demo::onUserInput(UserInput* ui) { { nearest=time; selectedInstance = test; + //message = "Dragging = true."; + //messageTime = System::time(); + //dragging = true; } } } @@ -1168,10 +1082,14 @@ void Demo::onUserInput(UserInput* ui) { if(ui->keyReleased(SDL_LEFT_MOUSE_KEY)) { - + dragging = false; + //message = "Dragging = false."; + //messageTime = System::time(); + std::vector instances_2D = dataModel->getGuiRoot()->getAllChildren(); + std::vector instances = dataModel->getWorkspace()->getAllChildren(); for(size_t i = 0; i < instances_2D.size(); i++) { - if(instances_2D.at(i)->className == "TextButton" || instances_2D.at(i)->className == "ImageButton") + if(instances_2D.at(i)->getClassName() == "TextButton" || instances_2D.at(i)->getClassName() == "ImageButton") { BaseButtonInstance* button = (BaseButtonInstance*)instances_2D.at(i); if(button->mouseInButton(ui->mouseXY().x, ui->mouseXY().y, app->renderDevice)) @@ -1182,6 +1100,33 @@ void Demo::onUserInput(UserInput* ui) { } } + if (ui->keyDown(SDL_LEFT_MOUSE_KEY)) { + if (dragging) { + PhysicalInstance* part = (PhysicalInstance*) selectedInstance; + Ray dragRay = app->debugCamera.worldRay(dataModel->mousex, dataModel->mousey, app->renderDevice->getViewport()); + std::vector instances = dataModel->getWorkspace()->getAllChildren(); + for(size_t i = 0; i < instances.size(); i++) + { + if(instances.at(i)->getClassName() == "Part") + { + PhysicalInstance* moveTo = (PhysicalInstance*)instances.at(i); + float __time = testRay.intersectionTime(moveTo->getBox()); + float __nearest=std::numeric_limits::infinity(); + if (__time != inf()) + { + if (__nearest>__time) + { + Vector3 closest = (dragRay.closestPoint(moveTo->getPosition()) * 2); + part->setPosition(closest); + //part->setPosition(Vector3(floor(closest.x),part->getPosition().y,floor(closest.z))); + } + } + } + } + Sleep(10); + } + } + //readMouseGUIInput(); // Add other key handling here @@ -1195,7 +1140,6 @@ void makeFlag(Vector3 &vec, RenderDevice* &rd) { Vector3 up = Vector3(vec.x, vec.y+3, vec.z); - //Draw::lineSegment(G3D::LineSegment::fromTwoPoints(vec, up), rd, Color3::blue(), 3); rd->setColor(Color3::blue()); rd->beforePrimitive(); @@ -1225,9 +1169,9 @@ bool mouseInArea(float point1x, float point1y, float point2x, float point2y) { - if(mousex >= point1x && mousey >= point1y) + if(dataModel->mousex >= point1x && dataModel->mousey >= point1y) { - if(mousex < point2x && mousey < point2y) + if(dataModel->mousex < point2x && dataModel->mousey < point2y) { return true; } @@ -1238,21 +1182,12 @@ bool mouseInArea(float point1x, float point1y, float point2x, float point2y) void drawButtons(RenderDevice* rd) { - for(size_t i = 0; i < instances_2D.size(); i++) - { - Instance* instance = instances_2D.at(i); - if((instance->className == "TextButton" || instance->className == "ImageButton") && instance->parent == dataModel) - { - BaseButtonInstance* tbi = (BaseButtonInstance*)instance; - tbi->drawObj(rd, Vector2(mousex, mousey), mouseButton1Down); - } - } + dataModel->getGuiRoot()->render(rd); } void drawOutline(Vector3 from, Vector3 to, RenderDevice* rd, LightingParameters lighting, Vector3 size, Vector3 pos, CoordinateFrame c) { - //rd->setLight(0, NULL); - //rd->setAmbientLightColor(Color3(1,1,1)); + Color3 outline = Color3::cyan();//Color3(0.098F,0.6F,1.0F); float offsetSize = 0.05F; //X @@ -1276,24 +1211,32 @@ void drawOutline(Vector3 from, Vector3 to, RenderDevice* rd, LightingParameters { rd->setLight(0, NULL); rd->setAmbientLightColor(Color3(1,1,1)); - float max = size.x; - if(abs(size.y) > max) - max = size.y; - if(abs(size.z) > max) - max = size.z; - max = max / 2; - Draw::arrow(pos, Vector3(0, 1+max, 0), rd); - Draw::arrow(pos, Vector3(1+max, 0, 0), rd); - Draw::arrow(pos, Vector3(0, 0, 1+max), rd); - Draw::arrow(pos, Vector3(0, (-1)-max, 0), rd); - Draw::arrow(pos, Vector3((-1)-max, 0, 0), rd); - Draw::arrow(pos, Vector3(0, 0, (-1)-max), rd); + + AABox box; + c.toWorldSpace(Box(from, to)).getBounds(box); + float max = box.high().y - pos.y; + + Draw::arrow(pos, Vector3(0, 1.5+max, 0), rd); + Draw::arrow(pos, Vector3(0, (-1.5)-max, 0), rd); + + max = box.high().x - pos.x; + + Draw::arrow(pos, Vector3(1.5+max, 0, 0), rd); + Draw::arrow(pos, Vector3((-1.5)-max, 0, 0), rd); + + max = box.high().z - pos.z; + + Draw::arrow(pos, Vector3(0, 0, 1.5+max), rd); + Draw::arrow(pos, Vector3(0, 0, (-1.5)-max), rd); + + + rd->setAmbientLightColor(lighting.ambient); rd->setLight(0, GLight::directional(lighting.lightDirection, lighting.lightColor)); } else if(mode == RESIZE) { - + Color3 sphereColor = outline; rd->setLight(0, NULL); rd->setAmbientLightColor(Color3(1,1,1)); Vector3 gamepoint = pos; @@ -1301,17 +1244,24 @@ void drawOutline(Vector3 from, Vector3 to, RenderDevice* rd, LightingParameters float distance = pow(pow((double)gamepoint.x - (double)camerapoint.x, 2) + pow((double)gamepoint.y - (double)camerapoint.y, 2) + pow((double)gamepoint.z - (double)camerapoint.z, 2), 0.5); if(distance < 200) { - Color3 sphereColor = outline; + float multiplier = distance * 0.025F/2; if(multiplier < 0.25F) multiplier = 0.25F; - - Draw::sphere(Sphere(Vector3(pos.x, pos.y + (size.y/2 + 1), pos.z), multiplier), rd, sphereColor, Color4::clear()); - Draw::sphere(Sphere(Vector3(pos.x, pos.y - (size.y/2 + 1), pos.z), multiplier), rd, sphereColor, Color4::clear()); - Draw::sphere(Sphere(Vector3(pos.x + (size.x/2 + 1), pos.y, pos.z), multiplier), rd, sphereColor, Color4::clear()); - Draw::sphere(Sphere(Vector3(pos.x - (size.x/2 + 1), pos.y, pos.z), multiplier), rd, sphereColor, Color4::clear()); - Draw::sphere(Sphere(Vector3(pos.x, pos.y, pos.z + (size.z/2 + 1)), multiplier), rd, sphereColor, Color4::clear()); - Draw::sphere(Sphere(Vector3(pos.x, pos.y, pos.z - (size.z/2 + 1)), multiplier), rd, sphereColor, Color4::clear()); + Vector3 position = pos + (c.lookVector()*((size.z/2)+1)); + Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear()); + position = pos - (c.lookVector()*((size.z/2)+1)); + Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear()); + + position = pos + (c.rightVector()*((size.x/2)+1)); + Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear()); + position = pos - (c.rightVector()*((size.x/2)+1)); + Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear()); + + position = pos + (c.upVector()*((size.y/2)+1)); + Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear()); + position = pos - (c.upVector()*((size.y/2)+1)); + Draw::sphere(Sphere(position, multiplier), rd, sphereColor, Color4::clear()); } rd->setAmbientLightColor(lighting.ambient); rd->setLight(0, GLight::directional(lighting.lightDirection, lighting.lightColor)); @@ -1325,35 +1275,9 @@ void Demo::exitApplication() app->endProgram = true; } -void makeBeveledBox(Box box, RenderDevice* rd, Color4 color, CoordinateFrame cFrame) -{ - Vector3 v0, v1, v2, v3; - //glDiffuse(); - rd->setColor(color); - rd->setObjectToWorldMatrix(CoordinateFrame()); - rd->beginPrimitive(RenderDevice::QUADS); - for (int f = 0; f < 6; ++f) { - box.getFaceCorners(f, v0, v1, v2, v3); - glShadeModel(GL_SMOOTH); - //rd->setNormal((v1 - v0).cross(v3 - v0).direction()); - rd->sendVertex(v0); - rd->sendVertex(v1); - rd->sendVertex(v2); - rd->sendVertex(v3); - } - rd->setColor(Color3::white()); - rd->endPrimitive(); -} - void Demo::onGraphics(RenderDevice* rd) { - float angle, x, z; - app->debugCamera.getCoordinateFrame().rotation.toEulerAnglesXYZ(x, angle, z); - //message = Convert(toDegrees(angle)) + " X: " + Convert(app->debugCamera.getCoordinateFrame().translation.x) + " Z: " + Convert(app->debugCamera.getCoordinateFrame().translation.z); - //messageTime = System::time(); - - CoordinateFrame frame = CoordinateFrame(app->debugCamera.getCoordinateFrame().rotation, app->debugCamera.getCoordinateFrame().translation); Vector2 mousepos = Vector2(0,0); G3D::uint8 num = 0; rd->window()->getRelativeMouseState(mousepos, num); @@ -1378,7 +1302,7 @@ void Demo::onGraphics(RenderDevice* rd) { // Cyan background - app->renderDevice->setColorClearValue(Color3(0.0f, 0.5f, 1.0f)); + //app->renderDevice->setColorClearValue(Color3(0.0f, 0.5f, 1.0f)); app->renderDevice->clear(app->sky.isNull(), true, true); if (app->sky.notNull()) { @@ -1392,49 +1316,31 @@ void Demo::onGraphics(RenderDevice* rd) { app->renderDevice->setShadeMode(RenderDevice::SHADE_SMOOTH); app->renderDevice->setAmbientLightColor(Color3(1,1,1)); - //Draw::axes(CoordinateFrame(Vector3(0, 0, 0)), app->renderDevice); - //makeFlag(Vector3(-1, 3.5, 0), rd); - - //Vector3 vector = app->debugCamera.getCoordinateFrame().translation + app->debugCamera.getCoordinateFrame().lookVector()*20; app->renderDevice->setLight(0, GLight::directional(lighting.lightDirection, lighting.lightColor)); app->renderDevice->setAmbientLightColor(lighting.ambient); - //app->renderDevice->pushState(); - //app->renderDevice->popState(); - for(size_t i = 0; i < instances.size(); i++) + dataModel->getWorkspace()->render(rd); + if(selectedInstance != NULL) { - Instance* instance = instances.at(i); - if(instance->className == "Part" && instance->parent != NULL) - { - - PhysicalInstance* part = (PhysicalInstance*)instance; - Draw::box(part->getBox(), app->renderDevice, part->color, Color4::clear()); - if(selectedInstance == part) - { - Vector3 size = part->size; - Vector3 pos = part->getCFrame().translation; - drawOutline(Vector3(0+size.x/4, 0+size.y/4, 0+size.z/4) ,Vector3(0-size.x/4,0-size.y/4,0-size.z/4), rd, lighting, Vector3(size.x/2, size.y/2, size.z/2), Vector3(pos.x/2, pos.y/2, pos.z/2), part->getCFrameRenderBased()); - } - - } - + PhysicalInstance* part = (PhysicalInstance*)selectedInstance; + Vector3 size = part->getSize(); + Vector3 pos = part->getPosition(); + drawOutline(Vector3(0+size.x/4, 0+size.y/4, 0+size.z/4) ,Vector3(0-size.x/4,0-size.y/4,0-size.z/4), rd, lighting, Vector3(size.x/2, size.y/2, size.z/2), Vector3(pos.x/2, pos.y/2, pos.z/2), part->getCFrameRenderBased()); } - Box box; - //Draw::ray(testRay, rd, Color3::orange(), 1); - /*Vector3 gamepoint = Vector3(0, 5, 0); - Vector3 camerapoint = rd->getCameraToWorldMatrix().translation; - float distance = pow(pow((double)gamepoint.x - (double)camerapoint.x, 2) + pow((double)gamepoint.y - (double)camerapoint.y, 2) + pow((double)gamepoint.z - (double)camerapoint.z, 2), 0.5); - if(distance < 50 && distance > -50) + //Vector3 gamepoint = Vector3(0, 5, 0); + //Vector3 camerapoint = rd->getCameraToWorldMatrix().translation; + //float distance = pow(pow((double)gamepoint.x - (double)camerapoint.x, 2) + pow((double)gamepoint.y - (double)camerapoint.y, 2) + pow((double)gamepoint.z - (double)camerapoint.z, 2), 0.5); + //if(distance < 50 && distance > -50) - { - if(distance < 0) - distance = distance*-1; - fntdominant->draw3D(rd, "Testing", CoordinateFrame(rd->getCameraToWorldMatrix().rotation, gamepoint), 0.04*distance, Color3::yellow(), Color3::black(), G3D::GFont::XALIGN_CENTER, G3D::GFont::YALIGN_CENTER); - }*/ + //{ + // if(distance < 0) + // distance = distance*-1; + // fntdominant->draw3D(rd, "Testing", CoordinateFrame(rd->getCameraToWorldMatrix().rotation, gamepoint), 0.04*distance, Color3::yellow(), Color3::black(), G3D::GFont::XALIGN_CENTER, G3D::GFont::YALIGN_CENTER); + //} app->renderDevice->disableLighting(); @@ -1443,52 +1349,30 @@ void Demo::onGraphics(RenderDevice* rd) { } app->renderDevice->push2D(); - //std::string str = ; - int offset = 25; - if(app->debugMode()) - { - offset = 60; - } if(System::time() - 3 < messageTime) { fntdominant->draw2D(rd, message, Vector2((rd->getWidth()/2)-(fntdominant->get2DStringBounds(message, 20).x/2),(rd->getHeight()/2)-(fntdominant->get2DStringBounds(message, 20).y/2)), 20, Color3::yellow(), Color3::black()); } - fntdominant->draw2D(rd, "Timer: " + Convert(TIMERVAL), Vector2(rd->getWidth() - 120, 0+offset), 20, Color3::fromARGB(0x81C518), Color3::black()); - fntdominant->draw2D(rd, "Score: " + Convert(SCOREVAL), Vector2(rd->getWidth() - 120, 25+offset), 20, Color3::fromARGB(0x81C518), Color3::black()); + std::stringstream stream; + stream << std::fixed << std::setprecision(1) << dataModel->getWorkspace()->timer; + fntdominant->draw2D(rd, "Timer: " + stream.str(), Vector2(rd->getWidth() - 120, 25), 20, Color3::fromARGB(0x81C518), Color3::black()); + fntdominant->draw2D(rd, "Score: " + Convert(dataModel->getWorkspace()->score), Vector2(rd->getWidth() - 120, 50), 20, Color3::fromARGB(0x81C518), Color3::black()); //GUI Boxes - Draw::box(G3D::Box(Vector3(0,offset,0),Vector3(80,330+offset,0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0,0,0,0)); - //Draw::box(G3D::Box(Vector3(0,rd->getHeight() - 120,0),Vector3(80,rd->getHeight(),0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0,0,0,0)); + Draw::box(G3D::Box(Vector3(0,25,0),Vector3(80,355,0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0,0,0,0)); Draw::box(G3D::Box(Vector3(rd->getWidth() - 120,rd->getHeight() - 120,0),Vector3(rd->getWidth(),rd->getHeight(),0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0,0,0,0)); - //Camera menu title - - - fntlighttrek->draw2D(rd, "CameraMenu", Vector2(rd->getWidth()-(fntlighttrek->get2DStringBounds("CameraMenu", 14).x+1),rd->getHeight() - 120), 14, Color3::white(), Color4(0.5F,0.5F,0.5F,0.5F)); - - /* - fntlighttrek->draw2D(rd, "Model", Vector2(10,rd->getHeight() - (120 - spacing*0)), 12, Color3(0,255,255), Color4(0,0,0,0)); - fntlighttrek->draw2D(rd, "Surface", Vector2(10,rd->getHeight() - (120 - spacing*1)), 12, Color3(0,255,255), Color4(0,0,0,0)); - fntlighttrek->draw2D(rd, "Color", Vector2(10,rd->getHeight() - (120 - spacing*2)), 12, Color3(0,255,255), Color4(0,0,0,0)); - fntlighttrek->draw2D(rd, "Controller", Vector2(10,rd->getHeight() - (120 - spacing*3)), 12, Color3(0,255,255), Color4(0,0,0,0)); - fntlighttrek->draw2D(rd, "Hopper", Vector2(10,rd->getHeight() - (120 - spacing*4)), 12, Color3(0,255,255), Color4(0,0,0,0)); - */ - - //Tools menu - Draw::box(G3D::Box(Vector3(5, 185+offset,0),Vector3(75, 185+offset,0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0.6F,0.6F,0.6F,0.4F)); - fntlighttrek->draw2D(rd,"MENU", Vector2(10,307+offset), 14, Color3::white(), Color4(0.5F,0.5F,0.5F,0.5F)); - //G3D::GFont::draw2D("Debug Mode Enabled", Vector2(0,30), 20, Color3::white(), Color3::black()); - //app->debugFont->draw2D("Dynamica 2004-2005 Simulation Client version " + VERSION + str, Vector2(0,0), 20, Color3::white(), Color3::black()); - //app->debugFont->draw2D("Debug Mode Enabled", Vector2(0,30), 20, Color3::white(), Color3::black()); + Draw::box(G3D::Box(Vector3(5, 210,0),Vector3(75, 210,0)),rd,Color4(0.6F,0.6F,0.6F,0.4F), Color4(0.6F,0.6F,0.6F,0.4F)); + fntlighttrek->draw2D(rd,"MENU", Vector2(10,332), 14, Color3::white(), Color4(0.5F,0.5F,0.5F,0.5F)); drawButtons(rd); @@ -1557,12 +1441,6 @@ void App::main() { applet->run(); } - - -//App::App(const GAppSettings& settings, GWindow* wnd) : GApp(settings, wnd) { -// applet = new Demo(this); -//} - App::App(const GAppSettings& settings, GWindow* wnd,HWND tempMainHWnd, SDLWindow* wndSDL) : GApp(settings, wnd) { applet = new Demo(this); hwnd = wndSDL->win32HWND(); @@ -1593,9 +1471,7 @@ LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) HWND g3DWind = app->getHWND(); app->applet->exitApplication(); - //DestroyWindow(hwnd); } - //DestroyWindow(hwnd); break; case WM_DESTROY: PostQuitMessage(0); @@ -1643,109 +1519,97 @@ LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) } int main(int argc, char** argv) { - //_CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF ); - //_CrtSetBreakAlloc(1279); try{ tempPath = ((std::string)getenv("temp")) + "/Dynamica"; - CreateDirectory(tempPath.c_str(), NULL); - - message = tempPath; - messageTime = System::time(); - AudioPlayer::init(); - GAppSettings settings; - settings.window.resizable = true; - //settings.window.fsaaSamples = 8; - settings.writeLicenseFile = false; - settings.logFilename = tempPath + "/g3dlog.txt"; - settings.window.center = true; - //Using the damned SDL window now - G3D::SDLWindow* wnd = new SDLWindow(settings.window); - //wnd->setInputCaptureCount(200); - wnd->setMouseVisible(false); - + CreateDirectory(tempPath.c_str(), NULL); + + message = tempPath; + messageTime = System::time(); + AudioPlayer::init(); + GAppSettings settings; + settings.window.resizable = true; + settings.writeLicenseFile = false; + settings.logFilename = tempPath + "/g3dlog.txt"; + settings.window.center = true; + G3D::SDLWindow* wnd = new SDLWindow(settings.window); + wnd->setMouseVisible(false); + - WNDCLASSEX wc; - HINSTANCE hInstance = GetModuleHandle(NULL); - wc.cbSize = sizeof(WNDCLASSEX); - wc.style = 0; - wc.lpfnWndProc = WndProc; - wc.cbClsExtra = 0; - wc.cbWndExtra = 0; - wc.hInstance = hInstance; - wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); - wc.hCursor = LoadCursor(NULL, IDC_ARROW); - wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1); - wc.lpszMenuName = NULL; - wc.lpszClassName = "containerHWND"; - wc.hIconSm = LoadIcon(NULL, IDI_APPLICATION); - - if (!RegisterClassEx (&wc)) - return false; + WNDCLASSEX wc; + HINSTANCE hInstance = GetModuleHandle(NULL); + wc.cbSize = sizeof(WNDCLASSEX); + wc.style = 0; + wc.lpfnWndProc = WndProc; + wc.cbClsExtra = 0; + wc.cbWndExtra = 0; + wc.hInstance = hInstance; + wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); + wc.hCursor = LoadCursor(NULL, IDC_ARROW); + wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1); + wc.lpszMenuName = NULL; + wc.lpszClassName = "containerHWND"; + wc.hIconSm = LoadIcon(NULL, IDI_APPLICATION); + + if (!RegisterClassEx (&wc)) + return false; - HMODULE hThisInstance = GetModuleHandle(NULL); - HWND hwnd = wnd->win32HWND(); - HWND hwndMain = CreateWindowEx( - WS_EX_ACCEPTFILES | WS_EX_CLIENTEDGE, - "containerHWND", - "Main test", - WS_OVERLAPPEDWINDOW, - CW_USEDEFAULT, - CW_USEDEFAULT, - 800, - 600, - NULL, // parent - NULL, // menu - hThisInstance, - NULL - ); - ShowWindow(hwndMain, SW_SHOW); - if(hwndMain == NULL) - { - MessageBox(NULL, "Failed to create HWND","Dynamica Crash", MB_OK); - return 0; + HMODULE hThisInstance = GetModuleHandle(NULL); + HWND hwnd = wnd->win32HWND(); + HWND hwndMain = CreateWindowEx( + WS_EX_ACCEPTFILES | WS_EX_CLIENTEDGE, + "containerHWND", + "Main test", + WS_OVERLAPPEDWINDOW, + CW_USEDEFAULT, + CW_USEDEFAULT, + 800, + 600, + NULL, // parent + NULL, // menu + hThisInstance, + NULL + ); + ShowWindow(hwndMain, SW_SHOW); + if(hwndMain == NULL) + { + MessageBox(NULL, "Failed to create HWND","Dynamica Crash", MB_OK); + return 0; + } + SetParent(hwnd, hwndMain); + App app = App(settings, wnd, hwndMain, wnd); + RECT rect; + int width = 640; + int height = 480; + if(GetClientRect(hwndMain, &rect)) + { + width = rect.right - rect.left; + height = rect.bottom - rect.top; + } + SetWindowPos(hwnd, NULL, 0, 0, width, height, NULL); + + LONG lStyle = GetWindowLong(hwnd, GWL_STYLE); + lStyle &= ~(WS_CAPTION | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_SYSMENU); + SetWindowLong(hwnd, GWL_STYLE, lStyle); + + LONG lExStyle = GetWindowLong(hwnd, GWL_EXSTYLE); + lExStyle &= ~(WS_EX_DLGMODALFRAME | WS_EX_CLIENTEDGE | WS_EX_STATICEDGE); + SetWindowLong(hwnd, GWL_EXSTYLE, lExStyle); + SetWindowLongPtr(hwndMain, GWL_USERDATA, (LONG)&app); + HICON hicon = (HICON)LoadImage(GetModuleHandleW(NULL), (LPCSTR)MAKEINTRESOURCEW(IDI_ICON1), IMAGE_ICON, 0, 0, LR_DEFAULTCOLOR | LR_DEFAULTSIZE); + SendMessage(hwndMain, WM_SETICON, ICON_BIG, (LPARAM)hicon); + SetWindowPos(hwndMain, NULL, 0, 0, 800, 600, NULL); + + + if(GetClientRect(hwndMain, &rect)) + { + width = rect.right - rect.left; + height = rect.bottom - rect.top; + } + SetWindowPos(hwnd, NULL, 0, 0, width, height, NULL); + app.run(); } - SetParent(hwnd, hwndMain); - App app = App(settings, wnd, hwndMain, wnd); - RECT rect; - int width = 640; - int height = 480; - if(GetClientRect(hwndMain, &rect)) - { - width = rect.right - rect.left; - height = rect.bottom - rect.top; - } - SetWindowPos(hwnd, NULL, 0, 0, width, height, NULL); - - LONG lStyle = GetWindowLong(hwnd, GWL_STYLE); - lStyle &= ~(WS_CAPTION | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_SYSMENU); - SetWindowLong(hwnd, GWL_STYLE, lStyle); - - LONG lExStyle = GetWindowLong(hwnd, GWL_EXSTYLE); - lExStyle &= ~(WS_EX_DLGMODALFRAME | WS_EX_CLIENTEDGE | WS_EX_STATICEDGE); - SetWindowLong(hwnd, GWL_EXSTYLE, lExStyle); - - //SetWindowLong(hwnd, GWL_STYLE, WS_VISIBLE | WS_CHILD); - SetWindowLongPtr(hwndMain, GWL_USERDATA, (LONG)&app); - HICON hicon = (HICON)LoadImage(GetModuleHandleW(NULL), (LPCSTR)MAKEINTRESOURCEW(IDI_ICON1), IMAGE_ICON, 0, 0, LR_DEFAULTCOLOR | LR_DEFAULTSIZE); - SendMessage(hwndMain, WM_SETICON, ICON_BIG, (LPARAM)hicon); - - - - SetWindowPos(hwndMain, NULL, 0, 0, 800, 600, NULL); - HMONITOR monitor = MonitorFromWindow(hwndMain, MONITOR_DEFAULTTONEAREST); - MONITORINFO lpmi; - GetMonitorInfo( monitor, &lpmi); - - int widthMON = lpmi.rcMonitor.bottom; - int heightMON = lpmi.rcMonitor.right; - - //message = Convert(widthMON) + ", " + Convert(heightMON); - //messageTime = G3D::System::time(); - - app.run(); - } - catch(std::exception) + catch(...) { OnError(-1); }