🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

jendrikillner

Profile
Montreal, Canada
1 comments
31 followers
166 entries
Advertisement
jendrikillner
July 08, 2018
Graphics Programming weekly - Issue 46 — July 8, 2018
Progressive Sampling Strategies for Disk Light Sources
  • comparison of combinations of six different sampling strategies for disk area light sources and 9 sample sequences
  • testing is done for wholly and partially illuminated regions
  • the best result could be achieved with…
1,185 views
jendrikillner
July 01, 2018
Graphics Programming weekly - Issue 45 — July 1, 2018
High-Performance Procedural Noise using an Histogram-Preserving Blending Operator
  • a technique that allows the generation of infinite output space from a small example texture (such a grass, snow) in a pixel shader only
    • for example tillable terrain textures
    • cheap to ev…
4,077 views
jendrikillner
June 24, 2018
Graphics Programming weekly - Issue 44 — June 24, 2018
Breaking down barriers – part 3: multiple command processors
  • discusses problems with synchronization between unrelated work when using a single command queue
  • showcases how two command queues can achieve better overall utilization at the cost of longer latency
1,018 views
jendrikillner
June 17, 2018
Graphics Programming weekly - Issue 43 — June 17, 2018
Using Compute Post-Processing in Vulkan on Mali
  • how to use two Vulkan queues to enable optimal scheduling for compute-shader based post-processing
  • discussion how fragment → compute can introduce bubbles on the hardware
  • uses two software queues with semaphore synchroniz…
1,123 views
jendrikillner
June 10, 2018
Graphics Programming weekly - Issue 42 — June 10, 2018
Real-World Measurements for Call of Duty: Advanced Warfare
  • this in-depth document (26 pages) covers how real-world measurement is used to achieve correct lighting in call of duty
  • explanation of camera concepts
  • getting relative EV differences between light and shadowed …
1,064 views
jendrikillner
June 06, 2018
Graphics Programming weekly - Issue 41 — June 3, 2018
The Machinery Shader System (part 3)
  • shader authors can define variations of shaders with a number of systems
  • each system can inject code/resources/constants into the shader
  • a material allows specifications of which shaders belong together, which systems they use and a…
1,162 views
jendrikillner
May 27, 2018
Graphics Programming weekly - Issue 40 — May 27, 2018
INSIDE shipping on iOS
  • many optimization lessons learned for mobile
  • how to deal with shader preloading
  • discussion of error detection in automated image comparison tests
  • increased game brightness to reduce the use of display backlights to save battery and reduce heat
  • us…
1,380 views
jendrikillner
May 20, 2018
Graphics Programming weekly - Issue 39 — May 20, 2018
Kernel Foveated Rendering
  • implements foveated rendering through usage of log-polar transformation
  • gbuffer is written as normal, attributes transformed into sub-resolution textures using a log-polar transformation
  • shading is done in log-polar space before the results ar…
1,066 views
jendrikillner
May 13, 2018
Graphics Programming weekly - Issue 38 — May 13, 2018
Optimizing Vulkan for AMD and the tale of two Vulkan drivers
  • experience of using vulkan with AMD drivers (stock and open source)
  • comparison of register usage with different shader compilers
wayback-archive

Vulk…
1,069 views
jendrikillner
May 06, 2018
Graphics Programming weekly - Issue 37 — May 6, 2018
Stylized VFX in RIME – Water Edition
  • how the stylized vfx in Rime was implemented
  • short overview of fire and smoke effect
  • in-depth overview of the water rendering implementation
wayback-archive

SPIRV-Cross - Ref…
1,071 views
jendrikillner
April 29, 2018
Graphics Programming weekly - Issue 36 — April 29, 2018
Nubis: Realtime volumetric cloudscapes in a nutshell
  • summary of
    • cloud modeling and authoring system
    • lighting model
  • high level overview of the implementation
wayback-archive

