Archive for the ‘Graphics technology demo’ Category

GTD – Planetary objects

Monday, February 9th, 2009

It’s been a while since the last update, and unfortunately it’s likely to be a little while till the next one due to upcoming university coursework. I’ll still try to spend a couple of hours every few nights on this though if I can.

Anyway onto the update. Firstly I’ve fiddled about with the atmospheric settings to add a bit of a more “blinding” effect from looking at the sun, though I feel it might be overdone for when you’re not looking at the camera. Maybe something to add would be a modifier that increases based on how central the sun is to the screen.

Secondly I’ve added some planetary objects to the previously empty sky. There is now a sun which orbits the sky during the day and stars which become visible at night. Pictures below!

From inside the dome - Click to enlarge images

011-inside-dome-day 011-inside-dome-night 011-inside-dome-nightmore

From outside the domeClick to enlarge images

011-outside-dome-day 011-outside-dome-night 011-outside-dome-nightmore

I have also been working on other parts of the engine. I added a modified version of my camera from “Blocks” with the physics interactions stripped out. I have also been learning how to use vertex/fragment shaders, I planned on converting the sky calculations to the graphics card but I may save that for another time now. In the more immediate future I plan on using shaders to add dynamic shadowing to the terrain, possibly using the shadow-mapping technique.

GTD – Atmospheric scattering

Sunday, February 1st, 2009

I’ve almost finished implementing the base for the sky, using the SkyDome technique. Instead of a skymap or a colour table I decided to use a simulation of how light actually scatters in our own atmosphere for a (hopefully) more realistic approach. This means that I also have a day/night cycle, albeit currently it takes a total of one minute to complete the cycle as opposed to 24 hours! Screenshots below.

Wireframe of the SkyDome

009-skydome-wireframe

The sunrise (NB: the actual sun itself isn’t drawn yet)

010-skydome-atmospheric-scattering010b-skydome-atmospheric-scattering010c-skydome-atmospheric-scattering010d-skydome-atmospheric-scattering010e-skydome-atmospheric-scattering010f-skydome-atmospheric-scattering

I also had a few rather interesting glitches while implementing this. When I tried to first display it I put every colour value of the SkyDome’s vertices to red (um.. because it’s the standard sky colour…? Don’t ask me why!). However I made my colours were stored as RGBA and I was accidentally making the colour pointer read the values as RGB, this resulted in alternating between full red/green/blue colours due to incorrect offsets.

Glitch – Rainbow sky?

008b-skydome-rainbow008c-skydome-rainbow

Not very realistic but interesting as far as glitches go!

My next steps with this sky will be to make it a bit more realistic, there are no planetary objects currently (sun, stars etc) so that would probably be a good next step. Clouds might be added too.

Graphics Technology Demo

Thursday, January 29th, 2009

gfxpreview1gfxpreview2

I’ve started a new project. I’ve decided to make something of a graphical tech demo, partly for you lovely potential employers out there but mainly because I simply want to expand my knowledge on the graphic side of things. I learnt a significant amount from my final year project “Blocks”, such as VBOs, multi-texturing, projective texturing (initially for a prototype flashlight but taken out as there was no need for it in the game), resource management etc. But while these are all important, they’re not very flashy. That’s where this project comes in.

I’m going to make a demo that displays a multitude of graphical techniques through an outdoor scene. Currently I have random terrain generation and rendering going on, I’m going to build on top of this. The goal is to add water rendering, skydomes, maybe atmospheric scattering, weather, foliage, HDR, and whatever other ideas may crop up down the line.

Latest screen:

007-textures