RetroRaster | The Real-time Raytracing Solution for Pixelating Roblox!

Currently, this is just a personal project as I still want to add and improve a few things, but once I get some proper tests on a mid-range or a slightly low-end laptop done, and if the results are good, I will probably end up distributing this for other developers to use.

Whether it will be free or cost something, that all depends on my time and effort put into this along with the quality.

6 Likes

First of all, even if I have to pay, I will pay unconditionally because what you make is so attractive. I look forward to hearing good news. :smiling_face_with_three_hearts:

3 Likes

Added motion blur to hide interlacing artefacts

16 Likes

Added average FPS benchmarks comparing from 3 different types of computers:

  • Low-end
  • Mid-end
  • High-end
4 Likes

Are you using editable images?

2 Likes

Yes. I am using EditableImage paired with my CanvasDraw module for the texturing

2 Likes

i already have canvasdraw before but does it have multithreading? cuz i might make my own raytracer

2 Likes

CanvasDraw doesnt have multi-threading unfortunately. But it isn’t really needed for most resolutions and would be super complicated to implement for the API

2 Likes

Fantastic, outstanding, breath-taking work Ethan.
You inspired me to work on this as well and I’m so glad the goal is finally realized, thank you and great job.

5 Likes

this is actually so amazing, im loving the progress!!!

4 Likes

Would it be possible to get the texture of a part or mesh and then convert it to what your doing for textures? I know it would probably shoot fps down a bunch, but you could probably preload them into a table by getting all descendants of the game that are surface appearances or mesh textures and then just add to a table with its texture id. Not sure that would work though, correct me if I’m wrong!

1 Like

its a 100% possible. I’d just have to load an ImageData from a part with a decal or texture once and then add that to my textures list once. CanvasDraw can handle that automatically

it shouldn’t impact performance much at all

3 Likes

Are there mirrors or glass? If not, add them (or maybe just the mirrors, glass sucks).

2 Likes

How did you get the pixel color of textures?

2 Likes

I did a transformation from the ray hit position on the part compared to the part’s position to get UV coordinates, then I sample a pixel colour from an image via my CanvasDraw module with ImageData:GetPixel(X, Y)

3 Likes

This is super cool, I tried doing this like a year ago but couldn’t get over 10 FPS. Could you open source this?

4 Likes

Added custom texture/image support (via Texture instances)

3 Likes

Added a textured skyboxes! :happy1:


9 Likes

this is incredible, i’ve been watching this post for ages and you’ve improved so much!

4 Likes

This pixel raytracer with textures looks GREAT! Nice job on it! How long did it take to create?

2 Likes