-Added bloom in the deferred and forward rendering paths, it takes less than 0.2ms at 1080p on my RTX 3070ti with great visual results. There is room to turn this down but for now I am happy with it
-Added emission maps
-Emission is now used in the forward and deferred pipeline. In the deferred pipeline it gets packed into the alpha channel of our material render target. We store the emission intensity in this component, and we hijack the albedo render target for emissive fragments. This let's us use HDR values because of the emissive intensity stored in the material render target (alpha channel).
-Emission values can be tuned and seen when highlighting an entity with a mesh/material
-The bright pass for bloom has a soft threshold which can be specfied between 0-1. at 0 bloom will be a hard cutoff between fragments that hit the threshold and fragments just below the threshold. At a value of 1 this will be softer. Arcane default's this to 0.5 and all these bloom settings can be modified in GraphicsSettings
-Bloom also supports a dirt lens texture on bloom composite. This is a great way to add a dirty lens effect that gets highlighted with bright bloom. The intensity is controlled via graphics settings.
-Added a camera setup that better separates the controller and the underlying camera projection tech
-Added an orthographic projection for the scene as an option in scene.cpp (no editor support for cameras yet)
-Added back in controller support
-Added a new callback API for loading models and textures asynchronously that the graphics testbed uses. You can subscribe via callback and be notified when a resource finishes loading via the AssetManager async API
-Fixed a crash from the PoseAnimator component when reading the anim name.
-Cleaned up texture units being bound via Material.cpp
-Added bloom in the deferred and forward rendering paths, it takes less than 0.2ms at 1080p on my RTX 3070ti with great visual results. There is room to turn this down but for now I am happy with it -Added emission maps -Emission is now used in the forward and deferred pipeline. In the deferred pipeline it gets packed into the alpha channel of our material render target. We store the emission intensity in this component, and we hijack the albedo render target for emissive fragments. This let's us use HDR values because of the emissive intensity stored in the material render target (alpha channel). -Emission values can be tuned and seen when highlighting an entity with a mesh/material -The bright pass for bloom has a soft threshold which can be specfied between 0-1. at 0 bloom will be a hard cutoff between fragments that hit the threshold and fragments just below the threshold. At a value of 1 this will be softer. Arcane default's this to 0.5 and all these bloom settings can be modified in GraphicsSettings -Bloom also supports a dirt lens texture on bloom composite. This is a great way to add a dirty lens effect that gets highlighted with bright bloom. The intensity is controlled via graphics settings. -Added a camera setup that better separates the controller and the underlying camera projection tech -Added an orthographic projection for the scene as an option in scene.cpp (no editor support for cameras yet) -Added back in controller support -Added a new callback API for loading models and textures asynchronously that the graphics testbed uses. You can subscribe via callback and be notified when a resource finishes loading via the AssetManager async API -Fixed a crash from the PoseAnimator component when reading the anim name. -Cleaned up texture units being bound via Material.cpp
Screenshots: