Allegro.cc - Online Community

Allegro.cc Forums » The Depot » SmartRay

This thread is locked; no one can reply to it. rss feed Print
SmartRay
Billybob
Member #3,136
January 2003

I worked on an engine called SmartRay for quite some time. Maybe a year. It's been awhile since I worked on it. I stopped working, because I saw no point to continue. I just moved on to other things ;)

However, I figured I'd release what I have. Obviously, it isn't finished, but it's got a lot of features.

As to what exactly it is, it is an Advanced Raycaster Engine. An advanced raycaster is similar to a raycaster, except it deals with line-segments or variable hieght and not just a square map of blocks. It also uses a room-based occlusion system to determine which walls are visible. Like I said, SmartRay has a lot of features. Decals, floors, ceilings, masked walls and floors and ceilings, sprites(masked), translucent walls, sliding doors, 2d positional sound, MIDI music, movement in all directions, viewing in all directions(up and down is restriced to a certain max and min angle), translucent decals, and probably more. IIRC it has fog(depth-cue) too.

It is a bit buggy, I think. Edge-rendering at door cracks isn't working right, collision-detection is a mess so try to avoid walls, and I believe I had a really bad and buggy physics system in the code which should be disabled...watch out though ;) Oh, and IIRC there is 1 bug with floor/ceiling rendering when you are at and odd hieght, though I might have fixed it ???

Ok, well it's attached. It's an MSVC project so not everyone will be able to compile it, sorry, but there is a precompiled EXE so compiling isn't necissary. It isn't Linux comptable...or any other OS compatable, sorry. Most of my newer projects are cross-compatable, so don't scream at me Linux people ;D This was made awile back, when I didn't care about that stuff.

Controls:
+: Fly up
-: Fly down
ESDF(that's WASD over 1 key): 2d movement
Left Control: Run fast...I guess...I forgot I had that control ;)
A: Open door
G: close door

On the demo map the door is down the hallway to your right, so wait til you see it before playing with it. And yes, you can go inside that little hole there, just open the door and fly to the right hieght and you can squeeze in.
OH, and fly up at the beginning, cause the default hieght is that of...a snail?

And the screenshots:
[url http://www.cljy.com/~billy/SmartRay%20July%2016,%202003/]
Those are kind of old, BTW. You'll have to play to see the new stuff ;)

Download(~2.5MB):
[url http://www.cljy.com/~billy/Advanced%20Raycaster.zip]

I hope that's everything.

Have a nice day!

Chris Katko
Member #1,881
January 2002
avatar

Wow, that's neat. My only problems were that I got stuck a little, and that the camera's vision looks spherical at times.

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs
"Political Correctness is fascism disguised as manners" --George Carlin

Thomas Fjellstrom
Member #476
June 2000
avatar

From the screen shots, the walls are wavy, like they are blowing in the wind :o

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro TODO]
"If you can't think of a better solution, don't try to make a better solution." -- weapon_S
"The less evidence we have for what we believe is certain, the more violently we defend beliefs against those who don't agree" -- https://twitter.com/neiltyson/status/592870205409353730

Goodbytes
Member #448
June 2000
avatar

Yeah, that's pretty cool... definitely the first Charlie Brown and Bible-themed raycaster I've played in a long time. The camera looks a bit fisheyey, though... but, all in all, good work.


--
~Goodbytes

Billybob
Member #3,136
January 2003

Thanks ;)
That weird effect is probably a result of the hackish anti-fisheye algorithim:
dist = cos(angle - viewing_angle) * dist;
and sine for the floor. That isn't the perfect solution, as it seems. I think I know a better solution...but it'd take some work and like I said I'm not working on this anymore :-/

Quote:

definitely the first Charlie Brown and Bible-themed raycaster I've played in a long time.

:P that was the first MIDI I came across when looking for test music on my machine.

Go to: