There will be no newsletter next week. I am at GDC all week. Will be returning as usual on April 1st.
- the latest update adds support to run the D3D12 game on windows 7
- user mode d3d12 implementation without win10 kernel level optimizations
- no public information about the implementation details yet
![wow_d3d12.jpg](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-77/wow_d3d12.jpg&key=0795e6ab6c91c676e9bb9bda513b100b913c70d7bb244b53a70ee7a0d73dbf06)
- source code for the Ray Tracing Gems has been released
![ray_tracing_gems.jpg](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-77/ray_tracing_gems.jpg&key=069ded12fadaa16b40e9816e575e9c346e48774aa342e81a8e0e2d8da043b767)
- follow up to the post discussed in issue 75
- presents a way to speed up the presented technique by 2.34x
- discussion of the rendering error using the Eric Heitz method discussed above
![owen-tri-rendered.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-77/owen-tri-rendered.png&key=860e7ca5de52d090fcf0c5bf655b0ea58516551a018f626b5a2c5189077cc421)
- pix for windows now supports High-Frequency Counters
- This allows that hardware counters are sampled multiple times per draw/dispatch and allows further insight into GPU activity
![pix_counters.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-77/pix_counters.png&key=a480d3e903b9f92f9e53038a453b269f7343a84020a95a7f346878895c9ca5ce)
- a ray tracing system for Wolfenstein 3D using only WebGL 1
- a hybrid approach, raytraced shadows, diffuse GI and reflections
- overview of the implementation for the different elements
- how to apply temporal stability and noise reduction filters
![wolfenstein.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-77/wolfenstein.png&key=4863b2e41560b9a2feebc16cd13898f19461fd22a9b7ccb1587dac8b84c849b7)
- explains the concepts of textures, mip-mapping, sampling
- shows the different filtering, addressing mode available on texture samplers
- describes how to use DirectXTex to load textures and upload them into GPU memory
- introduction into compute shaders and how to use them to generate mipmaps
![mipmapping_d3d12.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-77/mipmapping_d3d12.png&key=dc77c5b79f8a57e0cb80a515f93bfd66423f64b6e102902586398db3901cd0e2)
- a new low distortion mapping between squares and triangles that is also cheap to compute
- can be used for random sampling of points with a uniform density
![mapping.png](https://www.jendrikillner.com/img/posts/graphics-programming-weekly-77/mapping.png&key=2f21a5df8ed76c8106508e8f6d6e9c680bc55e1fbd30743393ae8d9ae91cb1d7)
- presents 3 optimizations that can be applied to BVH to increase performance
- usage of inverse ray direction, ray traversal early-out and surface area heuristic for construction of the BVH
- the comments contain a few more tips for increased performance
Thanks to Matt Pharr for support of this series.
You would like to see your name here too? Become a Patreon of this series.