<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6278454322463720345</id><updated>2011-07-08T11:08:17.850+01:00</updated><title type='text'>CGT Honours Year Project Blog 2009/10</title><subtitle type='html'>Blog created to document progress of the Honours year project execution.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>14</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-7423776581956030105</id><published>2010-05-11T22:11:00.000+01:00</published><updated>2010-05-11T22:11:56.640+01:00</updated><title type='text'>May update!</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://jonathanchye.co.uk/wp-content/uploads/2010/05/SH-shadowed-light.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;How fast time has passed! I've been very busy the last month or so finalising and debugging the program itself. I've also working on my dissertation at the very moment.&lt;br /&gt;&lt;br /&gt;Happy to report that I have a program to show! After a lot of trying I've decided to ditch the idea of using shaders completely. I've tried using GLSL (which was very tricky for my intended purpose) and even Cg when GLSL didn't work. After asking around in the forums I've found out that the shader programs have limited ability to process data and texture calls.&lt;br /&gt;&lt;br /&gt;The problems were solved when I switched to using CPU only. I've re-structured the whole framework and it is now very simple to read and also make changes. This does come with the price of sacrificing performance as the code could be further optimised for that.&lt;br /&gt;&lt;br /&gt;Anyway, I've settled on a novel Spherical harmonic lighting and ray casting hybrid solution. I've managed to implement dynamic lighting, soft shadowing and inter-reflected on textured surfaces using this method. I admit that this solution is not (yet) 100% real time and some values are precalculated before runtime but I think that at an honours project level, this is a very good achievement and experience gained.&lt;br /&gt;&lt;br /&gt;Here are some screenshots of the program in action :&lt;br /&gt;&lt;br /&gt;SH lighting with shadows :&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://jonathanchye.co.uk/wp-content/uploads/2010/05/SH-shadowed-light.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://jonathanchye.co.uk/wp-content/uploads/2010/05/SH-shadowed-light.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;SH lighting with shadows and inter reflections:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://jonathanchye.co.uk/wp-content/uploads/2010/05/SH-shadowed-interreflected.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="301" src="http://jonathanchye.co.uk/wp-content/uploads/2010/05/SH-shadowed-interreflected.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The works! Sh lighting, soft shadows, inter reflections and fully textured with simple animated water:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://jonathanchye.co.uk/wp-content/uploads/2010/05/sh-textured-full.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="298" src="http://jonathanchye.co.uk/wp-content/uploads/2010/05/sh-textured-full.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I've also output some basic debugging informations such as ray samples and loading times through the console window:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://jonathanchye.co.uk/wp-content/uploads/2010/05/performance.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="187" src="http://jonathanchye.co.uk/wp-content/uploads/2010/05/performance.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;It's normally around 17 seconds on my computer but I have a lot of background applications open so I guess that slowed it down a little. Considering the code could be further optimised and also the number of samples this is considered good results.&lt;br /&gt;&lt;br /&gt;Right, now back to the dissertation!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-7423776581956030105?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/7423776581956030105/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2010/05/may-update.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/7423776581956030105'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/7423776581956030105'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2010/05/may-update.html' title='May update!'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-4188806212152107218</id><published>2010-03-22T17:40:00.000Z</published><updated>2010-03-22T17:40:11.096Z</updated><title type='text'>Progress update - 22nd March 2010</title><content type='html'>It's been a long while since my last update but progress is good so far. Due to time and resource contraints, I've decided to omit several features from the application and decide to focus my research on the GI aspect.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;What I have done:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;Framework&amp;nbsp;&lt;/i&gt; - Basically have the "finished" framework. Just some testing on the shaders&lt;/li&gt;&lt;li&gt;&lt;i&gt;Thesis writing - &lt;/i&gt;Have started planning on what to write and am beginning the first chapter - Introduction&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;What I am still doing:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;GI techniques research&lt;/i&gt; - basically this will be an  ongoing effort throughout the project&lt;/li&gt;&lt;li&gt;&lt;i&gt;Writing the shader &lt;/i&gt;- This is fairly complicated and takes some time to get it right. &lt;/li&gt;&lt;li&gt;&lt;i&gt;Testing&lt;/i&gt;&amp;nbsp; - Just to see there's no bugs&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;What I haven't done:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;Water effects and vegetation&lt;/i&gt; - not very sure at the moment if I can manage to implement GI on them as it will take some extra work. Concentrating on finishing the shader first before attempting this. I could have some simple water effects and maybe vegetation that is not lit by GI but again will look into this after completing my shader. &lt;/li&gt;&lt;/ul&gt;&lt;b&gt;Problems faced and anticipated:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Procedural shaders - one of the hardest aspect in this research. A lot of reading to do and testing. Derek's method uses the DirectX HLSL &lt;span style="font-size: small;"&gt;which have &lt;/span&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="Content-Type"&gt;&lt;/meta&gt;&lt;meta content="Word.Document" name="ProgId"&gt;&lt;/meta&gt;&lt;meta content="Microsoft Word 12" name="Generator"&gt;&lt;/meta&gt;&lt;meta content="Microsoft Word 12" name="Originator"&gt;&lt;/meta&gt;&lt;link href="file:///E:%5CUsers%5CJONATH%7E1%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml" rel="File-List"&gt;&lt;/link&gt;&lt;link href="file:///E:%5CUsers%5CJONATH%7E1%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx" rel="themeData"&gt;&lt;/link&gt;&lt;link href="file:///E:%5CUsers%5CJONATH%7E1%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml" rel="colorSchemeMapping"&gt;&lt;/link&gt;&lt;style&gt;&lt;!-- /* Font Definitions */ @font-face	{font-family:"Cambria Math";	panose-1:2 4 5 3 5 4 6 3 2 4;	mso-font-charset:0;	mso-generic-font-family:roman;	mso-font-pitch:variable;	mso-font-signature:-1610611985 1107304683 0 0 415 0;}@font-face	{font-family:Georgia;	panose-1:2 4 5 2 5 4 5 2 3 3;	mso-font-charset:0;	mso-generic-font-family:roman;	mso-font-pitch:variable;	mso-font-signature:647 0 0 0 159 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal	{mso-style-unhide:no;	mso-style-qformat:yes;	mso-style-parent:"";	margin-top:0cm;	margin-right:0cm;	margin-bottom:10.0pt;	margin-left:0cm;	line-height:115%;	mso-pagination:widow-orphan;	font-size:11.0pt;	font-family:"Calibri","sans-serif";	mso-ascii-font-family:Calibri;	mso-ascii-theme-font:minor-latin;	mso-fareast-font-family:Calibri;	mso-fareast-theme-font:minor-latin;	mso-hansi-font-family:Calibri;	mso-hansi-theme-font:minor-latin;	mso-bidi-font-family:"Times New Roman";	mso-bidi-theme-font:minor-bidi;	mso-ansi-language:PL;	mso-fareast-language:EN-US;}.MsoChpDefault	{mso-style-type:export-only;	mso-default-props:yes;	mso-ascii-font-family:Calibri;	mso-ascii-theme-font:minor-latin;	mso-fareast-font-family:Calibri;	mso-fareast-theme-font:minor-latin;	mso-hansi-font-family:Calibri;	mso-hansi-theme-font:minor-latin;	mso-bidi-font-family:"Times New Roman";	mso-bidi-theme-font:minor-bidi;	mso-ansi-language:PL;	mso-fareast-language:EN-US;}.MsoPapDefault	{mso-style-type:export-only;	margin-bottom:10.0pt;	line-height:115%;}@page Section1	{size:612.0pt 792.0pt;	margin:72.0pt 72.0pt 72.0pt 72.0pt;	mso-header-margin:36.0pt;	mso-footer-margin:36.0pt;	mso-paper-source:0;}div.Section1	{page:Section1;}--&gt;&lt;/style&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;built-in multipass and custom render target feature while I have to deal with OGLSLs Frame Buffer objects and maybe 3D textures to get things working.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Cutting out of features - my initial scope for the research seems to be a little bit demanding and due to the time plus resource contraint I might have to cut back a little. I am not sure if I have enough time to fully implement GI for the water and vegetation at this point.&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;Conclusion so far: &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Global Illumination seems to be a fairly involving topic. From my progress so far I can see now that my initial ideas would require a lot more time. However, I have done substantial research and are now trying my best to get the shader coding done. If no major problems crops up (fingers crossed!) I should have a working demo to show some basic GI effects on terrain in OpenGL. So hopefully I can have some nice pictures up on the blog.&lt;br /&gt;&lt;br /&gt;However I feel that the most important bit will be the dissertation where I would have to document what I've read, what I've tried, what worked and what didn't and lastly why. Time organisation is critical here as writing the dissertation would also take up a big chunk of time. I would have to get all the resources properly organised and catalogued on top of producing a good write up detailing the whole research. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-4188806212152107218?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/4188806212152107218/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2010/03/progress-update-22nd-march-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/4188806212152107218'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/4188806212152107218'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2010/03/progress-update-22nd-march-2010.html' title='Progress update - 22nd March 2010'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-3016770203907148538</id><published>2010-02-09T10:41:00.002Z</published><updated>2010-02-09T18:29:41.195Z</updated><title type='text'>Progress update 9th February 2010</title><content type='html'>Here is a summary of my progress thus far:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;What I have done:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;Initial Research&lt;/i&gt; - Covering GI techniques&lt;/li&gt;&lt;li&gt;&lt;i&gt;Basic Framework study&lt;/i&gt; - Finalising the shaders etc, building a "vanilla" structure&lt;/li&gt;&lt;li&gt;&lt;i&gt;Resource gathering for report&lt;/i&gt;&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;What I am still doing:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;GI techniques research&lt;/i&gt; - basically this will be an ongoing effort throughout the project&lt;/li&gt;&lt;li&gt;&lt;i&gt;More work on framework&lt;/i&gt; - Terrain generation and testing&lt;/li&gt;&lt;li&gt;&lt;i&gt;More testing&lt;/i&gt;&amp;nbsp; -&amp;nbsp;Theories and implementation of them in framework, tweaking&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;What I haven't done:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Start on thesis&lt;/li&gt;&lt;li&gt;Have a solid framework&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;Problems faced and anticipated:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Buggy framework - shaders&lt;/li&gt;&lt;li&gt;Proper structure/format of thesis&lt;/li&gt;&lt;li&gt;Resources required to write dissertation&amp;nbsp; &lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-3016770203907148538?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/3016770203907148538/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2010/02/progress-update-9th-february-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/3016770203907148538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/3016770203907148538'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2010/02/progress-update-9th-february-2010.html' title='Progress update 9th February 2010'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-8971609748006064419</id><published>2010-01-21T13:53:00.000Z</published><updated>2010-01-21T13:53:01.339Z</updated><title type='text'>Progress update January 2010</title><content type='html'>Not much has been done so far as I am pretty swamped with courseworks. However, more progress shall be made after the submission of the final coursework which is due soon.&lt;br /&gt;&lt;br /&gt;A little update of what has gone on so far in regards to the Honours Project:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Got a basic framework up and running. Just trying to tidy up the code a bit so I can "plug-in" the GI algorithms in the future. &lt;br /&gt;&lt;/li&gt;&lt;li&gt;Have decided on a more focussed approach to project implementation. I am now reading up John Snyder and Derek Nowrouzezahrai's work on &lt;a href="http://www.dgp.toronto.edu/%7Ederek/abstracts.2009.html#NS09"&gt;Fast Global Illumination on Dynamic Height Fields&lt;/a&gt; and also &lt;a href="http://www.dgp.toronto.edu/%7Ederek/abstracts.2008.html#SN08"&gt;Fast Soft Self-Shadowing on Dynamic Height Fields&lt;/a&gt;. Very interesting read and very good candidate for implementation. Main aim is to get his technique working in my demo framework at the moment.&lt;/li&gt;&lt;li&gt;Thinking of some extras such as simple vegatation and water caustics for the demo. I am not sure at this stage if it will be procedural vegetation. Both of them will have GI implemented. I am looking into several methods but at the moment focussing on &lt;a href="http://homepages.paradise.net.nz/nickamy/realtimerad/realtimerad.html"&gt;Instant radiosity&lt;/a&gt;&lt;/li&gt;&lt;li&gt;I plan to also implement a real time directional light source (sun light) which the user can manipulate.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;The topic I have chosen seems to be very involved and requires a lot of techical reading. Next plan is to draft a Gantt chart so I can stick to a more focussed schedule. I will consult my Technical supervisor soon and will update the post as needed.&lt;br /&gt;&lt;br /&gt;Here's a glimpse of Derek and John's work : &lt;a href="http://www.dgp.toronto.edu/%7Ederek/noback/EGSR09_final_video_xvid.avi"&gt;cool video&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-8971609748006064419?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/8971609748006064419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2010/01/progress-update-january-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/8971609748006064419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/8971609748006064419'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2010/01/progress-update-january-2010.html' title='Progress update January 2010'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-2819387452351277629</id><published>2010-01-10T12:54:00.010Z</published><updated>2010-02-09T21:26:50.260Z</updated><title type='text'>Honours Project Proposal</title><content type='html'>w fast time has passed it seems... Been very busy with two other courseworks so hardly have time to update blog as frequent as I would have liked it. Anyway, here is my Honours Proposal submission :&lt;br /&gt;&lt;br /&gt;This is a copy of the Gantt Chart (click to enlarge) :&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_w6TuRY8RvMI/S3HSrt8y2oI/AAAAAAAAAB4/plMCagO8_lw/s1600-h/ganttchrt.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_w6TuRY8RvMI/S3HSrt8y2oI/AAAAAAAAAB4/plMCagO8_lw/s320/ganttchrt.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;and the PDF file can be found &lt;a href="http://www.zumodrive.com/share/3y9cMDg4OT"&gt;here&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;(&lt;i&gt;The Word document format for the proposal can be found &lt;a href="http://www.zumodrive.com/share/3bbvNzE2OD"&gt;&lt;url=http: 3bbvnze2od="" share="" www.zumodrive.com=""&gt;here&lt;/url=http:&gt;&lt;/a&gt;&lt;/i&gt;)&lt;br /&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;Global illumination (GI) refers to algorithms used to enhance realism using lighting for a 3D scene. This group of algorithms differ to the common techniques used to light a scene because they not only take into account the light emitted from a light source but also the light reflected by objects from this light source. These are called direct and indirect illumination respectively. Common examples of algorithms used in GI are ray tracing, radiosity, ambient occlusion, photon mapping and image based lighting. Sometimes hybrids of these examples are also used to produce a more realistic yet efficient result. [Wikipedia] Generally though, ray tracing is an offline or a non-real-time method that is computationally extremely expensive. On the contrary rest of the methods mentioned above are very efficient and can be cleverly implemented in real-time.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;Scenes rendered using Global Illumination algorithms are more photorealistic. Lighting is a very important factor in photorealistic rendering. The physical processes that form the basis of photorealistic rendering are light-material interaction, light transport and also the psychophysical aspects of the human visual system. [Dutré, et al., 2006]&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;However, GI could be very computationally expensive to implement, especially in real time and dynamic applications. In the past, high quality realistic scene could only be rendered offline and that also takes a considerable amount of time to achieve. Another alternative is to produce highly inaccurate and low quality results. [Stokes, et al., 2004]&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;Recently, computer generated 3D terrain is becoming more popular in various applications. Games ranging from first person shooter to strategy implements some form of terrain generation. Realistic computer generated terrain is also used in advanced mapping software and also in simulators used to train pilots and military personnel. A very good example is a 3D geospecific terrain created to train soldier fighting in Afghanistan. Created using proprietary software called the "Virtual Reality Scene Generator" developed by MetaVR, it could generate over 9,600 square kilometres of geospecific landscape with 500 accurately modelled buildings. According to MetaVR's developers, "Unlike the simplified, flattened terrain used to simulate urban environments in most image generators and video games, MetaVR’s Afghan village is set within mountains, complex terrain of varying elevation, and cave complexes enabling realistic training scenarios for operations in mountainous villages." [metavr, 2009]&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;To achieve a level of realism required for some applications of which include terrain generation, GI techniques could be considered. For real time terrain generation, the visual complexity is due to its lighting and not just the geometry. Lighting calculation when the whole generated terrain is static is relatively easy since most of the lighting calculations could be done before rendering. However, when considering a more dynamic environment, or even real time applications, applying GI techniques could also be challenging. [Mitchell, et al., 2002]&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;Motivation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;It will be interesting to research into methods to push the boundary on how realistic a terrain can be rendered in real time. I am also personally very interested in graphics programming especially when it involves games. I hope to find a cheap and effective method of greatly improving the visual realism in games to add even more immersion.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;With the advancement of GPU technology, the door opens to a multitude of new possibilities in graphics rendering. Traditionally, generated terrains were limited to heights fields that are generated by CPU and then rendered by the GPU. [Geiss, 2007] It is now possible use the raw processing power of the GPU to render a much more complex and realistic procedural terrain. Realistic lighting is also one of the biggest issues in real-time terrain generation. A lot of games that features outdoor scenes such as MMOs will benefit from this research.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;This honours project fully meets the course requirements as it requires both technical writing skills and also programming skills. Most of this project requires in-depth technical and background reading. Proper project management and planning skills are also required to ensure that the project will have some accomplishments. Furthermore, research into graphics programming is very relevant to the course as it is a vital part of the computer gaming industry. Appropriate research and testing will also be carried out and an analysis would be done to cover any problems faced during the course of the project. &lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Research Topic&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;The GI techniques  will be applied to a framework demo which is a scene of a 3D world consisting of a procedurally generated terrain coded using the C++ language and the OpenGL API. There would also be implementation of vegetation, simple water effects and a dynamic directional light representing the sun in the demo. Fractal methods such as midpoint displacement and fault line algorithm will be used to generate terrain's height field.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;The demo would most probably feature procedurally generated height field geometry with a few non-height field elements such as vegetation and some bodies of water. A simple directional lighting representing the sun with some low-frequency environmental lighting will also be added.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;Rendering water is relatively easy but simulating it requires advanced mathematics and physics. Interactive fluid dynamics rendering and real-time particle based fluid simulation using Lagrangian and Hamiltonian systems are a good source for interactive fluid dynamics rendering and real-time particle based fluid simulation.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;However, again due to time constraints, considerations will also be made to generated simple water with primitive animation and reflections as discussed in Polacks's book, Focus on 3D Terrain Programming [Polack, et al., 2003]. These types of simple methods are mostly used in real-time games and applications due to their high visual quality and extremely fast rendering speed. To further enhance realism, real-time caustics can be implemented.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;The advantage of real-time procedural terrain generation is that there is no requirement of pre-modelled 3D mesh or a 2D height map. Procedurally generated terrains also have an outstanding visual quality and are extremely fast, hence perfectly suited for real-time applications. Soft shadows will be implemented in the terrain. Soft shadows differ from the more common hard shadows because their penumbras lighten gradually as the shadow caster recedes from the receiver. [Fast Soft Self-Shadowing on Dynamic Height Fields, 2008] This will result in a greatly improved shadowing effect.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;To handle the GI on the terrain, the aim is to try to implement work done by Derek Nowrouzezahrai and John Snyder to the demo. Their work covers a real-time method for rendering GI effects that can be applied to a large area with environmental lights. Their method involves handling indirect lighting and non-diffuse surfaces. [Fast Global Illumination on Dynamic Height Fields, 2009] From reading the paper it seems that their technique is effective and will be realistic to be implemented for the project.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;Another method that will be looked into is “Lightcuts”. [Lightcuts: A Scalable Approach to Illumination, 2005] Simply speaking, it is a framework that approximates global illumination and several of its subset techniques. It can be applied to a dynamic range of situations and the output quality is very good in the open environments when simulating daylight.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Research Question&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;i&gt;"What are the techniques involved in real time lighting effects for procedurally generated terrain?"&lt;/i&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Methodology&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;Comprehensive literature review into GI techniques would be researched to further understand about GI in real time applications such as terrain generation. A good understanding of the topic at hand is very important to ensure that the project can be carried out smoothly. I will also draft out milestones to monitor project progress and make any necessary adjustments to ensure that the main objectives of the project could be completed on time. I will try to create a Gantt chart to help me keep track of the project.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;The methods proposed by Derek Nowrouzezahrai will be focussed on and implemented in the framework demo because there is a lower chance of failure as Derek has already tested it on an open terrain. &lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;As there's always chances of failure in the proposed method,  I have decided to also look into the "Lightcut" method mentioned as a backup plan. This is to ensure that I will have some submissible work at the end of the project implementation period.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;The real time water simulation and animation will have a lower priority and the simplest method of implementation will always be chosen. However I believe with simple reflections/refractions and animation, it will be adequate to look realistic. As for the vegetation, I will randomly place billboard trees and grass on suitable and realistic position on the terrain. For simplicity the vegetation will be non-animated.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;The main resource requirement for this project is a lot of relevant literature. A C++ debugger and compiler such as Microsoft's Visual Studio 2005 and the OpenGL API is also a basic required for the software side while the hardware requirement would be a decent computer able to handle running the demo. At the moment, the computers available in the university's laboratory should be adequate. &lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;Project Evaluation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;As the main bulk of the project will be on research, a good way of evaluating the outcome is through the produced dissertation. The results of the literature review and comparison of possible GI implementations and in-depth analysis of the research question will be included along with the dissertation. &lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;The demo would also aid the evaluation process as it will show the ideas behind the project visually. At the moment it is planned to include a simple Frames per Second (FPS) and Polygons per Second (PPS) counter in the demo to try to show the efficiency of the technique employed.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Possible Issues&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;GI is a very wide and complicated topic and implementing GI on procedurally generated terrain is also a very challenging task. Thus there could be some issues faced along the way. Below is the list of issues that could probably be encountered during the course of the project:&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;1) Time constraint is the most probable issue as well so a very rigid schedule has to be drafted and followed. I will plan regular meetings with my technical supervisor to ensure that my work is feasible to be carried on.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;2) Longer than planned timeframe required to implement GI on extra features such as vegetation and water bodies. Using static vegetation could minimise problems faced.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;3) Performance penalty that could occur as terrain generation with GI implementation uses a lot of resources from the CPU for crunching algorithms and also requires a decent GPU to handle rendering. Proper testing will have to be done to avoid any bottlenecks and "mini" optimisations carried out at every stage to ensure that the final demo will still run decently. If there are too much problems faced and not enough time to properly rectify it, the features would be left out accordingly. &lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;4) The computers in the university laboratory might not be able to run the demo. Constant testing in the universities laboratories will be carried out and if the final demo can't run on the university's computer I will try to request a machine that is capable to or try to bring my own computer. &lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;References&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;1. Dutré, Philip, Bala, Kavita and Bekaert, Philippe. 2006. Advanced Global Illumination : Second Edition. Massachusetts : A K Peters, Ltd., 2006. ISBN.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;2. Fast Global Illumination on Dynamic Height Fields. Nowrouzezahrai, Derek and Snyder, John. 2009. 4, s.l. : Eurographics Symposium on Rendering, 2009, Vol. 28.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;3. Fast Soft Self-Shadowing on Dynamic Height Fields. Snyder, John and Nowrouzezahrai, Derek. 2008. s.l. : Eurographics Symposium on Rendering, 2008.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;4. Geiss, Ryan. 2007. Generating Complex Procedural Terrains Using the GPU. [book auth.] Hubert Nguyen. GPU Gems 3. Massachusetts : Pearson Education, Inc., 2007.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;5. Lightcuts: A Scalable Approach to Illumination. Walter, Bruce, et al. 2005. s.l. : ACM SIGGRAPH 2005 conference proceedings, 2005.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;6. metavr. 2009. MetaVR announces new Afghanistan 3D Terrain and the Release of Virtual Reality Scene Generator Version 5.5. Virtual Reality Resources. [Online] 2009. http://vresources.org/node/2009.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;7. Mitchell, Kenny and Hoffman, Naty. 2002. Methods for Dynamic, Photorealistic Terrain Lighting. [book auth.] Dante Treglia. Game Programming Gems 3. Massachusetts : Charles River Media, INC., 2002.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;8. Polack, Trent and LaMothe, André. 2003. Focus on 3D Terrain Programming. Ohio : Premier Press, 2003. ISBN.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;9. Stokes, William A, et al. 2004. Perceptual Illumination Components: A New Approach to Efficient, High Quality Global Illumination Rendering. s.l. : ACM Transactions on Graphics (Proc. of SIGGRAPH) 23, 3,742–749, 2004.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;10. Wikipedia. Global Illumination. Wikipedia. [Online] http://en.wikipedia.org/wiki/Global_illumination.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Bibliography&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;11. Dickheiser, Michael. 2006. Game Programming Gems 6. s.l. : Charles River Media Price, 2006.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;12. Nguyen, Hubert. 2007. GPU Gems 2. Massachusetts : Pearson Education, Inc., 2007.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;13. Real-Time Caustics. Wand, M. and Straßer, W. 2003. 3, s.l. : EUROGRAPHICS, 2003, Vol. 22.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;14. Shah, Musawir A. and Pattanaik, Sumanta. 2005. Real-time Caustics Rendering. [Online] 2005. http://graphics.cs.ucf.edu/caustics/.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;15. Shastry, Anirudh.S. 2005. Soft edged shadows. Gamedev.net. [Online] 18 January 2005. http://www.gamedev.net/reference/articles/article2193.asp.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;16. Slater, Mel, Steed, Anthony and Chrysanthou, Yiorgos. 2002. Computer graphics and virtual environments : From Realism to Real-time. Essex : Pearson Education Limited, 2002.&lt;/div&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; text-align: justify;"&gt;17. The Terrain Rendering Pipeline. Roettger, Stefan and Frick, Ingo. 2002. s.l. : In Proc. of East-West Vision, 2002.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-2819387452351277629?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/2819387452351277629/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2010/01/honours-project-proposal.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/2819387452351277629'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/2819387452351277629'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2010/01/honours-project-proposal.html' title='Honours Project Proposal'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_w6TuRY8RvMI/S3HSrt8y2oI/AAAAAAAAAB4/plMCagO8_lw/s72-c/ganttchrt.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-1307329031187968176</id><published>2009-11-18T12:53:00.001Z</published><updated>2009-11-18T12:54:45.615Z</updated><title type='text'>RQ Workshop</title><content type='html'>Below are the answers provided to the RQ Workshop worksheet (Worksheet 4)&lt;br /&gt;&lt;br /&gt;1) &lt;b&gt;What is the name of this module, how many credits?&lt;/b&gt;&lt;br /&gt;CS1004 – Honours Project Planning &amp; Reporting&lt;br /&gt;&lt;br /&gt;2) &lt;b&gt;Your technical supervisor, how many times have you met?&lt;/b&gt;&lt;br /&gt;Only met him once but the first meeting was very production, it gave me a lot of new ideas for the research question.&lt;br /&gt;&lt;br /&gt;3) &lt;b&gt;How frequently do you update your blog?&lt;/b&gt;&lt;br /&gt;Once a day, sometimes one every 2-3 days depending on how much progress I made.  I would update my Project Diary more often than the blog as it’s informal and I could jot down rough ideas.&lt;br /&gt;&lt;br /&gt;4) &lt;b&gt;Have you included both you worksheets in your blog?&lt;/b&gt;&lt;br /&gt;Yes, I have.&lt;br /&gt;&lt;br /&gt;5) &lt;b&gt;Have you made sure readers can leave comments and you can annotate the blog entry based on these feedbacks?&lt;/b&gt;&lt;br /&gt;Yes, I have.&lt;br /&gt;&lt;br /&gt;6) &lt;b&gt;Have you subscribed to any game related forum and posted your RQ research ideas and got feedback?&lt;/b&gt;&lt;br /&gt;I have posted on the GameDev forums asking for people’s comments but so far it doesn’t have any replies yet.&lt;br /&gt;&lt;br /&gt;7) &lt;b&gt;Have you looked for additional feedback other than the ones I’ve prescribed?&lt;/b&gt;&lt;br /&gt;Not at the moment.&lt;br /&gt;&lt;br /&gt;8) &lt;b&gt;What backup procedure have you implemented?&lt;/b&gt;&lt;br /&gt;I have used a program called Blogger Backup Utility to backup the blog in XML format so I can restore it if the blog is accidently delete. I have also saved the whole page as html so that I will still have the pictures on the blog.&lt;br /&gt; &lt;br /&gt;9) &lt;b&gt;How long do you spend for your Honours project activities?&lt;/b&gt;&lt;br /&gt;To be honest I haven’t been really spending enough time during the first few weeks of the project. I have now scheduled my activities better so I am spending an average of 2 hours a day (excluding weekends) on the project.&lt;br /&gt;&lt;br /&gt;10) &lt;b&gt;What is your RQ?&lt;/b&gt;&lt;br /&gt;What are the techniques involved in real time lighting effects for procedurally generated terrain? However the research question might be slightly tweaked later on for the final proposal submission.&lt;br /&gt;&lt;br /&gt;11) &lt;b&gt;Why is it important?&lt;/b&gt;&lt;br /&gt;It will help me understand more about lighting in graphics programming.&lt;br /&gt;&lt;br /&gt;12) &lt;b&gt;How will you answer it?&lt;/b&gt;&lt;br /&gt;First step is a lot of reading. I must source all the related books and papers to understand more and finally focus on the final method of approach.&lt;br /&gt;&lt;br /&gt;13) &lt;b&gt;So what will be your measure of success?&lt;/b&gt;&lt;br /&gt;I will be happy if I can implement a demo that shows a photorealistic rendition of a procedurally generated terrain. &lt;br /&gt;&lt;br /&gt;14) &lt;b&gt;What will be the significance of what you have done?&lt;/b&gt;&lt;br /&gt;I hope that this will give me an opportunity to enrich my CV and to help me seek employment that hopefully will specialize in the field of graphics programming.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-1307329031187968176?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/1307329031187968176/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2009/11/rq-workshop.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/1307329031187968176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/1307329031187968176'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2009/11/rq-workshop.html' title='RQ Workshop'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-4169282651440453286</id><published>2009-10-27T14:29:00.001Z</published><updated>2009-10-27T14:31:39.729Z</updated><title type='text'>New Inspiration</title><content type='html'>First meeting with technical supervisor, Matthew Bett taken place today. The meeting was very productive and the outcome was excellent as the discussions fuelled ideas and probably a new direction for the project.&lt;br /&gt;&lt;br /&gt;Previously, simpler lighting techniques were considered such as height based lighting, slope lighting and lightmapping algorithms. Currently, the consideration of rendering a &lt;i&gt;High Definition Range Imaging&lt;/i&gt; (HDRI or just HDR for short) terrain/scene contained within a skybox is considered. Basically HDR renders a scene using&amp;nbsp; lighting calculation using a larger dynamic range as compared to traditional methods. This will greatly enhance the realism on the scene.&lt;br /&gt;&lt;br /&gt;The challenge now is to consider how to handle materials in the scene which consists of mainly the terrain mesh. The terrain would also be largely static so that could be a challenge to bring out the HDR qualities. The idea of using a HDR Environment map as the light source and reflection map is being investigated at the moment as it is not sure how well it could be implemented in the application. &lt;br /&gt;&lt;br /&gt;Below is an example of how HDR can greatly boost the realism of a computer generated scene :&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_w6TuRY8RvMI/Sub-W9kGKCI/AAAAAAAAABg/H660yuo_2TQ/s1600-h/crysis1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_w6TuRY8RvMI/Sub-W9kGKCI/AAAAAAAAABg/H660yuo_2TQ/s320/crysis1.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&amp;nbsp;&lt;a href="http://forum.i3d.net/attachments/main-crysis/3973d1177340635-wat-cryengine-2-lees-dit-om-het-te-weten-te-komen-english-crysis28.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://forum.i3d.net/attachments/main-crysis/3973d1177340635-wat-cryengine-2-lees-dit-om-het-te-weten-te-komen-english-crysis28.jpg" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Example from the popular PC game Crysis&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Complex 3D models won't be featured (or will only be featured minimally) in the demo so most of the HDR lighting will be done on the terrain itself. At this stage it is not yet certain of the real time performance and also the chance of procedurally generating such a scene. &lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;Soft Shadows&lt;/b&gt; - This is also considered to be implemented in the scene&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;Changing of primary light source position/direction and also consideration of auxillary light sources&lt;/b&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;This is yet another problem that has to be researched into.&lt;b&gt; &lt;/b&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;There's seems to be abundant techniques out there for photorealistic computer graphics rendering. The next aim is to pick out suitable ones for the research.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-4169282651440453286?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/4169282651440453286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2009/10/new-inspiration.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/4169282651440453286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/4169282651440453286'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2009/10/new-inspiration.html' title='New Inspiration'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_w6TuRY8RvMI/Sub-W9kGKCI/AAAAAAAAABg/H660yuo_2TQ/s72-c/crysis1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-2717529103351217819</id><published>2009-10-22T11:54:00.000+01:00</published><updated>2009-10-22T11:54:30.188+01:00</updated><title type='text'>Cloud Shadows?</title><content type='html'>I found another cool example that I would wish to implement in my demo - Cloud shadows on terrain. I think it would be very cool especially if the shadow is smooth and follows the curvature of the terrain surface. I wonder what happens if shadows overlapped though, ie the shadow from clouds with the shadow from the terrain (shadows generated by higher "cliffs" onto flatter terrain).&lt;br /&gt;&lt;br /&gt;Anyway, here's the Youtube video :&lt;br /&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/MGRdIUxW8Y0&amp;amp;hl=en&amp;amp;fs=1&amp;amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/MGRdIUxW8Y0&amp;amp;hl=en&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-2717529103351217819?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/2717529103351217819/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2009/10/cloud-shadows.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/2717529103351217819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/2717529103351217819'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2009/10/cloud-shadows.html' title='Cloud Shadows?'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-9148517887241159960</id><published>2009-10-21T19:06:00.001+01:00</published><updated>2009-10-21T19:09:39.079+01:00</updated><title type='text'>Worksheet #3</title><content type='html'>At the moment of writing this I am still waiting to see Matt Bett to discuss particulars of my project. The meet is currently scheduled to this Friday. So there could be some changes pending this post which I will update as necessary.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;Computer generated 3D terrain is important and popular in many applications. Games ranging from first person shooter to strategy implements some form of terrrain generation. Realistic computer generated terrain is also used in advanced mapping software and also in simultors used to train pilots and military personnel. Terrain simulation is popular not only in computer games but also used as a virtual tool for busineses and also in military simulations. A very good example is a 3D geospecific terrain created to train soldier fighting in Afghnistan. Generated using a proprietry software called the "Virtual Reality Scene Generator" developed by MetaVR, it could generate over 9,600 square kilometres of geospecific landscape with 500 accurately modelled buildings. According the MetaVR's developers (2009), "&lt;/span&gt;&lt;/span&gt;&lt;i&gt;Unlike the simplified, flattened terrain used to simulate urban environments in most image generators and video games, MetaVR’s Afghan village is set within mountains, complex terrain of varying elevation, and cave complexes enabling realistic training scenarios for operations in mountainous villages.&lt;/i&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;"[&lt;b&gt;1&lt;/b&gt;] &lt;/span&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;Lighting is also an important and integral part of 3D terrain generation. It greatly adds to the realism and the complexity of the scene. The main objective of this research project is to investigate and implement lighting on a procedurally generated terrain. Hopefully from the research I would determine an optimized and effective way of lighting a terrain. Lighting a textured terrain could greatly improve the level of its realism&lt;/span&gt;. &lt;span style="font-size: small;"&gt;However, as some lighting techniques require heavy computation it could impact the rendering performance of the terrain. There's a lot of techniques and algorithms out there aiming to overcome this problem. The research will attempt to investigate and compare these techniques and algorithms and hopefully develope a custom hybrid solution. The key is to try and strike a perfect balance between realism and performance.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;Motivation&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Realistic terrain rendering is almost associated with expensive computational requirements. It will be interesting to research into methods of improving this situation and also to push the boundary on how realistic a terrain can be rendered in real time. By completing this project, hopefully an optimized and realistic method could be determined.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Research question&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: small;"&gt;&lt;span lang="EN-US" style="letter-spacing: 0.2pt;"&gt;What are the techniques involved in real time lighting effects for procedurally generated terrain?&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/span&gt; &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Addressing the question&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;The first phase of the research is too implement a simple "sandbox" to test multiple variables and apply several different lighting methods. The OpenGL API will be used to render the 3D world containing the terrain. The terrain would be procedurally generated for real time testing. Performance will be tested with a FPS counter to determine which algorithm would produce the highest FPS. The second phase will finalize and fine tune the suitable researched technique to be included in the final demo. There will also be an addition of functions enabling the user to tweak some variables such as light angle and intensity to further observe the effects on performance and rendering quality. Hopefully, a novel method will also be discovered from the research.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Resource requirements&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;At the moment, the required resources are :&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;1) Microsoft Visual Studio 2005&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;2) OpenGL API&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;3) Related books and articles on the internet&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;References&lt;/b&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;1) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;metavr (2009) &lt;i&gt;MetaVR announces new Afghanistan 3D Terrain and the Release of Virtual Reality Scene Generator Version 5.5&lt;/i&gt;, [Online],          Available: &lt;a href="http://vresources.org/node/2009"&gt;http://vresources.org/node/2009&lt;/a&gt;          [21 Oct 2009].&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Bibliography&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;1) &lt;/span&gt;&lt;span style="font-family: Trebuchet MS,sans-serif; font-size: small;"&gt;Trent Polack. (2003). Chapter 4 Lighting Terrain. In: Andre LaMothe &lt;i&gt;3D Terrain Programmin&lt;/i&gt;g.  Cincinnati: Premier Press. p57-72.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS,sans-serif; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;2&lt;/span&gt;) &lt;/span&gt;Daubert, K., Schirmacher, H., Sillion, F X., Drettakis, G., 1997. Hierarchical Lighting Simulation for Outdoor Scenes. &lt;i&gt;Eurographics Rendering Workshop&lt;/i&gt;&lt;i&gt;&lt;/i&gt;, [Online] Available at: &lt;a href="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.56.1893"&gt;http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.56.1893&amp;nbsp;&lt;/a&gt;[Accessed 19 October 2009]&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: inherit;"&gt;3&lt;/span&gt;) Roettger, S., Frick, I., 2002.&lt;span style="font-size: small;"&gt;The Terrain Rendering Pipeline. &lt;i&gt;Proc. of East-West Vision '02, &lt;/i&gt;[Online] Available at: &lt;a href="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.1.6167"&gt;http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.1.6167&lt;/a&gt; [Acessed 20 October 2009]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small; font-weight: normal;"&gt;4) &lt;/span&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;Watt, A., Policarpo, F. 2001. &lt;/span&gt;&lt;i style="font-weight: normal;"&gt;3D Games: Real Time Rendering and Software Technology&lt;/i&gt;&lt;span style="font-weight: normal;"&gt;. New York, New York: Addison-Wesley ACM Press.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;h1 class="primaryheader"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;h1 class="primaryheader"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;That concludes my draft proposal so far. I have also attached a Youtube clip of the 3D Procedural Terrain demo in OpenGL which I submitted as coursework last year. It uses a very simple shader for lighting the terrain hence very little to no shadowing.&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;h1 class="primaryheader"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/qLa3oOYg6Vs&amp;amp;hl=en&amp;amp;fs=1&amp;amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/qLa3oOYg6Vs&amp;amp;hl=en&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: large;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt; &lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-9148517887241159960?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/9148517887241159960/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2009/10/worksheet-3.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/9148517887241159960'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/9148517887241159960'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2009/10/worksheet-3.html' title='Worksheet #3'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-7186195499535811960</id><published>2009-10-08T17:12:00.001+01:00</published><updated>2009-10-08T17:14:22.370+01:00</updated><title type='text'>Lightmaps</title><content type='html'>Found this cool clip showing the use of lightmaps and some optimization implemented to increase FPS. This is done in OGRE though but it does give me some idea what to do with my project. Instead of just top down view I will incorporate real 3D view.&lt;br /&gt;&lt;br /&gt;credits of video to : &lt;a href="http://www.viddler.com/explore/HexiDave/videos/1/"&gt;HexiDave&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" height="447" id="viddler" width="437"&gt;&lt;param name="movie" value="http://www.viddler.com/player/ff7562d9/" /&gt;&lt;param name="allowScriptAccess" value="always" /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;embed src="http://www.viddler.com/player/ff7562d9/" width="437" height="447" type="application/x-shockwave-flash" allowScriptAccess="always" allowFullScreen="true" name="viddler" &gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-7186195499535811960?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/7186195499535811960/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2009/10/lightmaps.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/7186195499535811960'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/7186195499535811960'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2009/10/lightmaps.html' title='Lightmaps'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-2432194408235227379</id><published>2009-10-07T14:45:00.002+01:00</published><updated>2009-10-07T17:13:35.022+01:00</updated><title type='text'>Worksheet #2</title><content type='html'>How fast time has passed and its now week 3! Anyway, will attempt to answer the questions posed in Worksheet #2&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;Formulate a research question for your project. &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;I have decided to forward my research question or rather research topic as " &lt;i&gt;An investigation into real time lighting effects for procedurally generated terrain&lt;/i&gt; ". I could have phrased this in a question format such such " &lt;i&gt;What are the techniques involved in real time lighting effects for procedurally generated terrain?&lt;/i&gt; " but I feel that the former is more suitable since I will be in fact investigating the various techniques, and perhaps come to a conclusion of an optimized one.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;What is the focus of your project?&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;The focus of my project is to investigate and implement shadows in a procedurally generated terrain. I would hope to generate them dynamically and also implement shadowing by objects placed in the terrrain such as trees and also clouds.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt; &lt;b&gt;(2)What information do you need to find out about?&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;I would first confirm if what I am planning to implement is realistic and achievable. If it isn't I will narrow my scope towards something more realistic. I would then have to find out in detail of various techniques currently used to generate shadows and also for lighting in a dynamically generated terrain.&amp;nbsp; I would also have to research which algorithms is most efficient and suited to what I am trying to achieve.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;b&gt; &lt;/b&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;b&gt;(3)What experimental work do you need to perform?&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;I would need to set up a simple procedurally generated terrain framework. I will then try to implement several popular methods of lighting to see which is more suitable to carry on with my research. I might also need to create other separate frameworks to test further issues.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;Can your research question be refined in the light of answers to 2 and 3? (the two questions above)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;I believe it can be. Right now I only have basic information and idea of what I am trying to research. I believe with the correct information and exposure gained by implementing steps 2 and 3 I would be able to visualize my aim more clearly.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;b&gt;How will the information in 2 allow you to answer the research question?&lt;/b&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;The information in 2 not only allows me to answer the research question but also&amp;nbsp; helps me to fine tune my aim. A lot of background reading is important to understand and plan the research path. It is a crucial step to undertake before beginning the experimental work.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;&lt;span lang="EN-US" style="font-family: inherit; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;b&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: inherit; font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;b&gt;&lt;span style="font-family: inherit; font-size: small;"&gt; &lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span lang="EN-US" style="font-family: Verdana; font-size: 10pt; letter-spacing: 0.2pt;"&gt;&lt;b&gt;&lt;span style="font-family: inherit; font-size: small;"&gt; &lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-2432194408235227379?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/2432194408235227379/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2009/10/worksheet-2.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/2432194408235227379'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/2432194408235227379'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2009/10/worksheet-2.html' title='Worksheet #2'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-4393372767460868328</id><published>2009-09-28T14:32:00.003+01:00</published><updated>2009-09-28T14:42:22.000+01:00</updated><title type='text'>Worksheet #1</title><content type='html'>&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;This is the first Worksheet task given to us. The aim is to aid choosing a topic of interest for the Honours research project.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;Below are the questions and my answers for them:&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size: 11pt; letter-spacing: 0.1pt;"&gt;State the      topic of interest that you may wish to take forward into a project&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size: 11pt; letter-spacing: 0.1pt;"&gt; &lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;span lang="EN-US" style="font-size: 11pt; letter-spacing: 0.1pt;"&gt;The topic I have chosen for my honours project is &lt;b&gt;"&lt;i&gt;An investigation into the techniques of terrain lighting in real time&lt;/i&gt;&lt;/b&gt;". Bear in mind though that this is a very rough title for it as I may fine tune it as the project progresses. However, the main aim is to look into methods of lighting a terrain in real time. I have previously done some work on terrain generation but I have never really got into the process of actually lightning it. In this research period, I hope to dwelve further and investigate various terrain lightning methods in real time.&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size: 11pt; letter-spacing: 0.1pt;"&gt;Indicate      the issues surrounding this topic that you may wish investigate&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;span lang="EN-US" style="font-size: 11pt; letter-spacing: 0.1pt;"&gt;&lt;span style="font-size: small;"&gt;A 3D terrain wouldn't be complete without lighting. This is especially true for games with huge outdoor setting like flight simulators. It would greatly complicated the mood of the game if the valley casts its shadow upon the village below as viewed from a plane flying overhead or maybe a soldier hiding in the shadows of a huge rock as the sun sets.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;span lang="EN-US" style="font-size: small; letter-spacing: 0.1pt;"&gt;Situations described above would basically require real time lighting to the terrain. Lighting a static non deformable terrain with a single static light source is simple compared to lighting a deformable or morphing terrain that has a dynamic light source. What I am interested to find out are the various algorithms used to generate shadow maps for the terrain and&amp;nbsp; how to optimize them for large scale terrain applications. &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;I am hoping to research further into producing a streamlined optimized algorithm that is able to consider factors such as self shadowing and shadow interaction with 3D objects in the terrain. Generating shadow maps is a resource heavy operation and I can imagine it only being worse in real time. With the advancement of today's GPU processing power, I am also hoping to utilize this power to further enhance the performance for generating shadows on terrain in real time.&lt;span lang="EN-US" style="font-size: 11pt; letter-spacing: 0.1pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;span lang="EN-US" style="font-size: 11pt; letter-spacing: 0.1pt;"&gt;&lt;span style="font-size: small;"&gt;Hopefully by the end of the research period I would be able to create an efficient and fast real time terrain lighting demo. I would hope to include simple 3D objects in the scene and perhaps incorporate some clouds to further demonstrate the real time shadowing capabilities.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span lang="EN-US" style="font-size: 11pt; letter-spacing: 0.1pt;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: inherit; text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;span lang="EN-US" style="font-size: 11pt; letter-spacing: 0.1pt;"&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size: 11pt; letter-spacing: 0.1pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-4393372767460868328?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/4393372767460868328/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2009/09/worksheet-1.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/4393372767460868328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/4393372767460868328'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2009/09/worksheet-1.html' title='Worksheet #1'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-7267987536574175719</id><published>2009-09-25T18:44:00.001+01:00</published><updated>2009-09-25T18:46:08.363+01:00</updated><title type='text'>Interesting Examples</title><content type='html'>Found an interesting video on Youtube that has "video based terrain illumination" which I presume means GPU generated lighting for the terrain. It looks insteresting and perhaps I could investigate further into this subject.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/jaX3xrupRQ4&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/jaX3xrupRQ4&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Another example here on dynamic shadows:&lt;br /&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/1r66tp6xdlI&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/1r66tp6xdlI&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Still need some external input in regards to my initial ideas. I am not sure if it will be adequate for the requirements of the honours thesis.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-7267987536574175719?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/7267987536574175719/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2009/09/interesting-examples.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/7267987536574175719'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/7267987536574175719'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2009/09/interesting-examples.html' title='Interesting Examples'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6278454322463720345.post-6801103188549790516</id><published>2009-09-25T17:18:00.000+01:00</published><updated>2009-09-25T17:18:42.807+01:00</updated><title type='text'>First Post</title><content type='html'>Finally got all the settings done for the blog. Time to progress with the task at hand.&lt;br /&gt;&lt;br /&gt;First action was to have a brainstorm of the topics that I wish to cover. From the brainstorming session, the main "theme" of the honours project is on Terrain Generation. I chose this area because I am interested in it and also that I have some background knowledge in regards to this topic as my previous courseworks were based on this.&lt;br /&gt;&lt;br /&gt;I have also looked at another topic such as realistic simulation of fluids and particles (such as fire, smoke, rain, etc). At the moment I am not sure of which should I focus on.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6278454322463720345-6801103188549790516?l=minchye.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://minchye.blogspot.com/feeds/6801103188549790516/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://minchye.blogspot.com/2009/09/first-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/6801103188549790516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6278454322463720345/posts/default/6801103188549790516'/><link rel='alternate' type='text/html' href='http://minchye.blogspot.com/2009/09/first-post.html' title='First Post'/><author><name>JonathanChye</name><uri>http://www.blogger.com/profile/12803796172637441477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_w6TuRY8RvMI/SsR1Y2cmmHI/AAAAAAAAAA8/YhLcxQlrEwo/S220/669.jpg'/></author><thr:total>0</thr:total></entry></feed>
