{"id":526,"date":"2011-03-25T01:29:40","date_gmt":"2011-03-25T08:29:40","guid":{"rendered":"http:\/\/www.shadowdawngenesis.com\/devblog\/?p=526"},"modified":"2011-03-25T01:29:55","modified_gmt":"2011-03-25T08:29:55","slug":"shadows-and-reflections-and-forced-upgraded","status":"publish","type":"post","link":"https:\/\/www.shadowdawngenesis.com\/devblog\/?p=526","title":{"rendered":"Shadows and Reflections and forced upgrades"},"content":{"rendered":"<figure id=\"attachment_527\" aria-describedby=\"caption-attachment-527\" style=\"width: 600px\" class=\"wp-caption aligncenter\"><\/dt>\n<\/dl>\n<\/div>\n<div class=\"mceTemp mceIEcenter\">\n<dl id=\"attachment_528\" class=\"wp-caption aligncenter\" style=\"width: 610px;\">\n<dt class=\"wp-caption-dt\"><a href=\"http:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-77.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-528\" title=\"shadowdawn screenshot 77\" src=\"http:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-77-1024x576.jpg\" alt=\"Playing in the water with Arashi and Ket\" width=\"600\" height=\"337\" srcset=\"https:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-77-1024x576.jpg 1024w, https:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-77-300x168.jpg 300w, https:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-77.jpg 1280w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><figcaption id=\"caption-attachment-527\" class=\"wp-caption-text\">Playing in the water with Arashi and Ket<\/figcaption><\/figure>\n<div>So after a full week of HLSL and RenderTarget2D mastery, I have got my water effect to look just about where I want it to.  There&#8217;s two other effects I&#8217;d like to add, but attempting to add the first one &#8211; a secondary water ripple (is it a ripple?) when objects are placed in the water on top of the ripple from motion caused the FPS to drop a bit.  I think I&#8217;ve reached my limit of full screen draws for effects, so I&#8217;ll have to see if there&#8217;s a way to localize this sort of effect, but given the poor access to the backbuffer in XNA 4 (more on that later), there aren&#8217;t many options I can see.<\/div>\n<div>Also, as you might note in these screenshots, I&#8217;ve finally got rid of the generic circular shadows that had been in the game since practically day one.  Now frame-accurate shadows are cast on the ground, which certainly adds a bit more depth than I was expecting when I tossed it in there.  Since the water reflection code was very similar to shadows, I figured &#8220;why not?&#8221; and sure enough, I&#8217;m relatively happy with how it came out. \ud83d\ude42<\/div>\n<figure id=\"attachment_529\" aria-describedby=\"caption-attachment-529\" style=\"width: 600px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-78.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-529\" title=\"shadowdawn screenshot 78\" src=\"http:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-78-1024x576.jpg\" alt=\"A nighttime run is good once in awhile\" width=\"600\" height=\"337\" srcset=\"https:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-78-1024x576.jpg 1024w, https:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-78-300x168.jpg 300w, https:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-78.jpg 1280w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><figcaption id=\"caption-attachment-529\" class=\"wp-caption-text\">A nighttime run is good once in awhile<\/figcaption><\/figure>\n<div>Unfortunately, with the &#8220;Way Things Are&#8221;, I recently had to update the entire game from XNA 3.1 to XNA 4.0.  If there&#8217;s anything that gets me angsty it&#8217;s having to take days recoding things that already worked just because someone thinks the changes are for the better (here&#8217;s a hint, it&#8217;s really not).  I&#8217;m still not happy with the changes to blending&#8230; there are some blending behaviors that are impossible to reproduce from XNA 3.1 which changed a lot of subtle things, and as a graphics designer that kind of thing drives me up the wall.  The sad thing is the &#8220;quick fix&#8221; offered by the XNA team and others who have used XNA 4.0 doesn&#8217;t really fix the problems I&#8217;m talking about.  But enough whining, at least it&#8217;s done and over with.<\/div>\n<figure id=\"attachment_527-2\" aria-describedby=\"caption-attachment-527-2\" style=\"width: 600px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-76.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-527\" title=\"shadowdawn screenshot 76\" src=\"http:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-76-1024x576.jpg\" alt=\"Arashi and Ket at the riverside\" width=\"600\" height=\"337\" srcset=\"https:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-76-1024x576.jpg 1024w, https:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-76-300x168.jpg 300w, https:\/\/www.shadowdawngenesis.com\/devblog\/wp-content\/upLoads\/2011\/03\/shadowdawn-screenshot-76.jpg 1280w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><figcaption id=\"caption-attachment-527-2\" class=\"wp-caption-text\">Arashi and Ket at the riverside<\/figcaption><\/figure>\n<p>I know it seems a bit late in the development to finally get to a major graphics engine improvement like this, but in my opinion there&#8217;s no better time.\u00a0 Honing in the final look of the game means I&#8217;m finally getting to the real meat of production, with one more final addition &#8211; handling the Z-coordinate so Arashi can climb stairs and cross bridges &#8211; that should be the last time I need to tinker with such things.<\/p>\n<div name=\"googleone_share_1\" style=\"position:relative;z-index:5;float: right; margin-left: 10px;\"><g:plusone size=\"tall\" count=\"1\" href=\"https:\/\/www.shadowdawngenesis.com\/devblog\/?p=526\"><\/g:plusone><\/div>","protected":false},"excerpt":{"rendered":"<p>So after a full week of HLSL and RenderTarget2D mastery, I have got my water effect to look just about where I want it to.<a class=\"moretag\" href=\"https:\/\/www.shadowdawngenesis.com\/devblog\/?p=526\"> [&#8230;]<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[39,27,78,25,10,6,155,18,80,110,13,70,4,84,30,151,35,15,33,90,67,156],"class_list":["post-526","post","type-post","status-publish","format-standard","hentry","category-game-development","tag-2d-animation","tag-2d-tiles","tag-action-rpg","tag-arashi","tag-art","tag-game","tag-graphics-engine","tag-independent","tag-indie-game","tag-indie-rpg","tag-jrpg","tag-lighting","tag-shadowdawn","tag-shadowdawn-genesis","tag-shadows","tag-water","tag-weather","tag-xbox-360","tag-xbox-live","tag-xbox-live-indie-games","tag-xna","tag-xna-4-0"],"_links":{"self":[{"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=\/wp\/v2\/posts\/526","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=526"}],"version-history":[{"count":0,"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=\/wp\/v2\/posts\/526\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=526"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=526"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shadowdawngenesis.com\/devblog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=526"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}