github ConfettiFX/The-Forge v1.15
September 7th, 2018 - Hybrid Ray Traced Shadows | DirectX 11 fallback layer | imGUI

latest releases: v1.57, v1.56, v1.55...
6 years ago
  • This is the biggest release so far :-)
  • We added a new unit test -provided by Kostas Anagnostou @KostasAAA- that shows hybrid ray traced (HRT) shadows on all supported GPUs; Windows / Linux / XBOX One / macOS and iOS. This unit test was build to show how to ray trace shadows without using a ray tracing API like DXR / RTX. It should run on all GPUs (not just NVIDIA RTX GPUs) and the expectation is that it should run comparable with a DXR / RTX based version even on a NVIDIA RTX GPU. Kostas wrote a blog post about the details at https://interplayoflight.wordpress.com/2018/09/04/hybrid-raytraced-shadows-part-2-performance-improvements/.

PC Windows 10 Vulkan 1.1.82.1 GeForce 1080 Driver 398.82 with a resolution of 2560 * 1440 in full-screen:
Hybrid Ray Traced Shadows

iMac with AMD RADEON 580 (Part No. MNED2xx/A) with resolution of 2560x1440 in full-screen:
Hybrid Ray Traced Shadows

Here is a version running on a iPhone 7 with iOS 11.4.1 (15G77) and a resolution of 1334 x 750 in full-screen:
Hybrid Ray Traced Shadows on iOS

Please note there are no platform specific optimizations for macOS or iOS in the moment. The initial version was developed on PC and then just ported to the other platforms. We might optimize for the other platforms at some point.
Kostas plans to use the San Miguel Scene for this and then also merge it with the Light and Shadow Playground, so that you can pick different shadow techniques and compare them. He wants to implement HRT Reflections next. I wrote a short blog post about the development of this unit test at https://diaryofagraphicsprogrammer.blogspot.com/2018/09/ray-tracing-without-ray-tracing-api.html

  • Improved the 09_LightShadowPlayground by calculating the SDF shadow in a more generic way
  • Based on customer request and to support Windows 7, we added a DirectX 11 fallback code path. Because this API can not support all unit tests, it is only a choice on a select few
  • IRenderer Cleanup for all platforms
    • removed several descriptor related structs, which enabled us to simplify the codebase
    • add render index draw start vertex
  • We replaced NuklearUI with imGui; we are going to replace QT with imGui now for our internal tools, so trying to keep this consistent
  • Created a new unit test for imGui #13 - it shows the current level of integration of imGui into The Forge
    Image of the imGui Integrationn in The Forge
  • Linux - changed to standard linux define instead of user defined LINUX
  • Vulkan
    • supports now the descriptor update template extension: VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME
    • added ability to specify instance layers, instance, device extensions from app code
    • upgraded to Vulkan SDK 1.1.82.0
  • The Torque 3D engine will use The Forge as its rendering layer in the future

Torque 3D

  • macOS - one thing notable is that The Forge on macOS can be used with an XBOX controller with this driver: 360Controller

Don't miss a new The-Forge release

NewReleases is sending notifications on new releases.