config | ||
include | ||
levels | ||
src | ||
TIM | ||
custom_types.h | ||
isotest.sh | ||
Makefile | ||
overlay.ld | ||
ovly-upload-helper.sh | ||
README.md |
3dcam PSX engine
This a WIP PSX 3d engine. Use this with the companion blender exporter to create levels for the engine.
More video samples here.
Features
Be warned this is WIP !
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
Demo Controls
- L1, L2 : rotate light matrix.
- R1 : Change camera mode.
- R3 (Dualshock) : Rotate camera in orbital mode.
- Up, Down, Left Right, L3 (Dualshock) : Move actor.
- X : "Jump" .
- Select : Switch level.
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.
- Clone this repo in
(...)/pcsx-redux/src/mips/
as a new project :
git clone https://github.com/ABelliqueux/3dcam-headers my-project
- Navigate to that folder in a terminal :
cd /pcsx-redux/src/mips/my-project
-
Type
./isotest.sh
. This should compile the example, build an iso withmkpsxiso
and launch it withpcsx-redux
. On first launch,pcsx-redux
will ask for a PSX bios. You can use your own or the open source OpenBios.
A prebuilt binary is available here for convenience.
Set it in pcsx-redux ;Configuration > Emulation
, then reboot the emulator ;File > Reboot
. -
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...