- 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'
- 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"
- 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
- Fixed 'Instrumentor' by including 'ostream' & 'fstream'
- Fixed 'Application' by including 'Instrumentor'
- Fixed both 'RendererProgram''s 'Advance()', should have returned true
- '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'
- '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'
- Moved #define LT_ENGINE_RESOURCES_*_SHADER_* definitions to files
* Note: This was done so for a gcc compilation error caused by R"()" string
- Removed test print fps in 'Application::GameLoop()'
- Added 'Camera'
- Added 'SetuniformMat4' to the 'Shader' , this is a temporary solution
- Added u_ViewProjection to glsl shaders
- Fixed 'Application's' placeholder delta time
- Fixed glfwKeyEvent returning KeyReleasedEvent on GLFW_REPEAT
- Note: Camera is not supported for DirectX for the time being due to hlsl not
supporting uniforms like glsl
- Major tidying
- Moved 'RendererProgram' classes out of the 'Renderer' class
- Moved 'RenderCommand' member variable out of 'GraphicsContext' and into
the 'Renderer' class as a unique_ptr. results in 'Renderer' taking a
windowHandle for construction
- Defined new macros for max quads in 'Renderer.h'
- Added the 'Stringifier' to 'Base.h'
- Added the 'ResourceManager' to the 'LightEngine.h'
- Application now logs the current file directory
- Fixed the forward declaration in GraphicsContext
- Fixed the debug break in Base.h
- Fixed 'dxShader' not logging compile errors
- 'glVertexLayout' now takes in a shared_ptr for 'VertexBuffer'
- 'glShader' now logs the shader compilation errors properly
- 'dxVertexLayout' now takes in a shared_ptr for 'Shader"
- Modified 'dxSharedContext' members to be private and made getters for them
- 'dxRenderCommand::SwapBuffers' now throws dxException for
DXGI_ERROR_DEVICE_REMOD error