(I'm very insecure so I did have some worries that I'd gone from too wide to too narrow but I've been assured that ambient occlusion has enough scope and complexity.)
- Formulate a research question for your project.
What are the solutions to rendering dynamic ambient occlusion in realtime 3D applications (i.e. games) and how can they be improved upon*?
*(in terms of quality, cost effectiveness and better approximating global illumination/indirect lighting)
*(in terms of quality, cost effectiveness and better approximating global illumination/indirect lighting)
- Try and answer the following questions in trying to decide the RQ.
a. What is the focus of your project?
The focus will be mainly on the cost effectiveness of the different methods investigated - particularly when used in a scene with lighting, shadows, moving objects and player intereaction - as ambient occlusion can hit the frame rate hard. Of course, graphical quality is also an issue and the realism of the proximity shadows, i.e. softness, lack of artifacts etc, will be the secondary focus.I would also like to look at how the methods could be expanded so as to better emulate global illumination and indirect lighting.
b. What info do you need to find out about?
I will need to first look into static ambient occlusion - the theory behind it, its application and why the implementations for static AO are not viable for dynamic AO.From there I would progress to looking at the available methods for dynamic ambient occlusion - looking at how they solve the problems presented by static methods, how cost effective they are and what graphical glitches they may present. I've already done a bit of preliminary research and there's a number of different methods/ variations of methods. Of course, no method is perfect so I will also look into ways that they could possibly be improved.
As background reading, I also think it would be interesting to look into methods that produce ambient occlusion automatically such as ray tracing and photon mapping, and other global illumination methods.
I will need to develop a framework and application within which the various methods will be implemented. The demo will display a real-time 3d scene with moving and static objects, a player controlled camera and simple lighting and shadows (shadow mapping). The various AO methods will then be implemented within this app, and the user will be able to switch between methods and also turn lighting on and off. Performance can be measured both with and without ambient occlusion, quite easily by logging the framerates. Graphical quality will have to be measured with the naked eye.
No comments:
Post a Comment