home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Assembly 1994 - The 3rd Phase
/
ASMROM94.mdf
/
sources
/
3dscape2.txt
< prev
next >
Wrap
Text File
|
1994-11-12
|
3KB
|
69 lines
Hi all, here's a little demo I did a few months ago. It is part of a
suite of programs written for Fresh week 1993 for Bits - The University
of Bristol Computer Society (of which I am President).
It generates a fractal landscape and projects it in 3d. When run, you
will be shown an overhead view of the landscape in the top left hand
corner of the screen. This shows the landscape stored in memory. The
area inside the black rectangle is the area of landscape which will
be projected. You can move the black rectangle using the 'WSER' keys
for up, down, left and right, repectively. Notice that when the black
rectangle reaches the edge of the landscape stored in memory, the
landscape is shifted and a new section created. The actual new land
generated should follow on smoothly from the land already shown. This
currently works better in the up/down direction than the left/right
direction - the reasons for which I am not sure about (yet).
Pressing space will take you into the 3D bit. Here the keys are almost
the same. 'WSER' will scroll the landscape (whilst also projecting it).
Holding down 'SHIFT' whilst pressing 'W','S','E' or 'R' will continually
scroll the landscape in the direction specified. Other keys available
are:
Q Zoom into the landscape
A Zoom out of the landscape
SHIFT+Q Rotate eye about horizontal axis
SHIFT+A Rotate eye about horizontal axis
I Rotate landscape about vertical axis
O Rotate landscape about vertical axis
SHIFT+I Continuously rotate landscape about vertical axis
SHIFT+O Continuously rotate landscape about vertical axis
SPACE Reset everything to normality
ESCAPE Quit program
There were originally many more keys (hence the rather odd positioning
of the current keys) but they were 'optimised out'.
It was written on a 33MHz 486 with a Paradise 90c30 graphics chipset on
an 11MHz bus. If you run it on anything less, then don't blame me if it
either doesn't work, or goes horribly slowly! Seriously though, if you
do have any major problems, then email me and I'll see what I can do.
I have included the full source code for this demo. Please feel free to
examine it. I apologise in advance for the lack of comments, and the
code may be hard to follow simply because it has been optimised. If you
find the code useful, a greet would be appreciated in any demo you write.
Please don't just blatently rip it off.
The program is designed to be compiled using Borland C++ 2.0 (which
includes TASM). You may or may not have problems trying to recompile it
under anything else.
I am currently seeking to join a demo group of some description
(preferably one with a good musician/graphics artist) - email me if you
are interested.
David Hedley (hedley@cs.bris.ac.uk)
Computer Science Undergraduate at the University of Bristol, England
CREDITS
-------
All program design and implementation by David 'Deadly' Hedley