How do I achieve a pixelated look?

Hello Developer Forum!

I was wondering how I could achieve a pixelated look on the camera but I just couldn’t figure it out. And so I’ve decided to ask you.

I found an old topic about a pixelated/retro camera, but it dated way back in 2019.

19 Likes

Well in an ImageLabel, you can change the ResampleMode under the Image category from Default to Pixelated.

Could I have a solution?

12 Likes

I want the camera to have a pixelated look. An imagelabel isn’t capable of achieving that, however I know a viewportframe can so maybe you have an idea of how that could work.

9 Likes

I’m 99% sure there is no way to achieve this.

7 Likes

There is an old topic similar to this one.
Here: https://devforum.roblox.com/t/how-to-achieve-a-retro-pixelated-visual-effect/367170.

8 Likes

Found this https://create.roblox.com/store/asset/5139170785/Hacky-Pixelated-Viewport%3Fkeyword=&pageNumber=&pagePosition=

7 Likes

Just tested it and it is extremely laggy, which obviously no one wants.
And I can also barely tell what I’m looking at.

Not only that but it isn’t even pixelated (Atleast for me).

I appreciate the help though.

5 Likes

there is no good way of making this effect using camera effects. You can only make with viewportframes, if you want 2 fps

the only way is to make pixelated textures

7 Likes

You can’t really customize the camera that much in studio so your best option is to choose another engine.

3 Likes

Not necessarily.

Maybe you could use something like this? I have seen people make Pixelated Graphics using it.

@Ethanthegrand14 made it. Maybe he can help with this. That’s why I tagged him in this. :upside_down_face:

:man_shrugging:t3::smile::melting_face:

(Edit: I was going to change the reply to be to the original post, but idk now lol)

6 Likes

oh, cool. didn’t know that about that, i guess that’s a way

5 Likes

So ehh…

Starting to look like it’s impossible for me. I’ve tried tutorials, all kinds of models and all your suggestions but nothing worked. The cause might be that the mesh parts in my game are messing with the viewportframes, it’s not like I can fix them because I obviously need those meshes.

Thank you for all the help though :grin:.

5 Likes

This thread is a perfect example to why we REALLY NEEED ROBLOX TO ADD fragment, vertex, fragment , and possibly geometry and tesselation on computers, and a configurable render pipeline

3 Likes

It is possible.

6 Likes

Pretty sure you have to use raycasting, a bunch of UI elements and parallel luau.

I have no idea how to achieve this tho.

3 Likes

If you can delay your game (till EditableImage releases), you can use parallel luau and EditableImage to render user’s screen.

4 Likes

Simpler and faster than raycasting would be to just have a ViewportFrame.

With a ViewportFrame you would just copy all your geometry inside it, and you are done (You would also need to update the geometry every frame, no shadows or reflections, and bear the lag)

With raycasting you would need to convert all your geometry into triangles, make algorithms for generating rays, get fast triangle-ray intersections (Would need TLAS & BLAS), do some shading (Blinn Phong with intersections for some simple lambertian diffuse and specular reflections), actually displaying all of this on a canvas efficiently, and the list could go on.

With enough determination and wasted time, you could get something looking kinda alright (If you are comfortable with 2fps on low end GPUS)

4 Likes

The best way to probably get a pixelated renderer that runs well enough for gameplay is to use something like CanvasDraw and rasterise the world view from the camera instance with triangles. All though this is difficult, a 3D renderer will perform much better than a raytracer.

Check out this topic:

This guy made a really good 3D renderer. You use it to render a roblox scene with a low resolution with sharp pixels

3 Likes

That used this viewport https://create.roblox.com/store/asset/5139170785/Hacky-Pixelated-Viewport%3Fkeyword=&pageNumber=&pagePosition=

1 Like