Цвета могут быть представлены комбинацией 3 значений, каждое из которых находится в диапазоне от 0 до 255.Эти значения представляют значение цвета RGB.Первое число представляет «сколько» красного цвета в цвете, второе для зеленого и третье для синего.
Вот несколько примеров цветов RGB,
- Pure Red =(255, 0, 0)
- Чистый зеленый = (0, 255, 0)
- Чистый синий = (0, 0, 255)
- Черный = (0,0, 0)
- Белый = (255, 255, 255)
- Темный пурпурный = (100, 0, 100)
- Голубой = (0, 200, 200)
- Желтый = (255, 255, 0)
Вы можете создать цвет в Roblox, используя Color3 .Есть конструктор для простого преобразования цвета RGB в Color3 с Color3.fromRGB(number r, number g, number b)
.Так что если вы хотите перейти от темно-красного (50, 0, 0) к ярко-зеленому (100, 255, 100) за 5 секунд, вы можете использовать Color3:lerp(Color3 targetColor, number alpha)
.
local startingColor = Color3.fromRGB(50, 0, 0) -- dark red
local targetColor = Color3.fromRGB(100, 255, 100) -- bright green
local testBrick = Instance.new("Part", game.workspace)
testBrick.Color = startingColor
-- make a loop to change the color, lerp() expects a number between 0 - 1.
local timeToComplete = 5.0 -- seconds
local framesPerSecond = 60.0
local waitAmt = 1.0 / framesPerSecond
local stepAmt = 1.0 / (timeToComplete * framesPerSecond)
local i = 0.0
while (i < 1.0)
testBrick.Color = startingColor:lerp(targetColor, i)
i = i + stepAmt
wait(waitAmt)
end
-- by now the color should be close to the target color, ensure it is done
testBrick.Color = targetColor
Под капотом этопросто делает некоторую простую линейную алгебру, чтобы преобразовать 3 значения из начальной точки в конец.Надеюсь, это поможет.