BigDaveDev – Honours

News

by Big Dave on Aug.12, 2010, under Uncategorized

Hi all,

Although I have completed this dissertation, the actual program was not a success.  Therefore, I will be keeping this blog alive with the intention of picking up the program once my computer has made its way over here to sunny Sweden!

Dave

Leave a Comment more...

Progress Report – Upto 05/02/10

by Big Dave on Feb.09, 2010, under Update

Progress so far has been promising.  It’s into week four of the semester now and I am only two or three days behind on my gantt chart progress, however the chart needs some re-working.  I have a scene developed – a plane with a movable camera – and have developed the interfaces required for the project.

The stages of the program are as follows:

  1. Initialise sub-systems
  2. Create a custom render target
  3. Load shaders required
  4. Render the scene to the render target
  5. Shader stores colour and depth information in same texture
  6. Render target is switched to backbuffer
  7. Full screen quad rendered with scene texture applied

Work has also been started on creating the actual sky effect itself.  However the screen has been drawing blank since this development started.  It is unclear if the problem is with the code I have added to the project or if it is the driver update I recently installed.  It is more likely to be the first issue as the the program does not fail at run-time.  There is still a context created implying that the OpenGL SDK is working well.

I have been advised by my colleague – Scott Dunbar – to use a piece of software called glslDevil to debug my program and make sure that everything is OK.  The reason for using glslDevil as opposed to Visual Studio for debugging is that Visual Studio does not debug shaders whereas glslDevil does.

By the next progress report I hope to have this problem fixed and continued development on the effect.  Work has been started on the introduction for the dissertation as well and this will be finished by the next report and a good start to the literature review will be underway

Leave a Comment more...

Project Proposal

by Big Dave on Jan.13, 2010, under Uncategorized

Atmospheric Scattering as a Post-Processed Effect

Introduction

Post-processing is a technique fundamental to graphics programming today. It allows for effects to be realised in great amounts of detail. This honours project will make use of this technique to demonstrate the potential it has to create visually stunning and accurate effects. This demonstration will be achieved by applying atmospheric scattering to a scene as a post-process to create very realistic skies.

Atmospheric scattering has been chosen as it is very realistic. It describes how incoming light from the sun is affected by the atmosphere to produce the stunning aura of colours observed daily. Another visual effect created with atmospheric scattering is that of haziness. This haze adds to the realism of the game environment and also gives the player much better depth cues.

Research Question

Atmospheric scattering has a reputation for being an expensive effect to implement. Post-processing could speed this up. To that effect, the question being presented is:

What are the benefits of using post-processing techniques to simulate atmospheric scattering in a computer game and what are the issues associated with its implementation?

(continue reading…)

Leave a Comment more...

Worksheet 4

by Big Dave on Nov.19, 2009, under Proposal, Research, Update, Worksheet

In this final worksheet we are asked to outline our presentation for the 23rd November.  The presentation is to be no more than 5 mins (including question time of 2 mins).  The following are points to talk about:

Introduction:

The focus of this dissertation is on atmospheric scattering as a post-processed effect.  Atmospheric scattering is the reason that our sky has colour.  It describes the way that the light from the sun disperses when it comes through our atmosphere.  In terms of game development, it can add REAL depth cues to vast landscapes and increase the immersion that the player experiences.  Plus, it looks good!

CryEngine2 uses this effect very well and creates astoundingly beautiful environments :

ce2-sshot002

The image on the left is of Kualoa Ranch in Hawaii and the image on the right is the CryEngine2 replica. (continue reading…)

Leave a Comment more...

Worksheet 3 – Draft Proposal

by Big Dave on Oct.27, 2009, under Proposal, Research, Update, Worksheet

Introduction

Atmospheric effects in games are becoming increasingly more popular; however some implementations are less efficient than others, giving arguably better results – (Tomoyuki et al. 1993) vs. (Preetham et al. 1999) for example. These models can be performed on a per-pixel basis to provide very realistic looking skies in games. It was suggested in an e-mail discussion with Damianno Iannetta of Rare on 7th October 2009 that this project should steer itself toward the model proposed in (Tomoyuki et al. 1993) and as such, this dissertation will be focusing on an efficient post-processed implementation of this technique for PC and/or PS3, making the most use of hardware – i.e. GPGPU and Cell for PC and PS3 respectively.

(continue reading…)

2 Comments more...

Worksheet 2

by Big Dave on Oct.06, 2009, under Proposal, Reading, Update, Worksheet

This weeks task is to actually arrive at a research question – by no means an easy task!

