diff options
author | chai <chaifix@163.com> | 2019-01-27 01:26:36 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2019-01-27 01:26:36 +0800 |
commit | 6c8788ed76e1ead173fdeb51caaa43d538fcfe21 (patch) | |
tree | 4ec71c3aca07d58d96574671f83f9750f901cb11 /Source/Asura.Engine/Graphics | |
parent | 409262a6a26972770ba64728a60d45dd2d9fb752 (diff) |
*misc
Diffstat (limited to 'Source/Asura.Engine/Graphics')
26 files changed, 7 insertions, 738 deletions
diff --git a/Source/Asura.Engine/Graphics/Animation.cpp b/Source/Asura.Engine/Graphics/Animation.cpp deleted file mode 100644 index 47643aa..0000000 --- a/Source/Asura.Engine/Graphics/Animation.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include "Animation.h" - -namespace AsuraEngine -{ - namespace Graphics - { - - void Animation::OnEnable() - { - mSpriteRenderer = mGameObject->GetComponent<SpriteRenderer*>(); - } - - void Animation::OnUpdate(uint32 milliseconds) - { - if (!mSpriteRenderer) - return; - mSpriteRenderer->SetSprite(NULL); - } - - } -} diff --git a/Source/Asura.Engine/Graphics/Animation.h b/Source/Asura.Engine/Graphics/Animation.h deleted file mode 100644 index 391da22..0000000 --- a/Source/Asura.Engine/Graphics/Animation.h +++ /dev/null @@ -1,128 +0,0 @@ -#ifndef __AE_ANIMATION_H__ -#define __AE_ANIMATION_H__ - -#include "Sprite.h" -#include "Component.h" -#include "Manager.hpp" -#include "SpriteRenderer.h" -#include "Containers/Map.h" -#include "Containers/Vector.hpp" -#include "Containers/StringMap.hpp" -#include "Filesystem/Asset.h" - -namespace AsuraEngine -{ - namespace Graphics - { - - /// - /// ؼ֡ - /// - struct Frame - { - uint mask; // - float time; - Sprite* sprite; - }; - - /// - /// SpriteԸıspriteĴСתšimageAnimationͨanimatorġ - /// - class Animation final : public Filesystem::Asset - { - public: - - enum UpdateMask - { - Scale = 1, - Position = 1 << 1, - Rotation = 1 << 2, - Sprite = 1 << 3 - }; - - struct Definition - { - - }; - - /// - /// ʱһ֡ - /// - Frame GetFrame(float t); - - /// - /// ùؼ֡ - /// - uint GetKeyFrameCount(); - - /// - /// Ƿѭ - /// - uint GetLoop(); - - /// - /// ȡʱ - /// - uint GetDuration(); - - private: - - /// - /// ؼ֡ - /// - Containers::Vector<Frame> mFrames; - - /// - /// ʱ - /// - float mDuration; - - /// - /// Ƿѭ - /// - bool mLoop; - - /// - /// ID - /// - uint mID; - - UpdateMask mUpdateMask; - - }; - - class AnimationManager : public Manager - { - public: - - Containers::String GetAnimationName(uint ID); - - uint GetAnimationID(const Containers::String& name); - - Animation* GetAnimation(uint ID); - - Animation* GetAnimation(const Containers::String& name); - - /// - /// ӶID - /// - uint AddAnimation(Animation* animation); - - private: - - /// - /// ӳIDanimation - /// - Containers::StringMap<uint> mAnimationIDs; - - /// - /// ӳkeyanimation - /// - Containers::Map<uint, Animation*> mAnimations; - - }; - - } -} - -#endif
\ No newline at end of file diff --git a/Source/Asura.Engine/Graphics/Animator.cpp b/Source/Asura.Engine/Graphics/Animator.cpp deleted file mode 100644 index e69de29..0000000 --- a/Source/Asura.Engine/Graphics/Animator.cpp +++ /dev/null diff --git a/Source/Asura.Engine/Graphics/Animator.h b/Source/Asura.Engine/Graphics/Animator.h deleted file mode 100644 index 4d3d269..0000000 --- a/Source/Asura.Engine/Graphics/Animator.h +++ /dev/null @@ -1,96 +0,0 @@ -#ifndef __AE_ANIMATOR_H__ -#define __AE_ANIMATOR_H__ - -#include "Component.h" -#include "Animation.h" - -namespace AsuraEngine -{ - namespace Graphics - { - - /// - /// animationҪΪanimationĴ - /// - class Animator final : public Component - { - public: - - void OnEnable() override; - void OnUpdate(uint32 milliseconds) override; - - /// - /// animation - /// - void SetAnimation(uint ID); - - /// - /// animation - /// - void SetAnimation(Animation* animation); - - /// - /// animation״̬ - /// - void SetTime(float time); - - /// - /// IJٶ - /// - void SetSpeed(float speed); - - /// - /// Ƿѭ - /// - void SetLoop(bool isloop); - - /// - /// ݹؼ֡animation - /// - void SetKeyFrame(uint keyFrame); - - /// - /// õ - /// - void SetToBegin(); - - /// - /// õʼ - /// - void SetToEnd(); - - /// - /// ͣ - /// - void Pause(); - - private: - - /// - /// ǰanimation - /// - Animation* mAnimation; - - /// - /// AnimationҪһsprite renderer - /// - SpriteRenderer* mSpriteRenderer; - - /// - /// ٶȣĬΪ1dt = mSpeed * DELTA_TIME - /// - float mSpeed; - - /// - /// ǰִеʱ - /// - float mTime; - - bool mLoop; - - }; - - } -} - -#endif
\ No newline at end of file diff --git a/Source/Asura.Engine/Graphics/Camera.cpp b/Source/Asura.Engine/Graphics/Camera.cpp deleted file mode 100644 index e69de29..0000000 --- a/Source/Asura.Engine/Graphics/Camera.cpp +++ /dev/null diff --git a/Source/Asura.Engine/Graphics/Camera.h b/Source/Asura.Engine/Graphics/Camera.h deleted file mode 100644 index 699d342..0000000 --- a/Source/Asura.Engine/Graphics/Camera.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef __AE_CAMERA_H__ -#define __AE_CAMERA_H__ - -#include "RenderTarget.h" -#include "Component.h" - -namespace AsuraEngine -{ - namespace Graphics - { - - /// - /// Orthographic Camera. - /// - class Camera : public Component - { - public: - - - private: - - /// - /// ȾĿ - /// - RenderTarget* mRenderTarget; - - /// - /// ǷȾĻ - /// - bool mIsOnScreen; - - /// - /// ü - /// - bool mIsCulling; - - }; - - } -} - -#endif diff --git a/Source/Asura.Engine/Graphics/CanvasRenderer.cpp b/Source/Asura.Engine/Graphics/CanvasRenderer.cpp deleted file mode 100644 index e69de29..0000000 --- a/Source/Asura.Engine/Graphics/CanvasRenderer.cpp +++ /dev/null diff --git a/Source/Asura.Engine/Graphics/CanvasRenderer.h b/Source/Asura.Engine/Graphics/CanvasRenderer.h deleted file mode 100644 index ef188a5..0000000 --- a/Source/Asura.Engine/Graphics/CanvasRenderer.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef __AE_CANVAS_RENDERER_H__ -#define __AE_CANVAS_RENDERER_H__ - -#include "Canvas.h" -#include "Renderer.h" - -namespace AsuraEngine -{ - namespace Graphics - { - - class CanvasRenderer : public Renderer - { - public: - - void SetCanvas(Canvas* canvas); - Canvas* GetCanvas(); - - void SetBlendMode(); - - private: - - Canvas * mCanvas; - - }; - - } -} - -#endif
\ No newline at end of file diff --git a/Source/Asura.Engine/Graphics/Image.h b/Source/Asura.Engine/Graphics/Image.h index 5b27079..fc013e3 100644 --- a/Source/Asura.Engine/Graphics/Image.h +++ b/Source/Asura.Engine/Graphics/Image.h @@ -1,6 +1,7 @@ #ifndef __AE_IMAGE_H__ #define __AE_IMAGE_H__ +#include "Containers/String.h" #include "Math/Vector2.h" #include "Manager.hpp" #include "Texture.h" diff --git a/Source/Asura.Engine/Graphics/Material.cpp b/Source/Asura.Engine/Graphics/Material.cpp deleted file mode 100644 index eaf9742..0000000 --- a/Source/Asura.Engine/Graphics/Material.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include "Material.h" - -namespace AsuraEngine -{ - namespace Graphics - { - - - - //-------------------------------------------------------------------------------------------------------- - - int Material::l_SetColor(lua_State* L) - { - - } - - } -} diff --git a/Source/Asura.Engine/Graphics/Material.h b/Source/Asura.Engine/Graphics/Material.h deleted file mode 100644 index 68dfa1e..0000000 --- a/Source/Asura.Engine/Graphics/Material.h +++ /dev/null @@ -1,189 +0,0 @@ -#ifndef __AE_MATERIAL_H__ -#define __AE_MATERIAL_H__ - -#include "Containers/Vector.hpp" -#include "Containers/String.h" -#include "Math/Vector2.h" -#include "Math/Vector3.h" -#include "Math/Vector4.h" -#include "Math/Matrix44.h" -#include "Scripting/Luax.hpp" - -#include "Shader.h" -#include "Texture.h" -#include "Manager.hpp" - -namespace AsuraEngine -{ - namespace Graphics - { - - class MaterialFactory; - - /// - /// ͨʵShaderеuniformsShaderĵı¶materialÿʿԲ컯ͬɫ - /// ͬͨļ(.mat)ʵ֣ڴáAsuraУShaderֱӦõȾ̶һ - /// ʹɲshaderuniformsmaterial䵱shaderĴ - /// - class Material final : public Filesystem::Asset - { - public: - - enum class UniformsType - { - None = 0, - Float, - Int, - Vector2, - Vector3, - Vector4, - Matrix44, - Texture, - Color, - }; - - struct UniformsInfo - { - uint ID; // uniformID - UniformsType type; // uniform - union - { - float f; - int i; - Math::Vector2 v2; - Math::Vector3 v3; - Math::Vector4 v4; - Math::Matrix44 m44; - Texture* tex; - Color col; - }value; // uniformֵ - }; - - void SetShader(Shader* shader); - - // UniformڲУȾʱϴGPU - - /// - /// uniformIDIDnamemapshader乲uniformֵʱͨIDѯuniform - /// shaderҵuniform locationlocationֵ - /// - static int GetUniformID(const Containers::String& name); - - void SetTexture(uint ID, Texture* texture); - void SetVector2(uint ID, Math::Vector2* vector2); - void SetVector3(uint ID, Math::Vector3* vector3); - void SetVector4(uint ID, Math::Vector4* vector4); - void SetMatrix44(uint ID, Math::Matrix44* matrix44); - void SetFloat(uint ID, float value); - void SetInteger(uint ID, int value); - void SetColor(uint ID, Color color); - - UniformsInfo GetUniformInfo(uint ID); - float GetUniformInfof(uint ID); - int GetUniformInfoi(uint ID); - Math::Vector2 GetUniformInfov2(uint ID); - Math::Vector3 GetUniformInfov3(uint ID); - Math::Vector4 GetUniformInfov4(uint ID); - Math::Matrix44 GetUniformInfom44(uint ID); - Texture* GetUniformInfotex(uint ID); - Color GetUniformInfocol(uint ID); - - // ϴ - - void SetVertexAttributes(); - - private: - - friend class MaterialFactory; - - Material(); - Material(const Material& src); - ~Material(); - - /// - /// - /// - uint mID; - - /// - /// - /// - Shader* mShader; - - /// - /// UniformsֵӳIDֵ - /// - Containers::Map<int, UniformsInfo> mUniforms; - - /// - /// ǷǹIJ - /// - bool mIsShared; - - //---------------------------------------------------------------------------------------------------- - - LUAX_DECL_FACTORY(Material); - - LUAX_DECL_METHOD(l_Clone); - - LUAX_DECL_METHOD(l_SetShader); - - LUAX_DECL_METHOD(l_SetTexture); - LUAX_DECL_METHOD(l_SetVector2); - LUAX_DECL_METHOD(l_SetVector3); - LUAX_DECL_METHOD(l_SetVector4); - LUAX_DECL_METHOD(l_SetMatrix44); - LUAX_DECL_METHOD(l_SetFloat); - LUAX_DECL_METHOD(l_SetInteger); - LUAX_DECL_METHOD(l_SetColor); - - LUAX_DECL_METHOD(l_GetUniformInfo); - LUAX_DECL_METHOD(l_GetUniformInfof); - LUAX_DECL_METHOD(l_GetUniformInfoi); - LUAX_DECL_METHOD(l_GetUniformInfov2); - LUAX_DECL_METHOD(l_GetUniformInfov3); - LUAX_DECL_METHOD(l_GetUniformInfov4); - LUAX_DECL_METHOD(l_GetUniformInfom44); - LUAX_DECL_METHOD(l_GetUniformInfotex); - LUAX_DECL_METHOD(l_GetUniformInfocol); - - LUAX_DECL_METHOD(l_SetVertexAttributes); - - }; - - class MaterialManager : public Manager - { - public: - - private: - - /// - /// еimage - /// - Containers::Map<uint, Material*> mMaterials; - - /// - /// image·IDӳ䡣Դ.asrimageͨ·õimageԲеimageڴmapС - /// ɳimageֻͨIDȡԳҪID - /// - Containers::StringMap<uint> mMaterialIDs; - - }; - - class MaterialFactory : public Factory - { - public: - - /// - /// һmaterial - /// - Material* Clone(Material* src); - - Material* Create(); - - }; - - } -} - -#endif
\ No newline at end of file diff --git a/Source/Asura.Engine/Graphics/Mesh2DRenderer.cpp b/Source/Asura.Engine/Graphics/Mesh2DRenderer.cpp deleted file mode 100644 index e69de29..0000000 --- a/Source/Asura.Engine/Graphics/Mesh2DRenderer.cpp +++ /dev/null diff --git a/Source/Asura.Engine/Graphics/Mesh2DRenderer.h b/Source/Asura.Engine/Graphics/Mesh2DRenderer.h deleted file mode 100644 index fcbfd2c..0000000 --- a/Source/Asura.Engine/Graphics/Mesh2DRenderer.h +++ /dev/null @@ -1,19 +0,0 @@ -#ifndef __AE_MESH2D_H__ -#define __AE_MESH2D_H__ - -#include "FileSystem/Asset.h" - -namespace AsuraEngine -{ - namespace Graphics - { - - class Mesh2D : public Filesystem::Asset - { - - }; - - } -} - -#endif
\ No newline at end of file diff --git a/Source/Asura.Engine/Graphics/ParticleSystem.cpp b/Source/Asura.Engine/Graphics/ParticleSystem.cpp deleted file mode 100644 index e69de29..0000000 --- a/Source/Asura.Engine/Graphics/ParticleSystem.cpp +++ /dev/null diff --git a/Source/Asura.Engine/Graphics/ParticleSystem.h b/Source/Asura.Engine/Graphics/ParticleSystem.h deleted file mode 100644 index 078427a..0000000 --- a/Source/Asura.Engine/Graphics/ParticleSystem.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef __AE_PARTICLESYSTEM_H__ -#define __AE_PARTICLESYSTEM_H__ - -#include "Component.h" - -namespace AsuraEngine -{ - namespace Graphics - { - - /// - /// ϵͳ - /// - class ParticleSystem final : public Component - { - - }; - - } -} - -#endif
\ No newline at end of file diff --git a/Source/Asura.Engine/Graphics/Prefab.cpp b/Source/Asura.Engine/Graphics/Prefab.cpp deleted file mode 100644 index e69de29..0000000 --- a/Source/Asura.Engine/Graphics/Prefab.cpp +++ /dev/null diff --git a/Source/Asura.Engine/Graphics/Prefab.h b/Source/Asura.Engine/Graphics/Prefab.h deleted file mode 100644 index 82a8da2..0000000 --- a/Source/Asura.Engine/Graphics/Prefab.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef __AE_PREFAB_H__ -#define __AE_PREFAB_H__ - -#include "Manager.hpp" -#include "FileSystem/Asset.h" - -namespace AsuraEngine -{ - - /// - /// PrefabGameObject - /// - class Prefab : public Filesystem::Asset - { - - }; - - class PrefabManager : public Manager - { - - }; - - class PrefabFactory - { - - }; - -} - -#endif
\ No newline at end of file diff --git a/Source/Asura.Engine/Graphics/Renderer.cpp b/Source/Asura.Engine/Graphics/Renderer.cpp deleted file mode 100644 index e69de29..0000000 --- a/Source/Asura.Engine/Graphics/Renderer.cpp +++ /dev/null diff --git a/Source/Asura.Engine/Graphics/Renderer.h b/Source/Asura.Engine/Graphics/Renderer.h deleted file mode 100644 index c3677a7..0000000 --- a/Source/Asura.Engine/Graphics/Renderer.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef __AE_RENDERER_H__ -#define __AE_RENDERER_H__ - -#include "Component.h" -#include "Material.h" - -namespace AsuraEngine -{ - namespace Graphics - { - - /// - /// ࣬ȾRendererദÿRenderer߱һʡ - /// - class Renderer : public Component - { - public: - - /// - /// һô˷ͻ´shared materialô˷ζҪmaterialýģʱʹõIJ - /// shared materialҪһݣӰrenderer - /// - Material* GetMaterial(); - - /// - /// Ⱦص - /// - virtual void OnRender() = 0; - - protected: - - Material* mMaterial; - - }; - - } -} - -#endif
\ No newline at end of file diff --git a/Source/Asura.Engine/Graphics/ShapeRenderer.cpp b/Source/Asura.Engine/Graphics/ShapeRenderer.cpp deleted file mode 100644 index e69de29..0000000 --- a/Source/Asura.Engine/Graphics/ShapeRenderer.cpp +++ /dev/null diff --git a/Source/Asura.Engine/Graphics/ShapeRenderer.h b/Source/Asura.Engine/Graphics/ShapeRenderer.h deleted file mode 100644 index e69de29..0000000 --- a/Source/Asura.Engine/Graphics/ShapeRenderer.h +++ /dev/null diff --git a/Source/Asura.Engine/Graphics/Sprite.cpp b/Source/Asura.Engine/Graphics/Sprite.cpp deleted file mode 100644 index e69de29..0000000 --- a/Source/Asura.Engine/Graphics/Sprite.cpp +++ /dev/null diff --git a/Source/Asura.Engine/Graphics/Sprite.h b/Source/Asura.Engine/Graphics/Sprite.h deleted file mode 100644 index b621f1b..0000000 --- a/Source/Asura.Engine/Graphics/Sprite.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef __AE_SPRITE_H__ -#define __AE_SPRITE_H__ - -#include "Math/Vector2.h" -#include "Transform.h" -#include "Component.h" -#include "Image.h" - -namespace AsuraEngine -{ - namespace Graphics - { - - /// - /// SpriteǿimageĴimagesprite乲ݣspriteimageԣתŵȡ - /// - class Sprite final : public Filesystem::Asset - { - public: - - enum Type - { - - }; - - /// - /// 뷽ʽ - /// - enum Align - { - - }; - - struct SpriteDef - { - Image* image; - Align align; - Math::Vector2 anchor; - Math::Vector2 size; - }; - - Sprite(SpriteDef definition); - ~Sprite(); - - private: - - /// - /// ê - /// - Math::Vector2 mAnchor; - - /// - /// С - /// - Math::Vector2 mSize; - - /// - /// image - /// - Image* mImage; - - //---------------------------------------------------------------------------------------------------- - - - - }; - - } -} - -#endif
\ No newline at end of file diff --git a/Source/Asura.Engine/Graphics/SpriteRenderer.cpp b/Source/Asura.Engine/Graphics/SpriteRenderer.cpp deleted file mode 100644 index e69de29..0000000 --- a/Source/Asura.Engine/Graphics/SpriteRenderer.cpp +++ /dev/null diff --git a/Source/Asura.Engine/Graphics/SpriteRenderer.h b/Source/Asura.Engine/Graphics/SpriteRenderer.h deleted file mode 100644 index bd81509..0000000 --- a/Source/Asura.Engine/Graphics/SpriteRenderer.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef __AE_SPRITE_RENDERER_H__ -#define __AE_SPRITE_RENDERER_H__ - -#include "Renderer.h" -#include "Sprite.h" - -namespace AsuraEngine -{ - namespace Graphics - { - - class SpriteRenderer final : public Renderer - { - public: - - void SetSprite(Sprite* sprite); - - void OnRender() override; - - private: - - /// - /// Ⱦsprite - /// - Sprite* mSprite; - - }; - - } -} - -#endif
\ No newline at end of file diff --git a/Source/Asura.Engine/Graphics/Window.h b/Source/Asura.Engine/Graphics/Window.h index 1707e3d..ab612fc 100644 --- a/Source/Asura.Engine/Graphics/Window.h +++ b/Source/Asura.Engine/Graphics/Window.h @@ -7,10 +7,15 @@ namespace AsuraEngine { /// - /// Ϸ + /// ڣֶ֧രڡڱ༭Ҫ֧֣runnerֻҪһڡ /// class Window { + public: + + + private: + }; |