Learn
Engine Class
Decal

Code Samples
Changing Decal Texture
-- create part
local part = Instance.new("Part")
part.Size = Vector3.new(5, 1, 5)
part.Position = Vector3.new(0, 0.5, 0)
part.Anchored = true
part.TopSurface = Enum.SurfaceType.Smooth
part.BrickColor = BrickColor.new("Toothpaste")
-- create decal
local decal = Instance.new("Decal")
decal.Face = Enum.NormalId.Top
decal.Parent = part
-- define faces
local happyFace = Content.fromUri("http://www.roblox.com/asset/?id=26424652")
local sadFace = Content.fromUri("http://www.roblox.com/asset/?id=147144198")
decal.ColorMapContent = happyFace
-- touched event
local cooldown = false
part.Touched:Connect(function(hit)
if not cooldown then
if hit and hit.Parent then
cooldown = true
sound:Play()
decal.ColorMapContent = sadFace
task.wait(1)
decal.ColorMapContent = happyFace
task.wait(0.2)
cooldown = false
end
end
end)
-- add to workspace
part.Parent = workspace
Fading Decal
local TweenService = game:GetService("TweenService")
local part = Instance.new("Part")
part.Size = Vector3.new(10, 10, 1)
part.Position = Vector3.new(0, 5, 0)
part.Anchored = true
part.Transparency = 1
local decal = Instance.new("Decal")
decal.Face = Enum.NormalId.Front
decal.ColorMapContent = Content.fromUri("http://www.roblox.com/asset/?id=699259085") -- roblox logo
decal.Parent = part
part.Parent = workspace
local tween = TweenService:Create(
decal,
TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.Out, -1, true),
{ Transparency = 1 }
)
tween:Play()

API Reference
Properties
Color3
Read Parallel
Capabilities: Basic
Decal.Color3:Color3
Code Samples
Decal Color3
local TweenService = game:GetService("TweenService")
local part = Instance.new("Part")
part.Size = Vector3.new(10, 10, 1)
part.Position = Vector3.new(0, 5, 0)
part.Anchored = true
part.Transparency = 1
local decal = Instance.new("Decal")
decal.Face = Enum.NormalId.Front
decal.ColorMapContent = Content.fromUri("http://www.roblox.com/asset/?id=1145367640")
decal.Parent = part
part.Parent = workspace
local redTween = TweenService:Create(
decal,
TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.Out),
{ Color3 = Color3.new(1, 0, 0) }
)
local greenTween = TweenService:Create(
decal,
TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.Out),
{ Color3 = Color3.new(0, 1, 0) }
)
local blueTween = TweenService:Create(
decal,
TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.Out),
{ Color3 = Color3.new(0, 0, 1) }
)
while true do
redTween:Play()
redTween.Completed:Wait()
greenTween:Play()
greenTween.Completed:Wait()
blueTween:Play()
blueTween.Completed:Wait()
end

ColorMap
Not Replicated
Read Parallel
Capabilities: Basic
Decal.ColorMap:ContentId

ColorMapContent
Not Replicated
Read Parallel
Capabilities: Basic
Decal.ColorMapContent:Content

LocalTransparencyModifier
Hidden
Not Replicated
Read Parallel
Capabilities: Basic
Decal.LocalTransparencyModifier:number

MetalnessMap
Hidden
Plugin Security
Read Parallel
Capabilities: Basic
Decal.MetalnessMap:ContentId

MetalnessMapContent
Plugin Security
Read Parallel
Capabilities: Basic
Decal.MetalnessMapContent:Content

NormalMap
Hidden
Plugin Security
Read Parallel
Capabilities: Basic
Decal.NormalMap:ContentId

NormalMapContent
Plugin Security
Read Parallel
Capabilities: Basic
Decal.NormalMapContent:Content

Rotation
Read Parallel
Capabilities: Basic
Decal.Rotation:number

RoughnessMap
Hidden
Plugin Security
Read Parallel
Capabilities: Basic
Decal.RoughnessMap:ContentId

RoughnessMapContent
Plugin Security
Read Parallel
Capabilities: Basic
Decal.RoughnessMapContent:Content

Shiny
Deprecated

Specular
Deprecated

Texture
Deprecated

TextureContent
Deprecated

TexturePack
Roblox Security
Read Parallel
Capabilities: Basic
Decal.TexturePack:ContentId

Transparency
Read Parallel
Capabilities: Basic
Decal.Transparency:number

UVOffset
Read Parallel
Capabilities: Basic
Decal.UVOffset:Vector2

UVScale
Read Parallel
Capabilities: Basic
Decal.UVScale:Vector2

ZIndex
Read Parallel
Capabilities: Basic
Decal.ZIndex:number

©2026 Roblox Corporation. Roblox, the Roblox logo and Powering Imagination are among our registered and unregistered trademarks in the U.S. and other countries.