I have formulated several possible questions thus far and all are related to the topic of atmospheric scattering, as this is my main topic of interest.  I shall list them below:

  • Can atmospheric scattering be used accurately in computer games?
  • Is it feasible to include atmospheric scattering in computer games?
  • Can post-processed effects – such as atmospheric scattering – be used in computer games without hindering performance?
  • Can post-processed effects – such as atmospheric scattering – be used in computer games without negatively affecting overall performance?
  • Can atmospheric scattering be implemented efficiently in computer games?
  • Can atmospheric scattering be used as an effective depth cue in computer games?
  • Can atmospheric scattering be used as an effective enhancement to traditional global illumination models?

While the last one holds the most interest for me, I do not think there is enough time to play with this question as it would involve the use of radiosity, ray tracing or photon mapping.  With that in mind, I feel that the question that will allow me to explore atmospheric scattering and post-processing would be the third-last question:

“Can atmospheric scattering be implemented efficiently in computer games?”

With this particular question, the suggested scope should be small enough to investigate GPGPU techniques and post-processing as well as provide me the choice of using either Preetham or Nishitas’ method for the atmospheric scattering model.

It was also brought to my attention earlier today that using Nishitas’ model would allow an appropriate use of GPGPU techniques as there are lots of variables to compute over several frames.

On a final note then, the research question I am putting forward is:

“Can atmospheric scattering be implemented efficiently in computer games?”

3 Comments more...

Links/Resources

by Big Dave on Oct.01, 2009, under Reading, Research, Resource

I have installed the CUDA SDK at home and have requested that it be installed in the GameLab at Abertay as well.  Having looked through some of the examples supplied – demonstrating, for example,  real-time ray tracing – I am beginning to understand just how important GPGPU methods could become.  It is clear that harnessing the power of CUDA could be the next stage in game development.

And with the Khronos Group releasing OpenCL in a bid to encapsulate both NVIDIA CUDA and AMD Stream in a similar manner to OpenGL and OpenAL, it is reasonable to expect developers to begin using this in the near future also.

Following are some web-sites to read through to gain a better understanding of CUDA

http://llpanorama.wordpress.com/cuda-tutorial/

http://www.nvidia.com/object/cuda_education.html

http://gpgpu.org/asplos2008

http://gpgpu.org/developer

Leave a Comment more...

Some Videos – on topic

by Big Dave on Sep.29, 2009, under Research, Videos

I have found some videos that are demonstrating the atmospheric scattering that this project refers to.  Some of these videos show amasing implementations:

This second video is very nicely polished and a great example of what can be achieved:

Leave a Comment more...

Worksheet 1

by Big Dave on Sep.24, 2009, under Proposal, Reading, Update, Worksheet

We were issued a task in class today to complete a worksheet with the aim of guiding us towards a research topic and ultimately a research question.

First I must state the topic of interest.

I have a keen interest in landscape photography and lighting composure is a key aspect in getting the perfect photograph.  In particular, sunset and sunrise are very pleasant effects.  I am interested in mimicking these atmospheric conditions in an interactive environment using post-processing techniques.

Currently the issues surrounding these post-processed effects is efficiency in real-time.  Various post-processing effects are used in Adobe Photoshop and The GIMP, where time isn’t really of the essence.  With atmospheric effects – such as scattering – game programmers and artists have traditionally used rough approximationspreetham99 due to computational expense at the hands of mathematical complexity, leading to less believable – and thus less immersive – environments.  However, these effects are becoming more popular now due to better hardware.

As stated I intend to mimic atmospheric scattering effects by applying it as a post-processed effect.  This principally means taking a screenshot of the framebuffer and attaching it to the depth buffer and applying this texture to a quad the size of the screen.  From here it is passed straight to a pixel/fragment shader where the effects are applied.  I will primarily stick to the methods outlined by Preetham in his 1999 SIGGRAPH paper “A Practical Analytic Model for Daylight” as the techniques he outlines have remained virtually unchanged.

There are two ways to implement these techniques:

  1. The traditional CPU and GPU combination
  2. The new GPGPU – General Purpose GPU – methods

In this project I will be looking into method 2 using NVIDIAs’ CUDA technology.  Due to lack of access, I will not be able to create an implementation using AMD Stream as I do not have access to a required ATI card.  I would be interested as well in creating a port of this project to a major console – time permitting – such as the PS3 or the XBox360.  However, I doubt there will be much time left over to try and make this port.

The aim of this honours project is to create a visual effect that can be used in games to create stunning and practical depth-cues for vast landscapes.

2 Comments more...

Welcome to my Honours blog

by Big Dave on Mar.10, 2009, under Reminder

This is the blog where I will keep track of my honours project next year.  I have decided to set it up now, so as to save time from doing it later when I could be getting on with studying ;)   As yet there is nothing here but this post and it will remain so up until the end of the summer holiday.  So an update will be posted by mid September at the latest.  I may, before then, decide to post some dissertation ideas on here in the mean time to serve as reminders later on.  But until then, this is the only post available in this blog.

So, see you in September folks!

Bis bald,

Big Dave

Leave a Comment :, , , , , , , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Visit our friends!

A few highly recommended friends...