Introducing in-experience Mesh & Image APIs [Studio Beta]

Hey thanks for reporting. I really like to look into this but I’m having difficulties reproducing it. Would you mind providing more context of it or sharing a place file? Thanks a lot!

3 Likes

Is the source code of this available? Really wanna dabble in graphics rendering and seeing the reflections seems to signal me that I can finally make a mirror if I do so…

8 Likes

Well, while I was preparing the testmap, I found something else…
I may not be aware of something but I am not able to see a mesh when it was created using Instance.new("EditableMesh", Parent)

Here’s the footage:

Here’s the repro map:
repro.rbxl (75.8 KB)

Let me know if this replication behavior is intended or not.


I am trying to make a good repro file for the first post I sent and put it here.
Thanks for your assistance !

Varonex_0


EDIT: There is a little mistake in the script, it is FindFirstChildWhichIsA not FindFirstAncestorWhichIsA. Hopefully this does not change the state of the bug, as the instance is being created either way.

4 Likes

Unfortunately, I could not find the reproduction steps I used to find the issue I mentioned here.

I will try to tackle this a little bit more, and if this behavior occurs again, I’ll get everything to find how it can be triggered.

The indications I can give you is that…

  • I used the same mesh as in this repro map:
    repro.rbxl (75.8 KB)
    (remove the script in SSS)

  • I created the EditableMesh using Instance.new("EditableMesh", Part) or Instance.new("EditableMesh").Parent = Part. Then, the second line I used was that one:

  • I know I played a bit with EditableImage on the same mesh before, but I sadly cannot tell you what I did.

Hopefully this helps.

3 Likes

I can not express how glad I am for this addition. I am working on an Fourier Ocean system and have been for about 2 years now. One of the biggest let down for me was the inability to calculate textures in real time, I was going to use this for normal maps. I see where this is all going and I am so excited to start working on it,

5 Likes

We don’t have replication yet, which means if the EditableMesh is created on server, you won’t be able get it on the client side right now.

5 Likes

I would love that, whether its from Roblox themselves or a third party plugin made by a Developer on the platform.

1 Like

Roblox is so mixed this they come out with some questionable updates then hit you with partnering with synapse, editable meshes and images and a new remote event type

Greate job :smile::smile:

2 Likes

am i doing something wrong lol (the dynamic mesh is the tophat). just figured out what it is, and that is so hacky what.

2 Likes

Thank you so much for this! However, some players will inevitably make inappropriate drawings or shapes in-game. How will it be moderated?

2 Likes

I’ve run into this problem myself, it had to do with me positioning vertices in world space rather than local space, causing the mesh to be at 0,0,0 and the vertices to all be far away.

The fix was to define a center point for my mesh (which would be the MeshPart’s position), and position all the vertices around that.

4 Likes

Will we be able to load meshes that were uploaded to toolbox that do not belong to the group/creator?

I really hope so, we have been dealing with the meshid limitation for so long as we let our players load in custom maps from toolbox by decoding byte data from the rbxm using http.

Does this also support surface appearance? or is that planned?
I haven’t been able to test this yet.

6 Likes

this thing is very op, i wanna make a 4d game now

9 Likes

Roblox is makin them big boi moves. Best update

3 Likes

I’m excited! These are the things we want, not UI changes that only annoy people (leaderboard is still not fixed)
If the API is fast enough, I’ll probably make a custom UI system using an EditableImage

3 Likes

Got a gameboy emulator rendering in an EditableImage.
It’s crazy how fast this is.

46 Likes

The update is great, but there are a couple of questions.

  1. Will SurfaceAppearance support color change? Because apparently this is why Vertex does not change color.

  2. Will a parameter be added that will allow using objects, for example from ReplicatedStorage, as a reference for EditableMesh, EditableImage? (Like the Attachment parameter in Beam for example) This will avoid copying data for each object, which will help optimization.

  3. Will the “Color” parameter be added to the Instance EditableImage to quickly change the color?

  4. Will there be a gradient feature added for EditableImage? For example, you need to make half of it transparent or change color. Because if you do this through WritePixels it will lag a lot.

4.1 Will EditableImage have blending functionality? For example, the functions Add, Reduce, Multiply, Division. The reason is the same as question 4.

4.2 Will EditableImage have a function for changing colors by RGB, HSV?. The reason is the same as question 4.

4.3 Will EditableImage have more functionality for rendering primitive forms? For example DrawTriangle, DrawPolygon. The reason is the same as question 4.

4.4. Will EditableImage have filtering modes? Since I don’t think that bilinear filtering alone can be done.

  1. Will it be possible to save EditableMesh, EditableImage data in experience(Like Union)? This can be used, for example, for custom terrain, etc. Or does it need to go through moderation?

  2. Will there be an API for rendering 3D and 2D objects in the future, bypassing the use of Instance? Since I noticed that quickly changing Instance parameters consumes performance.

[Edit]
7. Will MeshPart be able to use neon effect along with texture? (Like Beam)

10 Likes

Modelling in Roblox Studio? Alright, that’s a big one…
Blender for developers might become not so neccessary to use anymore, because smaller edits can be done in Studio now!

Edit:
Make it usable for Unions!!!

2 Likes

I think my boy found a way on how to make interactive videos! How will ever spend thousands of robux for a 15 minutes of only video, if you got this???

5 Likes

Can you please give us the option to disable throttling on mesh updates? If I want to update my mesh every single frame, then I should be able to. Potentially bad performance is my problem, not yours.
Oh also make automatic normal generation optional as well. Actually, it doesn’t look like setting normals does anything at all yet, does it? It seems to ignore what I set and it generates averaged normals.
A way to edit collisions would be great as well, roblox’s catch-all collision generation is pretty slow, and there are many places in which specific and purpose-built solutions will run much better.

7 Likes