A downloadable asset pack

Download NowName your own price

CopperCube PSX Shader Extension

Bring Retro PlayStation 1 Visual Effects to Your CopperCube Projects

Enhance your CopperCube scenes with this PSX-inspired shader, bringing the iconic look and feel of early 3D consoles to life. Designed to replicate the visual effects of PlayStation 1 games, this shader adds unique retro-style effects such as texture warping, dithering, jitter, dynamic lighting, and fog.

Key Features:

  • PSX-Inspired Visuals: Achieve classic PlayStation 1 aesthetics with effects like dithering, texture warping, and jitter, perfect for creating retro-style games or adding vintage visual flair to your CopperCube project.
  • Dynamic Lighting: Supports up to four light sources in the scene, dynamically affecting objects with lighting that is automatically sourced from the scene’s light nodes (configured in the CopperCube editor).
  • Fog Effects: Automatically applies fog based on the scene's settings, offering a more atmospheric environment with depth-based fog blending.
  • Color Dithering: Replicates the limited color palette of early 3D consoles, with adjustable dithering intensity to control the visual retro effect.
  • Texture Warping & Jitter: Simulates the imprecision of early 3D hardware, including texture distortion and random vertex shifts for an authentic PSX experience.

How It Works:

  1. PSX Shader (Behavior): Set up the shader with parameters like dithering intensity, texture warp, jitter, and dynamic lighting. Once configured, this behavior prepares the shader for use in your scene.
  2. PSX Shader (Action): Apply the shader to scene nodes, such as meshes, billboards, or animated meshes. The action ensures that the shader is applied to all materials in valid node types, transforming their visuals with retro effects.

Simple Setup:

  • Add PSX Shader (Behavior) to your scene to initialize the shader settings.
  • Use PSX Shader (Action) to apply the shader to the selected scene nodes (mesh, billboard, or animated mesh).

Requirements:

For proper functionality, PSX Shader (Behavior) must be executed before PSX Shader (Action) to ensure the shader is initialized correctly.

Lighting & Fog:

  • Lighting: The shader supports dynamic lighting based on the scene’s light nodes, with up to four light sources automatically applied. Lighting parameters are sourced directly from the editor’s light nodes.
  • Fog: Fog effects are automatically configured from the scene's settings, allowing for depth-based fog that adjusts as per the scene’s root node properties.

Perfect For:

  • Developers creating retro-style or nostalgic 3D games.
  • Those who want to replicate the aesthetic of early PlayStation 1 graphics in their CopperCube projects.
  • Adding vintage effects to 3D environments with minimal setup.

Compatibility:

  • Works with CopperCube version 6.0 and above.
  • Supports both DirectX (HLSL) and OpenGL (GLSL), ensuring broad compatibility.


Example of Using the Shader:

  1. Scene Setup: Create a scene with a standard box, cubeMesh1, and four light sources.
  2. Add Shader Behavior: Attach the PSX Shader behavior to the root node of the scene. Configure all the values as needed, add lighting nodes, and enable the UseLight variable for lighting functionality.
  3. Assign Shader to Node: Use the PSX Shader action to assign the shader to a specific node (e.g., cubeMesh1). Trigger the assignment in the "Before first drawing do something" event.

Final Output:


Updated 23 days ago
StatusReleased
CategoryAssets
Rating
Rated 5.0 out of 5 stars
(4 total ratings)
AuthorSamGrady
Tagsambiera, coppercube, gamedev, PSX (PlayStation), Shaders

Download

Download NowName your own price

Click download now to get access to the following files:

action_psx_shader.js 4.3 kB
behavior_psx_shader.js 48 kB

Development log

Comments

Log in with itch.io to leave a comment.

Hey, Sam. I want to work with you, is it possible to write you down somewhere?

Depends on what you mean by that. In general, you can start by writing to me at this email: samgradyart@gmail.com.

how to use this plugin? and how turn on this plugi???

Here’s the link to the official guide on how to install them:https://www.ambiera.com/coppercube/download_extensions.html#HowWork

Hi. I dont think i found material index. Idk if i am blind or something but when i type 1 in material index it doesent change anything. Where is it?

Look, the material index in the editor starts from one, while in the shader it starts from zero. So, take the index you need from the editor and subtract one.

(+1)

Thanks i love you. Great shader <3

I love you too... Thank you ))

sam grady is the lighting update out yet?, I need it for my game party incident

At the moment, I’m not working on the shader, so I can’t say when the update with lighting will be released.

okay, take time!

The version with lighting is already out, by the way.

okay so uhm idk if this is my problem, but for some reason even tho I have settings to default and lighting enabled and all 4 light setting were filled and I turned on dynamic mode on the model, NO FIX, bilinear settings all off STILL NO FIX, please tell me how can I fricking get this back to working my man

(2 edits)

You might be using this shader incorrectly.
First, let me explain that the shader’s behavior simply declares the shader, while the shader is applied to a node through an action. 
For example, create a scene with cubeMesh1 and four light sources.
After add PSX Shader to behavior of the root node, add the lighting nodes, and enable the UseLight.
And after that, call PSX Shader action to assign the shader to cubeMesh1. I trigger the shader assignment in the "Before first drawing do something" event.

(+1)

Whoa! Update is crazy! Thank you so much for this plugin :D

Thanks! In the next shader update, lighting might be added, and a lot of things will be reworked again, but that’s way off in the future :

)

where i can see material index

In the 'irrEdit - Irrlicht Properties' tab, you can find material properties of your node such as material index, material type, z-buffer, and many other material parameters.

(+1)

I love you Sam Grady

Love you too, man)))

(+1)

Excellent, thanks!

Thanks)

(+1)

Absolutely insane thing! A love it!

It still needs some work, but thanks)

(+1)

This looks sick! Can't wait to try this one out. Great Job as always friend 👏🏻 👏🏻 👏🏻

(-4)

I highly disagree

Thanks, man. I hope one day I'll see this shader in one of your games.