<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>BigDaveDev - Honours &#187; Proposal</title>
	<atom:link href="http://bigdavedev.com/honours-blog/category/proposal/feed/" rel="self" type="application/rss+xml" />
	<link>http://bigdavedev.com/honours-blog</link>
	<description></description>
	<lastBuildDate>Thu, 12 Aug 2010 20:12:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Worksheet 4</title>
		<link>http://bigdavedev.com/honours-blog/2009/11/worksheet-4/</link>
		<comments>http://bigdavedev.com/honours-blog/2009/11/worksheet-4/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 11:53:05 +0000</pubDate>
		<dc:creator>Big Dave</dc:creator>
				<category><![CDATA[Proposal]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Worksheet]]></category>

		<guid isPermaLink="false">http://bigdavedev.com/honours-blog/?p=82</guid>
		<description><![CDATA[In this final worksheet we are asked to outline our presentation for the 23rd November.  The presentation is to be no more than 5 mins (including question time of 2 mins).  The following are points to talk about: Introduction: The focus of this dissertation is on atmospheric scattering as a post-processed effect.  Atmospheric scattering is [...]]]></description>
			<content:encoded><![CDATA[<p>In this final worksheet we are asked to outline our presentation for the 23rd November.  The presentation is to be no more than 5 mins (including question time of 2 mins).  The following are points to talk about:</p>
<p>Introduction:</p>
<p>The focus of this dissertation is on atmospheric scattering as a post-processed effect.  Atmospheric scattering is the reason that our sky has colour.  It describes the way that the light from the sun disperses when it comes through our atmosphere.  In terms of game development, it can add REAL depth cues to vast landscapes and increase the immersion that the player experiences.  Plus, it looks good!</p>
<p>CryEngine2 uses this effect very well and creates astoundingly beautiful environments :</p>
<p><img class="aligncenter size-full wp-image-88" title="ce2-sshot002" src="http://bigdavedev.com/honours-blog/wp-content/uploads/2009/11/ce2-sshot002.jpg" alt="ce2-sshot002" width="440" height="145" /></p>
<p>The image on the left is of Kualoa Ranch in Hawaii and the image on the right is the CryEngine2 replica.<span id="more-82"></span></p>
<p>In this implementation, though, the aerial perspective calculations used were not those defined by the atmospheric model they used.  Instead, they forced their own implementation to work.  Though it looks good, it is still not as good as it should be.  The aim of this honours project, then, is to use the same atmospheric model as CryEngine2 and to add the correct calculations for aerial perspective.</p>
<p>Issues:</p>
<p>The main issue surrounding this effect is that it is very expensive to calculate.  In the original implementations &#8211; see Nishita93 and Preetham99 &#8211; highly tessellated sky hemispheres were used.  This meant that for better representations of the sky, more vertices had to be used.  In a game, this would have a serious effect on performance.</p>
]]></content:encoded>
			<wfw:commentRss>http://bigdavedev.com/honours-blog/2009/11/worksheet-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Worksheet 3 &#8211; Draft Proposal</title>
		<link>http://bigdavedev.com/honours-blog/2009/10/worksheet-3-draft-proposal/</link>
		<comments>http://bigdavedev.com/honours-blog/2009/10/worksheet-3-draft-proposal/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 12:04:20 +0000</pubDate>
		<dc:creator>Big Dave</dc:creator>
				<category><![CDATA[Proposal]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Worksheet]]></category>

		<guid isPermaLink="false">http://bigdavedev.com/honours-blog/?p=73</guid>
		<description><![CDATA[Introduction Atmospheric effects in games are becoming increasingly more popular; however some implementations are less efficient than others, giving arguably better results – (Tomoyuki et al. 1993) vs. (Preetham et al. 1999) for example. These models can be performed on a per-pixel basis to provide very realistic looking skies in games. It was suggested in [...]]]></description>
			<content:encoded><![CDATA[<p><!--[endif]--></p>
<p class="style3" style="margin-left: 0in;"><strong><span style="text-decoration: underline;"><span style="font-family: Arial; letter-spacing: 0.4pt;" lang="EN-US">Introduction</span></span></strong></p>
<p class="MsoNormal">
<p class="MsoNormal" style="line-height: 150%;">Atmospheric effects in games are becoming increasingly more popular; however some implementations are less efficient than others, giving arguably better results – <!--[if supportFields]><span style="mso-element:field-begin" mce_style="mso-element:field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;Tomoyuki&lt;/Author&gt;&lt;Year&gt;1993&lt;/Year&gt;&lt;RecNum&gt;2&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;2&lt;/rec-number&gt;&lt;ref-type name=&quot;Conference Paper&quot;&gt;47&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;Tomoyuki, Nishita&lt;/author&gt;&lt;author&gt;Takao, Sirai&lt;/author&gt;&lt;author&gt;Katsumi, Tadamura&lt;/author&gt;&lt;author&gt;Eihachiro, Nakamae&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;Display of the earth taking into account atmospheric scattering&lt;/title&gt;&lt;secondary-title&gt;Proceedings of the 20th annual conference on Computer graphics and interactive techniques&lt;/secondary-title&gt;&lt;/titles&gt;&lt;dates&gt;&lt;year&gt;1993&lt;/year&gt;&lt;/dates&gt;&lt;pub-location&gt;Anaheim, CA&lt;/pub-location&gt;&lt;publisher&gt;ACM&lt;/publisher&gt;&lt;urls&gt;&lt;/urls&gt;&lt;electronic-resource-num&gt;http://doi.acm.org/10.1145/166117.166140&lt;/electronic-resource-num&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span><![endif]-->(Tomoyuki et al. 1993)<!--[if supportFields]><span style="mso-element:field-end" mce_style="mso-element:field-end"></span><![endif]--> vs. <!--[if supportFields]><span style="mso-element:field-begin" mce_style="mso-element:field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;Preetham&lt;/Author&gt;&lt;Year&gt;1999&lt;/Year&gt;&lt;RecNum&gt;4&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;4&lt;/rec-number&gt;&lt;ref-type name=&quot;Conference Paper&quot;&gt;47&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;A. J. Preetham&lt;/author&gt;&lt;author&gt;Peter, Shirley&lt;/author&gt;&lt;author&gt;Brian, Smits&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;A practical analytic model for daylight&lt;/title&gt;&lt;secondary-title&gt;Proceedings of the 26th annual conference on Computer graphics and interactive techniques&lt;/secondary-title&gt;&lt;/titles&gt;&lt;dates&gt;&lt;year&gt;1999&lt;/year&gt;&lt;/dates&gt;&lt;publisher&gt;ACM Press/Addison-Wesley Publishing Co.&lt;/publisher&gt;&lt;urls&gt;&lt;/urls&gt;&lt;electronic-resource-num&gt;http://doi.acm.org/10.1145/311535.311545&lt;/electronic-resource-num&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span><![endif]-->(Preetham et al. 1999)<!--[if supportFields]><span style="mso-element:field-end" mce_style="mso-element:field-end"></span><![endif]--> for example.<span> </span>These models can be performed on a per-pixel basis to provide very realistic looking skies in games. <span> </span>It was suggested in an e-mail discussion with Damianno Iannetta of Rare on 7<sup>th</sup> October 2009 that this project should steer itself toward the model proposed in <!--[if supportFields]><span style="mso-element:field-begin" mce_style="mso-element:field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;Tomoyuki&lt;/Author&gt;&lt;Year&gt;1993&lt;/Year&gt;&lt;RecNum&gt;2&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;2&lt;/rec-number&gt;&lt;ref-type name=&quot;Conference Paper&quot;&gt;47&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;Tomoyuki, Nishita&lt;/author&gt;&lt;author&gt;Takao, Sirai&lt;/author&gt;&lt;author&gt;Katsumi, Tadamura&lt;/author&gt;&lt;author&gt;Eihachiro, Nakamae&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;Display of the earth taking into account atmospheric scattering&lt;/title&gt;&lt;secondary-title&gt;Proceedings of the 20th annual conference on Computer graphics and interactive techniques&lt;/secondary-title&gt;&lt;/titles&gt;&lt;dates&gt;&lt;year&gt;1993&lt;/year&gt;&lt;/dates&gt;&lt;pub-location&gt;Anaheim, CA&lt;/pub-location&gt;&lt;publisher&gt;ACM&lt;/publisher&gt;&lt;urls&gt;&lt;/urls&gt;&lt;electronic-resource-num&gt;http://doi.acm.org/10.1145/166117.166140&lt;/electronic-resource-num&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span><![endif]-->(Tomoyuki et al. 1993)<!--[if supportFields]><span style="mso-element:field-end" mce_style="mso-element:field-end"></span><![endif]--> and as such, this dissertation will be focusing on an efficient post-processed <span> </span>implementation of this technique for PC and/or PS3, making the most use of hardware – i.e. GPGPU and Cell for PC and PS3 respectively.</p>
<p class="MsoNormal" style="line-height: 150%;"><span id="more-73"></span></p>
<p class="MsoNormal">
<p class="MsoNormal" style="margin-right: 1.2in;"><strong><span style="text-decoration: underline;"><span style="font-family: Arial; letter-spacing: 0.4pt;" lang="EN-US">Motivation</span></span></strong></p>
<p class="MsoNormal">
<p class="MsoNormal" style="line-height: 150%;">“Modelling surfaces with polygons is often the most straightforward way to approach the problem of portraying objects in a scene.<span> </span>Polygons are good only up to a point, however.<span> </span>Image-based rendering (IBR) has become a paradigm of its own.” As written by <!--[if supportFields]><span style="mso-element:field-begin" mce_style="mso-element:field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;Möller&lt;/Author&gt;&lt;Year&gt;2008&lt;/Year&gt;&lt;RecNum&gt;14&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;14&lt;/rec-number&gt;&lt;ref-type name=&quot;Book&quot;&gt;6&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;Möller, Tomas,&lt;/author&gt;&lt;author&gt;Haines, Eric,&lt;/author&gt;&lt;author&gt;Hoffman, Naty.&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;Real-time rendering&lt;/title&gt;&lt;/titles&gt;&lt;pages&gt;xviii, 1027&lt;/pages&gt;&lt;edition&gt;3rd&lt;/edition&gt;&lt;keywords&gt;&lt;keyword&gt;Computer graphics.&lt;/keyword&gt;&lt;keyword&gt;Real-time data processing.&lt;/keyword&gt;&lt;/keywords&gt;&lt;dates&gt;&lt;year&gt;2008&lt;/year&gt;&lt;/dates&gt;&lt;pub-location&gt;Wellesley, Mass.&lt;/pub-location&gt;&lt;publisher&gt;A.K. Peters&lt;/publisher&gt;&lt;isbn&gt;9781568814247&amp;#xD;1568814240&lt;/isbn&gt;&lt;accession-num&gt;109847&lt;/accession-num&gt;&lt;call-num&gt;T385 .M635 2008&amp;#xD;006.6 MOL&lt;/call-num&gt;&lt;urls&gt;&lt;/urls&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span><![endif]-->(Möller et al. 2008)<!--[if supportFields]><span style="mso-element:field-end" mce_style="mso-element:field-end"></span><![endif]--> in their book <em>Real-Time Rendering </em>begins to explain the importance of post-processing a 3D scene in a computer game.<span> </span>Things like clouds and fur are too complex to be represented as models.<span> </span>By creating images of the scene, these objects can be added as a post-process at a potentially lower cost – dependent on screen resolution and technique used – to look more realistic.</p>
<p class="MsoNormal" style="line-height: 150%;">
<p class="MsoNormal" style="line-height: 150%;">In a similar manner, this technique can be used to create realistic renderings of the sky between sunrise and sunset as demonstrated by <!--[if supportFields]><span style="mso-element:field-begin" mce_style="mso-element:field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;Carsten&lt;/Author&gt;&lt;Year&gt;2006&lt;/Year&gt;&lt;RecNum&gt;3&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;3&lt;/rec-number&gt;&lt;ref-type name=&quot;Conference Paper&quot;&gt;47&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;Carsten Wenzel&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;Real-time atmospheric effects in games&lt;/title&gt;&lt;secondary-title&gt;ACM SIGGRAPH 2006 Courses&lt;/secondary-title&gt;&lt;/titles&gt;&lt;dates&gt;&lt;year&gt;2006&lt;/year&gt;&lt;/dates&gt;&lt;pub-location&gt;Boston, Massachusetts&lt;/pub-location&gt;&lt;publisher&gt;ACM&lt;/publisher&gt;&lt;urls&gt;&lt;/urls&gt;&lt;electronic-resource-num&gt;http://doi.acm.org/10.1145/1185657.1185831&lt;/electronic-resource-num&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span><![endif]-->(Wenzel 2006)<!--[if supportFields]><span style="mso-element:field-end" mce_style="mso-element:field-end"></span><![endif]--> using CryEngine2 and (Tomoyuki et al. 1993).<span> </span>The atmospheric effect put forward for use in CryEngine2, however, does not use the aerial perspective model put forward by <!--[if supportFields]><span style="mso-element: field-begin" mce_style="mso-element: field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;Tomoyuki&lt;/Author&gt;&lt;Year&gt;1993&lt;/Year&gt;&lt;RecNum&gt;2&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;2&lt;/rec-number&gt;&lt;ref-type name=&quot;Conference Paper&quot;&gt;47&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;Tomoyuki, Nishita&lt;/author&gt;&lt;author&gt;Takao, Sirai&lt;/author&gt;&lt;author&gt;Katsumi, Tadamura&lt;/author&gt;&lt;author&gt;Eihachiro, Nakamae&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;Display of the earth taking into account atmospheric scattering&lt;/title&gt;&lt;secondary-title&gt;Proceedings of the 20th annual conference on Computer graphics and interactive techniques&lt;/secondary-title&gt;&lt;/titles&gt;&lt;dates&gt;&lt;year&gt;1993&lt;/year&gt;&lt;/dates&gt;&lt;pub-location&gt;Anaheim, CA&lt;/pub-location&gt;&lt;publisher&gt;ACM&lt;/publisher&gt;&lt;urls&gt;&lt;/urls&gt;&lt;electronic-resource-num&gt;http://doi.acm.org/10.1145/166117.166140&lt;/electronic-resource-num&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span><![endif]-->(Tomoyuki et al. 1993)<!--[if supportFields]><span style="mso-element:field-end" mce_style="mso-element:field-end"></span><![endif]-->, only the scattering model is used.<span> </span>It is therefore desirable to complete this technique by adding the correct method for aerial perspective.<span> </span></p>
<p class="MsoNormal">
<p class="MsoNormal" style="line-height: 150%;">There are numerous benefits to using accurate models for atmospheric conditions.<span> </span>Firstly, when a user begins to play a game, the visuals presented are one of the first things that will be noticed.<span> </span>Certainly, introducing magnificent effects will only aid in increasing the immersion experienced by the player – if supported by sufficient gameplay. <span> </span>According to a recent survey conducted by Steam last month 65.38% of gamers using Steam own an NVIDIA graphics cards and a further 27.26% own an ATI GPU <!--[if supportFields]><span style="mso-element: field-begin" mce_style="mso-element: field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;Steam&lt;/Author&gt;&lt;Year&gt;2009&lt;/Year&gt;&lt;RecNum&gt;17&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;17&lt;/rec-number&gt;&lt;ref-type name=&quot;Internet (Web Page(s))&quot;&gt;25&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;Steam&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;Steam Hardware Survey&lt;/title&gt;&lt;/titles&gt;&lt;dates&gt;&lt;year&gt;2009&lt;/year&gt;&lt;pub-dates&gt;&lt;date&gt;22 October 2009&lt;/date&gt;&lt;/pub-dates&gt;&lt;/dates&gt;&lt;publisher&gt;http://steampowered.com&lt;/publisher&gt;&lt;urls&gt;&lt;related-urls&gt;&lt;url&gt;http://store.steampowered.com/hwsurvey/&lt;/url&gt;&lt;/related-urls&gt;&lt;/urls&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span><![endif]-->(Steam 2009)<!--[if supportFields]><span style="mso-element:field-end" mce_style="mso-element:field-end"></span><![endif]--> .<span> </span>This implies that the majority of PC gamers at least are expecting to buy games with high graphics capabilities.<span> </span></p>
<p class="MsoNormal" style="line-height: 150%;">
<p class="MsoNormal" style="line-height: 150%;">Secondly, great looking images can help with marketing.<span> </span>Again, when screenshots are released to the public it is important that the game looks appealing and carefully selected graphical effects can enhance a game’s reputation.<span> </span>Another example of how accurate models for atmospheric conditions can enhance immersion is in the simulation genre which includes games such as the Gran Turismo series by Polyphony Digital where the aim is to create the most visually stunning products possible as well as with the most realistic physics.<span> </span>This particular series includes some races that can last several hours and having a sky change over time can help solidify the feeling of time passing in game.</p>
<p class="MsoNormal" style="line-height: 150%;">
<p class="MsoNormal" style="line-height: 150%;">The problem with creating the most accurate model, however, is the effect it can have on gameplay.<span> </span>If it is not coded carefully enough then it could ruin the illusion of being in another world.<span> </span>Other things that can affect performance are the hardware of the player, especially for a PC based product where the variations in player hardware is almost infinite.<span> </span>Hardware such as the NVIDIA G80, G92 and GT2xx series graphics cards are ideal for these graphically intensive games with plenty of statistics supporting especially the latter series in iBXT Labs “<em><span style="color: black;">NVIDIA GeForce GT2XX Reference</span></em><span style="font-size: 11.5pt; line-height: 150%; font-family: Arial; color: black;">” </span><span style="color: black;">which goes on to explain technologies such as CUDA and PhysX and the acceleration they provide </span><!--[if supportFields]><span style="color:black" mce_style="color:black"><span style="mso-element:field-begin" mce_style="mso-element:field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;Berillo&lt;/Author&gt;&lt;Year&gt;2009&lt;/Year&gt;&lt;RecNum&gt;16&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;16&lt;/rec-number&gt;&lt;ref-type name=&quot;Internet (Web Page(s))&quot;&gt;25&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;Alexey Berillo&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;NVIDIA GeForce GT2XX Reference&lt;/title&gt;&lt;/titles&gt;&lt;dates&gt;&lt;year&gt;2009&lt;/year&gt;&lt;pub-dates&gt;&lt;date&gt;20 October 2009&lt;/date&gt;&lt;/pub-dates&gt;&lt;/dates&gt;&lt;publisher&gt;iXBTLabs.com&lt;/publisher&gt;&lt;urls&gt;&lt;related-urls&gt;&lt;url&gt;http://ixbtlabs.com/articles3/video/spravka-gt2xx-p2.html&lt;/url&gt;&lt;/related-urls&gt;&lt;/urls&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span></span><![endif]--><span style="color: black;">(Berillo 2009)</span><!--[if supportFields]><span style="color:black" mce_style="color:black"><span style="mso-element:field-end" mce_style="mso-element:field-end"></span></span><![endif]--><span style="color: black;">.<span> </span></span></p>
<p class="MsoNormal" style="line-height: 150%;">
<p class="MsoNormal" style="line-height: 150%;">This brings us to the age old compromise between accuracy and efficiency.<span> </span>This dissertation will strive to get the very most accuracy with the least impact on efficiency.<span> </span>It is hoped that a full implementation of <!--[if supportFields]><span style="mso-element: field-begin" mce_style="mso-element: field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;Tomoyuki&lt;/Author&gt;&lt;Year&gt;1993&lt;/Year&gt;&lt;RecNum&gt;2&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;2&lt;/rec-number&gt;&lt;ref-type name=&quot;Conference Paper&quot;&gt;47&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;Tomoyuki, Nishita&lt;/author&gt;&lt;author&gt;Takao, Sirai&lt;/author&gt;&lt;author&gt;Katsumi, Tadamura&lt;/author&gt;&lt;author&gt;Eihachiro, Nakamae&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;Display of the earth taking into account atmospheric scattering&lt;/title&gt;&lt;secondary-title&gt;Proceedings of the 20th annual conference on Computer graphics and interactive techniques&lt;/secondary-title&gt;&lt;/titles&gt;&lt;dates&gt;&lt;year&gt;1993&lt;/year&gt;&lt;/dates&gt;&lt;pub-location&gt;Anaheim, CA&lt;/pub-location&gt;&lt;publisher&gt;ACM&lt;/publisher&gt;&lt;urls&gt;&lt;/urls&gt;&lt;electronic-resource-num&gt;http://doi.acm.org/10.1145/166117.166140&lt;/electronic-resource-num&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span><![endif]-->(Tomoyuki et al. 1993)<!--[if supportFields]><span style="mso-element:field-end" mce_style="mso-element:field-end"></span><![endif]--> can be achieved without compromise.</p>
<p class="MsoNormal">
<p class="MsoNormal"><strong><span style="text-decoration: underline;"><span style="font-family: Arial; letter-spacing: 0.4pt;" lang="EN-US">Research Question</span></span></strong></p>
<p class="MsoNormal"><span style="font-family: Arial; letter-spacing: 0.4pt;" lang="EN-US"> </span></p>
<p class="MsoNormal"><span style="letter-spacing: 0.4pt;" lang="EN-US">The research question proposed, then, is:</span></p>
<p class="MsoNormal"><span style="font-family: Arial; letter-spacing: 0.4pt;" lang="EN-US"> </span></p>
<p class="MsoNormal" style="line-height: 150%;">Can atmospheric scattering be implemented efficiently in computer games, with minimal compromise in accuracy?</p>
<p class="MsoNormal"><span style="font-family: Arial; letter-spacing: 0.4pt;" lang="EN-US"> </span></p>
<p class="style3" style="margin-left: 0in;"><strong><span style="text-decoration: underline;"><span style="font-family: Arial; letter-spacing: 0.4pt;" lang="EN-US"><span style="text-decoration: none;"> </span></span></span></strong></p>
<p class="style3" style="margin-left: 0in;"><strong><span style="text-decoration: underline;"><span style="font-family: Arial; letter-spacing: 0.4pt;" lang="EN-US">Addressing the question</span></span></strong></p>
<p class="MsoNormal">
<p class="MsoNormal" style="line-height: 150%;">The main issue being addressed is achieving maximum accuracy without affecting the performance of the video game.<span> </span>It has been seen in various white papers that performance is an issue with regard to atmospheric scattering.<span> </span>According to O’Neil in GPU Gems 2, using the methods described in <!--[if supportFields]><span style="mso-element:field-begin" mce_style="mso-element:field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;Tomoyuki&lt;/Author&gt;&lt;Year&gt;1993&lt;/Year&gt;&lt;RecNum&gt;2&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;2&lt;/rec-number&gt;&lt;ref-type name=&quot;Conference Paper&quot;&gt;47&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;Tomoyuki, Nishita&lt;/author&gt;&lt;author&gt;Takao, Sirai&lt;/author&gt;&lt;author&gt;Katsumi, Tadamura&lt;/author&gt;&lt;author&gt;Eihachiro, Nakamae&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;Display of the earth taking into account atmospheric scattering&lt;/title&gt;&lt;secondary-title&gt;Proceedings of the 20th annual conference on Computer graphics and interactive techniques&lt;/secondary-title&gt;&lt;/titles&gt;&lt;dates&gt;&lt;year&gt;1993&lt;/year&gt;&lt;/dates&gt;&lt;pub-location&gt;Anaheim, CA&lt;/pub-location&gt;&lt;publisher&gt;ACM&lt;/publisher&gt;&lt;urls&gt;&lt;/urls&gt;&lt;electronic-resource-num&gt;http://doi.acm.org/10.1145/166117.166140&lt;/electronic-resource-num&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span><![endif]-->(Tomoyuki et al. 1993)<!--[if supportFields]><span style="mso-element:field-end" mce_style="mso-element:field-end"></span><![endif]--> would require upto 300 computations per vertex using 5 samples for each scattering equation. <!--[if supportFields]><span style="mso-element:field-begin" mce_style="mso-element:field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;Pharr&lt;/Author&gt;&lt;Year&gt;2005&lt;/Year&gt;&lt;RecNum&gt;1&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;1&lt;/rec-number&gt;&lt;ref-type name=&quot;Book&quot;&gt;6&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;Pharr, Matt.&lt;/author&gt;&lt;author&gt;Fernando, Randima.&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;GPU gems 2 : programming techniques for high-performance graphics and general-purpose computation&lt;/title&gt;&lt;/titles&gt;&lt;pages&gt;253 &#8211; 269&lt;/pages&gt;&lt;keywords&gt;&lt;keyword&gt;Computer graphics.&lt;/keyword&gt;&lt;keyword&gt;Real-time programming.&lt;/keyword&gt;&lt;/keywords&gt;&lt;dates&gt;&lt;year&gt;2005&lt;/year&gt;&lt;/dates&gt;&lt;pub-location&gt;London&lt;/pub-location&gt;&lt;publisher&gt;Addison-Wesley&lt;/publisher&gt;&lt;isbn&gt;0321335597 (hardcover alk. paper)&lt;/isbn&gt;&lt;call-num&gt;T385 .G688 2005&amp;#xD;006.66 G&lt;/call-num&gt;&lt;urls&gt;&lt;/urls&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span><![endif]-->(Pharr and Fernando 2005)<!--[if supportFields]><span style="mso-element:field-end" mce_style="mso-element:field-end"></span><![endif]-->.<span> </span>It is obvious that using more samples for greater accuracy can greatly increase the number of computations.<span> </span>This project will be calculating the atmospheric model on a per-pixel basis as a post-process to eliminate the need for highly tessellated sky domes, which can help reduce computations further if care is taken.<span> </span>So in the case of the previous example, there would be 300 computations per-pixel.</p>
<p class="MsoNormal" style="line-height: 150%;">
<p class="MsoNormal" style="line-height: 150%;">The basic principal of post-processing is to render the entire scene to an off screen buffer and then apply this as a texture to a quad the size of the screen.<span> </span>An issue with performing atmospheric scattering as a post-process is that all the per-pixel calculations are performed in 2D space.<span> </span>This means there is no depth associated with each pixel and depth is required for attenuation of distant objects for correct aerial perspective.<span> </span>The work around for this is to create another texture that stores just the depth – the same technique used for shadow mapping.<span> </span>This texture can then be sampled at the same time as the scene texture to give distance.<span> </span>(i.e. pixel(ij) = depth(ij))</p>
<p class="MsoNormal" style="line-height: 150%;">
<p class="MsoNormal" style="line-height: 150%;">The final problem associated with this technique is of course efficiency.<span> </span>While it is highly accurate, this comes at the cost of performance, which in games is important.<span> </span>Some options exist for increasing performance without sacrificing accuracy.<span> </span>Firstly, a number of constants can be pre-computed as they are never likely to change during run-time.<span> </span>Another option is multi-threading – a very important concept in computing – meaning that several parts can be computed at any one time in parallel.</p>
<p class="MsoNormal" style="line-height: 150%;">
<p class="MsoNormal" style="line-height: 150%;">One such example of this is GPGPU or General Purpose GPU.<span> </span>GPGPU is an interesting development in graphics hardware as it allows for general purpose computation on the GPU directly, meaning that physics solvers, as an example, could be computed off the CPU either in part or whole, leaving the CPU free to handle other tasks, such as AI, gameplay, audio etc.<span> </span>It should be noted that the most appropriate use of GPGPU is with tasks that lend themselves well to parallelisation.<span> </span>Such tasks could be spread over roughly 12,288 threads on an NVIDIA 8800GTX GPU, implying that there could be a potentially huge performance increase.<span> </span><!--[if supportFields]><span style="mso-element:field-begin" mce_style="mso-element:field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.CITE &lt;EndNote&gt;&lt;Cite&gt;&lt;Author&gt;David Luebke&lt;/Author&gt;&lt;Year&gt;2008&lt;/Year&gt;&lt;RecNum&gt;7&lt;/RecNum&gt;&lt;record&gt;&lt;rec-number&gt;7&lt;/rec-number&gt;&lt;ref-type name=&quot;Internet (Web Page(s))&quot;&gt;25&lt;/ref-type&gt;&lt;contributors&gt;&lt;authors&gt;&lt;author&gt;David Luebke, Michael Garland, John Owens, Kevin Skadron&lt;/author&gt;&lt;/authors&gt;&lt;/contributors&gt;&lt;titles&gt;&lt;title&gt;GPU Computing: The Democratization of Parallel Computing&lt;/title&gt;&lt;/titles&gt;&lt;dates&gt;&lt;year&gt;2008&lt;/year&gt;&lt;pub-dates&gt;&lt;date&gt;19 October 2009&lt;/date&gt;&lt;/pub-dates&gt;&lt;/dates&gt;&lt;publisher&gt;Architectural Support for Programming Languages and Operating Systems&lt;/publisher&gt;&lt;urls&gt;&lt;related-urls&gt;&lt;url&gt;http://gpgpu.org/static/asplos2008/ASPLOS08-1-intro-overview.pdf&lt;/url&gt;&lt;/related-urls&gt;&lt;pdf-urls&gt;&lt;url&gt;http://gpgpu.org/static/asplos2008/ASPLOS08-1-intro-overview.pdf&lt;/url&gt;&lt;/pdf-urls&gt;&lt;/urls&gt;&lt;/record&gt;&lt;/Cite&gt;&lt;/EndNote&gt;<span style="mso-element:field-separator" mce_style="mso-element:field-separator"></span><![endif]-->(David Luebke 2008)<!--[if supportFields]><span style="mso-element:field-end" mce_style="mso-element:field-end"></span><![endif]--><span> </span>This means that potentially, the screen can be split into regions to be worked on by different threads on the GPU, potentially leading to an increase in performance.</p>
<p class="MsoNormal" style="line-height: 150%;">
<p class="MsoNormal" style="line-height: 150%;">On the PS3 there exist 7 programmable cores as well as a 256MB NVIDIA GPU, all of which can be optimised to run this post-processed effect.<span> </span>For example, an SPU could be used to calculate Rayleigh and Mie coefficients for scattering and then the GPU would only have to apply these numbers to each pixel in post-processing the scene.<span> </span>This could also lead to an increase in speed and it this technique that will be researched further for the purposes of the dissertation.</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="style3" style="margin-left: 0in;"><strong><span style="text-decoration: underline;"><span style="font-family: Arial; letter-spacing: 0.4pt;" lang="EN-US">What equipment/resources will be needed/used</span></span></strong></p>
<p class="MsoNormal">
<p class="MsoNormal" style="line-height: 150%;">Access to the SIGGRAPH database for reference material is required as is a PS3 SDK.<span> </span>Some form of debugger for the PS3 would be desirable for speeding up the bug fixing process.<span> </span>There is little need for 3D models or high quality textures, as the effect is only applied to a texture and generates all required imagery for the effect to look realistic.</p>
<p class="MsoNormal">
<p class="MsoNormal"><strong><span style="text-decoration: underline;"><span style="font-family: Arial;">Reference</span></span></strong></p>
<p class="MsoNormal">
<p class="MsoNormal"><span style="font-family: Arial;"><span> </span></span><!--[if supportFields]><span style="font-family:Arial" mce_style="font-family:Arial"><span style="mso-element:field-begin" mce_style="mso-element:field-begin"></span><span style="mso-spacerun:yes" mce_style="mso-spacerun:yes"> </span>ADDIN EN.REFLIST <span style="mso-element: field-separator" mce_style="mso-element: field-separator"></span></span><![endif]-->Berillo, A. 2009. <em>NVIDIA GeForce GT2XX Reference</em>. [online]. iXBTLabs.com. Available from: <a href="http://ixbtlabs.com/articles3/video/spravka-gt2xx-p2.html">http://ixbtlabs.com/articles3/video/spravka-gt2xx-p2.html</a> [Accessed 20 October 2009].</p>
<p class="MsoNormal">
<p class="MsoNormal">David Luebke, M. G., John Owens, Kevin Skadron. 2008. <em>GPU Computing: The Democratization of Parallel Computing</em>. [online]. Architectural Support for Programming Languages and Operating Systems. Available from: <a href="http://gpgpu.org/static/asplos2008/ASPLOS08-1-intro-overview.pdf">http://gpgpu.org/static/asplos2008/ASPLOS08-1-intro-overview.pdf</a> [Accessed 19 October 2009].</p>
<p class="MsoNormal">
<p class="MsoNormal">Möller, T., Haines, E. and Hoffman, N. 2008. <em>Real-time rendering</em>. 3rd ed. Wellesley, Mass.: A.K. Peters</p>
<p class="MsoNormal">
<p class="MsoNormal">Pharr, M. and Fernando, R. 2005. <em>GPU gems 2 : programming techniques for high-performance graphics and general-purpose computation</em>. London: Addison-Wesley</p>
<p class="MsoNormal">
<p class="MsoNormal">Preetham, A. J., Peter, S. and Brian, S. 1999 In <em>Proceedings of the 26th annual conference on Computer graphics and interactive techniques</em>ACM Press/Addison-Wesley Publishing Co.</p>
<p class="MsoNormal">
<p class="MsoNormal">Steam. 2009. <em>Steam Hardware Survey</em>. [online]. <a href="http://steampowered.com/">http://steampowered.com</a>. Available from: <a href="http://store.steampowered.com/hwsurvey/">http://store.steampowered.com/hwsurvey/</a> [Accessed 22 October 2009].</p>
<p class="MsoNormal">
<p class="MsoNormal">Tomoyuki, N., et al. 1993 In <em>Proceedings of the 20th annual conference on Computer graphics and interactive techniques</em>ACM, Anaheim, CA.</p>
<p class="MsoNormal">
<p class="MsoNormal">Wenzel, C. 2006 In <em>ACM SIGGRAPH 2006 Courses</em>ACM, Boston, Massachusetts.</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal" style="margin-left: 0.5in; text-indent: -0.5in;"><!--[if supportFields]><span style="font-family:Arial" mce_style="font-family:Arial"><span style="mso-element:field-end" mce_style="mso-element:field-end"></span></span><![endif]--></p>
<p class="MsoNormal" style="margin-left: 0.5in; text-indent: -0.5in;"><span style="font-family: Arial;"> </span></p>
]]></content:encoded>
			<wfw:commentRss>http://bigdavedev.com/honours-blog/2009/10/worksheet-3-draft-proposal/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Worksheet 2</title>
		<link>http://bigdavedev.com/honours-blog/2009/10/worksheet-2/</link>
		<comments>http://bigdavedev.com/honours-blog/2009/10/worksheet-2/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 15:23:25 +0000</pubDate>
		<dc:creator>Big Dave</dc:creator>
				<category><![CDATA[Proposal]]></category>
		<category><![CDATA[Reading]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Worksheet]]></category>

		<guid isPermaLink="false">http://bigdavedev.com/honours-blog/?p=65</guid>
		<description><![CDATA[This weeks task is to actually arrive at a research question &#8211; by no means an easy task! I have formulated several possible questions thus far and all are related to the topic of atmospheric scattering, as this is my main topic of interest.  I shall list them below: Can atmospheric scattering be used accurately [...]]]></description>
			<content:encoded><![CDATA[<p>This weeks task is to actually arrive at a research question &#8211; by no means an easy task!</p>
<p>I have formulated several possible questions thus far and all are related to the topic of atmospheric scattering, as this is my main topic of interest.  I shall list them below:</p>
<ul>
<li>Can atmospheric scattering be used accurately in computer games?</li>
<li>Is it feasible to include atmospheric scattering in computer games?</li>
<li>Can post-processed effects &#8211; such as atmospheric scattering &#8211; be used in computer games without hindering performance?</li>
<li>Can post-processed effects &#8211; such as atmospheric scattering &#8211; be used in computer games without negatively affecting overall performance?</li>
<li>Can atmospheric scattering be implemented efficiently in computer games?</li>
<li>Can atmospheric scattering be used as an effective depth cue in computer games?</li>
<li>Can atmospheric scattering be used as an effective enhancement to traditional global illumination models?</li>
</ul>
<p>While the last one holds the most interest for me, I do not think there is enough time to play with this question as it would involve the use of radiosity, ray tracing or photon mapping.  With that in mind, I feel that the question that will allow me to explore atmospheric scattering and post-processing would be the third-last question:</p>
<p>&#8220;Can atmospheric scattering be implemented efficiently in computer games?&#8221;</p>
<p>With this particular question, the suggested scope should be small enough to investigate GPGPU techniques and post-processing as well as provide me the choice of using either Preetham or Nishitas&#8217; method for the atmospheric scattering model.</p>
<p>It was also brought to my attention earlier today that using Nishitas&#8217; model would allow an appropriate use of GPGPU techniques as there are lots of variables to compute over several frames.</p>
<p>On a final note then, the research question I am putting forward is:</p>
<p>&#8220;Can atmospheric scattering be implemented efficiently in computer games?&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://bigdavedev.com/honours-blog/2009/10/worksheet-2/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Worksheet 1</title>
		<link>http://bigdavedev.com/honours-blog/2009/09/worksheet-1/</link>
		<comments>http://bigdavedev.com/honours-blog/2009/09/worksheet-1/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 17:10:44 +0000</pubDate>
		<dc:creator>Big Dave</dc:creator>
				<category><![CDATA[Proposal]]></category>
		<category><![CDATA[Reading]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Worksheet]]></category>

		<guid isPermaLink="false">http://bigdavedev.com/honours-blog/?p=33</guid>
		<description><![CDATA[We were issued a task in class today to complete a worksheet with the aim of guiding us towards a research topic and ultimately a research question. First I must state the topic of interest. I have a keen interest in landscape photography and lighting composure is a key aspect in getting the perfect photograph.  [...]]]></description>
			<content:encoded><![CDATA[<p>We were issued a task in class today to complete a worksheet with the aim of guiding us towards a research topic and ultimately a research question.</p>
<p>First I must state the topic of interest.</p>
<p>I have a keen interest in landscape photography and lighting composure is a key aspect in getting the perfect photograph.  In particular, sunset and sunrise are very pleasant effects.  I am interested in mimicking these atmospheric conditions in an interactive environment using post-processing techniques.</p>
<p>Currently the issues surrounding these post-processed effects is efficiency in real-time.  Various post-processing effects are used in Adobe Photoshop and The GIMP, where time isn&#8217;t really of the essence.  With atmospheric effects &#8211; such as scattering &#8211; game programmers and artists have traditionally used rough approximations<img class="alignright size-full wp-image-43" title="preetham99" src="http://bigdavedev.com/honours-blog/wp-content/uploads/2009/09/preetham99.jpg" alt="preetham99" width="202" height="152" /> due to<img src="file:///C:/DOCUME~1/0402040/LOCALS~1/Temp/moz-screenshot.png" alt="" /> computational expense at the hands of mathematical complexity, leading to less believable &#8211; and thus less immersive &#8211; environments.  However, these effects are becoming more popular now due to better hardware.</p>
<p>As stated I intend to mimic atmospheric scattering effects by applying it as a post-processed effect.  This principally means taking a screenshot of the framebuffer and attaching it to the depth buffer and applying this texture to a quad the size of the screen.  From here it is passed straight to a pixel/fragment shader where the effects are applied.  I will primarily stick to the methods outlined by Preetham in his 1999 SIGGRAPH paper  &#8220;A Practical Analytic Model for Daylight&#8221; as the techniques he outlines have remained virtually unchanged.</p>
<p>There are two ways to implement these techniques:</p>
<ol>
<li>The traditional CPU and GPU combination</li>
<li>The new GPGPU &#8211; General Purpose GPU &#8211; methods</li>
</ol>
<p>In this project I will be looking into method 2 using NVIDIAs&#8217; CUDA technology.  Due to lack of access, I will not be able to create an implementation using AMD Stream as I do not have access to a required ATI card.  I would be interested as well in creating a port of this project to a major console &#8211; time permitting &#8211; such as the PS3 or the XBox360.  However, I doubt there will be much time left over to try and make this port.</p>
<p>The aim of this honours project is to create a visual effect that can be used in games to create stunning and practical depth-cues for vast landscapes.</p>
]]></content:encoded>
			<wfw:commentRss>http://bigdavedev.com/honours-blog/2009/09/worksheet-1/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

