|
Submitted by , posted on 02 July 2002
|
|
Image Description, by
What's up all!
First, I'd just like to say that man- the IOTD's are really looking nice
and you all should keep it up. There's nothing better than working hard
and getting nice feedback for your work. Anyways- for this shot's
description.
This is a procedural aquarium that I've been developing for two weeks in
my spare time for a chapter of a friend's book. I say 'procedural'
because a lot of the things in it are controlled using a procedural
texture primitive- noise. The first thing I did was develop a bunch of
interpolation functions- linear, cosine and cubic. Then, using noise I
somewhat uniformly dispersed the fish around the aquarium. Each fish has
its own tic count timer. When it elapses, a new position is chosen
randomly (via noise) and the fish is moved via one of the three
interpolation functions. Also, if you look at the back of the tank
you'll notice a bunch of bubbles. The bubbles use a very similar
algorithm that the fish do; I create a Bubble/Fish bounding field (in my
case, just a box, but it is adaptable and can be any shape the
programmer wants) and move the bubbles at a constant rate up the Y-Axis
adding noise each tic to make them jiggle unpredictably like real
bubbles. Last but not least, the light under the case's intensity
flickers- once again, also by means of noise.
As you can tell, this really is one noisy demo! But just sitting back
and watching it really is peaceful. I'm also thinking of making a screen
savor version. Ah, yes- I forgot to mention; the ground is also a
heightmap that is generated by- you guessed it: noise. Anyhow, the
purpose of this demo was to show programmers just how easy it is to add
details to their games using noise instead of paying animators (no
offense animators- I consider myself an animator too, so I know how it
feels =P). My goal by doing this is to be able to save this project into
a nice little adaptable .dll and call it up in my 3D engine whenever I
want. If I can add enough 'small programs' like this to the .dll, I can
essentially develop a library of cool specifial effects that I can
easily just 'drop' into any game I make.
The demo has already been completed- it has nice sin/cosine auto
rotation, and if u press the 'R' key, you can use the arrow keys to
navigate manually. Also, in the program directory, there is a file
called numFish.txt which allows people to adjust the fish count. All of
the fish Sleep, Swim and Interact with each other. The demo is not
available online yet because it's going to be going into my friend's
book. But once the book is out, the executable will be made available
online. The source and a beautiful 30page chapter explanation will be
found in the book only! For now, check out more pictures at my
website:
http://www.wiz3domain.com/aq/
Till next time,
-Uthman "Papacharino" Apatira
|
|