Presentation is loading. Please wait.

Presentation is loading. Please wait.

Overview [See Video file] Architecture Overview.

Similar presentations


Presentation on theme: "Overview [See Video file] Architecture Overview."— Presentation transcript:

1

2 Overview [See Video file]

3 Architecture Overview

4

5 Asynchronous Resource Loading Handle Based Default Resources always available Game Thread Device Ressource Tracker Background Loading System RenderDevice

6 Stateless Rendering Architecture 64 bit Source Key Draw Command ViewportPassDepth Shader Mesh Texture

7 Stateless Rendering Architecture 64 bit Source Key Draw Command ViewportPassShader Mesh Texture Depth

8 Shader Cross Compilation System Mix of Custom Description Language and HLSL Heavy use of Preprocessor Macros

9 .shader2 (texture_input (texture_2d diffuse_texture) texture_input) (sampler_input (sampler_state diffuse_texture_sampler) sampler_input) PSSL struct SRT_PerMaterial { Texture2D diffuse_texture_srt; SamplerState diffuse_texture_sampler_srt; }; #define diffuse_texture (srt_data.per_material ->diffuse_texture_srt) #define diffuse_texture_sampler (srt_data.per_material ->diffuse_texture_sampler_srt)

10 float4 PS( PS_INPUT input, SRT_Global srt_data ) { output = TEXTURE_2D_SAMPLE_RGBA( diffuse_texture, diffuse_texture_sampler, IL_PIXEL_INPUT(tex) ); }

11 All resources are bound by convention at runtime Constants organized by Frequency Frame, Camera, Material, Object Textures in the order they are defined

12 Changes since Submission Support for 3D Textures Changed from 64x64x4 -> 32x32x16 clusters Optimized Forward Clustered Shader GPU Time: 14.82 ms -> 7.86 ms

13 Changes since Submission Fixed incorrect cotangent-frame construction in the normal mapping shader Added Tonemapping Fixed synchronization issues in the GPU allocator

14 Restructured Rendering Loop Old SchemeNew Scheme Input Latency:3 / 4 frames 2 / 3 frames

15 Demonstration

16 Planned Changes Add support for Pipeline objects (D3D12, Mantle, Metal) Restructure the Stateless Draw Command implementation – Add Passes, one pass per logical operation – Reduces overhead from hazard tracking – Reduces sorting overhead, only need to sort local in a pass Improve Light Clustering Implement Deferred Rendering Scheme, compare to current Clustered Forward Better Shading Language, maybe based on the ideas of Spark?

17 Questions? Jendrik Illner Jendrik.illner@gmail.com


Download ppt "Overview [See Video file] Architecture Overview."

Similar presentations


Ads by Google