[Studio Beta] Major updates to in-experience Mesh & Image APIs

Is this slower than how live rendering worked before? Also are we going to get a :Clone method for EditableMeshes?

Why roblox never fix mesh collision?

Was the behaviour of editableMesh:AddColor(...) changed? I’m currently stumped by a new error at the indicated line. “EditableMesh is fixed-size, adding or removing elements is not allowed in-experience”

image

https://prod.docsiteassets.roblox.com/assets/avatar/dynamic-heads/reference-files/BlockyCharacter.fbx

Hello! add... is disabled for fixed-size EditableMesh, and FixedSize = true by default for CreateEditableMeshAsync to save memory. You can change to as:CreateEditableMeshAsync(content, {FixedSize = false} ) to use functions that may change memory size.

3 Likes

Wonderful, this fixed my colouring issue :smiley:

2 Likes

EditableMesh:CreateMeshPartAsync is being disabled now.

2 Likes

-- What is this screenshot trying to convey?

How do I make texture calculation faster, this is only a 256 x 256 editable image and I’m getting serious lag (150ms). Is there anyway I can optimize this to the point where it runs real time?

	---- Texture calculation --
	for a = 1, texture.Size.X * texture.Size.Y do
		local tempAmplitude = 2;
		local tempFreq = 0.025;
		
		local height = 0.01;
		local f = 1;	
		
		height = heights[f]
		
		for l = 1, 15, 1 do
			-- For more detail lower amp and heighten freq
			tempAmplitude = tempAmplitude*0.82;
			tempFreq = tempFreq*1.18

			-- Calculate WaveCoordinate
			local xz = (-1024+(a%textureSize)*8) * d[l].X + (-1024+(a/textureSize)*8) * d[l].Y;

			-- Wave equation
			--height = height + math.sin(tempFreq * xz + t) * tempAmplitude
			height = height + 2 * tempAmplitude * math.pow((math.sin(xz * tempFreq - t)+1)/2,2);
		end
		
		local outAlpha = 0;
		if height >= 13.5 then
			-- If wave is breaking, set foam opacity based on the height
			outAlpha = math.min((height - 13.5)*25, 25)
		end
		local pixelIndex = (a - 1) * 4
		if (liveOcean==nil) then
			buffer.writeu8(pixelsBuffer, pixelIndex, 13);
			buffer.writeu8(pixelsBuffer, pixelIndex + 1, 51)
			buffer.writeu8(pixelsBuffer, pixelIndex + 2, 88)
			buffer.writeu8(pixelsBuffer, pixelIndex + 3, 130)
			buffer.writeu8(foamBuffer, pixelIndex, 255);
			buffer.writeu8(foamBuffer, pixelIndex + 1, 255)
			buffer.writeu8(foamBuffer, pixelIndex + 2, 255)
		end
		buffer.writeu8(foamBuffer, pixelIndex + 3 , outAlpha)
	end
	texture:WritePixelsBuffer(Vector2.zero, texture.Size, pixelsBuffer)
	foamTexture:WritePixelsBuffer(Vector2.zero, texture.Size, foamBuffer)
	texture:DrawImage(Vector2.zero,foamTexture,Enum.ImageCombineType.AlphaBlend)

I am unable to create transparent EditableMesh colors, when doing EditableMesh:AddColor(Color3, 1), the mesh still renders fully opaque.

Editable Meshes no longer working on models under humanoids ;(

robloxapp-20241114-2042259

Thanks for the report, it looks like a bug.

As a temporary workaround, if you set the transparency of the meshPart that is being used to render the EditableMesh to something small like 0.05, then it should render the transparent vertices properly.

1 Like

I notice that that the bounding boxes of my editablemeshes are not properly aligned with the visuals


Is there anyway to fix this or is this just an engine bug similar to this? editable meshes disappearing

Why does this restriction exist? It ruins my plans to support player-supplied HUD skins using just 1 ID to extract font colors from an atlas.

{3AAE351A-7E59-42D7-A3CA-670721825DA4}

I’m not too sure what happened but EditableMeshes are just not working for me at all anymore, even in the Hubcap place.

I know Roblox had some outage yesterday so maybe it’s still lingering, or something on your guy’s end, could be both. This is all that I changed to accommodate the new changes, specifically inside of the Hubcap place:

and this is how it was previously:

Welp, no longer.

Day 2 of asking to re-enable “FastCluster” for Humanoids

Thanks for catching this. The Hubcap demo in the post has now been updated to match the recent release. Please ensure you are using v24 of the rbxl file.

1 Like

Apologies for the change, and that it took a while to track down - it looks like the flag that controlled it was accidentally disabled :expressionless:. It will be re-enabled on Monday

Thank you! I didn’t understand what was properly needed for the new AssetService system, but after referencing the updated place file my code works again :happy1:

Some details about the FastCluster potentially being disabled : The EditableMesh is active but it only displays cubes and not the detailed/edited meshes

robloxapp-20241116-1216473

The character is blocky when the humanoid is parented to the model, but edited when no humanoids is parented to the model.