3D FPS Example

Programming examples for the Psy-Q SDK
User avatar
LameGuy64
Verified
Psy-Q Enthusiast
Psy-Q Enthusiast
Posts: 388
Joined: Apr 10, 2013
I am a: Hobbyist Game Developer
Motto: Commercial or not, play it!
PlayStation Model: H2000/7000
Location: Philippines
Contact:

Post by LameGuy64 » July 24th, 2019, 11:46 am

I don't think this example is optimized enough to display flawlessly in hi-res mode, since hi-res operates in single buffer mode which demands 60FPS. I don't remember how I coded this demo exactly (its been so long) but you basically want to position both display/draw buffers to the same VRAM location (0,0) when doing hi-res.
Please don't forget to include my name if you share my work around. Credit where it is due.

Dev. Console: SCPH-7000 with SCPH-7501 ROM, MM3, PAL color fix, Direct AV ports, DB-9 port for Serial I/O, and a Xplorer FX with Caetla 0.35.

DTL-H2000 PC: Dell Optiplex GX110, Windows 98SE & Windows XP, Pentium III 933MHz, 384MB SDRAM, ATI Radeon 7000 VE 64MB, Soundblaster Audigy, 40GB Seagate HDD, Hitachi Lite-on CD-RW Drive, ZIP 250 and 3.5" Floppy.

User avatar
MihaiGamerXD
Active PSXDEV User
Active PSXDEV User
Posts: 38
Joined: Mar 09, 2019
I am a: Programmer
PlayStation Model: SCPH-1001

Post by MihaiGamerXD » July 25th, 2019, 4:52 am

I see what's wrong. Forgot to set "SetDefDispEnv(&disp, 0, 256*ActivePage, SCREENXRES, SCREENYRES);" to "SetDefDispEnv(&disp, 0, 0, SCREENXRES, SCREENYRES);"
Same as "SetDefDrawEnv". So thank you for helping me. And thanks to you, I can make my own 3D game like yours.

PolybiusProxy
What is PSXDEV?
What is PSXDEV?
Posts: 4
Joined: Jul 06, 2020

Post by PolybiusProxy » July 8th, 2020, 12:52 am

Awesome!

Sjors
What is PSXDEV?
What is PSXDEV?
Posts: 3
Joined: Jul 08, 2020

Post by Sjors » July 20th, 2020, 9:35 pm

There's ways to draw primitives without using the TMD format, but AFAIK it's the default format for complex models. I think it's possible to do some optimizations on these files as well, and there's different GsDOBJ handlers for them that affect performance too. As for collision, I'm not sure how to handle it with Psy-Q. Normally I'd do a raycast and see if I'm hitting a triangle in the direction I'm going, but I don't think this logic is included in Psy-Q, and it might not be feasible on the hardware.

Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests