PlayStation 1 Development
Design scenes in Unity's editor. Write game logic in Lua. Export to real PlayStation 1 hardware or emulator with a single click.
Lua Scripting
1-Click Build & Run
Real HW + Emulator
Unity Editor
PlayStation 1
Drag to compare
SplashEdit Unity Package
Editor tools, scene exporters, inspectors, texture quantization, VRAM packing, Lua compilation, and the Control Panel.
- Scene & object exporters
- Texture atlas & VRAM manager
- Cutscene & animation editors
- UI canvas designer
- One-click build pipeline
psxsplash PS1 Runtime
C++ engine built on PSYQo. Handles rendering, collision, navigation, Lua execution, UI, audio, and scene management on real hardware.
- GTE-accelerated 3D renderer
- Room/portal & BVH culling
- SPU audio playback
- Embedded Lua VM
- Navigation mesh traversal
Visual Scene Editing
Place objects, set up rooms, configure portals, and preview your PS1 scene directly in Unity's editor.
Texture Quantization
Automatic Floyd-Steinberg dithering to 4-bit, 8-bit, or 16-bit color. VRAM packing with texture deduplication.
Lua Scripting
Full event-driven scripting API. Entities, camera, UI, audio, cutscenes, persistence, input — all from Lua.
UI System
Canvases with images, text, progress bars, and custom bitmap fonts. Full Lua control over visibility, color, and position.
Cutscenes & Animations
Keyframed tracks with easing. Camera, object, UI, and FOV control. Audio events. Editor preview with scrubbing.
PS1 Audio
Automatic conversion to SPU ADPCM format. 24 simultaneous voices with volume and panning control.
Navigation Mesh
Auto-generated nav mesh via DotRecast. Player walking, collision with static and dynamic objects, trigger volumes.
Room/Portal Culling
Interior occlusion system with per-room cells and indexed portal references. Only visible rooms are rendered.
One-Click Build
Build to PCSX-Redux emulator, real hardware via serial (Unirom), or a full ISO disc image. All from one button.
Multi-Scene
Multiple scenes with seamless loading. Persistent key-value storage survives scene transitions. Loading screens included.
Vertex Color Modes
Choose baked lighting, flat color, or mesh vertex colors per object. Full control over your PS1 art style.
Distance Fog
Silent Hill-style two-pass fog with per-vertex blending and additive overlay. Customizable density and color.
Write all your game logic in Lua with an event-driven architecture. No game loop needed — respond to interactions, collisions, button presses, and timers.
Entity
Camera
Player
Input
UI
Audio
Cutscene
Animation
Scene
Persist
Vec3
Controls
Timer
Debug
collectible.lua
local collected = false
function onCollideWithPlayer(self)
if collected then return end
collected = true
-- Hide the object
Entity.SetActive(self, false)
-- Play a sound
Audio.Play("pickup", 100, 64)
-- Update the score
addScore(100)
setStatus("Got it!")
end
1
Install the Package
Download the .tgz from GitHub Releases. In Unity: Package Manager → Add package from tarball.
2
Open the Control Panel
PlayStation 1 → SplashEdit Control Panel (Ctrl+Shift+L). This is your central hub.
3
Install Dependencies
Click "Install" for each tool in the Dependencies tab. SplashEdit downloads the MIPS compiler, Make, PCSX-Redux, and more.
4
Design Your Scene
Add a Scene Exporter, place objects with PSXObjectExporter, set up a player, and add your first room.
5
Build & Run
Hit the BUILD & RUN button. SplashEdit exports, compiles, and launches your game on the emulator.
Emulator
Launch directly in PCSX-Redux with PCdrv file serving. Full debug console output.
Real Hardware
Upload via serial to a real PlayStation 1 with Unirom. PCdrv file serving over the cable.
ISO Disc Image
Generate a .bin/.cue disc image ready to burn or load in any PS1 emulator.