A WIP 3d engine for the original PSX. Uses Nugget+Psyq, no libgs, and has a companion extension for Blender !
Go to file
2021-06-22 18:33:47 +02:00
config ovly level switch now working 2021-04-16 20:22:03 +02:00
levels Merge ovl upload 2021-05-02 19:12:13 +02:00
TIM Merge ovl upload 2021-05-02 19:12:13 +02:00
.gdbinit migrate to multifiles setup 2021-04-10 14:22:48 +02:00
atan.c Fck again 2021-02-11 16:00:01 +01:00
camera.c Dualshock support 2021-04-20 11:55:52 +02:00
camera.h Add cammode defines 2021-06-22 17:24:52 +02:00
coridor2.blend Merge ovl upload 2021-05-02 19:12:13 +02:00
custom_types.h Add LEVEL struc 2021-04-15 18:18:39 +02:00
defines.h Add cammode defines 2021-06-22 17:24:52 +02:00
graphics.c ovly level switch now working 2021-04-16 20:22:03 +02:00
graphics.h preparing level ovly loading 2021-04-13 16:52:48 +02:00
isotest.sh Merge ovl upload 2021-05-02 19:12:13 +02:00
loadlvl.py switch to new cmd scheme 2021-05-02 12:52:09 +02:00
macros.h migrate to multifiles setup 2021-04-10 14:22:48 +02:00
main.c Add cammode defines 2021-06-22 17:24:52 +02:00
Makefile switch to proper pad/ds support 2021-04-18 23:41:28 +02:00
math.c Dualshock support 2021-04-20 11:55:52 +02:00
math.h migrate to multifiles setup 2021-04-10 14:22:48 +02:00
overlay.ld Add LEVEL struc 2021-04-15 18:18:39 +02:00
ovly-upload-helper.sh add sio helper script 2021-05-02 12:59:03 +02:00
ovlyup.sh ovly level switch now working 2021-04-16 20:22:03 +02:00
pad.c switch to proper pad/ds support 2021-04-18 23:41:28 +02:00
pad.h trying some things with sio 2021-04-28 20:32:46 +02:00
pcdrv.c Merge ovl upload 2021-05-02 19:12:13 +02:00
pcdrv.h trying some things with sio 2021-04-28 20:32:46 +02:00
pcsx.json Merge ovl upload 2021-05-02 19:12:13 +02:00
physics.c migrate to multifiles setup 2021-04-10 14:22:48 +02:00
physics.h Use overlay to load level 2021-04-14 15:56:14 +02:00
psx.c Add cammode defines 2021-06-22 17:24:52 +02:00
psx.h Add cammode defines 2021-06-22 17:24:52 +02:00
README.md Update features 2021-06-22 18:33:47 +02:00
space.c migrate to multifiles setup 2021-04-10 14:22:48 +02:00
space.h migrate to multifiles setup 2021-04-10 14:22:48 +02:00

3dcam PSX engine

This a WIP PSX 3d engine. Use this with the companion blender exporter to create levels for the engine.

3d scene pre-rendered BGs Push things Sprite Vertex animation

More video samples here.

Features

Be warned this is WIP !

comparison
Real-time 3D / 8bpp background / 4bpp background

"Engine"

  • UV textured models
  • Vertex painted models
  • Multiple camera modes
  • Vertex animations
  • Up to 3 light sources
  • Use pre-rendered backgrounds (8bpp and 4bpp)
  • Basic collisions

Planned

  • Fix and improve all the things !
  • Wall collisions

Compiling

You need to install mkpsxiso and the pcsx-redux emulator and Nugget+PsyQ SDK before you can build the engine. Put mkpsxiso and pcsx-redux in your $PATH and you should be good to go.

  1. Clone this repo in (...)/pcsx-redux/src/mips/
  2. Navigate to that folder in a terminal :
cd /pcsx-redux/src/mips/3dcam-headers
  1. Type ./isotest.sh. This should compile the example, build an iso with mkpsxiso and launch it with pcsx-redux.
  2. Install the blender extension to create your own levels.

Credits

PSX code based on example by Lameguy64
An incredible amount of help from the good fellows at the psxdev discord,
Including but not limited to @NicolasNoble, @Lameguy64, @Impiaa, @paul, @sickle, @danhans42...