Commit graph

112 commits

Author SHA1 Message Date
Light
54c195dae0 PropertiesPanel
- Added PropertiesPanel
2021-08-01 16:55:26 +04:30
Light
0c8b26360a New Events, Fixes
- Added SetCharEvent
- Added KeyRepeatEVent
- Fixed ImGui not picking keys from io.KeyMap because it gets assigned to VK_**
      keys from windows after ImGui_ImplWin32_Init call, had to re-assign them back
      to Key::** (glfw key codes)...
- Removed UserInterface::OnInput
- Maintenance
2021-08-01 16:43:59 +04:30
Light
42f26ac59e Maintenance
- Added LIGHT_OPENGL_ENABLE_SHADER_INFO_LOG to config.h
- Some maintenance
2021-08-01 11:57:51 +04:30
Light
fb4ba5c8bc SceneHierarchyPanel
- Added Panel
- Added SceneHierarchyPanel
2021-07-31 11:03:31 +04:30
Light
8367150145 TagComponent
- Added TagComponent
2021-07-31 11:02:59 +04:30
Light
c846e48c71 NativeScript, NativeScriptComponent
- Added NativeScript
- Added NativeScriptComponent
- Minor changes to clearing back buffer's color
2021-07-31 09:37:09 +04:30
Light
aab0c7b958 CameraComponent, SceneCamera
- Added CameraComponent
- Added SceneCamera
- Renamed the previous Camera to OrthographicCamera
- Added Camera
- Renderer now takes a Camera* for projection and mat4& for view
- Scene::OnRender now takes in an optional Framebuffer to render to
- Minor tidying
2021-07-30 14:40:34 +04:30
Light
98184d358f DrawQuad Transform
- DraqQuadImpl functions now call a non-static DrawQuadFinal function with a mat4
      transform matrix
2021-07-30 12:49:48 +04:30
Light
931a3a168c Components Folder
- Created a header file for each component inside a Components folder
- Fixed entt::entity's default value being entt::entity() to entt::null
- Minor tidying for DebugTrap
2021-07-30 11:20:52 +04:30
Light
9033ceffa1 Major changes
- Major maintenance
2021-07-29 17:12:13 +04:30
Light
ec8669d3fe VertexLayout
- Added Byte and UByte types to VertexLayout
- Changed sizeof(int/float...) to sizeof(GLint, GLfloat...) in glVertexLayout
2021-07-29 09:16:30 +04:30
Light
40355ebfc2 Minor changes
- Minor fixes
- Minor maintenance
2021-07-27 11:32:01 +04:30
Light
c34f5e03f0 KeyCodes, MouseCodes
- Added nameless enums for KeyCodes and MouseCodes
- Removed InputCodes
2021-07-26 12:34:35 +04:30
Light
55869f6106 Ref, Scope
- Changed all std::unique_ptr/shared_ptr stuff to use Ref/Scope
- Fixed the Logger.h include in Base.h problem
2021-07-26 11:43:37 +04:30
Light
0360d094d2 Ref. Scope
- Added Ref<T> and Scope<T> types to replace the std::shared_ptr<T> and
      std::unique_ptr<T>, currently it is being used as an alias
2021-07-26 10:00:29 +04:30
Light
8287b89fad Scene System
- Added Scene
- Added Entity
- Added Components
      * TransformComponent
      * SpriteRendererComponent

- Minor fixes
2021-07-25 17:50:08 +04:30
Light
b54afb6046 Added EnTT
- Added EnTT
- Minor maintenance and fixes
2021-07-24 13:54:50 +04:30
Light
4abde46290 Camera ClearColor
- Camera now has a clear color
- The backbuffer is now cleared using the currently bound camera's
      clear color
2021-07-24 10:00:15 +04:30
Light3039
0513ae009f Linux BuildScripts
- Added a Linux folder for BuildScripts
      * premake
      * gmake.sh
      * codelite.sh
2021-07-23 16:44:30 +04:30
Light
d6a400e05a stb_image
- Moved stb_image implementation section from .h file to a .c file
2021-07-24 08:55:50 +04:30
Light
2121e0ea16 stb_image Project
- stb_image is now built inside a project as a static library
2021-07-23 15:03:47 +04:30
Light
42d58089d9 Removed ddxgidebug.dll 2021-07-23 12:51:39 +04:30
Light
aafd176a87 Updated GLFW Submodule 2021-07-23 12:03:39 +04:30
Light
1d87d71a06 Updated ImGui Submodule 2021-07-23 11:42:17 +04:30
Light
ffc29bec77 Maintenance
- Removed change log (was horrible idea D:)
- Fixed some premake mistakes
- Fixed a typo
- Enabled MultiProcessorCompile for windows builds
2021-07-23 11:22:01 +04:30
Light
0d28451010 premake5
- Moved premake5 Windows builds to BuildScripts/Windows
- Renamed premake5.lua files build.lua
2021-07-23 10:33:51 +04:30
Light
9701b08cc3 Maintenance
- ImGui ini file handling and .gitignore
- Minor maintenance
2021-07-23 10:11:20 +04:30
Light
8e39b82642 Deleted Logs 2021-07-23 09:44:49 +04:30
Light
5cc82f1558 Maintenance
- Added 'Get*Ref()' to 'dxSharedContext'

- Fixed 'dxFramebuffer::Resize' not resizing :/
- Fixed 'dxFrameBuffer::BindAsTarget' not setting the viewport
- Fixed 'dxRenderCommand::SetViewport()' not resizing the swapchain's
      buffer

- Improved 'dxGraphicsContext''s debug interface

-  Removed most of the 'ComPtr's in 'dxGraphicsContext',  they can be
      accessed with the 'm_SharedContext'
2021-07-22 13:00:41 +04:30
Light
aac2c51bd5 Input
- Added 'Input'
- Added <InputCodes>
- The 'MirrorLayer''s ImGuiWindow, "GameView" will not receive/react to
      input events if the window is not focused
2021-07-21 20:03:39 +04:30
Light
43b2f72ded Layer Improvements
- Added 'Layer::OnEvent()', 'Layer' now handles an event by itself and
      doesn't need another class to determine the event's type
- Added reverse iterators 'rend()' and 'rbegin()' to 'LayerStack'

- Removed 'LayerStack::On*()', 'LayerStack' is meant to be a data
      structure for the layers,

- 'Layer::On*Event()' are now protected and called by 'Layer::OnEvent()'

- 'Application' now handles iterating through the 'Layer's
      and calling the update/on* functions

- Fixed a typo where in 'Mirror' where the name of the 'MirrorLayer' was
      "SandboxLayer" instead of "MirrorLayer"
2021-07-21 15:14:22 +04:30
Light
2967cf5675 Failed engine/client assertion
- Separated 'FailedAssertion' into 'FailedEngineAssertion' and
      'FailedClientAssertion'
- Minor adjustment to the change log
2021-07-21 13:52:30 +04:30
Light
ac8c515b06 Merge branch 'main' of https://github.com/Light3039/Light into main 2021-07-21 13:36:27 +04:30
Light
919764cef7 LT_BERAK
- Added the 'LT_BERAK' macro, a portable debug-trap
2021-07-21 13:34:34 +04:30
Light
abd52cdfee
Update Base.h
- Fixed a commit mistake
2021-07-21 13:28:47 +04:30
Light
58ee71e0d8 Change log
- Added Change log
2021-07-21 13:27:29 +04:30
Light
2061abadd8 Framebuffer resizing
- Added 'Camera::OnResize()' for keeping the aspect ratio updated to
      prevent streching/squashing the scene

- Added 'FrameBuffe::Resize()'

- Enabled ImGui docking and viewport

- 'MirrorLayer::m_Camera' & 'MirrorLayer::m_Framebuffer' now adjust their properties
      when ImGui's available region changes
2021-07-16 19:59:14 +04:30
Light
e8b86931b2 Update LightEngine.h 2021-07-15 16:02:41 +04:30
Light
0b19b1aa30 Mirror
- Added Mirror:
      Mirror is the LightEngine's editor >w< (cuz it reflects light uwu)
2021-07-15 15:56:30 +04:30
Light
271f3b2075 Framebuffer
- Added 'Framebuffer'
- Added an optional 'FrameBuffer' parameter to'Renderer::BeginScene'
- Added 'RenderCommand::DefaultTargetFramebuffer()'
- Added static 'GraphicsContext::GetSharedContext()'

- Fixed 'dxBlender' by changing 'DestBlendAlpha' from D3D11_BLEND_ZERO
       to D3D11_BLEND_ONE
- Fixed 'glRenderCommand::ClearBackBuffer()' by calling glClear before
      glClearColor

- 'Application::GameLoop' now updates the ui ._.
2021-07-15 15:46:28 +04:30
Light
590c319d4d Instrumentor
- 'Instrumentor' now creates a directory for the specified session path
- Added <filesystem> to <ltpch>
2021-07-15 01:10:50 +04:30
Light
dff6bec35c fml 2021-07-14 03:33:32 +04:30
Light
123160c13b Work for fucks sake 2021-07-14 03:31:56 +04:30
Light
929358e420 Submodules 2021-07-14 03:29:55 +04:30
Light
99c7a1c108 Submodules 2021-07-14 03:22:42 +04:30
Light
9d3a650273 moved imgui to docking 2021-07-14 02:48:01 +04:30
Light3039
d2bd0881d1 Linux fix
- Fixed 'Instrumentor' by including 'ostream' & 'fstream'
- Fixed 'Application' by including 'Instrumentor'
- Fixed both 'RendererProgram''s 'Advance()', should have returned true
2021-07-14 02:19:52 +04:30
Light
cf888cfbe0 Update SandboxLayer.h 2021-07-14 01:23:22 +04:30
Light
aaf1bbfe74 WindowResizeEvent | FlushScene
- 'Renderer' now receives 'WindowResizedEvent' and handle the
      'Framebuffer' and viewport stuff
- Added 'Renderer' now uses the new 'FlushScene' function to flush when
      the mapped vertex buffer is filled
- The viewport is now set by 'RenderCommand' via the 'Renderer' rather
      than the 'GraphicsConntext'

- 'Window' no longer sends 'WindowResizedEvent' to 'GraphicsContext'
- 'GraphicsContext' no longer receives 'OnWindowResize' events

- Note: Sending events should be done by the 'Application'

- Note: Excuse the double commit, forgot to commit 'wWindow.cpp'
2021-07-14 00:18:34 +04:30
Light
57616d755c WindowResizeEvent | FlushScene
- 'Renderer' now receives 'WindowResizedEvent' and handle the
      'Framebuffer' and viewport stuff
- Added 'Renderer' now uses the new 'FlushScene' function to flush when
      the mapped vertex buffer is filled
- The viewport is now set by 'RenderCommand' via the 'Renderer' rather
      than the 'GraphicsConntext'

- 'Window' no longer sends 'WindowResizedEvent' to 'GraphicsContext'
- 'GraphicsContext' no longer receives 'OnWindowResize' events

- Note: Sending events should be done by the 'Application'
2021-07-14 00:17:30 +04:30