{"id":393,"date":"2018-09-19T12:22:27","date_gmt":"2018-09-19T10:22:27","guid":{"rendered":"http:\/\/heikkili.kapsi.fi\/blog\/?page_id=393"},"modified":"2019-09-11T11:17:21","modified_gmt":"2019-09-11T09:17:21","slug":"deferred-shader-dx11","status":"publish","type":"page","link":"http:\/\/heikkili.kapsi.fi\/blog\/?page_id=393","title":{"rendered":"Deferred Shader (DX11)"},"content":{"rendered":"\n<p>Deferred Shader demo project, a simple DirectX11 application implementing deferred shading with different light types.<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-attachment-id=\"453\" data-permalink=\"http:\/\/heikkili.kapsi.fi\/blog\/?attachment_id=453\" data-orig-file=\"https:\/\/i0.wp.com\/heikkili.kapsi.fi\/blog\/wp-content\/uploads\/2019\/09\/screenshot_1.jpg?fit=1024%2C768\" data-orig-size=\"1024,768\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Deferred Shader\" data-image-description=\"&lt;p&gt;Deferred Shader(DX11)&lt;\/p&gt;\n\" data-image-caption=\"&lt;p&gt;Deferred Shader(DX11)&lt;\/p&gt;\n\" data-medium-file=\"https:\/\/i0.wp.com\/heikkili.kapsi.fi\/blog\/wp-content\/uploads\/2019\/09\/screenshot_1.jpg?fit=300%2C225\" data-large-file=\"https:\/\/i0.wp.com\/heikkili.kapsi.fi\/blog\/wp-content\/uploads\/2019\/09\/screenshot_1.jpg?fit=650%2C488\" tabindex=\"0\" role=\"button\" src=\"https:\/\/i2.wp.com\/heikkili.kapsi.fi\/blog\/wp-content\/uploads\/2019\/09\/screenshot_1.jpg?fit=650%2C488\" alt=\"\" class=\"wp-image-453\" srcset=\"https:\/\/i0.wp.com\/heikkili.kapsi.fi\/blog\/wp-content\/uploads\/2019\/09\/screenshot_1.jpg?w=1024 1024w, https:\/\/i0.wp.com\/heikkili.kapsi.fi\/blog\/wp-content\/uploads\/2019\/09\/screenshot_1.jpg?resize=300%2C225 300w, https:\/\/i0.wp.com\/heikkili.kapsi.fi\/blog\/wp-content\/uploads\/2019\/09\/screenshot_1.jpg?resize=768%2C576 768w, https:\/\/i0.wp.com\/heikkili.kapsi.fi\/blog\/wp-content\/uploads\/2019\/09\/screenshot_1.jpg?resize=809%2C607 809w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><figcaption>Deferred Shader with visualization of GBuffer.<\/figcaption><\/figure>\n\n\n\n<p>GitHub:  <a href=\"https:\/\/github.com\/HeikkiLi\/DeferredShader\">https:\/\/github.com\/HeikkiLi\/DeferredShader<\/a>  <\/p>\n\n\n\n<p><em>DirectX11, C++, DearImGUI, TinyObj<\/em><\/p>\n\n\n\n<p><br><strong>Features:<\/strong><br>&#8211; deferred shading<br>&#8211; GBuffer, different lights: directional, spot, point lights<br>&#8211; Percentage-closer filtering (pcf) shadows for point and spot light<br>&#8211; cascaded shadow map directional light<br>&#8211; Hemispheric ambient color (will later replace with SSAO or in next project)<br>&#8211; win32 window management and message handler<br>&#8211; Mesh, ObjLoader, Material, GeometryGenerator (basic meshes grid, box etc)<br>&#8211; simple camera implementation<br>&#8211; GUI settings with Dear ImGui.<br><br><strong>3rd Party libraries:<\/strong><br>Dear ImGui <br>https:\/\/github.com\/ocornut\/imgui<br> <br>tiny obj loader <br>https:\/\/github.com\/syoyo\/tinyobjloader<br><br>DirectXTex<br>https:\/\/github.com\/Microsoft\/DirectXTex<br>DirectXTex ScreenCrab <br>DirectXTex WICTextureLoader<br> <br>DirectXTK<br>In some parts using the SimpleMath helpers to wrap DirectXMath SIMD vector\/matrix math API<br>https:\/\/github.com\/microsoft\/DirectXTK<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Deferred Shader demo project, a simple DirectX11 application implementing deferred shading with different light types. GitHub: https:\/\/github.com\/HeikkiLi\/DeferredShader DirectX11, C++, DearImGUI, TinyObj Features:&#8211; deferred shading&#8211; GBuffer, different lights: directional, spot, point lights&#8211; Percentage-closer filtering (pcf) shadows for point and spot light&#8211; cascaded shadow map directional light&#8211; Hemispheric ambient color (will later replace with SSAO or in&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"jetpack_post_was_ever_published":false,"footnotes":""},"class_list":["post-393","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/P7k3DT-6l","_links":{"self":[{"href":"http:\/\/heikkili.kapsi.fi\/blog\/index.php?rest_route=\/wp\/v2\/pages\/393"}],"collection":[{"href":"http:\/\/heikkili.kapsi.fi\/blog\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/heikkili.kapsi.fi\/blog\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/heikkili.kapsi.fi\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/heikkili.kapsi.fi\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=393"}],"version-history":[{"count":8,"href":"http:\/\/heikkili.kapsi.fi\/blog\/index.php?rest_route=\/wp\/v2\/pages\/393\/revisions"}],"predecessor-version":[{"id":456,"href":"http:\/\/heikkili.kapsi.fi\/blog\/index.php?rest_route=\/wp\/v2\/pages\/393\/revisions\/456"}],"wp:attachment":[{"href":"http:\/\/heikkili.kapsi.fi\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=393"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}