RetroAcknex

Posted By: 3run

RetroAcknex - 03/16/20 12:36

Hey guys, here is (hopefully) finished shader collection to emulate PSone look.

Youtube:
https://youtu.be/UIzDkqpYXgw

[Linked Image]
[Linked Image]

This shader collection includes:
Quote
- vertex snapping
- affine texture mapping
- polygon cutoff
- surface darken on an angle (don't know how it's called)
- vertex lightning supporting up to 8 lights (pointlights + spotlights + sun)
- turbulence water
- fog support
- animated sprites
- multi-texture terrain (with up to 16 textures support)
- sky with fog and vertex snapping support
- chrome effect (could be used to make metal effect)
- environment mapping
- mirror floors (multiple)
- lens flares (from lights + sun)
- solid object visible through walls (don't know how it's called)
- PSX dither postprocessing shader
- glow shader (uses first skin's alpha channel for glowing parts)


It can be downloaded from here:
https://github.com/3RUN/RetroAcknex

CREDITS:
Quote
- PSX dither postprocessing shader by BitOfGold (https://www.shadertoy.com/view/tlc3DM)
- dither.png is a Bayer.png from shadertoy webpage
- Prete aka Priest for creating those awesome lens-flare effects and lens flare images (which may not be distributed commercially).
- Txesmi (forum member) thank you for helping me out with shaders! This whole shader pipeline 95% based on his work.
- Kartoffel thank you for the simple effect that darkens a surface if you look at it at an angle.
- vehicle model by Eliederson (email: eliederson (at) isbt (dot) com (dot) br)
- skycube by MFG Thomas (email thomas-koehler (at) onlinehome (dot) de)
- environmental, chrome and mirror floor shaders are based on native shaders, that came with GameStudio A8.
- dsoft20 - I took calculations for vertex snapping, affine texture mapping and cut out polygons from their awesome shader pack and migrated them into acknex engine.
Their shader pack can be found here:
https://github.com/dsoft20/psx_retroshader


SCREENSHOTS:

Best regards!
Posted By: 3run

Re: RetroAcknex - 03/17/20 11:36

Hey!

I'm currently working on:
- chrome (could be used to fake metal materials too)
- mirror floors (multiple)
- environment mapping (multiple)
As soon as I'll get them finished, I'll update the repository!

Best regards!
Posted By: Emre

Re: RetroAcknex - 03/18/20 15:09

Hi, 3run. That's really cool! i never had ps one but i once played silent hill. i can say that when i run your project, that game came to my mind immediately. it's really looks like a ps one game. Regards.
Posted By: 3run

Re: RetroAcknex - 03/18/20 20:13

@Emre thank you man!

Updated first post!

Added:
-chrome
-environment mapping
-mirror floors

Greets.
Posted By: 3run

Re: RetroAcknex - 03/21/20 18:25

Hey!

Despite not having any feedback I'm currently working on lens flares (based on lens flares made by Prete aka Priest (original one can be found on Free Resources page, under Code). Hopefully in next few days I'll finish.

Best regards!
Posted By: 3run

Re: RetroAcknex - 03/24/20 13:48

HUGE UPDATE! Bug fixes and refactoring. Added lens flares.
I guess this is the final version, I don't know what else could be added to this PSone graphics style collection.

First post updated.

Greets.
Posted By: Evo

Re: RetroAcknex - 03/25/20 15:00

Nice job. Hoping I can use this to give better shadows and detail to my first-person dungeon crawler project.
Posted By: 3run

Re: RetroAcknex - 03/25/20 15:51

I'll be glad if you will find this collection useful for your projects! :>
Posted By: 3run

Re: RetroAcknex - 04/16/20 15:47

Added 'visible through walls' shader.
[Linked Image]
Posted By: txesmi

Re: RetroAcknex - 04/18/20 12:45

that effect is cool. How did you do that?
Posted By: 3run

Re: RetroAcknex - 04/18/20 16:43

Thank you for kind words! :>

I used two passes:
- first one to color entity with the defined color and it also has ZFunc set to GREATER and ZWriteEnable set to FALSE.
- second one is a normal pass but with ZFunc set to LESS and ZWriteEnable set to TRUE.
I was amazed that it worked so easily grin

I also bumped on a more complex/difficult solution, where people suggested to used stencil buffer to draw a circular translucency around the given entity.
Here how it looked like:
[Linked Image]

Greets
Posted By: txesmi

Re: RetroAcknex - 04/18/20 20:30

Thanks to you for the explanation. It is much easier than my especulations laugh
Posted By: Ezzett

Re: RetroAcknex - 04/26/20 18:55

Wow 3run, thank you for your work. This is really awesome stuff. It gave me nostalgia flashbacks!

I wanted to implement PSX shaders for many years, but I never felt like doing it. Now I can just study the code. grin
Posted By: 3run

Re: RetroAcknex - 04/26/20 19:04

Hehe, glad that you liked it and found it useful! laugh
Posted By: 3run

Re: RetroAcknex - 04/27/20 13:17

Small update:
- added function to remove the pipeline (sky, mirrors, postprocessing)
- added solution for acknex square render target bug (thanks to txesmi!)
- added NES (can be changed in .fx to GAMEBOY or EGA) palette color and dither (postprocessing)
- added resolution decrease/increase function for testing purpose
Posted By: 3run

Re: RetroAcknex - 05/13/20 12:25

Small update:
- added psx dithering instead of NES color palette/dither
Posted By: 3run

Re: RetroAcknex - 05/18/20 14:32

Small update:
- added glowing shader (uses first skin's alpha, glowing parts ignore lighting)
- tweaked lens flare to fit (more or less) PSone style
[Linked Image]
© 2024 lite-C Forums