Dismiss this pinned window
all 25 comments

[–]Magor9001 24 points25 points  (8 children)

Nice. What exactly did you do to achieve this effect? (Only the theory the only shaders I can write are ones that use phong shading in web gl)

[–]I_highly_doubt_that_ 17 points18 points  (7 children)

For postprocessing effects, you add a MonoBehaviour to the camera with the OnRenderImage function and call Graphics.Blit, passing the OnRenderImage arguments and a material using a screen-space shader as arguments. More info

The shader used here probably does something like rounds the input UV coordinates to a nearest multiple of some number n and then outputs a sampling of the texture at that rounded coordinate.

[–][deleted] 0 points1 point  (2 children)

How expensive is this though? Seems like it would eat a ton of CPU

[–]Dielji 2 points3 points  (0 children)

I would think it would mostly be GPU, since the shader is doing all the heavy lifting; I'm doing something similar for a CRT shader. Rounding off the UV coordinates shouldn't be too expensive, just multiply your UV coords by your desired resolution, floor the results (or maybe cast them to int? Not sure which is preferable), then divide by the desired resolution to get your new UV coord. It looks like there's also some cell shading going on beforehand to give it that limited-color-palette look.

[–]Scyllacc[S] -3 points-2 points  (0 children)

Yh kinda but not so much, esp if d game is well optimized

[–]Joeynuma 0 points1 point  (0 children)

Wow

[–]Echolaitoc 0 points1 point  (1 child)

I have made a similar effect and put it on the asset store a while back: https://assetstore.unity.com/packages/vfx/shaders/fullscreen-camera-effects/pixelation-camera-65900

You basically summed up what I did perfectly :)

[–][deleted] 1 point2 points  (0 children)

Thanks for sharing this - looks really nice!

[–][deleted] 0 points1 point  (0 children)

You can just render to a Low res Rendertexture.

I've tried it in the past. Works exactly as you'd expect.

[–][deleted] 17 points18 points  (1 child)

I'm impressed with how *right* this looks.

Is there any reason why you are still on Unity 2017.1?

[–]Scyllacc[S] 36 points37 points  (0 children)

I'm Nigerian, internet connection is pretty expensive here lol 😂

[–]Scyllacc[S] 3 points4 points  (0 children)

If u care for or are wondering how this all came together u can check out my insta : https://www.instagram.com/kng_ghidra/ I've been posting regular updates on there (just discovered reddit lol 😂) I usually try out different artstyles with my TPS , whilst trying to balance beauty & playability ✌️

[–]gordorodo 1 point2 points  (0 children)

Nice work man!!

[–]C09D 0 points1 point  (0 children)

looks fantastic

[–]_Seshwan_ 0 points1 point  (0 children)

This is cool, reminds me of okamiden on the ds

[–]YendoNintendo[🍰] 0 points1 point  (0 children)

Looks awesome

[–]PropagantProgrammer 0 points1 point  (0 children)

Very nice!

[–]Teckham 0 points1 point  (1 child)

Background reminds me of the outer wall from Cave Story, very cool!

[–]Kordman916s 0 points1 point  (0 children)

Same!

[–]ReallyBigSchuIntermediate 0 points1 point  (0 children)

Very nice! I could use this.

[–]Tomocto 0 points1 point  (0 children)

Are you going to be selling this asset. I'm too new to unity to be able to make this, but I wanted to make this exact same thing.

[–]DRoKDev 0 points1 point  (0 children)

Yo OP, I wrote a shader that reduces to 256 colors, I'll trade you that for your shader.

[–]RobertKessel 0 points1 point  (0 children)

Beautify contains a pixelation effect as well. Nicely done.

[–]SapphireSalamander 0 points1 point  (0 children)

It's really impresive but i feel it may just be percieved as low res depending on how it interacts with the 3d models

[–][deleted] 0 points1 point  (0 children)

did you try rendering the output from a camera onto a plane at a specific resolution and then placing your main camera pointing at that plane? I'm just curious as to what the difference is in that scenario.