Release Notes for 655

It’s really great that Editablemesh is 40% faster!!

9 Likes

I talk about it briefly in the introduction of the react-lua guide!

TLDR; it’s really nice way to add structure to large/complex/dynamic UIs. The main disadvantage is the relatively steep learning curve. Especially if you aren’t already familiar with the concepts or building UI with only code.

There’s absolutely nothing wrong with building UI the usual way in studio. I would consider looking into react-lua if

  • you are already familiar with it and know that you want to use it
  • you find your current UI code has become really complex and hard to update/maintain
12 Likes

This is very interesting! I really appreciate the info, and will look into this!

10 Likes

fyi, you were able to enable this plugin prior to them accidently enabling it for everyone by patching studio to be in internal mode, so none of this is new.

8 Likes

How would you have done it originally? I have never heard of this plugin before, and looking it up only shows community made plugins that do the same thing.

Can be done with external tools, but to me it doesn’t count as it wasn’t natively accessible to people as it is now. Interesting!

7 Likes


Yay!

Now, WHERE IS MY OPTIMIZATION ON TOOLBOX IMPORTS?

8 Likes

By that you mean time from clicking on something in toolbox to it showing up in the world?

7 Likes

Yes, especially with very large amounts of parts, such as maps and such.

10 Likes

i haven’t had studio update since last year!!! :rofl::rofl:
:neutral_face:


i am ascending.

10 Likes

also declarative ui frameworks generally help a lot with avoiding ui bugs, ie animations being weird because u clicked on the open/close button too fast and so now the menu u had open is now just stuck on screen, and other stuff like that

and are also pretty performant, although not as performant as just not using a framework and dealing with instances directly, but with a declarative ui framework its a lot easier to make performant ui code

6 Likes

Late for the discussion:

This is the first 2025E version of Rōblox.

5 Likes

Any update on “Added support for rbxthumb ContentIds in AssetService:CreateEditableImageAsync” from Release Notes for 654 | Documentation - Roblox Creator Hub?

1 Like

A pet peeve of mine with these release notes is how fixes are often put into the wrong category. Is this a mistake or is there something I’m missing?

4 Likes

Is it possible to use the Roblox UI internal components for our games?
I’ve tried it couple months ago but I couldn’t set-up the “context”

2 Likes

I couldn’t find anything specifically mentioning it, but does this fix editable-mesh occlusion culling issues?

3 Likes

i see it and I’m not staff, any clue why it popped up?

Last year, I imported a multi-sample chiptune beep instrument and was quickly disappointed by a bug, where the engine would play the full sound from the beginning for specific sample splits, even though its loop and playback regions were being set correctly…


I’m not sure if this release fixed this specific bug, since I was too afraid to hear that weird glitch again, but I tried again today and it sounds perfect. If this fix was related, thank you, Roblox!

4 Likes

I think the issue was that the Properties pane rounded the sound length up and you set the end of the loop region to that. A friend of mine did that recently and we had to lower the loop region end to a tiny fraction of a second before the actual sound length.

Glad that won’t be necessary anymore!

2 Likes

Yep! The bug was similar to what @Bergan mentioned.

There’s some number of samples in a file; so e.x. a 1-second-long audio file at a sample-rate of 44.1kHz contains exactly 44100 samples.

Internally, the audio engine tracks loop points in samples; so if you wanted to loop the first half (0.5 seconds) of that 1-second-long audio file, the loop points would be placed at sample 0 and sample 22050 internally.

But, since the LoopRegion property is in seconds, there’s a conversion from seconds → samples that happens under the hood.

Taking the same example, if you wanted to loop the second half of the file, the loop points should be 22050 and 44100 – but sometimes, floating point is weird, and this would end up placing the loop points at e.x. 22049, or 44101. The audio engine interpreted loop points that are “out of bounds” as invalid, and ignored them completely – even if it was just minor rounding errors like this :expressionless:

5 Likes

CreateEditableImageAsync rbxthumb support is now released!

1 Like