What's the best way to achieve a paint effect similar to this?


(They don’t seem to be distinct primitive polygons)

Btw the image is from the game Splatoon 2

4 Likes

SurfaceGui with frames, or just parts

1 Like

If you’re making roblox splatoon u might as well just use a bunch of 3x1x3 parts or 4x1x4 and have them change colour

2 Likes

Good luck supporting low network throughput and low memory devices with that approach.

4 Likes

Looks like projected decals/images to me, maybe with some kind of special shading.
You can read about it here, and why Roblox doesn’t have it currently: SurfaceProjection object - #47 by nsgriff

5 Likes

Non-moving smoothplastic parts aren’t that memory heavy depending on how dense he decides to go with.

1 Like

I would design individual parts (e.g segments of a floor) in Blender or Cinema 4D and import them as a Mesh into ROBLOX so that you can get a little bit of detail into them. That combined with some lighting effects (Blur, bloom, etc) should help you achieve a “paint effect”.

1 Like

For the game I’m working on I just stuck with very thin plates.

This takes advantage of instancing and featherweight parts. The glass material/skybox also helps with the effect.
You could improve this effect by having the corners use wedges, or by using a different meshpart depending on how many same-colored neighbors a cell has.

(as for network usage, I throttle the amount of paint that can be created at every step by queueing them. Instead of parenting parts to nil to remove them from play, I just set their transparency to 1 to save even more data.)

6 Likes

How do you achieve this effect? o3o

Screen%20Shot

1 Like

By the pixelated looks of it, that’s just a static texture. Corrected below

1 Like

xd I guess it could be a glorified gif but wait hes typing :stuck_out_tongue_winking_eye:

1 Like

I get the MeshID of each body part to create a fully-transparent Part with a FileMesh with that ID, which I then weld to the character. I then add three decals under each fake body part. The three decals use a series of cloud textures, which blend together to improve the effect.

2018-02-25_18-53-09
(this is with 1 decal only)

Here’s the textures I use, if you want to borrow them:

local cloudTextures = {
	"rbxassetid://1038018611",
	"rbxassetid://1038018612",
	"rbxassetid://1038018613",
	"rbxassetid://1038018615",
	"rbxassetid://1038019391",
	"rbxassetid://1038019389",
	"rbxassetid://1038019387",
	"rbxassetid://1038019395",
	"rbxassetid://1038019392",
	"rbxassetid://1048558726"
}

(oh, and for the head, I had to use a custom mesh which I UV-mapped so that the entire head is covered by the decal instead of only the face)

9 Likes

How did you do that?
Raycasting?