Page 1 of 1

Raycaster Engine/LikeAllegro/Ps2Pong

Posted: Tue Jul 04, 2006 3:52 pm
by Kojima
Hi,

Didnd't think you'd mind me posting these since there's hardly any releases made around here. Please inform me If i've included anything I shouldn't have.

http://www.savefile.com/files/8042735 < Pong - Source/Elf

http://www.savefile.com/files/3689284 - Raycaster/LikeAllegro/Demo - Source/Elf

The raycaster is a port of a windows one using my like allegro(Which is based on the tutorial code) for output. I also converted it all to OO instead of just a main loop.

Posted: Tue Jul 04, 2006 8:25 pm
by Kojima
Update 1 of the raycaster lib/like allegro uploaded.

Now includes image loading (Incl from host) of a .raw format. also included is a windows tool to convert from jpg/png/bmp/tga into the raw format. (Just drag and drop the image on the tool and it'll work out the new name for you)
And the raycaster now has texture mapping. You set the textures by index and the map tile number indicates which texture to look up.

http://www.savefile.com/files.php?fid=5416162 (Requres base install above)
-

I'm working on porting over the floor/celling code but it's really quite slow atm when you turn on the floor map. Trying to do some luts and the like to speed things up.

Posted: Wed Jul 05, 2006 2:41 am
by Polo35
Hey,

I'm not able to load your pong prog.

Here my output from ps2client:

$ ps2client -h 192.168.0.10 execee host:basic.elf
loadelf: fname host:basic.elf secname all
loadelf version 3.30
Input ELF format filename = host:basic.elf
0 00100000 0001aae0 ..
Loaded, host:basic.elf
start address 0x1000e0
gp address 00000000
loadmodule: fname rom0:SIO2MAN args 0 arg
loadmodule: id 35, ret 0
loadmodule: fname rom0:PADMAN args 0 arg
Pad driver. (99/11/22)
loadmodule: id 36, ret 0
loadmodule: fname host:freesd.irx args 0 arg
FREESD v0.9
loadmodule: id 37, ret 0
loadmodule: fname host:ps2snd.irx args 0 arg
debug_level = 1 (ps2snd 0.1
loadmodule: id 38, ret 0
Loaded Modules
Set Volume
ps2snd(sndStreamOpen): open failed (-1)
Failed to open stream

There is no ntrack5.ADPCM in your rar file.

Best regards

Polo

Posted: Wed Jul 05, 2006 3:05 am
by Kojima
Yeah, I was using a commercial track and I wasn't sure about the legality of releasing a freeware demo with it(well I was pretty sure actually), so I opted not to.
The playsound stuff is only about 3 lines though, so it should be fairly easy to edit out.
All the same, I'll re-upload a version that doesn't require it later tonight.

Posted: Wed Jul 05, 2006 3:13 am
by Polo35
No problem, i replaced your track by a patrice track. lol

Good work, that's quite impressive.

Just one thing, pad response is a little bit too "strong", i mean control is hard. lol
And sound doesn't repeate.

Best regards

Polo

Posted: Wed Jul 05, 2006 5:01 am
by Kojima
Thanks Polo.
About the controls, yeah, I dunno if it's just my control pad or not, but the dpad pressure sensitive buttons get stuck at around 20-30 when you let go of them, so it was kinda hard finding a right balance.

Posted: Wed Jul 05, 2006 7:35 pm
by Kojima
Update 2 of the Raycaster engine/demo.

http://www.savefile.com/files/7087584 - As ever, new source/new elf.

This version adds the following,

Texture mapped Floor and Ceiling.
Z buffered scaling sprites.

Now there was a problem when porting the floor code over. That being it was just too slow. It literally made the framerate drop from 20-30fps(I guess, not tested) to about 1fps.
So I had to rewrite it and optimize it using luts. It worked. it now runs at around 20-25fps even when the floor takes up 50% of the screen.
But the downside is the quality isn't as good.

If anyone wishes to improve it (Or any part of the library) I'll be happy to incorperate it in future revisions.

Oh yeah, this version has proper textures this time, instead of that ps3/png pic so looks alot better.

Posted: Wed Jul 05, 2006 8:12 pm
by evilo
Hi Kojima,

I told you, you should use gsKit !

the libdream is ooolllldddd and slooowwww......
but it remains a good tutorial on the GS :)

Posted: Wed Jul 05, 2006 8:45 pm
by Kojima
Hi,
Blitting wasn't the problem, I disabled blitting of the floors and the speed was just as slow. it was the maths that crippled the ee, so I had to use luts.
Know of a decent tutorial on EE ASM or any code examples? I want to use asm to speed things up but don't know where to begin.

Posted: Thu Jul 06, 2006 5:15 am
by Drakonite
VU!

Posted: Thu Jul 06, 2006 5:44 am
by Kojima
VMe? VU! Backbuffer.
-

No seriously, is the VU easy to learn compared to say C++?