Almost removed Halibut Engine

This commit is contained in:
vladislav.khorev committed 2013-01-27 21:31:32 +00:00
1 parent 2e6989afe7
commit feef4c1453
16 files changed
+636 -426

No files matched your search

+50
View File
@@ -0,0 +1,50 @@
#ifndef PHYSICS_MANAGER_H_INCLUDED
#define PHYSICS_MANAGER_H_INCLUDED
#include "include/Utils/Utils.h"
#include "include/ModelManager/NewModelManager.h"
namespace SE
{
class TVolumeBody
{
protected:
std::stack<std::vector<TSmpTriangle>> SmpTriangleArrStack;
std::vector<TSmpTriangle> SmpTriangleArr;
vec3 DimensionalMinPos;
vec3 DimensionalMaxPos;
public:
void PushData();
void PopData();
void Move(const vec3& v);
void Rotate(const mat3& r);
void Scale(float s);
void Scale(const vec3& s);
void AssignFromFlexModel(TFlexModel& flexModel);
bool CheckCollision(const vec3& a, const vec3& b);
};
class TPhysicsManager
{
protected:
public:
};
} //namespace SE
#endif
+123
View File
@@ -0,0 +1,123 @@
#ifndef CAMERAS_H_INCLUDED
#define CAMERAS_H_INCLUDED
#include "include/Utils/Utils.h"
namespace SE
{
struct TCameraInterface
{
vec3 CamVec;
vec3 CamShift;
TCameraInterface();
virtual ~TCameraInterface()
{
}
};
struct TPanoramicCamera : public TCameraInterface
{
float CamAlpha;
float CamPhi;
float CamDist;
TPanoramicCamera();
void MoveAlpha(float dAlpha);
void MovePhi(float dPhi);
void MoveDist(float dDist);
void SetAlpha(float alpha);
void MoveForward();
void MoveBackward();
void MoveLeft();
void MoveRight();
void CalcCamVec();
void SetCamView();
};
struct TPitCamera : public TCameraInterface
{
vec4 CameraQuat;
void SetCamView();
void CalcCamVec();
void RotateByQuat(vec4 quat);
};
typedef boost::variant<TPanoramicCamera, TPitCamera> TCamera;
struct TSetCameraViewVisitor : public boost::static_visitor<void>
{
void operator()(TPanoramicCamera& panoramicCamera)
{
panoramicCamera.SetCamView();
}
void operator()(TPitCamera& pitCamera)
{
pitCamera.SetCamView();
}
};
struct TCalcCamVecVisitor : public boost::static_visitor<void>
{
void operator()(TPanoramicCamera& panoramicCamera)
{
panoramicCamera.CalcCamVec();
}
void operator()(TPitCamera& pitCamera)
{
pitCamera.CalcCamVec();
}
};
struct TGetCamVecVisitor : public boost::static_visitor<vec3&>
{
vec3& operator()(TPanoramicCamera& panoramicCamera) const
{
return panoramicCamera.CamVec;
}
vec3& operator()(TPitCamera& pitCamera) const
{
return pitCamera.CamVec;
}
};
struct TGetCamShiftVisitor : public boost::static_visitor<vec3&>
{
vec3& operator()(TPanoramicCamera& panoramicCamera) const
{
return panoramicCamera.CamShift;
}
vec3& operator()(TPitCamera& pitCamera) const
{
return pitCamera.CamShift;
}
};
} //namespace SE
#endif
@@ -11,127 +11,17 @@
#include "include/Render/RenderInterface.h"
#include "include/Render/SalmonRender/Cameras.h"
namespace SE
{
struct TCameraInterface
{
vec3 CamVec;
vec3 CamShift;
TCameraInterface();
virtual ~TCameraInterface()
{
}
};
struct TPanoramicCamera : public TCameraInterface
{
float CamAlpha;
float CamPhi;
float CamDist;
TPanoramicCamera();
void MoveAlpha(float dAlpha);
void MovePhi(float dPhi);
void MoveDist(float dDist);
void SetAlpha(float alpha);
void MoveForward();
void MoveBackward();
void MoveLeft();
void MoveRight();
void CalcCamVec();
void SetCamView();
};
struct TPitCamera : public TCameraInterface
{
vec4 CameraQuat;
void SetCamView();
void CalcCamVec();
void RotateByQuat(vec4 quat);
};
typedef boost::variant<TPanoramicCamera, TPitCamera> TCamera;
struct TSetCameraViewVisitor : public boost::static_visitor<void>
{
void operator()(TPanoramicCamera& panoramicCamera)
{
panoramicCamera.SetCamView();
}
void operator()(TPitCamera& pitCamera)
{
pitCamera.SetCamView();
}
};
struct TCalcCamVecVisitor : public boost::static_visitor<void>
{
void operator()(TPanoramicCamera& panoramicCamera)
{
panoramicCamera.CalcCamVec();
}
void operator()(TPitCamera& pitCamera)
{
pitCamera.CalcCamVec();
}
};
struct TGetCamVecVisitor : public boost::static_visitor<vec3&>
{
vec3& operator()(TPanoramicCamera& panoramicCamera) const
{
return panoramicCamera.CamVec;
}
vec3& operator()(TPitCamera& pitCamera) const
{
return pitCamera.CamVec;
}
};
struct TGetCamShiftVisitor : public boost::static_visitor<vec3&>
{
vec3& operator()(TPanoramicCamera& panoramicCamera) const
{
return panoramicCamera.CamShift;
}
vec3& operator()(TPitCamera& pitCamera) const
{
return pitCamera.CamShift;
}
};
class TSalmonRendererInterface : public TRendererInterface
{
protected:
/*
float CamAlpha;
float CamPhi;
float CamDist;
vec3 CamShift;*/
mat4 CamModelViewMatrix;
mat4 CamInversedModelViewMatrix;
@@ -167,6 +57,9 @@ public:
void SetPerspectiveFullScreenViewport();
void SetOrthoFullScreenViewport();
void SetPerspectiveProjection(float angle = pi/6.f, float zNear = 1.f, float zFar = 100.f);
void SetOrthoProjection();
mat4 GetModelviewMatrix();
void SetPerspectiveProjectionMatrix(float angle, float aspect, float zNear, float zFar);
+9 -1
View File
@@ -43,7 +43,9 @@ This code combines all headers for Salmon engine into one header file
#include "include/SmartValueManager/SmartValueManager.h"
#include "include/ModelManager/NewModelManager.h"
#include "include/PhysicsManager/PhysicsManager.h"
#include "include/GUIManager/GUIManager.h"
#include "include/HalibutAnimation/HalibutAnimation.h"
namespace SE
{
@@ -64,6 +66,8 @@ public:
TScriptManager ScriptManager;
TFontManager FontManager;
TSmartValueManager SmartValueManager;
TGUIManager GUIManager;
THalibutAnimationManager HalibutAnimationManager;
#ifdef TARGET_ANDROID
TSoundManagerAndroid SoundManager;
@@ -115,11 +119,15 @@ public:
virtual void OuterOnTapUp(vec2 p);
virtual void OuterOnTapUpAfterShift(vec2 p);
virtual void OuterOnMove(vec2 shift);
virtual void InnerOnTapDown(vec2 p) { }
virtual void InnerOnTapUp(vec2 p) { }
virtual void InnerOnTapUpAfterShift(vec2 p) { }
virtual void InnerOnMove(vec2 shift) { }
+6 -1
View File
@@ -60,4 +60,9 @@ public:
int MainLoop(TApplication& application);
} //namespace SE
} //namespace SE
//This file includes templates that call any of three singletones: Console, ResourceManager or Renderer
#include "include/GUIManager/WidgetTemplatesImpl.h"
+1 -1
View File
@@ -74,7 +74,7 @@ mat4 MultMatrixMatrix(const mat4& m1, const mat4& m2);
bool IsFloatEqual(float a, float b);
bool LineCouldCrossTriangle(const vec3& a, const vec3& b, const TSmpTriangle& tr); //overall test
bool LineCouldCrossTriangle(const vec3& a, const vec3& b, const TSmpTriangle& tr); //overall (dimensional) test
int LineCrossTriangle(const vec3& a, const vec3& b, const TSmpTriangle& tr);