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

Currently to do flat shaded meshes, you would need to manually duplicate vertices. So, for example, if you wanted to have a flat shaded cube, you would need 24 vertices, 4 for each side.

We’re working on an update that will make it easier to do flat shading, hopefully that will be available soon.

2 Likes

@SoftySaber_dll it’s hard to know what really is going here without repro steps.
EditableMesh does not handle its Parent or lifetime, so I will guess it most likely is a scripting error.
But if you have a small repro file we can look into it.

Also, congrats on your plugin, really cool stuff!
QQ: What’s the motivation for using wedges instead of EditableMesh for the tessellation feature?

Turns out it was a seperate plugin that was causing the issue, That feature is just to show your mesh in-game as editable mesh is not released + do you have a eta when its going to be released im working on a flight simulator with the whole world and i need editable mesh for the terrain

Also another issue with editable mesh

Hows progress on this been going? It’s been a few months now and im curious to know how close we are getting to seeing this in-game!

2 Likes

The team is continuing to work hard on a number of fronts to allow enabling this in clients. The best date we have for now is still Coming Soon™. In the spirit of transparency though, the three main things that are blocking us from releasing to clients are:

  1. Dealing with Trust & Safety: We are fine-tuning the usage policy for these APIs to balance giving all of you access to the APIs sooner while still keeping the platform safe. We are hoping to do a dev forum post focused on this topic within the next few weeks so keep an eye out for that.

  2. Finalizing the API: Through feedback from this Studio Beta and from other channels, we have identified certain parts of the API that could be designed better (e.g. how we deal with normals, helper functions etc.). Some of these changes are mostly complete and are going through the final stages of testing while others are more foundational to the API (almost philosophical). We are hoping to do a follow up dev forum post focused on these API changes in the next month or so.

  3. Performance & Stability: Since these APIs give you direct access to Mesh / Image data, we need to be extra careful with how we manage performance and memory footprint. This is likely going to be an ongoing effort even after we release the API to clients but our primary goal is to ensure the most common use cases work well.

I know you would have preferred a hard date instead of the lengthy explanation above but hope this helps provide a bit more insight into what is going on :slight_smile: . As always, we really appreciate your patience while we work on getting this done carefully and correctly.

14 Likes

Is there any possibility for procedural rollout phases?

I personally don’t need the entirety of the API, and I’m sure a lot of other users are in the same boat; for example- for Terrain all there’s needed are the basic AddTriangle/Vertex functionalities, nothing in regards to replication (assuming it’s on the client), alongside uploading of the mesh itself.

You mentioned changes of the API internally, this could also be apart of the rollouts, assuming that the majority of these changes are fundamental to how it’s programmed on your end, rather then the endpoints themselves.

This could be a somewhat decent middle ground for people who are in need of this in live games (albeit I think the majority of us have expected this to go public by now)

1 Like

I eventually found out that duplicated vertices is how the engine does it, appreciate the response nontheless :+1:

Another issue that arose when I was doing some testing is that the default roblox materials don’t work with the EditableMesh instance, as I suppose that there’s no generated UVs for the materials to use. Same goes for trying to use the Texture property of the MeshPart it would be parented on, only EditableImage works for me thus far.

I suppose this is because it’s still in development? Maybe I’m just doing something wrong, if anyone knows why it’d be nice to know, thanks.

Is there any kind of timeline for the in-experience roll out for editable mesh?
And also it seems that whenever I apply an editable mesh to a meshpart, it gains the checkerboard texture, even if I use a blank texture on it.

2 Likes

Why am i unable to set a texture or material to an editable mesh?
It always just ends up with a checkered pattern, i am still able to modify vertex color though.

3 Likes

This is the same problem I’m having, even when setting the texture to a white image it still shows up checkered.

You need to assign a MeshId to the MeshPart, it will make the checkerboard go away then you should be able to remove it

Have tried that and doesn’t seem to work for me

Edit: However a blank surfaceappearance fixes it completely .

2 Likes

Thank you. It appears to work by doing that manually but in a case where i am procedurally generating terrain, what should i set MeshId to? Setting it during runtime with scripts appears to not be allowed either, so how should i go about adding textures to my mesh?

I’m not sure about that, you might just want to clone a MeshPart with a mesh already set on it

Yeah, i’ve ended up doing exactly that, cloning a MeshPart with a MeshId already loaded on it.

1 Like

When will this be out of beta? Do we have a timeframe? This is cool but not being able to use it ingame is insanely annoying.

2 Likes


Definitely very cool I hope this comes out soon a lot of usefulness with this

6 Likes

Any updates on this? Being able to update EditableMeshes in ViewportFrames will allow for a lot of use cases which I currently can’t do.

1 Like

Is there a specific date where client-sided editablemeshes will be available in-game? i get them not being available serversided but why not client?

4 Likes