How You Can Make Stylized Flat-Color Art

Hey, I’m Flumzee!
Today, I will show you how to make Stylized Flat-Color Art

Need to Know:

Basic knowledge of Low-Poly Building
How to use Explorer
How to use Lighting
How to use Roblox Studio

What we Will Achieve:

Flat-Color Art
Cartoony and Low-Poly Game

Extra (You can do):

Extra Details
Scripts

Step 1:

Open up explorer, properties and lighting

Step 2:

Double-Click on “Lighting”
and change the brightness to 0
image

Step 3:

Change “Ambient” and “OutdoorAmbient” to
[255, 255, 255]
image
image

Step 4:

Turn off “GlobalShadows” and change “Technology” to “Voxel”,
instead of “ShadowMap”
image
image

Step 5:

Turn off “CastShadows” for every part in your game
and make the material of every part in your game to
“SmoothPlastic” (optional)
image
image

Extras:

Change “ClockTime” to 8 and
“ExposureCompensation” from 0, to
0.5-1
image
image

We’re Finished

Happy building!

22 Likes

Setting your graphics quality to max will make a weird shading effect on all parts in the game, is there a way to fix this?

Max graphics quality:
image

Lower graphics quality:

You can try tinkering with some of the settings and/or adding some effects into lighting.

1 Like

That’s from ambient occlusion. I believe you can fix it by setting all of the lighting normals to the same direction (probably directly downwards would be best).


@OP:

Here is some code to paste into the command bar to create these settings:

-- Lighting Settings
local Lighting = game:GetService("Lighting")
Lighting.Brightness = 0
Lighting.Ambient = Color3.fromRGB(255, 255, 255)
Lighting.OutdoorAmbient = Color3.fromRGB(255, 255, 255)
Lighting.GlobalShadows = false
Lighting.Technology = Enum.Technology.Voxel  -- Only works in cmd bar

-- Part Settings
local Workspace = game:GetService("Workspace")

for _, instance in ipairs(Workspace:GetDescendants()) do
    if instance:IsA("BasePart") then
        instance.CastShadow = false
        instance.Material = Enum.Material.SmoothPlastic  -- Optional
    end
end
2 Likes

Doesnt work, looks like this ambient occlusion issue has been going on for a while: