Spec-Zone.ru › LÖVE

love.math.noise

Доступно начиная с LÖVE 0.9.0
Эта функция не поддерживается в более ранних версиях.

Генерирует значение шума Simplex или Perlin в 1-4 измерениях. Возвращаемое значение всегда будет одинаковым при одинаковых аргументах.

Шум Simplex тесно связан с шумом Perlin. Он широко используется для процедурной генерации контента.

Существует много веб-страниц, подробно описывающих шум Perlin и Simplex.

Возвращаемое значение может быть постоянным, если используются только целочисленные аргументы. Избегайте передачи только целых чисел, чтобы получить различные возвращаемые значения.

Функция

Генерирует шум Simplex из 1 измерения.

Синтаксис

value = love.math.noise( x )

Аргументы

number x
Число, используемое для генерации значения шума.

Возвращаемое значение

number value
Значение шума в диапазоне [0, 1].

Функция

Генерирует шум Simplex из 2 измерений.

Синтаксис

value = love.math.noise( x, y )

Аргументы

number x
Первое значение 2-мерного вектора, используемого для генерации значения шума.
number y
Второе значение 2-мерного вектора, используемого для генерации значения шума.

Возвращаемое значение

number value
Значение шума в диапазоне [0, 1].

Функция

Генерирует шум Perlin (шум Simplex в версии 0.9.2 и более ранних) из 3 измерений.

Синтаксис

value = love.math.noise( x, y, z )

Аргументы

number x
Первое значение 3-мерного вектора, используемого для генерации значения шума.
number y
Второе значение 3-мерного вектора, используемого для генерации значения шума.
number z
Третье значение 3-мерного вектора, используемого для генерации значения шума.

Возвращаемое значение

number value
Значение шума в диапазоне [0, 1].

Функция

Генерирует шум Perlin (шум Simplex в версии 0.9.2 и более ранних) из 4 измерений.

Синтаксис

value = love.math.noise( x, y, z, w )

Аргументы

number x
Первое значение 4-мерного вектора, используемого для генерации значения шума.
number y
Второе значение 4-мерного вектора, используемого для генерации значения шума.
number z
Третье значение 4-мерного вектора, используемого для генерации значения шума.
number w
Четвертое значение 4-мерного вектора, используемого для генерации значения шума.

Возвращаемое значение

number value
Значение шума в диапазоне [0, 1].

Примеры

Заполняет двумерную сетку шумом Simplex каждый раз при нажатии клавиши.

local grid = {}
 
function love.draw()
    for x = 1, #grid do
        for y = 1, #grid[x] do
            local f = 1 * grid[x][y]
            love.graphics.setColor( f, f, f, 1 )
            love.graphics.rectangle( 'fill', x * 8, y * 8, 7, 7 )
            love.graphics.setColor( 1, 1, 1, 1 )
        end
    end
end
 
-- Fill each pixel in our grid with simplex noise.
local function noise()
    for x = 1, 60 do
        for y = 1, 60 do
            grid[x] = grid[x] or {}
            grid[x][y] = love.math.noise( x + love.math.random(), y + love.math.random() )
        end
    end
end
 
function love.keypressed()
    noise()
end

См. также

  • love.math

© 2006–2020 LÖVE Development Team
Licensed under the GNU Free Documentation License, Version 1.3.
https://love2d.org/wiki/love.math.noise

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API