Last active
March 30, 2016 11:28
-
-
Save TheCherno/0d1ef7a5d5bdba551a8bc2baba7d0a67 to your computer and use it in GitHub Desktop.
Sparky March 2016 Release Notes
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
================================== | |
Sparky March 2016 Release Notes | |
================================== | |
Major New Features: | |
- Sparky now supports Physically-Based Rendering (PBR) | |
- Sparky now supports rendering in both OpenGL and Direct3D 11 | |
- Custom 3D model format (SPM - Sparky Model) | |
- Build tool for converting from Autodesk FBX to SPM | |
- Custom memory allocation and control | |
- Matrix maths is now row-major | |
The following is the full list of changes included in this month's release: | |
--------------------------------------------------------------------------- | |
- Sparky now supports OpenGL and Direct3D 11 as rendering APIs | |
- Refactored entire graphics engine to support multiple rendering APIs | |
- Changed FreeType-GL to provide pixel data rather than OpenGL textures, so that it could be used with DX | |
- Fixed window sometimes not closing when the close button was pressed (Win32) | |
- Fixed mouse release events getting lost because the window was not capturing mouse clicks properly (Win32) | |
- Added window focus and resize events (Win32) | |
- Fixed window resizing not propagating to appropriate renderers | |
- Changed font rendering to work with OpenGL and Direct3D | |
- Sparky now supports Physically-Based Rendering (PBR) | |
- Added normal mapping support for PBR | |
- Added Disney diffuse model and GGX specular model for PBR lighting (mostly taken from Frostbite's PBR paper) | |
- Added Image-Based Lighting (IBL) for PBR (similar to Frostbite's model) | |
- Added Depth Textures and basic shadow rendering (now obsolete after render API changes) | |
- Added basic deferred rendering support (now obsolete after render API changes) | |
- Sparky now uses a custom 3D model format (SPM - Sparky Model) for meshes | |
- Added SPMBuild tool for FBX-to-SPM conversion | |
- Created PBRMaterial class for convenience | |
- Added cubemap texture support (TextureCube) (GL and DX) | |
- Added Material render flags | |
- Fixed uniform struct alignment to work with DX (16-byte aligned, MSVC only) | |
- Created Renderer class for render API specific states (eg. depth-testing, blend modes, etc.) | |
- Added FreeImage to Solution. Sparky now compiles FreeImage as a static library, along with selected FreeImage utilities | |
- Created render API independent blend modes and buffer types | |
- BufferLayouts now work with GL and DX | |
- Rewrote Shader class | |
- Converted Forward Renderer to use system uniforms | |
- Added booleans to debug menu | |
- Added first-person camera (FPSCamera) | |
- Added custom Allocator class for future development | |
- Added spnew and spdel macros for memory management | |
- Added MemoryManager for tracking memory allocations | |
- Added dynamic shader reloading (GL only) | |
- Added Debug Renderer (currently broken due to API changes) | |
- Added plenty of resources to Sandbox (PBR materials, cubemaps, models) | |
- Added signed and unsigned integer typedefs (int8, int16, int32, etc.) | |
- Fixed MSVC compiler warnings | |
- Organised Visual Studio filters for Sparky-core project | |
- Removed ChernoCraft | |
--------------------------------------------------------------------------- | |
Known Issues: | |
------------- | |
See Github issues. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment