Philip Hammer of DECK13 Interactive GmbH presented techniques used in rendering The Surge. Key points included: using physically based rendering with GGX BRDF; clustered deferred rendering with lighting computed on GPU; deferred decals for details; and optimizing shaders for AMD GCN occupancy. Future work focuses on new deferred approaches like bindless decals, improved materials, and migrating to Vulkan and DX12.
Bindless Deferred Decals in The Surge 2Philip Hammer
These are the slides for my talk at Digital Dragons 2019 in Krakow.
Update: The recordings are online on youtube now:
https://www.youtube.com/watch?v=e2wPMqWETj8
Rendering Technologies from Crysis 3 (GDC 2013)Tiago Sousa
This talk covers changes in CryENGINE 3 technology during 2012, with DX11 related topics such as moving to deferred rendering while maintaining backward compatibility on a multiplatform engine, massive vegetation rendering, MSAA support and how to deal with its common visual artifacts, among other topics.
Optimizing the Graphics Pipeline with Compute, GDC 2016Graham Wihlidal
With further advancement in the current console cycle, new tricks are being learned to squeeze the maximum performance out of the hardware. This talk will present how the compute power of the console and PC GPUs can be used to improve the triangle throughput beyond the limits of the fixed function hardware. The discussed method shows a way to perform efficient "just-in-time" optimization of geometry, and opens the way for per-primitive filtering kernels and procedural geometry processing.
Takeaway:
Attendees will learn how to preprocess geometry on-the-fly per frame to improve rendering performance and efficiency.
Intended Audience:
This presentation is targeting seasoned graphics developers. Experience with DirectX 12 and GCN is recommended, but not required.
Talk by Graham Wihlidal (Frostbite Labs) at GDC 2017.
Checkerboard rendering is a relatively new technique, popularized recently by the introduction of the PlayStation 4 Pro. Many modern game engines are adding support for it right now, and in this talk, Graham will present an in-depth look at the new implementation in Frostbite, which is used in shipping titles like 'Battlefield 1' and 'Mass Effect Andromeda'. Despite being conceptually simple, checkerboard rendering requires a deep integration into the post-processing chain, in particular temporal anti-aliasing, dynamic resolution scaling, and poses various challenges to existing effects. This presentation will cover the basics of checkerboard rendering, explain the impact on a game engine that powers a wide range of titles, and provide a detailed look at how the current implementation in Frostbite works, including topics like object id, alpha unrolling, gradient adjust, and a highly efficient depth resolve.
Graphics Gems from CryENGINE 3 (Siggraph 2013)Tiago Sousa
This lecture covers rendering topics related to Crytek’s latest engine iteration, the technology which powers titles such as Ryse, Warface, and Crysis 3. Among covered topics, Sousa presented SMAA 1TX: an update featuring a robust and simple temporal antialising component; performant and physically-plausible camera related post-processing techniques such as motion blur and depth of field were also covered.
Bindless Deferred Decals in The Surge 2Philip Hammer
These are the slides for my talk at Digital Dragons 2019 in Krakow.
Update: The recordings are online on youtube now:
https://www.youtube.com/watch?v=e2wPMqWETj8
Rendering Technologies from Crysis 3 (GDC 2013)Tiago Sousa
This talk covers changes in CryENGINE 3 technology during 2012, with DX11 related topics such as moving to deferred rendering while maintaining backward compatibility on a multiplatform engine, massive vegetation rendering, MSAA support and how to deal with its common visual artifacts, among other topics.
Optimizing the Graphics Pipeline with Compute, GDC 2016Graham Wihlidal
With further advancement in the current console cycle, new tricks are being learned to squeeze the maximum performance out of the hardware. This talk will present how the compute power of the console and PC GPUs can be used to improve the triangle throughput beyond the limits of the fixed function hardware. The discussed method shows a way to perform efficient "just-in-time" optimization of geometry, and opens the way for per-primitive filtering kernels and procedural geometry processing.
Takeaway:
Attendees will learn how to preprocess geometry on-the-fly per frame to improve rendering performance and efficiency.
Intended Audience:
This presentation is targeting seasoned graphics developers. Experience with DirectX 12 and GCN is recommended, but not required.
Talk by Graham Wihlidal (Frostbite Labs) at GDC 2017.
Checkerboard rendering is a relatively new technique, popularized recently by the introduction of the PlayStation 4 Pro. Many modern game engines are adding support for it right now, and in this talk, Graham will present an in-depth look at the new implementation in Frostbite, which is used in shipping titles like 'Battlefield 1' and 'Mass Effect Andromeda'. Despite being conceptually simple, checkerboard rendering requires a deep integration into the post-processing chain, in particular temporal anti-aliasing, dynamic resolution scaling, and poses various challenges to existing effects. This presentation will cover the basics of checkerboard rendering, explain the impact on a game engine that powers a wide range of titles, and provide a detailed look at how the current implementation in Frostbite works, including topics like object id, alpha unrolling, gradient adjust, and a highly efficient depth resolve.
Graphics Gems from CryENGINE 3 (Siggraph 2013)Tiago Sousa
This lecture covers rendering topics related to Crytek’s latest engine iteration, the technology which powers titles such as Ryse, Warface, and Crysis 3. Among covered topics, Sousa presented SMAA 1TX: an update featuring a robust and simple temporal antialising component; performant and physically-plausible camera related post-processing techniques such as motion blur and depth of field were also covered.
For this year's keynote at High Performance Graphics 2018, Colin Barré-Brisebois from SEED discussed the state of the art in real-time game ray tracing. He explored some of the connections between offline and real-time game ray tracing, and presented some of the open problems. Colin exposed a few potential solutions to those problems, and also proposed a call-to-arms on topics where the ray tracing research community and the games industry should unite in order to solve such open problems.
Siggraph2016 - The Devil is in the Details: idTech 666Tiago Sousa
A behind-the-scenes look into the latest renderer technology powering the critically acclaimed DOOM. The lecture will cover how technology was designed for balancing a good visual quality and performance ratio. Numerous topics will be covered, among them details about the lighting solution, techniques for decoupling costs frequency and GCN specific approaches.
This session presents a detailed programmer oriented overview of our SPU based shading system implemented in DICE's Frostbite 2 engine and how it enables more visually rich environments in BATTLEFIELD 3 and better performance over traditional GPU-only based renderers. We explain in detail how our SPU Tile-based deferred shading system is implemented, and how it supports rich material variety, High Dynamic Range Lighting, and large amounts of light sources of different types through an extensive set of culling, occlusion and optimization techniques.
Secrets of CryENGINE 3 Graphics TechnologyTiago Sousa
In this talk, the authors will describe an overview of a different method for deferred lighting approach used in CryENGINE 3, along with an in-depth description of the many techniques used. Original file and videos at http://crytek.com/cryengine/presentations
A technical deep dive into the DX11 rendering in Battlefield 3, the first title to use the new Frostbite 2 Engine. Topics covered include DX11 optimization techniques, efficient deferred shading, high-quality rendering and resource streaming for creating large and highly-detailed dynamic environments on modern PCs.
Past, Present and Future Challenges of Global Illumination in GamesColin Barré-Brisebois
Global illumination (GI) has been an ongoing quest in games. The perpetual tug-of-war between visual quality and performance often forces developers to take the latest and greatest from academia and tailor it to push the boundaries of what has been realized in a game product. Many elements need to align for success, including image quality, performance, scalability, interactivity, ease of use, as well as game-specific and production challenges.
First we will paint a picture of the current state of global illumination in games, addressing how the state of the union compares to the latest and greatest research. We will then explore various GI challenges that game teams face from the art, engineering, pipelines and production perspective. The games industry lacks an ideal solution, so the goal here is to raise awareness by being transparent about the real problems in the field. Finally, we will talk about the future. This will be a call to arms, with the objective of uniting game developers and researchers on the same quest to evolve global illumination in games from being mostly static, or sometimes perceptually real-time, to fully real-time.
Talk from SIGGRAPH 2010 and the <a />Beyond Programmable Shading course</a>
Also see <a />publications.dice.se</a> for more material and other DICE talks.
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time RaytracingElectronic Arts / DICE
In this presentation part of the "Introduction to DirectX Raytracing" course, Colin Barré-Brisebois of SEED discusses some of the challenges the team had to go through when going from raster to real-time raytracing for Project PICA PICA.
The rendering technology of 'lords of the fallen' philip hammerMary Chan
This session is about some important aspects of the rendering pipeline of the upcoming Action-RPG "Lords of the Fallen", developed by Deck13 Interactive and CI Games for PS4, Xbox One, and PC. The topic covers several closely related areas like the deferred rendering system, image-based lighting using deferred cubemaps, deferred decals, and an approach for transparent object lighting and shadowing. More specifically, the lecture will cover several strategies to keep the G-Buffer as small and efficient as possible. This includes the description of a G-Buffer attribute-packing scheme and how per-material attributes can be exposed using special parameter lookup tables. Furthermore, a traditional problem of most deferred rendering systems is the seamless integration of transparent objects into the lighting. The lecture will present several ways to approach this problem, for example multi-pass deferred rendering, coloured transparent shadows, and a novel method for deferred particle lighting.
This talk is about our experiences gained during making of the Killzone Shadow Fall announcement demo.
We’ve gathered all the hard data about our assets, memory, CPU and GPU usage and a whole bunch of tricks.
The goal of talk is to help you to form a clear picture of what’s already possible to achieve on PS4.
For this year's keynote at High Performance Graphics 2018, Colin Barré-Brisebois from SEED discussed the state of the art in real-time game ray tracing. He explored some of the connections between offline and real-time game ray tracing, and presented some of the open problems. Colin exposed a few potential solutions to those problems, and also proposed a call-to-arms on topics where the ray tracing research community and the games industry should unite in order to solve such open problems.
Siggraph2016 - The Devil is in the Details: idTech 666Tiago Sousa
A behind-the-scenes look into the latest renderer technology powering the critically acclaimed DOOM. The lecture will cover how technology was designed for balancing a good visual quality and performance ratio. Numerous topics will be covered, among them details about the lighting solution, techniques for decoupling costs frequency and GCN specific approaches.
This session presents a detailed programmer oriented overview of our SPU based shading system implemented in DICE's Frostbite 2 engine and how it enables more visually rich environments in BATTLEFIELD 3 and better performance over traditional GPU-only based renderers. We explain in detail how our SPU Tile-based deferred shading system is implemented, and how it supports rich material variety, High Dynamic Range Lighting, and large amounts of light sources of different types through an extensive set of culling, occlusion and optimization techniques.
Secrets of CryENGINE 3 Graphics TechnologyTiago Sousa
In this talk, the authors will describe an overview of a different method for deferred lighting approach used in CryENGINE 3, along with an in-depth description of the many techniques used. Original file and videos at http://crytek.com/cryengine/presentations
A technical deep dive into the DX11 rendering in Battlefield 3, the first title to use the new Frostbite 2 Engine. Topics covered include DX11 optimization techniques, efficient deferred shading, high-quality rendering and resource streaming for creating large and highly-detailed dynamic environments on modern PCs.
Past, Present and Future Challenges of Global Illumination in GamesColin Barré-Brisebois
Global illumination (GI) has been an ongoing quest in games. The perpetual tug-of-war between visual quality and performance often forces developers to take the latest and greatest from academia and tailor it to push the boundaries of what has been realized in a game product. Many elements need to align for success, including image quality, performance, scalability, interactivity, ease of use, as well as game-specific and production challenges.
First we will paint a picture of the current state of global illumination in games, addressing how the state of the union compares to the latest and greatest research. We will then explore various GI challenges that game teams face from the art, engineering, pipelines and production perspective. The games industry lacks an ideal solution, so the goal here is to raise awareness by being transparent about the real problems in the field. Finally, we will talk about the future. This will be a call to arms, with the objective of uniting game developers and researchers on the same quest to evolve global illumination in games from being mostly static, or sometimes perceptually real-time, to fully real-time.
Talk from SIGGRAPH 2010 and the <a />Beyond Programmable Shading course</a>
Also see <a />publications.dice.se</a> for more material and other DICE talks.
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time RaytracingElectronic Arts / DICE
In this presentation part of the "Introduction to DirectX Raytracing" course, Colin Barré-Brisebois of SEED discusses some of the challenges the team had to go through when going from raster to real-time raytracing for Project PICA PICA.
The rendering technology of 'lords of the fallen' philip hammerMary Chan
This session is about some important aspects of the rendering pipeline of the upcoming Action-RPG "Lords of the Fallen", developed by Deck13 Interactive and CI Games for PS4, Xbox One, and PC. The topic covers several closely related areas like the deferred rendering system, image-based lighting using deferred cubemaps, deferred decals, and an approach for transparent object lighting and shadowing. More specifically, the lecture will cover several strategies to keep the G-Buffer as small and efficient as possible. This includes the description of a G-Buffer attribute-packing scheme and how per-material attributes can be exposed using special parameter lookup tables. Furthermore, a traditional problem of most deferred rendering systems is the seamless integration of transparent objects into the lighting. The lecture will present several ways to approach this problem, for example multi-pass deferred rendering, coloured transparent shadows, and a novel method for deferred particle lighting.
This talk is about our experiences gained during making of the Killzone Shadow Fall announcement demo.
We’ve gathered all the hard data about our assets, memory, CPU and GPU usage and a whole bunch of tricks.
The goal of talk is to help you to form a clear picture of what’s already possible to achieve on PS4.
Presentation about developing games and graphic visualizations in Pascal by Michalis Kamburelis, author of Castle Game Engine.
Presented in Salamanca at International Pascal Congress 2023 . See https://castle-engine.io/conferences .
Our 3D technology is entirely CPU based, parallel, and scalable thus allowing real-time visualization of large scenes and datasets from various sources (triangulated scenes, volumetric objects, ...)
Upcoming rendering technology including scriptable render pipelines, advanced lighting options and more.
Presenter: Arisa Scott (Graphis Product Manager, Unity Technologies)
1). Annotating real data for image segmentation is laborious and time-consuming task.
2). We aim to adapt the representation learned on synthetic data to real-world data.
Next generation gaming brought high resolutions, very complex environments and large textures to our living rooms. With virtually every asset being inflated, it's hard to use traditional forward rendering and hope for rich, dynamic environments with extensive dynamic lighting. Deferred rendering, on the other hand, has been traditionally described as a nice technique for rendering of scenes with many dynamic lights, that unfortunately suffers from fill-rate problems and lack of anti-aliasing and very few games that use it were published.
In this talk, we will discuss our approach to face this challenge and how we designed a deferred rendering engine that uses multi-sampled anti-aliasing (MSAA). We will give in-depth description of each individual stage of our real-time rendering pipeline and the main ingredients of our lighting, post-processing and data management. We'll show how we utilize PS3's SPUs for fast rendering of a large set of primitives, parallel processing of geometry and computation of indirect lighting. We will also describe our optimizations of the lighting and our parallel split (cascaded) shadow map algorithm for faster and stable MSAA output.
Computer Graphics - Lecture 01 - 3D Programming I💻 Anton Gerdelan
Slides from when I was teaching CS4052 Computer Graphics at Trinity College Dublin in Ireland.
These slides aren't used any more so they may as well be available to the public!
There are some mistakes in the slides, I'll try to comment below these.
This is the second lecture, and introduces programming with OpenGL 4 and shaders.
A general introduction to GPGPU and an application involving solving large preconditioning problems with Domain Decomposition. Code is available at http://sourceforge.net/projects/cudasolver/ .
A Certain Slant of Light - Past, Present and Future Challenges of Global Illu...Electronic Arts / DICE
Global illumination (GI) has been an ongoing quest in games. The perpetual tug-of-war between visual quality and performance often forces developers to take the latest and greatest from academia and tailor it to push the boundaries of what has been realized in a game product. Many elements need to align for success, including image quality, performance, scalability, interactivity, ease of use, as well as game-specific and production challenges.
First we will paint a picture of the current state of global illumination in games, addressing how the state of the union compares to the latest and greatest research. We will then explore various GI challenges that game teams face from the art, engineering, pipelines and production perspective. The games industry lacks an ideal solution, so the goal here is to raise awareness by being transparent about the real problems in the field. Finally, we will talk about the future. This will be a call to arms, with the objective of uniting game developers and researchers on the same quest to evolve global illumination in games from being mostly static, or sometimes perceptually real-time, to fully real-time.
This presentation was given at SIGGRAPH 2017 by Colin Barré-Brisebois (EA SEED) as part of the Open Problems in Real-Time Rendering course.
Similar to Dissecting the Rendering of The Surge (20)
Enterprise Resource Planning System includes various modules that reduce any business's workload. Additionally, it organizes the workflows, which drives towards enhancing productivity. Here are a detailed explanation of the ERP modules. Going through the points will help you understand how the software is changing the work dynamics.
To know more details here: https://blogs.nyggs.com/nyggs/enterprise-resource-planning-erp-system-modules/
Into the Box Keynote Day 2: Unveiling amazing updates and announcements for modern CFML developers! Get ready for exciting releases and updates on Ortus tools and products. Stay tuned for cutting-edge innovations designed to boost your productivity.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
Understanding Globus Data Transfers with NetSageGlobus
NetSage is an open privacy-aware network measurement, analysis, and visualization service designed to help end-users visualize and reason about large data transfers. NetSage traditionally has used a combination of passive measurements, including SNMP and flow data, as well as active measurements, mainly perfSONAR, to provide longitudinal network performance data visualization. It has been deployed by dozens of networks world wide, and is supported domestically by the Engagement and Performance Operations Center (EPOC), NSF #2328479. We have recently expanded the NetSage data sources to include logs for Globus data transfers, following the same privacy-preserving approach as for Flow data. Using the logs for the Texas Advanced Computing Center (TACC) as an example, this talk will walk through several different example use cases that NetSage can answer, including: Who is using Globus to share data with my institution, and what kind of performance are they able to achieve? How many transfers has Globus supported for us? Which sites are we sharing the most data with, and how is that changing over time? How is my site using Globus to move data internally, and what kind of performance do we see for those transfers? What percentage of data transfers at my institution used Globus, and how did the overall data transfer performance compare to the Globus users?
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar
The European Union Agency for Law Enforcement Cooperation (Europol) has suffered an alleged data breach after a notorious threat actor claimed to have exfiltrated data from its systems. Infamous data leaker IntelBroker posted on the even more infamous BreachForums hacking forum, saying that Europol suffered a data breach this month.
The alleged breach affected Europol agencies CCSE, EC3, Europol Platform for Experts, Law Enforcement Forum, and SIRIUS. Infiltration of these entities can disrupt ongoing investigations and compromise sensitive intelligence shared among international law enforcement agencies.
However, this is neither the first nor the last activity of IntekBroker. We have compiled for you what happened in the last few days. To track such hacker activities on dark web sources like hacker forums, private Telegram channels, and other hidden platforms where cyber threats often originate, you can check SOCRadar’s Dark Web News.
Stay Informed on Threat Actors’ Activity on the Dark Web with SOCRadar!
Experience our free, in-depth three-part Tendenci Platform Corporate Membership Management workshop series! In Session 1 on May 14th, 2024, we began with an Introduction and Setup, mastering the configuration of your Corporate Membership Module settings to establish membership types, applications, and more. Then, on May 16th, 2024, in Session 2, we focused on binding individual members to a Corporate Membership and Corporate Reps, teaching you how to add individual members and assign Corporate Representatives to manage dues, renewals, and associated members. Finally, on May 28th, 2024, in Session 3, we covered questions and concerns, addressing any queries or issues you may have.
For more Tendenci AMS events, check out www.tendenci.com/events
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Globus
The U.S. Geological Survey (USGS) has made substantial investments in meeting evolving scientific, technical, and policy driven demands on storing, managing, and delivering data. As these demands continue to grow in complexity and scale, the USGS must continue to explore innovative solutions to improve its management, curation, sharing, delivering, and preservation approaches for large-scale research data. Supporting these needs, the USGS has partnered with the University of Chicago-Globus to research and develop advanced repository components and workflows leveraging its current investment in Globus. The primary outcome of this partnership includes the development of a prototype enterprise repository, driven by USGS Data Release requirements, through exploration and implementation of the entire suite of the Globus platform offerings, including Globus Flow, Globus Auth, Globus Transfer, and Globus Search. This presentation will provide insights into this research partnership, introduce the unique requirements and challenges being addressed and provide relevant project progress.
Cyaniclab : Software Development Agency Portfolio.pdfCyanic lab
CyanicLab, an offshore custom software development company based in Sweden,India, Finland, is your go-to partner for startup development and innovative web design solutions. Our expert team specializes in crafting cutting-edge software tailored to meet the unique needs of startups and established enterprises alike. From conceptualization to execution, we offer comprehensive services including web and mobile app development, UI/UX design, and ongoing software maintenance. Ready to elevate your business? Contact CyanicLab today and let us propel your vision to success with our top-notch IT solutions.
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
top nidhi software solution freedownloadvrstrong314
This presentation emphasizes the importance of data security and legal compliance for Nidhi companies in India. It highlights how online Nidhi software solutions, like Vector Nidhi Software, offer advanced features tailored to these needs. Key aspects include encryption, access controls, and audit trails to ensure data security. The software complies with regulatory guidelines from the MCA and RBI and adheres to Nidhi Rules, 2014. With customizable, user-friendly interfaces and real-time features, these Nidhi software solutions enhance efficiency, support growth, and provide exceptional member services. The presentation concludes with contact information for further inquiries.
Software Engineering, Software Consulting, Tech Lead.
Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Security,
Spring Transaction, Spring MVC,
Log4j, REST/SOAP WEB-SERVICES.
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTier1 app
Even though at surface level ‘java.lang.OutOfMemoryError’ appears as one single error; underlyingly there are 9 types of OutOfMemoryError. Each type of OutOfMemoryError has different causes, diagnosis approaches and solutions. This session equips you with the knowledge, tools, and techniques needed to troubleshoot and conquer OutOfMemoryError in all its forms, ensuring smoother, more efficient Java applications.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
2. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Introduction
● DECK13 Interactive released “The Surge” in 2017
○ New IP, new publisher
○ Overhauled tech (Fledge Engine / 3th Generation)
○ Award Winning: Best German Game, Best Graphics, Best PC-/Console-Game (Deutscher Entwicklerpreis 2017)
○ Our most ambitious game from DECK13
3. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Introduction
● Team of around 70 people in Frankfurt
○ Tech Department: ~11 people (engine + game code)
○ Art- & Sound-Outsourcing
● Myself
○ Since 2006 @ DECK13
○ Working on rendering / engine / graphics / shaders
○ Worked on The Surge, Lords of the Fallen, Venetica, Ankh, Jack Keane, etc.
● The results and techniques presented in this article is
the work of many people in the Deck13 Tech department.
4. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
● Fledge Gen 1 (2009: Blood Knights, Tiger & Chicken)
○ PS3, Xbox 360, PC / D3D9, iOS (iPad 2 and up)
○ Deferred Rendering, Direct Lighting only, Minimal Multithreading
● Fledge Gen 2 (2012: Lords of the Fallen)
○ PS4, Xbox One, PC / D3D11
○ Volumetric Lighting, Direct & Indirect Lighting, Task-based multithreaded rendering
● Fledge Gen 3 (2014: The Surge)
○ PS4 (+Pro), Xbox One (+X), PC / D3D11
○ Physically-based rendering, Clustered Deferred Rendering, GPU Particles
● Fledge Gen 4 (2017/2018: The Surge 2)
○ Vulkan, D3D12
○ Currently in the making .. stay tuned
Tech Evolution
5. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
● Fledge Gen 1 (2009: Blood Knights, Tiger & Chicken)
○ PS3, Xbox 360, PC / D3D9, iOS (iPad 2 and up)
○ Deferred Rendering, Direct Lighting only, Minimal Multithreading
● Fledge Gen 2 (2012: Lords of the Fallen)
○ PS4, Xbox One, PC / D3D11
○ Volumetric Lighting, Direct & Indirect Lighting, Task-based multithreaded rendering
● Fledge Gen 3 (2014: The Surge)
○ PS4 (+Pro), Xbox One (+X), PC / D3D11
○ Physically-based rendering, Clustered Deferred Rendering, GPU Particles
● Fledge Gen 4 (2017/2018: The Surge 2)
○ Vulkan, D3D12
○ Currently in the making .. stay tuned
Tech Evolution
Today’s topics
6. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Tech Evolution
● The Surge Tech (Gen 3)
○ Stable Framerate across all platforms
PS4: 1080p @ 30 FPS
PS4 Pro: 1620p @ 30 FPS or 1080p @ 60 FPS
Xbox One: 900p @ 30 FPS
Xbox One X: 1800p @ 30 FPS or 1080p @ 60 FPS
○ Physical-Based Rendering
○ Clustered Deferred Rendering
○ Volumetric Lighting
○ GPU Particles
○ Screen-space Reflections
○ etc.
● New things in the making (Gen 4) - short peak into the future towards the end
7. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Physical-based Rendering
● Switched from (non-PBR) Blinn-Phong to
GGX Cook-Torrance BRDF [1]
○ De-facto industry standard.
○ More material data to drive the BRDF
● Artists needed to adapt (Workflow, Tools, Mindset)
○ Lots of pitfalls (no arbitrary texture data)
○ Adoption process was rather unproblematic -
most tools (Substance, Marmoset) already provide PBR workflow
● We use “Metalness-Workflow”
○ Artist provide Albedo, Normal, Roughness and Metalness textures
○ Metalness is a mask to treat the albedo differently in specular lighting
8. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Physical-based Rendering
● Direct Lighting: 100% dynamic lights
○ 16 shadowmaps rendered into atlas (4kx4k - 8kx8k, D16_FLOAT)
○ If cap reached, the shadowmap isn’t updated anymore and
virtually becomes static
● Image-based lighting
○ Precomputed, parallax corrected environment probes (Artist placed)
○ Specular probe is 256x256 cubemap (BC6_UFLOAT)
with GGX filtered importance sampled mip chain [2]
○ Diffuse lighting is simply the 6th mip level of probe
(“incorrect”, but visually equivalent with proper irradiance)
○ IBL pass can be modified with simple, multiplicative “ambient lights” [3]
9. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Physical-based Rendering
● G-Buffer breakdown
10. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Physical-based Rendering
● G-Buffer breakdown
11. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Physical-based Rendering
X Y Z W
RT0 (8:8:8:8) Albedo RGB Material-ID
RT1 (10:10:10:2) VS Normal XYZ -
RT2 (8:8:8:8) Roughness Metalness Occlusion [shared]
RT3 (16:16) Motion Vectors XY - -
12. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Physical-based Rendering
● Material-ID indexes directly into StructuredBuffer to query per-material data
○ Save G-Buffer space
● [shared] - per-pixel context dependent
○ mutual exclusive material data
○ based on per-material data
○ Emissive Mask
■ Defines whether or not to interpret albedo as emissive
■ Emissive combined in final “combine” pass
■ Effectively saves dedicated emissive channel
○ Translucency
13. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Clustered Deferred Rendering
● Switch from rasterization-based light volume rendering to full (async) compute-based approach
○ Low CPU overhead
■ Light culling runs entirely on GPU
■ Filling a buffer with light infos instead of dispatching thousands of drawcalls
○ Advantages on GPU
■ No need to fetch G-Buffer for every light
○ Async Compute: Lighting runs in parallel to shadow rendering (at least on consoles)
○ But: many more optimizations necessary to get better perf
● Could render environment probes in the same pass
○ Environment probes are still clustered but rendered in a separate (pixelshader) pass together with SSR
14. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Clustered Deferred Rendering
● Divide view frustum into a 3D grid
○ In our case: 16 x 8 x 24
● Culling: Assign lights to grid cells
○ Upload light culling info to GPU (StructuredBuffer with Position, AABB, etc.)
○ Create list of light indices for each cell (single large uint buffer)
● Dispatch lighting compute shader
○ In fact we dispatch twice: unshadowed and shadowed lights
○ Unshadowed can run in parallel with shadowmap generation
● Can use cluster information also for forward rendering
○ We do this for our lit transparent objects
○ Simply compute grid cell index for a position and query light list
15. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Deferred Decals
● Decals play a major role in our environment art
○ Static: Logos/Signs, Material Layers (Sand, Water Puddles, Rust, etc.), Color Variations
○ Dynamic: Blood, Explosion Marks, etc.
● Extremely flexible
● Break uniform look of heavily instanced scenes
● Adds lot of large- and small-scale details
20. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Deferred Decals
● Modifies G-Buffer by alpha-blending onto it
○ Therefore, lighting is “free” since it’s done afterwards
● 2 methods for tangentspace reconstruction
○ Surface Normal (use G-Buffer normal)
○ Planar (use decal projection direction)
● Full PBR support + many per-decal features (add. Mask, UV modifiers, etc.)
● Implementation rasterization-based deferred
○ Rasterize geometry (boxes) for each decal
○ CPU bottleneck with large number of decals
21. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Deferred Decals
● Common issue with Deferred Decals: Wrong Mip Selection due to screenspace gradients
○ Problem: Texture leaks around depth discontinuities
22. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Deferred Decals
● Common issue with Deferred Decals: Wrong Mip Selection due to screenspace gradients
○ Problem: Texture leaks around depth discontinuities
○ Common solution: Use highest mip
■ Causes flickering in distance due to oversampling (no mips)
■ Texture cache hit
○ Our solution: Use mip0 only with large depth discontinuities
// Sample 2 quads
const float4 d0 = depthSampler.Gather(sampler_point_clamp, screenUV, int2(-1, -1));
const float4 d1 = depthSampler.Gather(sampler_point_clamp, screenUV, int2(0, 0));
const float4 dCross = float4 (d0.z, d0.y, d1.y, d1.z);
const float dC = d.w;
// Find suitable neighbor screen positions in x and y so we can compute proper gradients
// Select based on the smallest different in depth
const bool useFirstMip = any(abs(dC.xxxx - dCross) > 0.001);
if (useFirstMip)
albedoTex.SampleLevel(..);
else
albedoTex.Sample(..);
d0.x d0.y
d0.z d0.w
d1.x d1.y
d1.z d1.w
23. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
“Object Decals”
● Alternative Term: “Blend Meshes”
● Alpha-Blend arbitrary meshes on the G-Buffer
○ Artists can create simple plane-”decals” with custom UV setup
○ Efficiently add small, high-res details like panels, rivets, LED, etc.
○ Works also on skinned objects (e.g. logos on Exo-Gear)
1 Base G-Buffer Pass (solid)
2 Object Decal Pass (alpha-blend)
3 Deferred Decal Pass (alpha-blend)
24. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Next Decals / Fledge Gen 4
● “Bindless” Decals
○ Analogous to clustered deferred lighting
■ Culling & rendering happens entirely on the GPU
■ Collect info about all visible decals in a buffer
■ Render all decals before lighting in the same compute shader
○ Decal info stores texture IDs (UINT32) to index directly into DescriptorSet / DescriptorTable
○ Blending not restricted to alpha-blending anymore (linear interpolation)
■ “Geometric” normal blending possible [4]
■ Replacing layered materials with decals is now feasible
○ Availability of interpolated vertex-normals in G-Buffer improves T-Space reconstruction
○ Currently in active development
25. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Optimizing for Occupancy / GCN
● GCN Hardware wants saturated CU Units
○ Huge lighting shader uses a lot of general purpose registers
if not structured carefully
● Reducing register usage (VGPR/SGPR) can be a huge win
○ Especially for long, ALU heavy shaders such as lighting
○ Minimize register lifetime
○ Look at the data and iterate
■ runtime profilers
■ static shader code analysis statistics
● Goal: Want min. 40% GCN Wave Occupancy on
PS4 and Xbox One (for lighting compute shader)
26. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
Optimizing for Occupancy / GCN
● Example: Split light type loops
○ Different light types uses different data
■ Shadowed lights use shadow projection matrices, shadowmaps, etc.
■ Image projectors use image projection matrices, images, etc.
■ Boxlights must check bounds differently
■ etc.
○ Shader can free up register usage if structured well
for each light in lightbuffer
if light.type == POINT
// do pointlight calculations
if light.type == SPOT
// do spotlight calculations
else if light.type == SPOT_SHADOWED
// do shadowed spotlight calculated
end
for each light in lightbuffer_point
// do pointlight calculations
end
for each light in lightbuffer_spot
// do spotlight calculations
end
for each light in lightbuffer_spot_shadowed
// do shadowed spotlight calculations
end
27. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
What’s next ?
● Currently working on Fledge Gen 4
○ Always improving tech iteratively
○ Always keep existing systems “alive”
○ Parallel Development of new systems / breaking changes
● Spread knowledge
○ Weekly presentation meeting (tech internal)
● Leap to new APIs
○ Vulkan, DirectX 12
28. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
What’s next ?
● New low-level renderer design
○ Better match the new APIs (no more state-driven)
○ More low-level control such as explicit resource syncs, GPU memory management, etc.
○ Async-Compute also on PC
○ More C-style, more data-oriented
○ “Do as little as possible during render-loop” aka “prebake as much as we can”
■ Setting DescriptorSets, Map/Unmap GPU memory, etc.
○ Goal: Rendering must not be a CPU performance bottleneck
● Better ingame-profiling for content creators
● Better tools for artists and game designers
29. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
What’s next ?
● Improving specific rendering subsystems
○ Switch to physically based inverse square falloff (lumen units)
○ Improved IBL system (e.g. split irradiance and specular probes)
○ Unified volumetric fog / lighting (“lit fog” vs. “volumetric lighting”)
○ Bindless Decals
○ New material system
■ More flexibility for custom shaders / FX Materials
■ Better fit for the new rendering backend interface
○ Improved postprocessing, Antialiasing, HDR tonemapping / color correction
30. Thank you for
your attention!
DECK13 is hiring!
● Tools Programmer
● Concept Environment Artist
● VFX Artist
● etc.
@philiphammer0
phammer@deck13.com
linkedin.com/in/philip-hammer-430baa6
32. Dissecting the Rendering of The Surge
Quo Vadis Berlin 2018
References
[1] Walter et al., "Microfacet Models for Refraction through Rough Surfaces"
[2] Karis, “Real Shading in Unreal Engine 4”, Siggraph 2013
[3] Schulz, Mader, “Rendering Techniques in Ryse: Son of Rome”, Siggraph 2014
[4] Barré-Brisebois, Hill, "Blending in Detail"
http://blog.selfshadow.com/publications/blending-in-detail/