Stratified sampling
1,026 views
jendrikillner
April 22, 2018
Graphics Programming weekly - Issue 35 — April 22, 2018
2018 Vulkan Developer Day in Montréal
  • April 30th, Vulkan Developer Day in Montreal, hosted by Ubisoft
wayback-archive Recolouring assets with lazy unwrapping!
  • UVs map into a gradient texture
  • to c…
1,153 views
jendrikillner
April 15, 2018
Graphics Programming weekly - Issue 34 — April 15, 2018

Exploring scriptable render pipelines in unity 2018.1 [wayback-archive]

  • overview of the scriptable render pipeline
  • walkthrough of the development of a pipeline for mobile VR, code on github
  • lighting, fog, lightmaps, shadows, light/reflection probes, transparency

SymPy case studies, part 2: deri…

923 views
jendrikillner
April 08, 2018
Graphics Programming weekly - Issue 33 — April 8, 2018

Breaking down barriers – part 2: Synchronizing GPU threads [wayback-archive]

  • explanations of barrier behaviour on a simplified GPU model
  • how split barriers help to increase GPU utilization

Color: From Hexcodes to Eyeballs [wayback-archive]

  • in-depth introduction into light theory, human percepti…
884 views
jendrikillner
April 01, 2018
Graphics Programming weekly - Issue 32 — April 1, 2018

Triangle Visibility Buffer [wayback-archive]

  • in-depth walkthrough of the GPU triangle culling pipeline
  • render into a single render RGBA8 render target, storing drawID + triangle ID
  • memory usage comparison with deferred shading
  • at shading time
    • lookup the triangle ID from the render target
    • interpo…
948 views
jendrikillner
March 18, 2018
Graphics Programming weekly - Issue 31 — March 18, 2018

This week I am at GDC, therefore there will be no newsletter at the end of the week. If you would like to meet during the week, send me an email or message me on twitter. DMs are open.

The series will return on April 2nd.

Meta loader for Vulkan API

  • dynamically loads vulkan entry points, bypass…
932 views
jendrikillner
March 11, 2018
Graphics Programming weekly - Issue 30 — March 11, 2018

Porting GPU driven occlusion culling to bgfx [wayback-archive]

  • breakdown of how a gpu driven pipeline can be implemented with bgfx
  • indirect buffer writing from the CPU not supported so using regular instancing instead

Breaking down barriers – part 1: what’s a barrier? [wayback-archive]

  • look at …
897 views
jendrikillner
March 04, 2018
Graphics Programming weekly - Issue 29 — March 04, 2018

Rendering in Camera Space(ish) [wayback-archive]

  • shows effects of floating point precision loss far away from the origin
  • transforms rendering to be relative to the camera position in the world instead of the origin of the world
  • this makes rendering precision independent from the position in the w…
884 views
jendrikillner
February 25, 2018
Graphics Programming weekly - Issue 28 — February 25, 2018

Youtube - Wolfenstein 3D’s map renderer

  • in-depth breakdown of how the Wolfenstein 3D renderer works
  • explanation of the ray-casting logic
  • derivation of the mathematics found in the code

Fast way to render lots of spheres [wayback-archive]

  • spheres drawn in pixel shader using ray-sphere intersecti…
861 views
jendrikillner
February 18, 2018
Graphics Programming weekly - Issue 27 — February 18, 2018

Descriptor Pool Challenges in Vulkan [wayback-archive]

  • looking at the descriptor pool problem with multiple worker threads
  • variable workload makes it difficult to correctly size the pools
  • discussions of workarounds
  • proposal of a flag for lock-free descriptor allocation
    • looking at the AMD driver …
905 views
jendrikillner
February 11, 2018
Graphics Programming weekly - Issue 26 — February 11, 2018

The Peak-Performance Analysis Method for Optimizing Any GPU Workload [wayback-archive]

  • how to use GPU counters to detect interactions between different hardware blocks
  • discussion of case studies
  • walkthrough of analysis, code examples to show optimizations and discussion of results

Pre-Multiplied…

823 views
jendrikillner
February 04, 2018
Graphics Programming weekly - Issue 25 — February 4, 2018

