David Schmenk's lo-res 3d demo




















Check it out online


I mapped out my house and drew some textures to use
in the game..  you need to make vertical axis tall 
if you want to be able to view from very far away..
tricks:
when a cell in the map contains 15, it is an exit 
door..
exit doors RTS to basic when you open them...
you can test player X,Y coordinate... see which
door the player opened..
you can then poke a newx,y coord for the player,
and make doors lead to other parts of the map.
the map above shows 3 stories of my house, with
a bunch of extra junk around it (remnants of David's
demo map)
the bottom/top of stairs has an edit door in its'
cell..  it returns to basic, and basic sets the player
position to the other end of the stairs, on a different
floor..
you could make type 15 look like the bottom of a staircase..
then test for "end of game" or "next level" by coordinates
from basic.
type: 00 = empty cell
type: 15 = exit cell
type: 14 = door cell..  when the door opens, the cell becomes
type0, so you can walk through it.
textures are 16X16 with 16 possible colors
you can test coordinates in BASIC, and load different
texture sets for different parts of the map!
or, make doors or stairs on a level lead to a different
map, or different coordinates on the current map
might be cool to have an animation in lores, in BASIC,
between floors on a map..  show a guy walking up some
stairs...  or a 3-d anim of walking up stairs... hmm.






David's original post to csa2: here


From:  David Schmenk - view profile 
Date:  Wed, Jan 17 2007 3:10 am  
Email:   David Schmenk  
Groups:   comp.sys.apple2, comp.sys.apple2.programmer 
Not yet ratedRating:    
show options  
Reply | Reply to Author | Forward | Print | Individual Message | Show original | Report Abuse | Find messages by this author  
Here for your enjoyment is a technology preview/demonstration of a 
raycasting and rendering algorithm I have developed as part of my Apple 
II 30th birthday-retro-game-just-because-I-can thing.  Reminiscent of 
Wolfenstein 3D, it runs on a standard 1 MHz 48K Apple II+ (or II w/ 
Applesoft in RAM/ROM) or greater.  Only a joystick is required.  It is 
possible to run it on an emulator, but I highly recommend using real 
hardware with a color monitor.  Accelerators make it run too fast, so 
disable them if you want the controls to be sane.  I present it as a 
140K DOS 3.3 disk image compressed with gzip.  Download with this URL: 
http://schmenk.is-a-geek.com/tarfiles/raydemo.dsk.gz 
I hope it doesn't end up being a bad idea placing a direct link, but its 
only 11K in size. 
Just a little background - I have a pile of algorithms I've been 
creating in my notebook for some time.  Some people like Soduku for 
their diversion, I like 6502 assembly language.  The 30th anniversary of 
the Apple II seemed like a good time to put some of them together.  Its 
always fun to make old (obsolete) hardware do things people don't 
expect.  In this case, a full screen 3D walkthrough.  However, don't 
think I've made an Apple II perform like NVIDIA's latest GPU.  In order 
to get interactive framerates and decent colors, the lo-res graphics 
mode is employed.  I am not double buffering the rendering - you see it 
as it renders.  Textures are only 16x16, and there are only 15 of them. 
  It would have seemed pretty cool back in 1977 though. 
Download it, give it a try, let me know what you think.  I hope to have 
an actual game to play with a geekly humorous story-line in a few months 
based on this technology. 
Dave...