SVG Support for ROBLOX

As a Roblox developer, it is currently impossible to create a fully scalable user interface that includes images for it’s UI design.
I’m not entirely sure on the technical side of things (such as if the SVGs would need to be rasterized due to the rendering system) but if it is possible to add support to render SVGs on ROBLOX, it would open the door to fully scalable logos, buttons, etc that use vector graphics instead of raster graphics to make it work seamlessly among virtually any resolution without any dip in quality.

28 Likes

Duplicate post, someone close this.

Yeah, just realized. Whoops.

Maybe move this over.

@Lilly_S

Sounds good just a tip though
You can increase fidelity by making resolutions of images a multiple of 8 (helps with scaling on different resolutions)

Vector graphics would be an excellent addition to roblox. If you’re unfamiliar with what these are, they are graphics like you’re used to, but rather than saving pixel data, they save mathematical equations that can be used to draw a shape. I think it would be extremely helpful to introduce vector graphics. Here’s why:

Load Speeds

  • Loading images can be inefficient using raster graphics (pixel-by-pixel) because raster graphics hold data for every pixel on the screen, whereas vector graphics hold information regarding objects, groups, and vectors.

  • Look at the difference in filesizes between the .png (Raster) and the .svg (Vector) graphics: *lower file size = faster load speed.


    *click on the image to see file sizes to the right

  • Both of these files represent the same vector, except the .png holds data for each pixel, and the .svg holds data for handles that use math to draw the image.
    Low%20Poly%20N

Usability

  • Vector graphics are more usable than Raster graphics because Raster graphics require complex tools to pick out shapes
  • Vector graphics contain key points, or vertices that can be used to maneuver the image like handles.

https://gyazo.com/25152ebe75d5918fed0e0cb9d16a3b10.gif

  • Vectors are like meshes, but 2D instead.
  • Vectors can be “blown up” to be any size your heart desires, without loss of quality or any type of pixel size issues.

API Requests with this feature

  • Honestly, I’d just be happy to get vectors at all, but some features that would put the icing on the cake & allow for some very neat tricks and such would be to include an API and studio Editor to edit Vectors within roblox. This would allow for cool tricks for loading circles, intro guis, stretched images, custom fonts, etc.
  • A great thing about vectors is that it’s pretty difficult to make an explicit vector - the only possible option would be to make bad words, but porn and things of that nature wouldn’t even be able to be stored in a vector.

I hope you guys consider introducing Vectors to roblox! Have a nice day!!
-bigcrazycarboy

14 Likes

There’s a few reasons we won’t be doing this for a while:

  • Rasterizing SVG is incredibly complex, we would only ever be able to support a tiny subset of the format, which might not match up with what your favorite SVG editor will export.
  • Fundamentally, we need bitmap textures to render with. Which means an expensive process to rasterize SVGs to bitmaps, dynamically depending on which sizes you choose to display them at.
  • It would require a web new asset type, and a new import pipeline in studio, new moderation tooling, etc.

Roblox isn’t like a web browser where they can afford to have time-to-completed load times on the order of 10 seconds. Our UIs need to be responsive immediately or we’ll block game load, and we have to avoid causing framerate hitches because of UI. Our UIs also can change dynamically every frame, while most web browsers struggle to animate simple objects at 60 fps. We need to do 60 fps UI animations while also rendering an entire game underneath it. This means the large amount of resources we’d spend on rasterizing SVGs is not a great tradeoff for us.

We are looking to implement UI objects for rendering curved lines and shapes though. It just likely won’t come as support for a format as complex as SVG.

35 Likes

SVG only UI support then.

11 Likes

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.