{"id":928,"date":"2012-06-17T21:25:21","date_gmt":"2012-06-18T01:25:21","guid":{"rendered":"http:\/\/alexlemke.com\/wordpress\/?p=928"},"modified":"2012-10-09T00:23:52","modified_gmt":"2012-10-09T04:23:52","slug":"shaders-in-the-havok-vision-engine","status":"publish","type":"post","link":"http:\/\/alexlemke.com\/wordpress\/shaders-in-the-havok-vision-engine\/","title":{"rendered":"Shaders in the Havok Vision Engine"},"content":{"rendered":"<p>When it comes to shaders the Havok Vision Engine gives you a visual shader editor, similar to to UDK&#8217;s material editor and allows to you an actual HLSL shader editor. You can&#8217;t do post process effects with Vision&#8217;s visual shader editor&nbsp;and due to that I&#8217;ve been working on shaders for Plushy Knight that the artists can&#8217;t create on their own. &nbsp;I&#8217;ve also been helping them with any shader issues that are having.<\/p>\n<p>First we have an example of &nbsp;a Cook Torrance specular effect. &nbsp;Cook Torrance attempts to simulate microfacets by using fresnel&nbsp;and a&nbsp;roughness term.<\/p>\n<p><a href=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_Gemma_CookTorrance.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-937\" title=\"PK_Gemma_CookTorrance\" src=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_Gemma_CookTorrance.png\" alt=\"\" width=\"579\" height=\"573\" srcset=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_Gemma_CookTorrance.png 579w, http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_Gemma_CookTorrance-300x296.png 300w\" sizes=\"auto, (max-width: 579px) 100vw, 579px\" \/><\/a><\/p>\n<p>Next we have a black and white post process effect and an improved sobel edge detection effect. &nbsp;This sobel edge detection is using a depth and normal buffer to getter better results when calculating edges. The depth buffer is also used to limit the range of effect.<\/p>\n<p><a href=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_BlackAndWhite.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-930\" title=\"PK_BlackAndWhite\" src=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_BlackAndWhite-1024x614.png\" alt=\"\" width=\"620\" height=\"371\" srcset=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_BlackAndWhite-1024x614.png 1024w, http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_BlackAndWhite-300x180.png 300w, http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_BlackAndWhite.png 1065w\" sizes=\"auto, (max-width: 620px) 100vw, 620px\" \/><\/a><\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_SobelEdgeDetection_DepthAndNormal.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-932\" title=\"PK_SobelEdgeDetection_DepthAndNormal\" src=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_SobelEdgeDetection_DepthAndNormal.png\" alt=\"\" width=\"649\" height=\"428\" \/><\/a><\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_SobelEdgeDetection_DepthAndNormal2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-933\" title=\"PK_SobelEdgeDetection_DepthAndNormal2\" src=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_SobelEdgeDetection_DepthAndNormal2.png\" alt=\"\" width=\"638\" height=\"428\" srcset=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_SobelEdgeDetection_DepthAndNormal2.png 967w, http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_SobelEdgeDetection_DepthAndNormal2-300x201.png 300w\" sizes=\"auto, (max-width: 638px) 100vw, 638px\" \/><\/a><\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_SobelEdgeDetection_DepthAndNormal3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-942\" title=\"PK_SobelEdgeDetection_DepthAndNormal3\" src=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_SobelEdgeDetection_DepthAndNormal3-1024x618.png\" alt=\"\" width=\"682\" height=\"411\" srcset=\"http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_SobelEdgeDetection_DepthAndNormal3-1024x618.png 1024w, http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_SobelEdgeDetection_DepthAndNormal3-300x181.png 300w, http:\/\/alexlemke.com\/wordpress\/wp-content\/uploads\/2012\/06\/PK_SobelEdgeDetection_DepthAndNormal3.png 1061w\" sizes=\"auto, (max-width: 682px) 100vw, 682px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>When it comes to shaders the Havok Vision Engine gives you a visual shader editor, similar to to UDK&#8217;s material editor and allows to you an actual HLSL shader editor. You can&#8217;t do post process effects with Vision&#8217;s visual shader editor&nbsp;and due to that I&#8217;ve been working on shaders for Plushy Knight that the artists [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[48,22,59,23],"tags":[56,24,35,25],"class_list":["post-928","post","type-post","status-publish","format-standard","hentry","category-game-engines","category-graphics","category-havok-vision-engine","category-shaders","tag-havok-vision-engine","tag-hlsl","tag-post-process","tag-shader"],"_links":{"self":[{"href":"http:\/\/alexlemke.com\/wordpress\/wp-json\/wp\/v2\/posts\/928","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/alexlemke.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/alexlemke.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/alexlemke.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/alexlemke.com\/wordpress\/wp-json\/wp\/v2\/comments?post=928"}],"version-history":[{"count":19,"href":"http:\/\/alexlemke.com\/wordpress\/wp-json\/wp\/v2\/posts\/928\/revisions"}],"predecessor-version":[{"id":1011,"href":"http:\/\/alexlemke.com\/wordpress\/wp-json\/wp\/v2\/posts\/928\/revisions\/1011"}],"wp:attachment":[{"href":"http:\/\/alexlemke.com\/wordpress\/wp-json\/wp\/v2\/media?parent=928"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/alexlemke.com\/wordpress\/wp-json\/wp\/v2\/categories?post=928"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/alexlemke.com\/wordpress\/wp-json\/wp\/v2\/tags?post=928"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}