Optimized Swapchain in Vulkan [wayback-archive]

  • discussion of different approaches, overview of strengths and weaknesses
  • recommends splitting command buffers into two groups
    • pre-acquire (everything that doesn’t write into the swapchain)
    • post-acquire (everything that writes into the swapchain)
  • a…
873 views
jendrikillner
January 28, 2018
Graphics Programming weekly - Issue 24 — January 28, 2018

Tightening Up the Graphics: Tools and Techniques for Debugging and Optimization

  • aimed at beginners in graphics programming
  • overview of common problems and causes
  • renderdoc explanation
    • feature and interface overview
    • how to use it to detect problems
  • GPU perf studio and how to profile your applica…
870 views
jendrikillner
January 21, 2018
Graphics Programming weekly - Issue 23 — January 21, 2018

Experiments in GPU-based occlusion culling part 2: MultidrawIndirect and mesh lodding [wayback-archive]

  • using DrawIndexedInstancedIndirect (on AMD and Nvidia with API extensions)
    • all vertices in large buffers with manual vertex fetch in the vertex shader
  • how to integrate level of detail for mes…
941 views
jendrikillner
January 14, 2018
Graphics Programming weekly - Issue 22 — January 14, 2018

The Rendering of Middle Earth: Shadow of Mordor [wayback-archive]

  • gbuffer breakdown
  • blood rendering as gbuffer modifier
  • tessellation
    • uses a point cloud as input and a tessellation shader calculates the polygons
  • SSAO has two distinct channels that get applied to specular and diffuse separately
  • t…
851 views
jendrikillner
December 17, 2017
Graphics Programming weekly - Issue 21 — December 17, 2017

Unreal Engine 4 Rendering Part 1: Introduction [wayback-archive]

  • focus on the deferred shading pipeline
  • settings required for good development experience
  • how data is passed from updated thread -> engine thread -> gpu
  • how shader system is structured
  • binding between HLSLS and C++
  • how the corr…
849 views
jendrikillner
December 10, 2017
Graphics Programming weekly - Issue 20 — December 10, 2017

White Paper: Foveated Rendering [wayback-archive]

  • overview of typical VR rendering pipeline
  • lens distortion causes pixels towards the edges to be distorted more
  • Foveated takes advantage of this and uses a variable quality across the screen
  • how to implement it using the opengl multiview extension
892 views
jendrikillner
December 03, 2017
Graphics Programming weekly - Issue 19 — December 3, 2017

PIX 1711.28 – GPU memory usage, TDR debugging, DXIL shader debugging, and child process GPU capture [wayback-archive]

  • can track d3d12 heap usage during timing captures
  • experimental TDR (Timeout Detection and Recovery) debugging support
  • shader debugging for DXIL (new intermediate shader language)
851 views
jendrikillner
November 26, 2017
Graphics Programming weekly - Issue 18 — November 26, 2017

Decima engine: visibility in horizon zero dawn [wayback-archive]

  • seperate system for statics and dynamics
  • world broken into tiles
  • sort key is used to define clusters
    • lod ranges, filter masks
    • morton numbers for spatial partioning
  • tile/cluster culling on the CPU
    • launch one GPU culling job for ea…
868 views
jendrikillner
November 19, 2017
Graphics Programming weekly - Issue 17 — November 19, 2017

Last Week on DirectX Shader Compiler (2017-11-14) [wayback-archive]

  • support for explicitly sized types 16 to 64 bits
  • spir-v improvements

Embree v2.17.1

  • Improved performance of occlusion ray packets by up to 50%

Experiments in GPU-based occlusion culling [wayback-archive]

  • An GPU occlusion syst…
853 views
Advertisement

Popular Blogs

shawnhar
Generalist
101 Entries
12 Followers
15 Entries
12 Followers
johnhattan
Programmer
1,277 Entries
48 Followers
ApochPiQ
Generalist
628 Entries
43 Followers
dgreen02
Generalist
338 Entries
55 Followers
Advertisement