love

audio

event

filesystem

graphics

image

joystick

keyboard

math

mouse

physics

sound

system

thread

timer

touch

video

window

love

Types

Callbacks

Functions

love.getVersion

Возвращает текущую версию LÖVE.

major, minor, revision, codename = love.getVersion()

majornumberОсновная версия LÖVE, т. Е. 0 для версии 0.9.1.
minornumberМалая версия LÖVE, т. Е. 9 для версии 0.9.1.
revisionnumberВерсия версии LÖVE, то есть 1 для версии 0.9.1.
codenamestringКодовое имя текущей версии, то есть «Инспектор младенца» для версии 0.9.1.

love.conf

Если в вашей игровой папке (или файле .love) присутствует файл conf.lua, он запускается до загрузки модулей LÖVE. Вы можете использовать этот файл, чтобы перезаписать функцию love.conf, которая позже вызывается скриптом загрузки LÖVE. Используя функцию love.conf, вы можете установить некоторые параметры конфигурации и изменить такие вещи, как размер окна по умолчанию, какие модули загружены и другие вещи.

love.conf( t )

ttableФункция love.conf принимает один аргумент: таблица, заполненная всеми значениями по умолчанию, которые вы можете переписать по своему усмотрению. Например, если вы хотите изменить размер окна по умолчанию, выполните следующие действия: Функция love.conf (t)     t.window.width = 1024     t.window.height = 768 конец Если вам не нужен физический модуль или модуль джойстика, выполните следующие действия. Функция love.conf (t)     t.modules.joystick = false     t.modules.physics = false конец Если вы отпустите свою игру, рекомендуется установить неиспользуемые модули в false. Это немного сокращает время запуска (особенно если модуль джойстика отключен) и уменьшает использование памяти (слегка). Обратите внимание, что вы не можете отключить love.filesystem; это обязательно. То же самое касается самого модуля любви. love.graphics требует, чтобы love.window был включен.
t.identity (nil)stringЭтот флаг определяет имя каталога сохранения для вашей игры. Обратите внимание, что вы можете указать только имя, а не местоположение, в котором оно будет создано: t.identity = "gabe_HL3" - Исправить t.identity = "c: / Пользователи / gabe / HL3" - Неправильно В качестве альтернативы love.filesystem.setIdentity можно использовать для установки каталога сохранения за пределами файла конфигурации.
t.version ("0.10.2")stringt.version должна быть строкой, представляющей версию LÖVE, для которой была создана ваша игра. Он должен быть отформатирован как «X.Y.Z», где X - основной номер выпуска, Y - младший и Z - уровень патча. Это позволяет LÖVE отображать предупреждение, если оно несовместимо. По умолчанию используется версия LÖVE.
t.console (false)booleanОпределяет, следует ли открывать консоль рядом с игровым окном (только для Windows) или нет. Примечание. В OSX вы можете получить консольный вывод, запустив LÖVE через терминал.
t.accelerometerjoystick (true)booleanУстанавливает, должен ли акселерометр устройства на iOS и Android быть выставлен как 3-осевой джойстик. Отключение акселерометра, когда оно не используется, может снизить использование ЦП.
t.externalstorage (false)booleanУстанавливает, сохраняются ли файлы во внешнем хранилище (true) или внутреннем хранилище (false) на Android.
t.gammacorrect (false)booleanОпределяет, включена ли гамма-коррекция, когда система поддерживает ее.
t.windowtableМожно отложить создание окна до тех пор, пока в вашем коде не будет вызвана функция love.window.setMode. Для этого установите t.window = nil в love.conf (или t.screen = nil в более старых версиях.) Если это будет сделано, LÖVE может произойти сбой, если любая функция из love.graphics вызывается перед первой любовью. window.setMode в вашем коде. Таблица t.window была названа t.screen в версиях до 0.9.0. Таблица t.screen не существует в love.conf в 0.9.0, а таблица t.window не существует в love.conf в 0.8.0. Это означает, что функция love.conf не будет выполнена (поэтому она вернется к значениям по умолчанию), если не использовать осторожную таблицу для используемой версии LÖVE.
t.modulestableПараметры модуля.

love.directorydropped

Функция обратного вызова запускается, когда каталог перетаскивается и опускается в окно.

love.directorydropped( path )

pathstringПолный путь к каталогу, зависящий от платформы. Его можно использовать в качестве аргумента для love.filesystem.mount, чтобы получить доступ для чтения к каталогу с помощью love.filesystem.

love.draw

Функция, вызываемая в каждом кадре, используется для рисования на экране.

love.draw()

love.errhand

Обработчик ошибок, используемый для отображения сообщений об ошибках.

love.errhand( msg )

msgstringСообщение об ошибке.

love.filedropped

Функция обратного вызова запускается, когда файл перетаскивается и опускается на окно.

love.filedropped( file )

fileFileНераскрытый объект File, представляющий файл, который был удален.

love.focus

Функция вызывается, когда окно получает или теряет фокус.

love.focus( focus )

focusbooleanСостояние фокуса окна

love.gamepadaxis

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

love.gamepadaxis( joystick, axis )

joystickJoystickОбъект джойстика.
axisGamepadAxisВиртуальная ось геймпада.

love.gamepadpressed

Вызывается, когда нажата кнопка виртуального геймпада джойстика.

love.gamepadpressed( joystick, button )

joystickJoystickОбъект джойстика.
buttonGamepadButtonКнопка виртуального геймпада.

love.gamepadreleased

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

love.gamepadreleased( joystick, button )

joystickJoystickОбъект джойстика.
buttonGamepadButtonКнопка виртуального геймпада.

love.joystickadded

Вызывается при подключении джойстика.

Этот обратный вызов также запускается после love.load для каждого Джойстика, который уже был подключен, когда игра началась.

love.joystickadded( joystick )

joystickJoystickНедавно подключенный объект джойстика.

love.joystickaxis

Вызывается, когда перемещается ось джойстика.

love.joystickaxis( joystick, axis, value )

joystickJoystickОбъект джойстика.
axisnumberНомер оси.
valuenumberНовое значение оси.

love.joystickhat

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

love.joystickhat( joystick, hat, direction )

joystickJoystickОбъект джойстика.
hatnumberНомер шляпы.
directionJoystickHatНовое направление шляпы.

love.joystickpressed

Вызывается, когда происходит нажатие кнопки на джойстике.

love.joystickpressed( joystick, button )

joysticknumberНомер джойстика.
buttonnumberНомер кнопки.

love.joystickreleased

Вызывается, когда кнопка на джойстике отпускается.

love.joystickreleased( joystick, button )

joysticknumberНомер джойстика.
buttonnumberНомер кнопки.

love.joystickremoved

Вызывается, когда джойстик отключен.

love.joystickremoved( joystick )

joystickJoystickТеперь отключенный объект джойстика.

love.keypressed

Функция вызывается, когда происходит нажатие клавиши.

love.keypressed( key, scancode, isrepeat )

keyKeyConstantХарактер нажатой клавиши.
scancodeScancodeСканкод, представляющий нажатую клавишу.
isrepeatbooleanЯвляется ли это событие нажатия клавиши повторением. Задержка между повторами клавиш зависит от настроек системы пользователя.

love.keyreleased

Функция вызывается, когда происходит отпускание клавиши.

love.keyreleased( key, scancode )

keyKeyConstantХарактер выпущенного ключа.
scancodeScancodeСканкод, представляющий выпущенный ключ.

love.load

Эта функция вызывается только один раз в начале игры.

love.load( arg )

argtableАргументы командной строки, заданные для игры.

love.lowmemory

Функция обратного вызова срабатывает, когда на мобильных устройствах не хватает памяти.

 Мобильные операционные системы могут принудительно убить игру, если она использует слишком много памяти, поэтому любой некритический ресурс должен быть удален, если это возможно (путем установки всех переменных, ссылающихся на ресурсы на nil, и вызова collectgarbage ()), когда это событие запускается. Звуки и изображения, в частности, имеют тенденцию использовать большую часть памяти.

love.lowmemory()

love.mousefocus

Функция обратного вызова срабатывает, когда окно получает или теряет фокус мыши.

love.mousefocus( focus )

focusbooleanЯвляется ли окно фокусом мыши или нет.

love.mousemoved

Функция обратного вызова запускается при перемещении мыши.

love.mousemoved( x, y, dx, dy, istouch )

xnumberПоложение мыши на оси х.
ynumberПоложение мыши по оси y.
dxnumberСумма, перемещаемая вдоль оси x с момента последнего обращения к love.mousemoved.
dynumberСумма, перемещаемая вдоль оси y с момента последнего обращения, была вызвана love.mousemoved.
istouchbooleanИстина, если нажатие кнопки мыши происходит от сенсорного сенсорного экрана.

love.mousepressed

Функция срабатывает, когда происходит нажатие кнопки мыши.

love.mousepressed( x, y, button, isTouch )

xnumberМышь x позиция, в пикселях.
ynumberМышь y позиция, в пикселях.
buttonnumberИндекс кнопки, который был нажат. 1 - основная кнопка мыши, 2 - вторичная кнопка мыши, а 3 - средняя кнопка. Другие кнопки зависят от мыши
isTouchbooleanИстина, если нажатие кнопки мыши происходит от сенсорного сенсорного экрана.

love.mousereleased

Функция срабатывает, когда происходит отпускание кнопки мыши.

love.mousereleased( x, y, button, isTouch )

xnumberМышь x позиция, в пикселях.
ynumberМышь y позиция, в пикселях.
buttonnumberИндекс кнопки, который был выпущен. 1 - основная кнопка мыши, 2 - вторичная кнопка мыши, а 3 - средняя кнопка. Другие кнопки зависят от мыши.
isTouchbooleanИстина, если нажатие кнопки мыши происходит от сенсорного сенсорного экрана.

love.quit

Функция вызывается перед закрытием игры.

r = love.quit()

rbooleanОтмена выхода. Если true, то выхода из игры не происходит.

love.resize

Вызывается при изменении размера окна, например, если пользователь изменяет размер окна, или если love.window.setMode вызывается с неподдерживаемой шириной или высотой в полноэкранном режиме, и окно выбирает ближайший соответствующий размер.

Вызовы в love.window.setMode инициируют это событие только в том случае, если ширина или высота окна после вызова не соответствуют запрашиваемой ширине и высоте. Это может произойти, если запрашивается полноэкранный режим, который не соответствует ни одному поддерживаемому режиму, или если полноэкранный тип - «рабочий стол», а запрошенная ширина или высота не соответствуют разрешению рабочего стола.

love.resize( w, h )

wnumberНовая ширина.
hnumberНовая высота.

love.run

Основная функция, содержащая главный цикл. Если упущена, то используется стандартная реализация этой функции.

love.run()

love.textedited

Вызывается, когда текст кандидата для IME (редактор метода ввода) изменился.

Текст-кандидат не является окончательным текстом, который пользователь в конечном итоге выберет. Для этого используйте love.textinput.

love.textedited( text, start, length )

textstringТекстовый текст в кодировке Unicode, кодированный UTF-8.
startnumberКурсор начала выбранного текста кандидата.
lengthnumberДлина выбранного текста кандидата. Может быть 0.

love.textinput

Вызывается, когда пользователь вводит текст. Например, если сдвиг-2 нажат на раскладке американской клавиатуры, будет создан текст «@».

love.textinput( text )

textstringТекстовый текст в кодировке UTF-8.

love.threaderror

Функция обратного вызова срабатывает, когда Thread сталкивается с ошибкой.

love.threaderror( thread, errorstr )

threadThreadПоток, который вызвал ошибку.
errorstrstringСообщение об ошибке.

love.touchmoved

Функция обратного вызова срабатывает, когда сенсорное нажатие перемещается внутри сенсорного экрана.

love.touchmoved( id, x, y, dx, dy, pressure )

idlight userdataИдентификатор сенсорного нажатия.
xnumberПоложение оси x касания внутри окна, в пикселях.
ynumberПоложение оси Y касания внутри окна, в пикселях.
dxnumberДвижение по оси x касания внутри окна, в пикселях.
dynumberДвижение оси Y касания внутри окна, в пикселях.
pressurenumberКоличество прилагаемого давления. Большинство сенсорных экранов не чувствительны к давлению, и в этом случае давление будет 1.

love.touchpressed

Функция обратного вызова срабатывает при касании сенсорного экрана.

love.touchpressed( id, x, y, dx, dy, pressure )

idlight userdataИдентификатор сенсорного нажатия.
xnumberПоложение оси x сенсорного нажатия внутри окна, в пикселях.
ynumberПоложение оси Y сенсорного нажатия внутри окна, в пикселях.
dxnumberДвижение по оси X сенсорного нажатия внутри окна, в пикселях. Это всегда должно быть равным нулю.
dynumberДвижение по оси Y сенсорного нажатия внутри окна в пикселях. Это всегда должно быть равным нулю.
pressurenumberКоличество прилагаемого давления. Большинство сенсорных экранов не чувствительны к давлению, и в этом случае давление будет 1.

love.touchreleased

Функция обратного вызова срабатывает, когда сенсорный экран перестает касаться.

love.touchreleased( id, x, y, dx, dy, pressure )

idlight userdataИдентификатор сенсорного нажатия.
xnumberПоложение оси x касания внутри окна, в пикселях.
ynumberПоложение оси Y касания внутри окна, в пикселях.
dxnumberДвижение по оси x касания внутри окна, в пикселях.
dynumberДвижение оси Y касания внутри окна, в пикселях.
pressurenumberКоличество прилагаемого давления. Большинство сенсорных экранов не чувствительны к давлению, и в этом случае давление будет 1.

love.update

Функция используется для обновления состояния игры в каждом кадре.

love.update( dt )

dtnumberВремя, пошедшее с момента последнего вызова этой функции в секундах.

love.visible

Функция обратного вызова запускается, когда окно минимизируется / скрывается или неминуемо пользователем.

love.visible( visible )

visiblebooleanИстина, если окно видимо, false, если это не так.

love.wheelmoved

Функция обратного вызова срабатывает при перемещении колеса мыши.

love.wheelmoved( x, y )

xnumberКоличество горизонтального движения колесика мыши. Положительные значения указывают на движение вправо.
ynumberКоличество вертикального перемещения колеса мыши. Положительные значения указывают на движение вверх.

Data

Базовый класс данных.

Functions

Supertypes

Subtypes

Data:getPointer

Получает указатель на данные.

pointer = Data:getPointer()

pointerlight userdataНеобработанный указатель на данные.

Data:getSize

Получает размер данных.

size = Data:getSize()

sizenumberРазмер данных в байтах.

Data:getString

Возвращает полные данные в виде строки.

data = Data:getString()

datastringИсходные данные.

Drawable

Базовый класс для всех объектов, которые могут быть отображены на экране. Это абстрактный тип, объекты которого не могут быть созданы напрямую.

Supertypes

Subtypes

Object

Базовый класс для всех типов LÖVE.

Functions

Subtypes

Object:type

Получает строку с названием типа объекта.

type = Object:type()

typestringСтрока, содержащая тип.

Object:typeOf

Проверят, является ли объект определенным типом. Если объект содержит тип с указанным именем в своей иерархии, эта функция вернет истину.

b = Object:typeOf( name )

bbooleanTrue, если объект соответствует этому типу, иначе false.
namestringНазвание типа, на соответствие которому надо проверить объект.

love.audio

Types

Functions

Enums

love.audio.getDistanceModel

Возвращает модель ослабления расстояние.

model = love.audio.getDistanceModel()

modelDistanceModelТекущая модель ослабления расстояния. По умолчанию 'обратная фиксация'.

love.audio.getDopplerScale

Получает текущий коэффициент глобального масштаба для эффектов основанных на скорости эффектов Доплера

scale = love.audio.getDopplerScale()

scalenumberТекущий доплеровский масштабный коэффициент.

love.audio.getSourceCount

Получить текущее количество одновременно играющих источников.

numSources = love.audio.getSourceCount()

numSourcesnumberЧисло источников, проигрываемых в данный момент.

love.audio.getOrientation

Возвращает ориентацию слушателя.

fx, fy, fz, ux, uy, uz = love.audio.getOrientation()

fxnumberX-компонент прямого вектора ориентации слушателя.
fynumberY-составляющая переднего вектора ориентации слушателя.
fznumberZ-составляющая переднего вектора ориентации слушателя.
uxnumberХ-компонент вектора вверх ориентации слушателя.
uynumberY-составляющая вектора вверх ориентации слушателя.
uznumberZ-составляющая вектора вверх ориентации слушателя.

love.audio.getPosition

Получает позицию слушателя.

x, y, z = love.audio.getPosition()

xnumberПозиция слушателя по оси X.
ynumberПозиция слушателя по оси Y.
znumberПозиция слушателя по оси Z.

love.audio.getVelocity

Возвращает скорость слушателя.

x, y, z = love.audio.getVelocity()

xnumberСкорость слушателя по оси X.
ynumberСкорость слушателя по оси Y.
znumberСкорость слушателя по оси Z.

love.audio.getVolume

Получает громкость.

volume = love.audio.getVolume()

volumenumberТекущая громкость.

love.audio.newSource

Создает новый источник из файла.

Источники созданные из SoundData всегда статичны.

source = love.audio.newSource( file, type )

sourceSourceНовый источник, который может воспроизводить указанный звук.
filestring / FileПуть / Файл для создания источника.
type ("stream")SourceTypeПотоковый или статический источник.

source = love.audio.newSource( soundData )

sourceSourceНовый источник, который может воспроизводить указанный звук. SourceType возвращаемого звука является «статическим».
soundDataSoundData / FileDataSoundData / FileData для создания источника.

love.audio.pause

Ставит на паузу все аудио.

love.audio.pause()

Эта функция будет пауза всех активных Sources.

love.audio.pause( source )

Эта функция будет приостановлена только указанный Source.

sourceSourceИсточник, который надо поставить на паузу.

love.audio.play

Начинает проигрывать указанный источник.

love.audio.play( source )

sourceSourceИсточник для проигрывания.

love.audio.resume

Продолжает проигрывать все аудио.

love.audio.resume()

love.audio.resume( source )

sourceSourceИсточник, воспроизведение которого надо продолжить.

love.audio.rewind

Перемотка всего аудио.

love.audio.rewind()

love.audio.rewind( source )

sourceSourceИсточник для перемотки.

love.audio.setDistanceModel

Устанавливает модель ослабления расстояния.

love.audio.setDistanceModel( model )

modelDistanceModelНовая модель расстояния.

love.audio.setDopplerScale

Устанавливает глобальный коэффициент масштаба для скоростей основанных на эффектах Доплера. По умолчанию значение масштаба 1.

love.audio.setDopplerScale( scale )

scalenumberНовый доплеровский коэффициент масштабирования. Масштаб должен быть больше 0.

love.audio.setOrientation

Устанавливает положение слушателя.

love.audio.setOrientation( fx, fy, fz, ux, uy, uz )

fxnumberX-компонент прямого вектора ориентации слушателя.
fynumberY-составляющая переднего вектора ориентации слушателя.
fznumberZ-составляющая переднего вектора ориентации слушателя.
uxnumberХ-компонент вектора вверх ориентации слушателя.
uynumberY-составляющая вектора вверх ориентации слушателя.
uznumberZ-составляющая вектора вверх ориентации слушателя.

love.audio.setPosition

Устанавливает позицию слушателя.

love.audio.setPosition( x, y, z )

xnumberX позиция слушателя.
ynumberY позиция слушателя.
znumberZ позиция слушателя.

love.audio.setVelocity

Устанавливает скорость слушателя.

love.audio.setVelocity( x, y, z )

xnumberСкорость слушателя по оси X.
ynumberСкорость слушателя по оси Y.
znumberСкорость слушателя по оси Z.

love.audio.setVolume

Устанавливает громкость.

love.audio.setVolume( volume )

volumenumber1.0f - максимальная громкость, 0.0f - минимальная.

love.audio.stop

Останавливает все проигрываемое аудио.

love.audio.stop()

Эта функция останавливает все текущие активные источники.

love.audio.stop( source )

Эта функция будет только остановить указанный источник.

sourceSourceИсточник, проигрывание которого надо остановить.

DistanceModel

none

Источник не ослабляется.

inverse

Инвертированное расстояние ослабления.

inverseclamped

Инвентированное расстояние ослабления. Усиление фиксированно. В версии 0.9.2 и позже это именовалось '''inverse clamped'''.

linear

Линейное ослабление.

linearclamped

Линейное ослабление. Усиление фиксированно. В версии 0.9.2 и позже это именовалось '''linear clamped'''.

exponent

Экспоненциальное ослабление.

exponentclamped

Экспоненциальное ослабление. Усиление фиксированно. В версии 0.9.2 и позже это именовалось '''exponent clamped'''.

SourceType

static

Декодировать весь звук одновременно. Подходит для звуковых эффектов.

stream

Потоковый звук; декодировать постепенно. Подходит для музыки.

TimeUnit

seconds

Регулярные секунды.

samples

Образцы аудио.

Source

Источник представляет аудио данные, которые вы можете воспроизвести.

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

Источник управляется (воспроизведение/пауза/и т.д.) действуют в соответствии со следующей таблицей состояний.

Constructors

Functions

Supertypes

Source:clone

Создает идентичную копию источника в остановленном состоянии.

Статические источники будут использовать значительно меньше памяти и занимать гораздо меньше времени, если будут созданы Source: clone для создания их вместо love.audio.newSource, поэтому этот метод должен быть предпочтительным при создании нескольких источников, которые воспроизводят один и тот же звук.

Клонированные источники наследуют все установленное состояние исходного источника, но они инициализируются.

source = Source:clone()

sourceSourceНовая идентичная копия этого Источника.

Source:getAttenuationDistances

Получает ссылку и максимальное расстояние от источника.

ref, max = Source:getAttenuationDistances()

refnumberИсходное расстояние.
maxnumberМаксимальное расстояние.

Source:getChannels

Возвращает количество каналов в источнике. Только одноканальные (моно) источники могут использовать направленные и позиционные эффекты.

channels = Source:getChannels()

channelsnumber1 для моно, 2 для стерео.

Source:getCone

Получает конусы направленного объема источника. Вместе с Source: setDirection углы конуса позволяют изменять громкость источника в зависимости от его направления.

innerAngle, outerAngle, outerVolume = Source:getCone()

innerAnglenumberВнутренний угол от направления источника, в радианах. Источник будет играть на нормальном уровне, если слушатель находится внутри конуса, определенного этим углом.
outerAnglenumberВнешний угол от направления источника, в радианах. Источник будет воспроизводить громкость между нормальным и внешним томами, если слушатель находится между конусами, определяемыми внутренним и внешним углами.
outerVolumenumberОбъем источника, когда слушатель находится за пределами внутреннего и внешнего углов конуса.

Source:getDirection

Получает направление источника.

x, y, z = Source:getDirection()

xnumberХ-часть вектора направления.
ynumberY-часть вектора направления.
znumberZ-часть вектора направления.

Source:getDuration

Возвращает продолжительность источника. Для потоковых источников он может не всегда быть точным и может возвращать -1, если продолжительность не может быть определена вообще.

duration = Source:getDuration( unit )

durationnumberПродолжительность Источника или -1, если он не может быть определен.
unit ("seconds")TimeUnitЕдиница времени для возвращаемого значения.

Source:getPitch

Возвращает текущий шаг источника.

pitch = Source:getPitch()

pitchnumberШаг, где 1.0 является нормальным.

Source:getPosition

Получает положение источника.

x, y, z = Source:getPosition()

xnumberПозиция X источника.
ynumberПозиция Y источника.
znumberПозиция Z источника.

Source:getRolloff

Получает коэффициент rollloff источника.

rolloff = Source:getRolloff()

rolloffnumberФактор rolloff.

Source:getType

Возвращает тип (статический или поток) источника.

sourcetype = Source:getType()

sourcetypeSourceTypeТип источника.

Source:getVelocity

Получает скорость источника.

x, y, z = Source:getVelocity()

xnumberХ-часть вектора скорости.
ynumberY-часть вектора скорости.
znumberZ-часть вектора скорости.

Source:getVolume

Возвращает текущий том источника.

volume = Source:getVolume()

volumenumberОбъем источника, где 1.0 - нормальный объем.

Source:getVolumeLimits

Возвращает пределы объема источника.

min, max = Source:getVolumeLimits()

minnumberМинимальный объем.
maxnumberМаксимальный объем.

Source:isLooping

Получает, будет ли источник зацикливаться.

loop = Source:isLooping()

loopbooleanИстинно, если источник будет зацикливаться, в противном случае - false.

Source:isPaused

Получает, приостановлен ли источник.

paused = Source:isPaused()

pausedbooleanИстинно, если источник приостановлен, в противном случае - false.

Source:isPlaying

Получает, воспроизводится ли источник.

playing = Source:isPlaying()

playingbooleanИстинно, если источник воспроизводится, в противном случае - false.

Source:isStopped

Получает, остановлен ли источник.

stopped = Source:isStopped()

stoppedbooleanИстина, если источник остановлен, в противном случае - false.

Source:pause

Приостанавливает источник.

Source:pause()

Source:play

Начинается воспроизведение источника.

success = Source:play()

successbooleanИстинно, если источник начал играть успешно, в противном случае - false.

Source:resume

Восстанавливает приостановленный источник.

Source:resume()

Source:rewind

Перематывает источник.

Source:rewind()

Source:seek

Устанавливает игровое положение источника.

Source:seek( position, unit )

positionnumberПозиция, к которой нужно стремиться.
unit ("seconds")TimeUnitЕдиница значения позиции.

Source:setDirection

Устанавливает вектор направления источника. Ноль-вектор делает источник ненаправленным.

Source:setDirection( x, y, z )

xnumberХ-часть вектора направления.
ynumberY-часть вектора направления.
znumberZ-часть вектора направления.

Source:setAttenuationDistances

Устанавливает ссылку и максимальное расстояние от источника.

Source:setAttenuationDistances( ref, max )

refnumberНовая ссылка расстояния.
maxnumberНовое максимальное расстояние.

Source:setCone

Устанавливает конусы направленного объема источника. Вместе с Source: setDirection углы конуса позволяют изменять громкость источника в зависимости от его направления.

Source:setCone( innerAngle, outerAngle, outerVolume )

innerAnglenumberВнутренний угол от направления источника, в радианах. Источник будет играть на нормальном уровне, если слушатель находится внутри конуса, определенного этим углом.
outerAnglenumberВнешний угол от направления источника, в радианах. Источник будет воспроизводить громкость между нормальным и внешним томами, если слушатель находится между конусами, определяемыми внутренним и внешним углами.
outerVolume (0)numberОбъем источника, когда слушатель находится за пределами внутреннего и внешнего углов конуса.

Source:setLooping

Устанавливает, должен ли источник зацикливаться.

Source:setLooping( loop )

loopbooleanИстинно, если источник должен зацикливаться, в противном случае - false.

Source:setPitch

Устанавливает высоту тона источника.

Source:setPitch( pitch )

pitchnumberРассчитано, что 1 является базовым шагом. Каждое уменьшение на 50 процентов равно сдвигу основного тона -12 полутонов (уменьшение на одну октаву). Каждое удвоение равно сдвигу тона 12 полутонов (увеличение на одну октаву). Ноль не является юридической ценностью.

Source:setPosition

Устанавливает положение источника.

Source:setPosition( x, y, z )

xnumberПозиция X источника.
ynumberПозиция Y источника.
znumberПозиция Z источника.

Source:setRolloff

Устанавливает коэффициент rollloff, который влияет на силу используемого ослабления расстояния.

Расширенную информацию и подробные формулы можно найти в главе 3.4 «Затухание по расстоянию» спецификации OpenAL 1.1.

Source:setRolloff( rolloff )

rolloffnumberНовый коэффициент rollloff.

Source:setVelocity

Устанавливает скорость источника.

Это не меняет положение источника, но используется для вычисления эффекта доплера.

Source:setVelocity( x, y, z )

xnumberХ-часть вектора скорости.
ynumberY-часть вектора скорости.
znumberZ-часть вектора скорости.

Source:setVolume

Устанавливает громкость источника.

Source:setVolume( volume )

volumenumberОбъем источника, где 1.0 - нормальный объем.

Source:setVolumeLimits

Устанавливает пределы объема источника. Пределы должны быть от 0 до 1.

Source:setVolumeLimits( min, max )

minnumberМинимальный объем.
maxnumberМаксимальный объем.

Source:stop

Останавливает источник.

Source:stop()

Source:tell

Возвращает текущую позицию источника.

position = Source:tell( unit )

positionnumberТекущая позиция источника.
unit ("seconds")TimeUnitТип единицы для возвращаемого значения.

love.event

Functions

Enums

love.event.clear

Очистка очереди событий.

love.event.clear()

love.event.poll

Возвращает итератор для сообщений в очереди событий.

i = love.event.poll()

ifunctionФункция для использования в качестве итератора в цикле for.

love.event.pump

Убирает событие из очереди событий. Это низкоуровневая функция и она обычно не вызывается явно, но используется функциями love.event.poll() или love.event.wait().

love.event.pump()

love.event.push

Добавляет событие в очередь событий.

love.event.push( e, a, b, c, d )

eEventНазвание события.
a (nil)VariantАргумент первого события.
b (nil)VariantВторой аргумент события.
c (nil)VariantТретий аргумент.
d (nil)VariantЧетвертый аргумент события.

love.event.quit

Добавляет событие выхода в основной поток. love.auit коллбак позволяет предотвратить выход с помощью данной функции.

love.event.quit()

love.event.quit( exitstatus )

exitstatus (0)numberСтатус выхода программы для использования при закрытии приложения.

love.event.quit( "restart" )

"restart"stringПерезапускает игру без перезапуска исполняемого файла. Это чисто закрывает основной экземпляр состояния Lua и создает совершенно новый.

love.event.wait

Похожа на love.event.poll(), но ждет, пока не появится событие в очереди.

e, a, b, c, d = love.event.wait()

eEventТип события.
aVariantАргумент первого события.
bVariantВторой аргумент события.
cVariantТретий аргумент.
dVariantЧетвертый аргумент события.

Event

focus

Фокус окна, полученный или потерянный

joystickaxis

Движение оси джойстика

joystickhat

Джойстик нажат

joystickpressed

Джойстик нажат

joystickreleased

Джойстик выпущен

keypressed

Нажата клавиша

keyreleased

Выпущен ключ

mousefocus

Фокус фокуса мыши, полученный или потерянный

mousepressed

Мышь нажата

mousereleased

Мышь выпущена

resize

Размер окна, измененный пользователем

threaderror

В потоке произошла ошибка Lua.

quit

Уволиться

visible

Окно минимизируется или не минимизируется пользователем

love.filesystem

Types

Functions

Enums

love.filesystem.append

Добавить данные в существующий файл.

success, errormsg = love.filesystem.append( name, data, size )

successbooleanИстина, если операция прошла успешно, или nil, если произошла ошибка.
errormsgstringСообщение об ошибке при сбое.
namestringИмя (и путь) файла.
datastringДанные, которые должны быть записаны в файл
size (all)numberСколько байтов писать.

love.filesystem.areSymlinksEnabled

Получает, следует ли love.filesystem следовать символическим ссылкам.

enable = love.filesystem.areSymlinksEnabled()

enablebooleanНезависимо от того, идет ли love.filesystem символические ссылки.

love.filesystem.createDirectory

Создает каталог.

success = love.filesystem.createDirectory( name )

successbooleanИстинно, если каталог был создан, false, если нет.
namestringКаталог для создания.

love.filesystem.exists

Проверяет, существует ли такой файл или директория.

exists = love.filesystem.exists( filename )

existsbooleanTrue, если файл или директория с таким именем существует, иначе False.
filenamestringПуть к файлу или директории.

love.filesystem.getAppdataDirectory

Возвращает директорию приложения (может быть такой же, как и getUserDirectory).

path = love.filesystem.getAppdataDirectory()

pathstringПуть к директории приложения.

love.filesystem.getDirectoryItems

Получает таблицу с именами файлов и подкаталогов по указанному пути. Таблица не сортируется никоим образом; порядок не определен.

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

items = love.filesystem.getDirectoryItems( dir )

itemstableПоследовательность с именами всех файлов и подкаталогов в виде строк.
dirstringКаталог.

love.filesystem.getIdentity

Получает имя записи для вашей игры. Обратите внимание, что это возвращает имя папки для хранения ваших файлов, а не полного местоположения.

love.filesystem.getIdentity( name )

namestringИдентификатор, который используется как каталог записи.

love.filesystem.getLastModified

Получает время последнего изменения файла.

modtime, errormsg = love.filesystem.getLastModified( filename )

modtimenumberВремя изменения в секундах с начала эпохи unix. Или nil в случае неудачи.
errormsgstringСообщение об ошибке.
filenamestringПуть и имя файла.

love.filesystem.getRealDirectory

Получает абсолютный путь к каталогу, содержащий путь к файлу.

Это можно использовать, чтобы определить, находится ли файл внутри каталога сохранения или источника игры .love.

realdir = love.filesystem.getRealDirectory( filepath )

realdirstringПолный путь к каталогу, содержащий путь к файлу.
filepathstringПуть к файлу для получения каталога.

love.filesystem.getRequirePath

Возвращает пути файловой системы, которые будут выполняться при вызове require.

Строка путей, возвращаемая этой функцией, представляет собой последовательность шаблонов путей, разделенных точками с запятой. Аргумент, переданный требованию, будет вставлен вместо символа вопроса («?») В каждом шаблоне (после того, как точечные символы в аргументе, переданном запросу, будут заменены разделителями каталогов.)

Пути относятся к исходным файлам и каталогам игры, а также к любым путям, установленным с помощью love.filesystem.mount.

paths = love.filesystem.getRequirePath()

pathsstringПути, которые функция require будет проверять в файловой системе love.

love.filesystem.getSaveDirectory

Возвращает полный путь к назначенной папке сохранения.

Может быть использована, если вы захотите использовать стандартную библиотеку ввода/вывода, чтобы читать или записывать в папке сохранения.

path = love.filesystem.getSaveDirectory()

pathstringАбсолютный путь к папке сохранения.

love.filesystem.getSize

Получает размер в байтах файла.

size, errormsg = love.filesystem.getSize( filename )

sizenumberРазмер в байтах файла, или nil при сбое.
errormsgstringСообщение об ошибке при сбое.
filenamestringПуть и имя файла.

love.filesystem.getSource

Получает полный путь к файлу или директории .love. Если игра слита с исполняемым файлом LÖVE, возвращается исполняемый файл.

path = love.filesystem.getSource()

pathstringПолный зависимый от платформы путь к файлу или директории .love.

love.filesystem.getSourceBaseDirectory

Получает полный путь к каталогу, содержащему файл .love. Если игра слита с исполняемым файлом LÖVE, возвращается каталог, содержащий исполняемый файл.

Если love.filesystem.isFused истинно, путь, возвращаемый этой функцией, может быть передан в love.filesystem.mount, который сделает каталог, содержащий основную игру, доступным для чтения в love.filesystem.

path = love.filesystem.getSourceBaseDirectory()

pathstringПолный зависимый от платформы путь к каталогу, содержащему файл .love.

love.filesystem.getUserDirectory

Возвращает путь к директории пользователя.

path = love.filesystem.getUserDirectory()

pathstringПуть к директории пользователя.

love.filesystem.getWorkingDirectory

Получает текущую рабочую директорию.

path = love.filesystem.getWorkingDirectory()

pathstringТекущая рабочая директория.

love.filesystem.init

Инициализирует файловую систему, вызывается внутренне, так что не надо использовать эту функцию явно.

love.filesystem.init( appname )

appnamestringИмя бинарного приложения обычно нравится.

love.filesystem.isDirectory

Проверяет, является ли объект директорией.

isDir = love.filesystem.isDirectory( path )

isDirbooleanTrue, если это директория, иначе False.
pathstringПуть.

love.filesystem.isFile

Проверяет, является ли объект файлом.

isFile = love.filesystem.isFile( path )

isFilebooleanTrue, если это файл, иначе False.
pathstringПуть.

love.filesystem.isFused

Получает, находится ли игра в режиме плавки или нет.

Если игра находится в режиме плавного перехода, ее каталог сохранения будет находиться непосредственно в каталоге Appdata вместо Appdata / LOVE /. Игра также сможет загружать динамические библиотеки C Lua, которые находятся в каталоге сохранения.

Игра находится в режиме плавкого режима, если источник .love был слит с исполняемым файлом (см. «Распределение игры»), или если «--fused» был предоставлен в качестве аргумента командной строки при запуске игры.

fused = love.filesystem.isFused()

fusedbooleanИстинно, если игра находится в режиме плавкого предохранителя, в противном случае - false.

love.filesystem.isSymlink

Получает, действительно ли путь к файлу является символической ссылкой.

Если символические ссылки не включены (через love.filesystem.setSymlinksEnabled), эта функция всегда будет возвращать значение false.

symlink = love.filesystem.isSymlink( path )

symlinkbooleanИстинно, если путь является символической ссылкой, false в противном случае.
pathstringПуть к файлу или каталогу для проверки.

love.filesystem.lines

Перебор строк в файле.

iterator = love.filesystem.lines( name )

iteratorfunctionФункция, которая перебирает все строки в файле.
namestringИмя (и путь) файла.

love.filesystem.load

Загружает файл (но не запускает его).

chunk = love.filesystem.load( name, errormsg )

chunkfunctionЗагруженный кусок.
namestringИмя (и путь) файла.
errormsg (nil)stringСообщение об ошибке, если файл не может быть открыт.

love.filesystem.mount

Монтирует zip-файл или папку в каталоге сохранения игры для чтения.

success = love.filesystem.mount( archive, mountpoint, appendToPath )

successbooleanИстинно, если архив был успешно смонтирован, в противном случае - false.
archivestringПапка или zip-файл в каталоге сохранения игры для монтирования.
mountpointstringНовый путь к архиву будет установлен.
appendToPath (false)stringБудет ли поиск архива при чтении пути к файлу до или после уже установленных архивов. Сюда входят исходные файлы и каталоги сохранения.

love.filesystem.newFile

Создает новый объект File.

Он должен быть открыт, прежде чем производить с ним какие-либо операции.

file, errorstr = love.filesystem.newFile( filename, mode )

fileFileНовый объект File, или nil, если произошла ошибка.
errorstrstringСтрока ошибки, если произошла ошибка.
filenamestringИмя файла для чтения.
mode ("c")FileModeРежим открытия файла.

love.filesystem.newFileData

Создает объект FileData.

data = love.filesystem.newFileData( contents, name, decoder )

dataFileDataНовый объект FileData.
contentsstringСодержимое файла.
namestringИмя файла.
decoder ("file")FileDecoderМетод декодирования.

data, err = love.filesystem.newFileData( filepath )

Создает новый FileData из файла на устройстве хранения данных.

dataFileDataНовый FileData или nil, если произошла ошибка.
errstringСтрока ошибки, если произошла ошибка.
filepathstringПуть к файлу.

love.filesystem.read

Считывает содержимое файла.

contents, size = love.filesystem.read( name, bytes )

contentsstringСодержимое файла.
sizenumberСколько байт было прочитано на самом деле.
namestringИмя (и путь)Файла.
bytes (all)numberКакое количество байт считать.

love.filesystem.remove

Удаляет файл или директорию.

success = love.filesystem.remove( name )

successbooleanTrue, если объект был удален, иначе false.
namestringФайл или директория для удаления.

love.filesystem.setIdentity

Устанавливает директорию сохранения для вашей игры.

Учтите, что вы можете задать только имя папки для сохранения, а не путь.

love.filesystem.setIdentity( name, appendToPath )

namestringНовый идентификатор, который будет использоваться как каталог записи.
appendToPath (false)booleanБудет ли поиск каталогов идентификаторов при чтении пути к файлу до или после исходного каталога игры и любых монтируемых в данный момент архивов.

love.filesystem.setRequirePath

Устанавливает пути файловой системы, которые будут выполняться при вызове require.

Строка путей, данная этой функции, представляет собой последовательность шаблонов путей, разделенных точками с запятой. Аргумент, переданный требованию, будет вставлен вместо символа вопроса («?») В каждом шаблоне (после того, как точечные символы в аргументе, переданном запросу, будут заменены разделителями каталогов.)

Пути относятся к исходным файлам и каталогам игры, а также к любым путям, установленным с помощью love.filesystem.mount.

love.filesystem.setRequirePath( paths )

pathsstringПути, которые функция require будет проверять в файловой системе love.

love.filesystem.setSource

Устанавливает источник для игры, в которой присутствует код. Вызывается единожды и автоматически.

love.filesystem.setSource( path )

pathstringАбсолютный путь к исходной папке игры.

love.filesystem.setSymlinksEnabled

Устанавливает, следует ли love.filesystem следовать символическим ссылкам. Он включен по умолчанию в версии 0.10.0 и новее и по умолчанию отключен в 0.9.2.

love.filesystem.setSymlinksEnabled( enable )

enablebooleanДолжна ли love.filesystem следовать символическим ссылкам.

love.filesystem.unmount

Отключает zip-файл или папку, ранее установленную для чтения с помощью love.filesystem.mount.

success = love.filesystem.unmount( archive )

successbooleanИстинно, если архив был успешно размонтирован, в противном случае - false.
archivestringПапка или почтовый файл в каталоге сохранения игры, который в настоящее время установлен.

love.filesystem.write

Записывает данные в файл.

success, message = love.filesystem.write( name, data, size )

successbooleanЕсли операция прошла успешно.
messagestringСообщение об ошибке, если операция не удалась.
namestringИмя (и путь) файла.
datastringСтроковые данные для записи в файл.
size (all)numberСколько байтов писать.

success, message = love.filesystem.write( name, data, size )

successbooleanЕсли операция прошла успешно.
messagestringСообщение об ошибке, если операция не удалась.
namestringИмя (и путь) файла.
dataDataОбъект Data для записи в файл.
size (all)numberСколько байтов писать.

BufferMode

none

Нет буферизации.Результат записи и добавление операций порвется сразу.

line

Линия буферизации. Запись и добавление операций буферизуются до вывода новой строки или ограничение на размер буфера будет достигнуто.

full

Полная буферизация. Запись и добавление операций всегда буферизуются до того как лимит размера буфера будет достигнут.

FileDecoder

file

Данные не закодированы.

base64

Данные кодируются в base64.

FileMode

r

Открыть файл для чения.

w

Открыть файл для записи.

a

Открыть файл для добавления.

c

Не открывайте файл (представляет закрытый файл.)

File

Представляет файл в файловой системе.

Constructors

Functions

Supertypes

File:close

Закрывает File.

success = File:close()

successbooleanЕсли закрытие было успешным.

File:flush

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

success, err = File:flush()

successbooleanЕсли файл успешно записал любые данные из буфера на жесткий диск.
errstringСтрока ошибки, если произошла ошибка, и файл не может быть записан.

File:getBuffer

Получает режим буфера у файла.

mode, size = File:getBuffer()

modeBufferModeТекущий буферный режим файла.
sizenumberМаксимальный размер в байтах буфера файла.

File:getFilename

Получает имя файла, с которым был создан объект File. Если файл-объект возник из обратного вызова love.filedropped, имя файла будет полным файловым пути, зависящим от платформы.

filename = File:getFilename()

filenamestringИмя файла.

File:getMode

Получает FileMode (Русский) в котором был открыт файл.

mode = File:getMode()

modeFileModeРежим в которм открыт файл

File:getSize

Возвращает размер file (Русский).

size = File:getSize()

sizenumberРазмер файла.

File:isEOF

Получает, достигнут ли конец файла.

eof = File:isEOF()

eofbooleanДостигнуто ли EOF.

File:isOpen

Получает был ли открыт файл.

open = File:isOpen()

openbooleanTrue если файл был открыт успешно, false был открыт иначе.

File:lines

Перебрать все строки в file (Русский).

iterator = File:lines()

iteratorfunctionИтератор (может быть использован в течении циклов).

File:open

Открывает файл для записи, чтения или добавления.

success = File:open( mode )

successbooleanПравда в случае успеха, false в противном случае.
modeFileModeРежим открытия файла.

File:read

Считывает число байтов из файла.

contents, size = File:read( bytes )

contentsstringСодержание прочитанных байт
sizenumberСколько байт было прочитано
bytes (all)numberКоличество байт для чтения

File:seek

Ищит что-либо в файле

success = File:seek( position )

successbooleanЕсли операция прошла успешно
positionnumberДанные для поиска

File:setBuffer

Устанавливает режим буфера для записи или добавления файл. Файлы с буферизацией не записывают данные на диск если достигнут предел размера буфера, в зависимости от режима буфера.

File:flush (Русский) принудительно записать любые данные из буфера на диск..

success, errorstr = File:setBuffer( mode, size )

successbooleanЕсли режим буферизации успешно установлен.
errorstrstringСтрока ошибки, если режим буфера не может быть установлен и произошла ошибка.
modeBufferModeРежим буфера для использования.
size (0)numberМаксимальный размер в байтах файла буфера.

File:tell

Возвращает позицию в файле.

pos = File:tell()

posnumberТекущая позиция

File:write

Записывает данные в файл.

success = File:write( data, size )

successbooleanБыла ли операция успешной.
datastringДанные для записи.
size (all)numberСколько байтов писать.

FileData

Data представление содержимого файла.

Constructors

Functions

Supertypes

FileData:getExtension

Получает расширение FileData.

ext = FileData:getExtension()

extstringРасширение файла, который представляет FileData.

FileData:getFilename

Возвращает имя файла FileData.

name = FileData:getFilename()

namestringИмя файла, который представляет FileData.

love.graphics

Types

Functions

Enums

love.graphics.arc

Рисует заполненную или незаполненную дугу в позиции (x, y). Дуга тянется от угла 1 к углу2 в радианах. Параметр сегментов определяет, сколько сегментов используется для рисования дуги. Чем больше сегментов, тем гладче край.

love.graphics.arc( drawmode, arctype, x, y, radius, angle1, angle2, segments )

drawmodeDrawModeКак нарисовать дугу.
arctype ("pie")ArcTypeТип дуги для рисования.
xnumberПоложение центра вдоль оси х.
ynumberПоложение центра вдоль оси y.
radiusnumberРадиус дуги.
angle1numberУгол начала дуги.
angle2numberУгол, на котором дуга заканчивается.
segments (10)numberКоличество сегментов, используемых для рисования дуги.

love.graphics.circle

Рисует окружность.

love.graphics.circle( mode, x, y, radius )

modeDrawModeКак нарисовать круг.
xnumberПоложение центра вдоль оси х.
ynumberПоложение центра вдоль оси y.
radiusnumberРадиус круга.

love.graphics.circle( mode, x, y, radius, segments )

modeDrawModeКак рисовать окружность.
xnumberX координата центра окружности.
ynumberY координата центра окружности.
radiusnumberРадиус окружности.
segmentsnumberКоличество сегментов, используемых для рисования окружности. Чем их меньше, тем более угловатой будет окружность.

love.graphics.clear

Закрашивает экран цветом фона.

Эта функция вызывается в стандартной реализации функции love.run перед вызовом love.draw. В примерах для love.run показано как обычно используется эта функция.

Учтите, что если у вас установлена зона отсечения, то закрашена будет только эта зона, а не весь экран.

love.graphics.clear()

Clears the screen to the background color in 0.9.2 and earlier, or to transparent black (0, 0, 0, 0) in LÖVE 0.10.0 and newer.

love.graphics.clear( r, g, b, a )

Очищает экран или активный Canvas для указанного цвета.

- тысяча сорок-семь

г

rnumberКрасный цвет канала для очистки экрана.
gnumberЗеленый канал цвета, чтобы очистить экран.
bnumberГолубой канал цвета, чтобы очистить экран.
a (255)numberАльфа-канал цвета для очистки экрана.

love.graphics.clear( color, ... )

Очищает несколько активных Canvases для различных цветов, если несколько Canvases является активны сразу же с помощью love.graphics.setCanvas.

colortableТаблица в виде {r, g, b, a}, содержащая цвет для очистки первого активного Canvas to.
...tableДополнительные таблицы для каждого активного холста.

love.graphics.discard

Отбрасывает (удаляет) содержимое экрана или активного холста. Это функция оптимизации производительности с использованием ниши.

Если активный холст только что был изменен и «заменить» BlendMode будет использоваться для рисования чего-либо, что покрывает весь экран, вызов love.graphics.discard, а не вызов love.graphics.clear или ничего не может улучшить производительность на мобильных устройствах устройства.

На некоторых настольных системах эта функция ничего не может сделать.

love.graphics.discard( discardcolor, discardstencil )

discardcolor (true)booleanОтбрасывать текстуру (ы) активной Canvas (es) (содержимое экрана, если Canvas не активен).
discardstencil (true)booleanОтбрасывать содержимое буфера трафарета экрана / активного холста.

love.graphics.discard( discardcolors, discardstencil )

discardcolorstableМассив, содержащий логические значения, указывающие, следует ли отбрасывать текстуру каждого активного холста, когда активны несколько одновременных холстов.
discardstencil (true)booleanОтбрасывать содержимое буфера трафарета экрана / активного холста.

love.graphics.draw

Рисует объект на экране.

love.graphics.draw( drawable, x, y, r, sx, sy, ox, oy, kx, ky )

drawableDrawableВыделяемый объект.
x (0)numberПозиция для рисования объекта (ось x).
y (0)numberПозиция для рисования объекта (ось y).
r (0)numberОриентация (радианы).
sx (1)numberМасштабный коэффициент (ось х). Может быть отрицательным.
sy (sx)numberМасштабный коэффициент (ось Y). Может быть отрицательным.
ox (0)numberПроисхождение смещения (ось x). (Значение 20 эффективно перемещает ваш объект с возможностью рисования на 20 пикселей влево).
oy (0)numberПроисхождение смещения (ось y). (Значение 20 эффективно перемещает ваш объект с возможностью рисования на 20 пикселей вверх.)
kx (0)numberКоэффициент сдвига (ось х).
ky (0)numberКоэффициент сдвига (ось Y).

love.graphics.draw( texture, quad, x, y, r, sx, sy, ox, oy, kx, ky )

textureTextureТекстура (изображение или холст) для текстурирования Quad с.
quadQuadКвадрат для рисования на экране.
x (0)numberПозиция для рисования объекта (ось x).
y (0)numberПозиция для рисования объекта (ось y).
r (0)numberОриентация (радианы).
sx (1)numberМасштабный коэффициент (ось х). Может быть отрицательным.
sy (sx)numberМасштабный коэффициент (ось Y). Может быть отрицательным.
ox (0)numberПроисхождение смещения (ось x).
oy (0)numberПроисхождение смещения (ось y)
kx (0)numberКоэффициент сдвига (ось х).
ky (0)numberКоэффициент сдвига (ось Y).

love.graphics.ellipse

Рисует эллипс.

love.graphics.ellipse( mode, x, y, radiusx, radiusy, segments )

modeDrawModeКак нарисовать эллипс.
xnumberПоложение центра вдоль оси х.
ynumberПоложение центра вдоль оси y.
radiusxnumberРадиус эллипса вдоль оси x (половина ширины эллипса).
radiusynumberРадиус эллипса вдоль оси y (половина высоты эллипса).
segments (based on size)numberКоличество сегментов, используемых для рисования эллипса.

love.graphics.getBackgroundColor

Получает текущий цвет фона.

r, g, b, a = love.graphics.getBackgroundColor()

rnumberКрасный компонент (0-255).
gnumberЗеленый компонент (0-255).
bnumberСиний компонент (0-255).
anumberАльфа-компонент (0-255).

love.graphics.getBlendMode

Получает режим смешивания.

mode, alphamode = love.graphics.getBlendMode()

modeBlendModeТекущий режим смешивания.
alphamodeBlendAlphaModeТекущий альфа-режим смеси - он определяет, как альфа нарисованных объектов влияет на смешение.

love.graphics.getCanvas

Возвращает текущий холст цели.

canvas = love.graphics.getCanvas()

canvasCanvasХолст, установленный setCanvas. Возвращает нуль при рисовании на реальном экране.

love.graphics.getCanvasFormats

Получает доступные форматы Canvas и поддерживается ли каждая из них.

formats = love.graphics.getCanvasFormats()

formatstableТаблица, содержащая CanvasFormats как ключи, и логическое значение, указывающее, поддерживается ли формат как значения. Не все системы поддерживают все форматы.

love.graphics.getColor

Получает текущий цвет рисования.

r, g, b, a = love.graphics.getColor()

rnumberКрасная компонента цвета (0-255).
gnumberЗелёная компонента цвета (0-255).
bnumberСиняя компонента цвета (0-255).
anumber Альфа компонента цвета (прозрачность) (0-255).

love.graphics.getColorMask

Возвращает активные цветовые компоненты, используемые при рисовании. Обычно все 4 компонента активны, если не используется love.graphics.setColorMask.

Цветовая маска определяет, будут ли отдельные компоненты цветов рисованных объектов влиять на цвет экрана. Они влияют на love.graphics.clear и Canvas: ясны.

r, g, b, a = love.graphics.getColorMask()

rbooleanВключен ли компонент красного цвета при рендеринге.
gbooleanЯвляется ли компонент зеленого цвета активным при рендеринге.
bbooleanЯвляется ли синий компонент цвета активным при рендеринге.
abooleanЯвляется ли компонент альфа-цвета активным при рендеринге.

love.graphics.getCompressedImageFormats

Получает доступные форматы сжатых изображений и поддерживается ли каждая из них.

formats = love.graphics.getCompressedImageFormats()

formatstableТаблица, содержащая сжатые форматы как ключи, и логическое значение, указывающее, поддерживается ли формат в качестве значений. Не все системы поддерживают все форматы.

love.graphics.getDefaultFilter

Получает фильтры масштабирования по умолчанию, используемые с изображениями, холстами и шрифтами.

min, mag, anisotropy = love.graphics.getDefaultFilter()

minFilterModeРежим фильтра, используемый при масштабировании изображения.
magFilterModeРежим фильтра, используемый при масштабировании изображения вверх.
anisotropynumberМаксимальное количество используемой анизотропной фильтрации.

love.graphics.getDimensions

Получает ширину и высоту окна.

width, height = love.graphics.getDimensions()

widthnumberШирина окна.
heightnumberВысота окна.

love.graphics.getFont

Получает текущий шрифт.

font = love.graphics.getFont()

fontFontТекущий шрифт или nil, если не установлен.

love.graphics.getHeight

Возвращает высоту окна.

height = love.graphics.getHeight()

heightnumberВысота окна.

love.graphics.getLineJoin

Получает стиль объединения строк.

join = love.graphics.getLineJoin()

joinLineJoinСтиль LineJoin.

love.graphics.getLineStyle

Получает стиль линии.

style = love.graphics.getLineStyle()

styleLineStyleТекущий стиль линии.

love.graphics.getLineWidth

Получает текущую толщину линии.

width = love.graphics.getLineWidth()

widthnumberТекущая толщина линии.

love.graphics.getShader

Получает текущий шейдер. Возвращает nil, если ни один не установлен.

shader = love.graphics.getShader()

shaderShaderТекущий шейдер.

love.graphics.getStats

Получает статистику рендеринга, связанную с производительностью.

stats = love.graphics.getStats()

statstableТаблица со следующими полями:
stats.drawcallsnumberКоличество вызовов обратного вызова, сделанных до сих пор в течение текущего кадра.
stats.canvasswitchesnumberКоличество активных активных холстов во время текущего кадра.
stats.texturememorynumberПредполагаемый общий размер в байтах видеопамяти, используемый всеми загруженными изображениями, холстами и шрифтами.
stats.imagesnumberКоличество загружаемых объектов изображения.
stats.canvasesnumberКоличество объектов Canvas, загруженных в настоящее время.
stats.fontsnumberКоличество загружаемых объектов шрифта.
stats.shaderswitchesnumberКоличество активных Shader, которые были изменены до сих пор во время текущего кадра.

love.graphics.getStencilTest

Получает, включено ли тестирование трафарета.

Когда тестирование шаблонов включено, геометрия всего, что нарисована, будет обрезана / выровнена на основе того, пересекается ли она с тем, что было ранее нарисовано в буфере трафарета.

Каждый холст имеет свой собственный буфер трафарета.

enabled, inverted = love.graphics.getStencilTest()

enabledbooleanПроверяется ли трафаретное тестирование.
invertedbooleanПроверяется ли трафаретный тест или нет.

love.graphics.getSupported

Получает дополнительные графические функции и поддерживает ли их в системе.

Некоторые старые или младшие системы не всегда поддерживают все графические функции.

features = love.graphics.getSupported()

featurestableТаблица, содержащая ключи GraphicsFeature и логические значения, указывающие, поддерживается ли каждая функция.

love.graphics.getSystemLimits

Получает системные максимальные значения для функций love.graphics.

limits = love.graphics.getSystemLimits()

limitstableТаблица, содержащая клавиши GraphicsLimit и числовые значения.

love.graphics.getPointSize

Получает текущий размер точки.

size = love.graphics.getPointSize()

sizenumberТекущий размер точки.

love.graphics.getRendererInfo

Получает информацию о видеокарте и драйверах системы.

name, version, vendor, device = love.graphics.getRendererInfo()

namestringНазвание средства визуализации, например. «OpenGL» или «OpenGL ES».
versionstringВерсия средства визуализации с дополнительной информацией о версии, зависящей от драйвера, например. "2.1 INTEL-8.10.44".
vendorstringНазвание поставщика видеокарты, например. «Intel Inc».
devicestringНазвание видеокарты, например, «Intel HD Graphics 3000 OpenGL Engine».

love.graphics.getScissor

Получает прямоугольник отсечения.

x, y, width, height = love.graphics.getScissor()

xnumberX-координата левого верхнего угла прямоугольника.
ynumberY-координата левого верхнего угла прямоугольника.
widthnumberШирина прямоугольника.
heightnumberВысота прямоугольника.

love.graphics.getWidth

Получает ширину экрана.

width = love.graphics.getWidth()

widthnumberШирина экрана.

love.graphics.intersectScissor

Устанавливает ножницы в прямоугольник, созданный пересечением указанного прямоугольника с помощью существующего ножница. Если ножница еще не активна, она ведет себя как love.graphics.setScissor.

Ножница ограничивает область рисования заданным прямоугольником. Это влияет на все графические вызовы, включая love.graphics.clear.

Размеры ножниц не зависят от графических преобразований (перевод, масштаб, ...).

love.graphics.intersectScissor( x, y, width, height )

Limits the drawing area to a specified rectangle.

xnumberХ-координата верхнего левого угла прямоугольника пересекается с существующим прямоугольником для ножниц.
ynumberУ-координата верхнего левого угла прямоугольника должна пересекаться с существующим прямоугольником для ножниц.
widthnumberШирина прямоугольника должна пересекаться с существующим прямоугольником для ножниц.
heightnumberВысота прямоугольника должна пересекаться с существующим прямоугольником для ножниц.

love.graphics.intersectScissor()

Disables scissor.

love.graphics.isGammaCorrect

Получает, поддерживается ли поддержка гамма-коррекции и включена ли она. Его можно включить, установив t.gammacorrect = true в love.conf.

Не все устройства поддерживают гамма-коррекцию, и в этом случае она будет автоматически отключена, и эта функция вернет false. Он поддерживается на настольных системах, в которых есть графические карты, способные использовать устройства OpenGL 3 / DirectX 10 и iOS, которые могут использовать OpenGL ES 3.

gammacorrect = love.graphics.isGammaCorrect()

gammacorrectbooleanИстина, если поддерживается гамма-коррекция и активирована в love.conf, иначе false.

love.graphics.isWireframe

Получает, используется ли каркасный режим при рисовании.

wireframe = love.graphics.isWireframe()

wireframebooleanИстинно, если для рисования используются каркасные линии, то false, если это не так.

love.graphics.line

Рисует линию между точками.

love.graphics.line( x1, y1, x2, y2, ... )

x1numberПоложение первой точки на оси х.
y1numberПоложение первой точки по оси y.
x2numberПоложение второй точки на оси х.
y2numberПоложение второй точки по оси y.
...numberВы можете продолжить прохождение позиций точки, чтобы нарисовать полилинию.

love.graphics.line( points )

pointstableТаблица с координатами точек, как было описано выше.

love.graphics.newCanvas

Создает новый объект Canvas для внеэкранного рендеринга.

Сэндвич-холсты имеют несколько более высокие требования к системе, чем обычные холсты. Кроме того, поддерживаемое максимальное количество выборок MSAA варьируется в зависимости от системы. Используйте функцию love.graphics.getSystemLimit для проверки.

Если количество выбранных образцов MSAA больше максимального, поддерживаемого системой, Canvas все равно будет создан, но только с использованием максимального поддерживаемого количества (включая 0.)

canvas = love.graphics.newCanvas( width, height, format, msaa )

canvasCanvasНовый объект Canvas.
width (window width)numberШирина холста.
height (window height)numberВысота холста.
format ("normal")CanvasFormatЖелаемый режим текстуры холста.
msaa (0)numberТребуемое количество образцов сглаживания, используемых при рисовании на холсте.

love.graphics.newFont

Создает новый шрифт. Не следует вызывать эту функцию из love.draw или love.update, так как из-за этого на каждом кадре будет создаваться новый шрифт; лучше создайте шрифт только один раз, чтобы потом использовать его в любое время.

font = love.graphics.newFont( file, size )

fontFontОбъект Font, который можно использовать для рисования текста на экране.
filestring / File / FileDataФайл / Файл / FileData файла шрифта TrueType.
size (12)numberРазмер шрифта в пикселях.

font = love.graphics.newFont( file, imagefilename )

fontFontОбъект Font, который можно использовать для рисования текста на экране.
filestring / File / FileDataПуть / Файл / FileData файла BMFont.
imagefilename (path inside BMFont file)string / File / FileDataПуть / Файл / FileData файла изображения BMFont.

font = love.graphics.newFont( size )

Этот вариант использует стандартный шрифт (Vera Sans), но с определенным размером.

fontFontОбъект шрифта, который может быть использован для рисования текста на экране.
sizenumberРазмер шрифта в пикселях.

love.graphics.newMesh

Создает новую сетку.

Используйте Mesh: setTexture, если сетка должна быть текстурирована с изображением или холстом, когда она нарисована.

mesh = love.graphics.newMesh( vertexformat, vertices, mode, usage )

Creates a Mesh with custom vertex attributes and the specified vertex data.

meshMeshНовая сетка.
vertexformat (none)tableТаблица в виде {attribute, ...}. Каждый атрибут представляет собой таблицу, которая указывает собственный атрибут вершин, используемый для каждой вершины.
vertexformat.attributetableТаблица, содержащая имя атрибута, тип данных и количество компонентов в атрибуте в виде {name, datatype, components}.
vertexformat....tableДополнительные таблицы формата атрибутов вершин.
verticestableТаблица, заполненная таблицами информации о вершинах для каждой вершины, в виде {vertex, ...}, где каждая вершина представляет собой таблицу в виде {attributecomponent, ...}.
vertices.attributecomponentnumberПервый компонент первого атрибута вершины в вершине.
vertices....numberДополнительные компоненты всех вершинных атрибутов в вершине.
mode ("fan")MeshDrawModeКак используются вершины при рисовании. Режим «вентилятор» по умолчанию достаточен для простых выпуклых многоугольников.
usage ("dynamic")SpriteBatchUsageОжидаемое использование сетки. Указанный режим использования влияет на использование и производительность памяти Mesh.

mesh = love.graphics.newMesh( vertexformat, vertexcount, mode, usage )

Creates a Mesh with custom vertex attributes and the specified number of vertices.

meshMeshНовая сетка.
vertexformat (none)tableТаблица в виде {attribute, ...}. Каждый атрибут представляет собой таблицу, которая указывает собственный атрибут вершин, используемый для каждой вершины.
vertexformat.attributetableТаблица, содержащая имя атрибута, тип данных и количество компонентов в атрибуте в виде {name, datatype, components}.
vertexformat....tableДополнительные таблицы формата атрибутов вершин.
vertexcountnumberОбщее количество вершин, используемых сеткой.
mode ("fan")MeshDrawModeКак используются вершины при рисовании. Режим «вентилятор» по умолчанию достаточен для простых выпуклых многоугольников.
usage ("dynamic")SpriteBatchUsageОжидаемое использование сетки. Указанный режим использования влияет на использование и производительность памяти Mesh.

love.graphics.newImage

Создает новое изображение, загрузив из указанного пути к файлу, из объекта File или из ImageData.

image = love.graphics.newImage( file, flags )

imageImageОбъект изображения, который можно рисовать на экране.
filepath / File / FileData / ImageData / CompressedImageDataПуть к файлу / File / FileData / ImageData / CompressedImageData изображения.
flagstableТаблица, содержащая следующие поля:
flags.linear (false)booleanИстинно, если пиксели изображения следует интерпретировать как линейные RGB, а не sRGB-кодированные, если включена гамма-коррекция. Не имеет никакого эффекта.
flags.mipmaps (false)boolean or tableЕсли true, mipmaps для изображения будут автоматически сгенерированы (или взяты из файла изображений, если это возможно, если изображение возникло из CompressedImageData). Если это значение является таблицей, оно должно содержать список других имен файлов того же формата, размер которых постепенно увеличивается, вплоть до 1x1. Эти изображения будут использоваться в качестве уровней mipmap этого изображения.

love.graphics.newImageFont

Создает шрифт, загрузив изображение специального формата.

font = love.graphics.newImageFont( file, glyphs, extraspacing )

fontFontОбъект Font, который можно использовать для рисования текста на экране.
filepath / File / FileDataПуть к файлу / File / FileData файла изображения.
glyphsstringСтрока символов в изображении в порядке слева направо.
extraspacing (0)numberДополнительный интервал (положительный или отрицательный) для каждого символа в шрифте.

love.graphics.newParticleSystem

Создает систему частиц.

system = love.graphics.newParticleSystem( texture, buffer )

systemParticleSystemНовая ParticleSystem.
textureTextureИспользуется изображение или холст.
buffer (1000)numberМаксимальное количество частиц одновременно.

love.graphics.newShader

Создает новый объект Shader для аппаратных ускоренных вершинных и пиксельных эффектов. Шейдер содержит либо вершинный шейдерный код, пиксельный шейдерный код, либо и то, и другое.

Вершинный шейдерный код должен содержать по крайней мере одну функцию с именем position, которая является функцией, которая будет создавать преобразованные вершинные позиции рисованных объектов в экранном пространстве.

Пиксельный шейдерный код должен содержать по крайней мере одну функцию, называемую эффектом, которая является функцией, которая будет создавать цвет, который смешивается с экраном для каждого пикселя, который нарисовал объект.

shader = love.graphics.newShader( code )

shaderShaderОбъект Shader для использования в операции рисования.
codestring / File / FileDataШейдер пикселя или вершинный шейдерный код или файл с кодом.

shader = love.graphics.newShader( pixelcode, vertexcode )

shaderShaderОбъект Shader для использования в операции рисования.
pixelcodestring / File / FileDataКод пиксельного шейдера или файл с кодом.
vertexcodestring / File / FileDataВершинный шейдерный код или файл с кодом.

love.graphics.newText

Создает новый шрифт.

text = love.graphics.newText( font, textstring )

textTextНовый объект Text.
fontFontШрифт для текста.
textstring (nil)stringИсходная строка текста, которую будет содержать новый объект Text. Может быть, ноль.

love.graphics.newQuad

Создает новый текстурный прямоугольник.

quad = love.graphics.newQuad( x, y, width, height, sw, sh )

quadQuadНовый прямоугольник.
xnumberКоордината левого верхнего угла по X оси.
ynumberКоордината левого верхнего угла по Y оси.
widthnumberШирина прямоугольника.
heightnumberВысота прямоугольника.
swnumberОтношение по ширине.
shnumberОтношение по высоте.

love.graphics.newScreenshot

Создает скриншот.

screenshot = love.graphics.newScreenshot( copyAlpha )

screenshotImageDataДанные изображения на снимке экрана.
copyAlpha (false)booleanВключить ли альфа-канал экрана в ImageData. Если false, скриншот будет полностью непрозрачным.

love.graphics.newSpriteBatch

Создает группу спрайтов.

spriteBatch = love.graphics.newSpriteBatch( texture, maxsprites, usage )

spriteBatchSpriteBatchНовый SpriteBatch.
textureTextureИзображение или холст для использования для спрайтов.
maxsprites (1000)numberМаксимальное количество спрайтов.
usage ("dynamic")SpriteBatchUsageОжидаемое использование SpriteBatch. Указанный режим использования влияет на использование и производительность памяти SpriteBatch.

love.graphics.newVideo

Создает новое видео. В настоящее время поддерживаются только видео файлы Ogg Theora.

video = love.graphics.newVideo( file, loadaudio )

videoVideoНовое видео.
filestring / FileПуть к файлу / Файл видеофайла Ogg Theora.
loadaudio (nil)booleanНужно ли пытаться загружать аудиосигнал видео в источник звука. Если явным образом не задано значение true или false, он попытается не вызывать ошибки, если видео не имеет звука.

love.graphics.origin

Сбрасывает текущее преобразование координат.

Эта функция всегда используется для отмены любых предыдущих вызовов в love.graphics.rotate, love.graphics.scale, love.graphics.shear или love.graphics.translate. Он возвращает текущее состояние преобразования по умолчанию.

love.graphics.origin()

love.graphics.points

Рисует одну или несколько точек.

love.graphics.points( x, y, ... )

xnumberПоложение первой точки на оси х.
ynumberПоложение первой точки на оси y.
...numberКоординаты x и y дополнительных точек.

love.graphics.points( points )

pointstableТаблица, содержащая несколько точек позиции, в виде {x, y, ...}.
points.xnumberПоложение первой точки на оси х.
points.ynumberПоложение первой точки на оси y.
points....numberКоординаты x и y дополнительных точек.

love.graphics.points( points )

pointstableТаблица, содержащая несколько отдельных цветных точек, в виде {point, ...}. Каждая таблица содержит положение и цвет точки в виде {x, y, r, g, b, a}. Компоненты цвета являются необязательными.
points.pointtableТаблица, содержащая положение и цвет первой точки, в виде {x, y, r, g, b, a}. Компоненты цвета являются необязательными.
points....tableДополнительные таблицы, содержащие положение и цвет большего количества точек, в виде {x, y, r, g, b, a}. Компоненты цвета являются необязательными.

love.graphics.polygon

Рисует многоугольник.

После аргумента "mode", эта функция может принимать несколько числовых аргументов или одну таблицу с числовыми аргументами. В каждом случае аргументы воспринимаются как X и Y координаты углов многоугольника.

''Примечание: когда используется режим '''fill''', многоугольник должен быть выпуклым и простым, иначе могут возникнуть артефакты при рисовании.''

love.graphics.polygon( mode, ... )

modeDrawModeКак нарисовать многоугольник.
...numberВершины многоугольника.

love.graphics.polygon( mode, vertices )

modeDrawModeКак нарисовать многоугольник
verticestableТаблица с координатами вершин многоугольника.

love.graphics.pop

Достает состояние координатной системы из стека и устанавливает его в качестве текущего.

Эта функция всегда используется после операции добавления состояния в стек (love.graphics.push). Она возвращает то состояние координат, которое было добавлено в стек последним. Пример можно найти в описании love.graphics.push.

love.graphics.pop()

love.graphics.present

Отображает на экране результаты операций рисования.

Эта функция используется, когда вы используете собственную функцию love.run. Она выводит на экран все результаты операций рисования. В примерах для love.run можно посмотреть как обычно используется эта функция.

love.graphics.present()

love.graphics.print

Рисует текст на экране. Если Font не установлен, он будет создан и установлен, если необходимо.

love.graphics.print( text, x, y, r, sx, sy, ox, oy, kx, ky )

textstringТекст для рисования.
xnumberПозиция для рисования объекта (ось x).
ynumberПозиция для рисования объекта (ось y).
r (0)numberОриентация (радианы).
sx (1)numberМасштабный коэффициент (ось х).
sy (sx)numberМасштабный коэффициент (ось Y).
ox (0)numberПроисхождение смещения (ось x).
oy (0)numberПроисхождение смещения (ось y).
kx (0)numberКоэффициент сдвига (ось х).
ky (0)numberКоэффициент сдвига (ось y).

love.graphics.print( coloredtext, x, y, angle, sx, sy, ox, oy, kx, ky )

coloredtexttableТаблицу, содержащую цвета и строки для добавления к объекту, в виде {color1, string1, color2, string2, ...}.
coloredtext.color1tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string1stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext.color2tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string2stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext....tables and stringsДополнительные цвета и строки.
xnumberПозиция нового текста по оси x.
ynumberПозиция нового текста по оси y.
angle (0)numberОриентация объекта в радианах.
sx (1)numberМасштабный коэффициент по оси х.
sy (sx)numberМасштабный коэффициент по оси y.
ox (0)numberПроисхождение смещения по оси x.
oy (0)numberПроисхождение смещения по оси y.
kx (0)numberКоэффициент сдвига / перекоса по оси х.
ky (0)numberКоэффициент сдвига / перекоса по оси y.

love.graphics.printf

Рисует форматированный текст с переносом слов и выравниванием.

love.graphics.printf( text, x, y, limit, align, r, sx, sy, ox, oy, kx, ky )

textstringТекстовая строка.
xnumberПоложение по оси x.
ynumberПоложение по оси y.
limitnumberОберните линию после этого множества горизонтальных пикселей.
align ("left")AlignModeВыравнивание.
r (0)numberОриентация (радианы).
sx (1)numberМасштабный коэффициент (ось х).
sy (sx)numberМасштабный коэффициент (ось Y).
ox (0)numberПроисхождение смещения (ось x).
oy (0)numberПроисхождение смещения (ось y).
kx (0)numberКоэффициент сдвига (ось х).
ky (0)numberКоэффициент сдвига (ось y).

love.graphics.printf( coloredtext, x, y, wraplimit, align, angle, sx, sy, ox, oy, kx, ky )

coloredtexttableТаблицу, содержащую цвета и строки для добавления к объекту, в виде {color1, string1, color2, string2, ...}.
coloredtext.color1tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string1stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext.color2tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string2stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext....tables and stringsДополнительные цвета и строки.
xnumberПозиция нового текста по оси x.
ynumberПозиция нового текста по оси y.
wraplimitnumberМаксимальная ширина в пикселях текста до того, как он автоматически будет перенесен в новую строку.
alignAlignModeВыравнивание текста.
angle (0)numberОриентация объекта в радианах.
sx (1)numberМасштабный коэффициент по оси х.
sy (sx)numberМасштабный коэффициент по оси y.
ox (0)numberПроисхождение смещения по оси x.
oy (0)numberПроисхождение смещения по оси y.
kx (0)numberКоэффициент сдвига / перекоса по оси х.
ky (0)numberКоэффициент сдвига / перекоса по оси y.

love.graphics.push

Копирует и вставляет текущее координатное преобразование в стек.

Эта функция всегда используется перед последующим вызовом функции love.graphics.pop. Она сохраняет текущие координатные преобразования в стек. Последующие изменения координатных преобразований могут быть отменены функцией "pop", которая достает из стека последнее добавленное туда состояние координатных преобразований.

love.graphics.push( stack )

stack ("transform")StackTypeТип стека для нажатия (например, только состояние преобразования или все состояние love.graphics).

love.graphics.rectangle

Рисует прямоугольник.

love.graphics.rectangle( mode, x, y, width, height, rx, ry, segments )

Рисует прямоугольник с закругленными углами.

modeDrawModeВ каком режиме рисовать прямоугольник.
xnumberX координата прямоугольника.
ynumberY координата прямоугольника.
widthnumberШирина прямоугольника.
heightnumberВысота прямоугольника.
rx (0)numberРадиус всех закругленных углов по оси x. Не может быть больше половины ширины прямоугольника.
ry (rx)numberРадиус всех закругленных углов по оси y. Не может быть больше половины высоты прямоугольника.
segments (based on size)numberКоличество сегментов используемых для рисования закругленных углов. A default amount will be chosen if no number is given.

love.graphics.reset

Сбрасывает текущие графические настройки.

Устанавливает цвет рисования на белый, цвет фона на черный и убирает любые настройки отсечения. Устанавливает BlendMode на <tt>alpha</tt>, а ColorMode на <tt>modulate</tt>. Также устанавливает режим рисования точек и линий на <tt>smooth</tt> и их размер на <tt>1.0</tt> . Наконец, убирает все настройки для пунктира.

love.graphics.reset()

love.graphics.rotate

Вращает координатную систему в двух измерениях.

Эта функция влияет на все будущие операции рисования, вращая систему координат вокруг начала координат на заданное количество в радианах. Это изменение длится до завершения работы love.draw().

love.graphics.rotate( angle )

anglenumberЗначение, на которое нужно повернуть координатную систему (в радианах).

love.graphics.scale

Масштабирует систему координат в двух измерениях.

По умолчанию система координат в LOVE соответствует отображениям пикселей в горизонтальном и вертикальном направлениях один к одному, ось х направлена вправо, а ось y вниз. Масштабирование системы координат изменяет это соотношение.

После масштабирования по sx и sy, все координаты рассматриваются как если бы они были умножены на sx и sy. Каждый результат операции рисования также масштабируются, поэтому масштабирование (2, 2), для примера, будет означать, что рисоваться все будет увеличенным в 2 раза и по оси x и по оси y. Масштабирование на отрицательное значение переворачивает систему координат, что означает, что все будет рисоваться вверх ногами и/или зеркально отраженным по горизонтали. Масштабирование на ноль не приведет ни к чему хорошему.

Масштабирование действует до тех пор, пока love.draw() не завершит работу.

love.graphics.scale( sx, sy )

sxnumberМасштабирование по x-оси.
sy (sx)numberМасштабирование по y-оси. Если этот аргумент пропущен, то по умолчанию он берется равным sx.

love.graphics.setBackgroundColor

Устанавливает цвет фона.

love.graphics.setBackgroundColor( r, g, b, a )

rnumberКрасный компонент (0-255).
gnumberЗеленый компонент (0-255).
bnumberСиний компонент (0-255).
a (255)numberАльфа-компонент (0-255).

love.graphics.setBackgroundColor( rgba )

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

love.graphics.setBlendMode

Устанавливает режим смешивания.

love.graphics.setBlendMode( mode, alphamode )

modeBlendModeРежим смешивания.
alphamode ("alphamultiply")BlendAlphaModeЧто делать с альфой рисованных объектов при смешивании.

love.graphics.setCanvas

Захватывает операции рисования на холсте.

love.graphics.setCanvas( canvas )

Установка цели визуализации на указанный Canvas. Все операции рисования до следующего love.graphics.setCanvas вызова будут перенаправлены на Canvas , а не на экране.

canvasCanvasЦель рендеринга.

love.graphics.setCanvas()

Сбрасывает цель визуализации на экране, то есть повторно позволяет рисовать на экране ,

- +1729

Установка цели визуализации для одновременного многократного Canvases. Все операции рисования до следующего love.graphics.setCanvas вызова будут перенаправлены на указанных полотна и не отображаются на экране.

love.graphics.setCanvas( canvas1, canvas2, ... )

Sets the render target to multiple simultaneous Canvases. All drawing operations until the next love.graphics.setCanvas call will be redirected to the specified canvases and not shown on the screen.

canvas1CanvasПервая цель рендеринга.
canvas2CanvasВторая цель рендеринга.
...CanvasБольше холстов.

love.graphics.setColor

Устанавливает цвет, используемый для рисования.

love.graphics.setColor( red, green, blue, alpha )

rednumberКрасная компонента.
greennumberЗеленая компонента.
bluenumberСиняя компонента.
alphanumberАльфа компонента. Это значение прозрачности будет применяться ко всем последующим операциям рисования, даже к отображению рисунка.

love.graphics.setColor( rgba )

rgbatableИндексированная числовыми значениями таблица, содержащая красную, зеленую, синюю и альфа компоненты цвета. Если значение альфа компоненты не передано, то оно считается равным 255.

love.graphics.setColorMask

Устанавливает цветовую маску. Включает или отключает определенные цветовые компоненты при рендеринге и очистке экрана. Например, если для красного параметра установлено значение false, дальнейшие изменения не будут внесены в красный компонент любых пикселей.

Включает все цветовые компоненты при вызове без аргументов.

love.graphics.setColorMask( red, green, blue, alpha )

Позволяет цвета маскирования для указанных цветовых компонентов.

redbooleanОтметьте красный компонент.
greenbooleanОтметьте зеленый компонент.
bluebooleanОтметьте синий компонент.
alphabooleanРендеринг альфа-компонента.

love.graphics.setColorMask()

Отключает цвет маскирования.

love.graphics.setDefaultFilter

Устанавливает фильтры масштабирования по умолчанию, используемые с изображениями, холстами и шрифтами.

Эта функция не применяется задним числом к ​​загруженным изображениям.

love.graphics.setDefaultFilter( min, mag, anisotropy )

minFilterModeРежим фильтра, используемый при масштабировании изображения.
mag (min)FilterModeРежим фильтра, используемый при масштабировании изображения вверх.
anisotropy (1)numberМаксимальное количество используемой анизотропной фильтрации.

love.graphics.setFont

Устанавливает загруженный шрифт в качестве текущего.

Эта функция не создает шрифт, а устанавливает его в качестве текущего, так что она может быть использована в love.draw().

love.graphics.setFont( font )

fontFontОбъект шрифта, который надо использовать.

love.graphics.setLineJoin

Устанавливает стиль объединения строк.

love.graphics.setLineJoin( join )

joinLineJoinИспользуйте LineJoin.

love.graphics.setLineStyle

Устанавливает стиль для линии.

love.graphics.setLineStyle( style )

styleLineStyleСтиль для линии, который нужно использовать.

love.graphics.setLineWidth

Устанавливает ширину линии.

love.graphics.setLineWidth( width )

widthnumberШирина линии.

love.graphics.setNewFont

Создает и устанавливает новый шрифт.

font = love.graphics.setNewFont( filename, size )

fontFontНовый шрифт.
filenamestring / File / FileDataПуть к файлу / File / FileData шрифта.
size (12)numberРазмер шрифта.

love.graphics.setShader

Устанавливает или сбрасывает шейдер в качестве текущего пиксельного эффекта или вершинных шейдеров. Все операции рисования до следующего love.graphics.setShader будут нарисованы с использованием указанного объекта Shader.

Отключает шейдеры при вызове без аргументов.

love.graphics.setShader()

love.graphics.setShader( shader )

shaderShaderНовый шейдер.

love.graphics.setPointSize

Устанавливает размер точки.

love.graphics.setPointSize( size )

sizenumberНовый размер точки.

love.graphics.setScissor

Устанавливает или сбрасывает зону отсечения.

Зона отсечения ограничивает область рисования в определенном прямоугольнике. Это влияет на все графические функции, включая love.graphics.clear.

love.graphics.setScissor( x, y, width, height )

Ограничивает область рисования в заданном прямоугольнике.

xnumberx координата левого верхнего угла.
ynumbery координата левого верхнего угла.
widthnumberШирина зоны отсечения.
heightnumberВысота зоны отсечения.

love.graphics.setScissor()

Отключает ножничные.

love.graphics.setStencilTest

Настраивает или отключает тестирование трафарета.

Когда тестирование шаблонов включено, геометрия всего, что нарисована после этого, будет обрезана / выровнена на основе сравнения между аргументами этой функции и значением трафарета каждого пикселя, к которому касается геометрия. Значения трафаретов пикселей зависят от love.graphics.stencil.

Каждый холст имеет свои собственные пиксельные значения трафарета.

love.graphics.setStencilTest( comparemode, comparevalue )

comparemodeCompareModeТип сравнения для каждого пикселя.
comparevaluenumberЗначение, которое следует использовать при сравнении со значением трафарета для каждого пикселя. Должно быть от 0 до 255.

love.graphics.setStencilTest()

Отключает тестирование трафарета.

love.graphics.setWireframe

Устанавливает, будут ли использоваться линии каркаса при рисовании.

Режим wireframe должен использоваться только для отладки. Строки, нарисованные с помощью включенного, не ведут себя как обычные линии love.graphics: их ширина не масштабируется с преобразованием координат или с love.graphics.setLineWidth, и они не используют гладкий LineStyle.

love.graphics.setWireframe( enable )

enablebooleanВерно, чтобы включить режим каркаса при рисовании, false, чтобы отключить его.

love.graphics.shear

Обнуляет систему координат.

love.graphics.shear( kx, ky )

kxnumberКоэффициент сдвига по оси х.
kynumberКоэффициент сдвига по оси y.

love.graphics.stencil

Рисует геометрию в виде трафарета.

Геометрия, нарисованная прилагаемой функцией, устанавливает невидимые значения трафаретов пикселей, а не устанавливает цвета пикселей. Значения трафаретов пикселей могут действовать как маска / трафарет - love.graphics.setStencilTest может использоваться позже, чтобы определить, как влияет на эффект рендеринга значение трафарета в каждом пикселе.

Каждый холст имеет свои собственные пиксельные значения трафарета. Значения трафарета находятся в диапазоне от {0, 255}.

love.graphics.stencil( stencilfunction, action, value, keepvalues )

stencilfunctionfunctionФункция, которая рисует геометрию. Геометрия будет влиять на значения трафаретов пикселей, а не цвет каждого пикселя.
action ("replace")StencilActionКак изменить любые значения трафаретов пикселей, которые затронуты тем, что нарисовано в функции трафарета.
value (1)numberНовое значение трафарета для пикселов, если используется действие «заменить» трафарета. Не влияет на другие действия с трафаретом. Должно быть от 0 до 255.
keepvalues (false)booleanВерно, чтобы сохранить старые значения трафаретов пикселей, false, чтобы повторно установить значение трафарета каждого пикселя в 0 перед выполнением функции трафарета. love.graphics.clear также переустановит все значения трафаретов.

love.graphics.translate

Перемещает координатную систему в двух измерениях.

Когда эта функция вызывается с двумя параметрами dx и dy, все следующие операции рисования будут происходить со смещением их x и y координат на dx и dy. Это отменяется по завершению работы функции love.draw().

love.graphics.translate( dx, dy )

dxnumberПеремещение по x оси.
dynumberПеремещение по y оси.

AlignMode

center

Выравнивание текста по центру.

left

Выравнивание текста по левому краю.

right

Выравнивание текста по правому краю.

justify

Выровняйте текст как влево, так и вправо.

ArcType

pie

Дуга рисуется как кусочек пирога, а окружность дуги соединена с центром в ее концах.

open

Две конечные точки окружности дуги не связаны, когда дуга рисуется как линия. Ведет себя подобно «замкнутому» дугу, когда дуга рисуется в заполненном режиме.

closed

Два конца точки дуги соединены друг с другом.

AreaSpreadDistribution

uniform

Равномерное распределение.

normal

Нормальное (гауссовское) распределение.

ellipse

Равномерное распределение в эллипсе.

none

Распространение не распространяется.

BlendAlphaMode

alphamultiply

Значения RGB того, что нарисовано, умножаются на альфа-значения этих цветов во время смешивания. Это альфа-режим по умолчанию.

premultiplied

Значения RGB того, что нарисовано, не умножаются на альфа-значения этих цветов во время смешивания. Для того, чтобы большинство режимов смешивания работали правильно с этим альфа-режимом, цвета рисованного объекта должны были иметь значения RGB, умноженные на их альфа-значения в какой-то момент ранее («премультиплексная альфа»).

BlendMode

alpha

Режим обычного альфа смешивания.

replace

Цвета того, что нарисовано, полностью заменяют то, что было на экране, без дополнительного смешивания. BlendAlphaMode, указанный в love.graphics.setBlendMode, по-прежнему влияет на то, что происходит.

screen

Смешивание «Экран».

add

Цвета пикселей того, что нарисованы, добавляются к цветам пикселей уже на экране. Альфа экрана не изменяется.

subtract

Цвета пикселей того, что нарисованы, вычитаются из цветов пикселей уже на экране. Альфа экрана не изменяется.

multiply

Цвета пикселей того, что нарисовано, умножаются на пиксельные цвета уже на экране (затемняя их). Альфа нарисованных объектов умножается на альфа экрана, а не на определение того, насколько влияют цвета на экране, даже когда используется «alphamultiply» BlendAlphaMode.

lighten

Цвета пикселей того, что нарисованы, сравниваются с существующими цветами пикселей, и используется большее из двух значений для каждого цветового компонента. Работает только в том случае, когда «premultiplied» BlendAlphaMode используется в love.graphics.setBlendMode.

darken

Цвета пикселей того, что нарисовано, сравниваются с существующими цветами пикселей, и используется меньшее из двух значений для каждого цветового компонента. Работает только в том случае, когда «premultiplied» BlendAlphaMode используется в love.graphics.setBlendMode.

CanvasFormat

normal

Формат Canvas по умолчанию - обычно псевдоним для формата rgba8 или формат srgb, если гамма-коррекция включена в LÖVE 0.10.0 и новее.

hdr

Формат, подходящий для контента с высоким динамическим диапазоном - обычно это псевдоним для формата rgba16f.

rgba8

8 бит на канал (32 бит / с) RGBA. Значения цветовых каналов варьируются от 0 до 255 (0-1 в шейдерах).

rgba4

4 бит на канал (16 бит / с) RGBA.

rgb5a1

RGB с 5 битами и 1-битным альфа-каналом (16 бит / с).

rgb565

RGB с 5, 6 и 5 бит каждый, соответственно (16 бит / с). В этом формате нет альфа-канала.

rgb10a2

RGB с 10 бит на канал и 2-битный альфа-канал (32 бит / с).

rgba16f

Плавающая точка RGBA с 16 бит на канал (64 бит / с). Значения цвета могут варьироваться от {-65504, +65504}.

rgba32f

Плавающая точка RGBA с 32 битами на канал (128 бит / с).

rg11b10f

Плавающая точка RGB с 11 битами в красном и зеленом каналах и 10 бит в синем канале (32 бит / с). Альфа-канала нет. Значения цвета могут варьироваться от {0, +65024}.

srgb

То же, что и rgba8, но Canvas интерпретируется как находящееся в цветовом пространстве sRGB. Все, нарисованные на холсте, будут преобразованы из линейного RGB в sRGB. Когда холст нарисован (или используется в шейдере), он будет декодирован из sRGB в линейный RGB. Это уменьшает цветопередачу при гамма-коррекции, поскольку кодировка sRGB имеет более высокую точность, чем линейный RGB для более темных цветов.

r8

Одноканальный (красный компонент) формат (8 бит / с).

rg8

Два канала (красный и зеленый компоненты) с 8 бит на канал (16 бит / с).

r16f

Одноканальный формат с плавающей точкой (16 бит / с). Значения цвета могут варьироваться от {-65504, +65504}.

rg16f

Двухканальный формат с плавающей точкой по 16 бит на канал (32 бит / с). Значения цвета могут варьироваться от {-65504, +65504}.

r32f

Одноканальный формат с плавающей точкой (32 бит / с).

rg32f

Двухканальный формат с плавающей точкой 32 бит на канал (64 бит / с).

CompareMode

equal

Значение трафарета пикселя должно быть равно заданному значению.

notequal

Значение трафарета пикселя не должно быть равно заданному значению.

less

Значение трафарета пикселя должно быть меньше заданного значения.

lequal

Значение трафарета пикселя должно быть меньше или равно заданному значению.

gequal

Значение трафарета пикселя должно быть больше или равно заданному значению.

greater

Значение трафарета пикселя должно быть больше заданного значения.

DrawMode

fill

Рисование закрашенной фигуры.

line

Рисование контура фигуры.

FilterMode

linear

Линейная интерполяция.

nearest

Интерполяция по "ближайшему соседу".

GraphicsFeature

clampzero

Поддерживается ли «clampzero» WrapMode.

lighten

Поддерживаются ли «облегченные» и «темные» BlendModes.

multicanvasformats

Можно ли использовать несколько холстов с различными форматами в одном вызове love.graphics.setCanvas.

GraphicsLimit

pointsize

Максимальный размер точек.

texturesize

Максимальная ширина или высота изображений и холстов.

multicanvas

Максимальное количество одновременно активных холстов (через love.graphics.setCanvas).

canvasmsaa

Максимальное количество образцов сглаживания для холста.

LineJoin

miter

Концы сегментов линии скошены под углом, так что они легко соединяются.

bevel

На концах отрезков линии нет колпачка.

none

Сглаживает точку, в которой соединяются сегменты линии.

LineStyle

rough

Рисовать грубые линии.

smooth

Рисовать смазанные линии.

MeshDrawMode

fan

Вершины создают «веерную» форму с первой вершиной, действующей как точка центра. Легко использовать для рисования простых выпуклых многоугольников.

strip

Вершины создают ряд связанных треугольников, используя вершины 1, 2, 3, затем 3, 2, 4 (обратите внимание на порядок), затем 3, 4, 5 и т. Д.

triangles

Вершины создают несвязанные треугольники.

points

Вершины рисуются как несвязанные точки (см. Love.graphics.setPointSize.)

ParticleInsertMode

top

Частицы вставлены в верхнюю часть списка частиц ParticleSystem.

bottom

Частицы вставляются в нижней части списка частиц ParticleSystem.

random

Частицы вставляются в случайные позиции в списке частиц ParticleSystem.

SpriteBatchUsage

dynamic

Данные объекта будут время от времени меняться.

static

Объект не будет изменен после добавления начальных спрайтов или вершин.

stream

Данные объекта всегда будут меняться между ничьей.

StackType

transform

Стек преобразования (love.graphics.translate, love.graphics.rotate и т. Д.)

all

Все состояние love.graphics, включая состояние преобразования.

StencilAction

replace

Значение трафарета для пикселя будет заменено значением, указанным в love.graphics.stencil, если какой-либо объект касается пикселя.

increment

Значение трафарета для пикселя будет увеличено на 1 для каждого объекта, который касается пикселя. Если значение трафарета достигает 255, оно останется на уровне 255.

decrement

Значение трафарета пикселя будет уменьшаться на 1 для каждого объекта, который касается пикселя. Если значение трафарета достигнет 0, оно останется равным 0.

incrementwrap

Значение трафарета для пикселя будет увеличено на 1 для каждого объекта, который касается пикселя. Если значение трафарета равно 255, оно будет установлено равным 0.

decrementwrap

Значение трафарета пикселя будет уменьшаться на 1 для каждого объекта, который касается пикселя. Если значение трафарета равно 0, оно будет установлено на 255.

invert

Значение трафарета пикселя будет побитовым инвертированным для каждого объекта, который касается пикселя. Если значение трафарета 0 инвертировано, оно станет 255.

WrapMode

clamp

Фиксировать изображение. Повторяется только один раз

repeat

Повторять изображение. Заполняет всю имеющуюся область.

mirroredrepeat

Повторяйте текстуру, перелистывая ее каждый раз, когда она повторяется. Может давать лучшие визуальные результаты, чем повторный режим, когда текстура не плавно черепицей.

clampzero

Закрепите текстуру. Заполняет область вне нормального диапазона текстуры прозрачным черным (или непрозрачным черным для текстур без альфа-канала).

Canvas

Для рендеринга вне экрана используется холст. Подумайте об этом как о невидимом экране, на который вы можете рисовать, но это не будет видно, пока вы не нарисуете его на фактический видимый экран. Он также известен как «визуализировать текстуру».

Рисуя объекты, которые часто не меняют положение (например, фоновые элементы) на холст, а затем рисуют весь холст вместо каждого элемента, вы можете уменьшить количество операций рисования, выполняемых каждым фреймом.

В версиях до 0.10.0 не все графические карты, поддерживаемые LÖVE, могли использовать Canvas. love.graphics.isSupported («canvas») может использоваться для проверки поддержки во время выполнения.

Constructors

Functions

Supertypes

Canvas:getDimensions

Возвращает ширину и высоту холста.

width, height = Canvas:getDimensions()

widthnumberШирина холста в пикселях.
heightnumberВысота холста в пикселях.

Canvas:getFilter

Возвращает режим фильтра Canvas.

min, mag, anisotropy = Canvas:getFilter()

minFilterModeРежим фильтра, используемый при минировании холста.
magFilterModeРежим фильтра, используемый при увеличении холста.
anisotropynumberМаксимальное количество анизотропной фильтрации.

Canvas:getFormat

Возвращает формат текстуры холста.

format = Canvas:getFormat()

formatCanvasFormatФормат холста.

Canvas:getHeight

Получает высоту холста.

height = Canvas:getHeight()

heightnumberВысота холста в пикселях.

Canvas:getMSAA

Получает количество сэмплированных сэмплов (MSAA), используемых при рисовании на холст.

Это может отличаться от числа, используемого в качестве аргумента для love.graphics.newCanvas, если система, работающая с LÖVE, не поддерживает это число.

samples = Canvas:getMSAA()

samplesnumberЧисло образцов мультисэмплов сглаживания, используемых холстом при рисовании.

Canvas:getWidth

Возвращает ширину холста.

width = Canvas:getWidth()

widthnumberШирина холста в пикселях.

Canvas:getWrap

Получает свойства упаковки холста.

Эта функция возвращает установленные горизонтальные и вертикальные режимы обертки для холста.

horizontal, vertical = Canvas:getWrap()

horizontalWrapModeГоризонтальный режим обертывания холста.
verticalWrapModeРежим вертикальной упаковки холста.

Canvas:newImageData

Создает ImageData из содержимого Canvas.

data = Canvas:newImageData()

dataImageDataДанные изображения, сохраненные в Canvas.

data = Canvas:newImageData( x, y, width, height )

dataImageDataНовая ImageData, сделанная из содержимого Canvas.
xnumberОсь x в верхнем левом углу области внутри холста для захвата.
ynumberОсь y в верхнем левом углу области внутри холста для захвата.
widthnumberШирина области внутри холста для захвата.
heightnumberВысота области в холсте для захвата.

Canvas:renderTo

Выделите Canvas с помощью функции.

Canvas:renderTo( func )

funcfunctionФункция, выполняющая операции рисования.

Canvas:setFilter

Устанавливает фильтр холста.

Canvas:setFilter( min, mag, anisotropy )

minFilterModeКак масштабировать холст.
mag (min)FilterModeКак масштабировать холст.
anisotropy (1)numberМаксимальное количество анизотропной фильтрации.

Canvas:setWrap

Устанавливает свойства упаковки Canvas.

Эта функция задает способ обработки краев холста, если он масштабируется или поворачивается. Если WrapMode установлен на «зажим», край не будет интерполирован. Если установлено «repeat», край будет интерполирован с пикселями на противоположной стороне фреймбуфера.

Canvas:setWrap( horizontal, vertical )

horizontalWrapModeГоризонтальный режим обертывания холста.
vertical (horizontal)WrapModeРежим вертикальной упаковки холста.

Font

Может быть использован для рисования текста на экране.

Constructors

Functions

Supertypes

Font:getAscent

Получает восхождение шрифта. Восхождение охватывает расстояние между базовой линией и вершиной глифа, которое достигает самого дальнего от базовой линии.

ascent = Font:getAscent()

ascentnumberВосхождение шрифта в пикселях.

Font:getBaseline

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

baseline = Font:getBaseline()

baselinenumberИсходный шрифт в пикселях.

Font:getDescent

Получает спуск шрифта. Спуск охватывает расстояние между базовой линией и наименьшим нисходящим глифом в шрифте.

descent = Font:getDescent()

descentnumberСпуск шрифта в пикселях.

Font:getFilter

Возвращает режим фильтра для шрифта.

min, mag, anisotropy = Font:getFilter()

minFilterModeРежим фильтра, используемый при уменьшении шрифта.
magFilterModeРежим фильтра, используемый при увеличении шрифта.
anisotropynumberМаксимальное количество анизотропной фильтрации.

Font:getHeight

Получает высоту шрифта. Высота шрифта - это размер, включая любой интервал; высоту, которая ему понадобится.

height = Font:getHeight()

heightnumberВысота шрифта в пикселях.

Font:getLineHeight

Возвращает высоту линии. Это будет значение, ранее заданное шрифтом: setLineHeight, или 1.0 по умолчанию.

height = Font:getLineHeight()

heightnumberТекущая высота строки.

Font:getWidth

Определяет горизонтальный размер строки текста. Не поддерживает разрывы строк.

width = Font:getWidth( line )

widthnumberШирина линии.
linestringСтрока текста.

Font:getWrap

Получает форматирование информации для текста с учетом ограничения на перенос.

Эта функция учитывает новые строки правильно (т. Е. '\ N').

width, wrappedtext = Font:getWrap( text, wraplimit )

widthnumberМаксимальная ширина обернутого текста.
wrappedtexttableПоследовательность, содержащая каждую строку текста, которая была завернута.
textstringТекст, который будет завернут.
wraplimitnumberМаксимальная ширина в пикселях каждой строки, которую текст разрешен перед упаковкой.

Font:hasGlyphs

Получает, может ли шрифт отображать определенный символ.

hasglyph = Font:hasGlyphs( character )

hasglyphbooleanМожет ли шрифт отображать символ, представленный символом.
characterstringЮникодный символ.

hasglyph = Font:hasGlyphs( codepoint )

hasglyphbooleanМожет ли шрифт отображать глиф, представленный номером кода.
codepointnumberКодовый номер юникода.

Font:setFallbacks

Устанавливает резервные шрифты. Когда Шрифт не содержит глифа, он заменит глиф из следующих последующих резервных шрифтов. Это похоже на установку «стека шрифтов» в каскадных таблицах стилей (CSS).

Font:setFallbacks( fallbackfont1, ... )

fallbackfont1FontПервый резервный шрифт для использования.
...FontДополнительные резервные шрифты.

Font:setFilter

Устанавливает режим фильтра для шрифта.

Font:setFilter( min, mag, anisotropy )

minFilterModeКак масштабировать шрифт вниз.
mag (min)FilterModeКак масштабировать шрифт вверх.
anisotropy (1)numberМаксимальное количество анизотропной фильтрации.

Font:setLineHeight

Устанавливает высоту линии. При визуализации шрифта в строках фактическая высота будет определяться высотой строки, умноженной на высоту шрифта. По умолчанию используется значение 1.0.

Font:setLineHeight( height )

heightnumberНовая высота строки.

Mesh

2D-многоугольная сетка, используемая для рисования произвольных текстурированных фигур.

Constructors

Functions

Supertypes

Mesh:attachAttribute

Прикрепляет атрибут вершины из другого Mesh на этот Mesh, для использования при рисовании. Это можно использовать для обмена данными атрибутов вершин между несколькими различными сетками.

Mesh:attachAttribute( name, mesh )

namestringИмя атрибута вершины для присоединения.
meshMeshСетка для получения атрибута вершины.

Mesh:getDrawMode

Возвращает режим, используемый при рисовании сетки.

mode = Mesh:getDrawMode()

modeMeshDrawModeРежим, используемый при рисовании сетки.

Mesh:getDrawRange

Возвращает диапазон вершин, используемых при рисовании сетки.

Если диапазон рисования Mesh ранее не был установлен с помощью Mesh: setDrawRange, эта функция вернет нуль.

min, max = Mesh:getDrawRange()

minnumberИндекс первой вершины, используемой при рисовании, или индекс первого значения на карте вершин, если он установлен для этой сетки.
maxnumberИндекс последней вершины, используемой при рисовании, или индекс последнего значения в карте вершин, если он установлен для этой сетки.

Mesh:getTexture

Получает текстуру (изображение или холст), используемую при рисовании сетки.

texture = Mesh:getTexture()

textureTextureИзображение или холст, чтобы текстурировать сетку при рисовании, или nil, если ни один не установлен.

Mesh:getVertex

Возвращает свойства вершины в Mesh.

attributecomponent, ... = Mesh:getVertex( index )

attributecomponentnumberПервый компонент первого атрибута вершины в указанной вершине.
...numberДополнительные компоненты всех атрибутов вершин в указанной вершине.
indexnumberИндекс вершины, на которую вы хотите получить информацию.

x, y, u, v, r, g, b, a = Mesh:getVertex( index )

xnumberПоложение вершины на оси х.
ynumberПоложение вершины на оси y.
unumberГоризонтальная составляющая координаты текстуры.
vnumberВертикальная составляющая координаты текстуры.
rnumberКрасный компонент цвета вершины.
gnumberЗеленый компонент цвета вершины.
bnumberСиний компонент цвета вершины.
anumberАльфа-компонент цвета вершин.
indexnumberИндекс вершины, на которую вы хотите получить информацию.

Mesh:getVertexAttribute

Возвращает свойства определенного атрибута в вершине в Mesh.

Меши без пользовательского формата вершин, указанные в love.graphics.newMesh, имеют положение в качестве их первого атрибута, координаты текстур как их второй атрибут и цвет как их третий атрибут.

value1, value2, ... = Mesh:getVertexAttribute( vertexindex, attributeindex )

value1numberЗначение первого компонента атрибута.
value2numberЗначение второго компонента атрибута.
...numberЛюбые дополнительные атрибуты атрибута вершины.
vertexindexnumberИндекс измененной вершины.
attributeindexnumberИндекс атрибута внутри вершины должен быть изменен.

Mesh:getVertexCount

Получает общее количество вершин в сетке.

num = Mesh:getVertexCount()

numnumberОбщее количество вершин в этой сетке.

Mesh:getVertexFormat

Получает формат вершин, с которым была создана Mesh.

format = Mesh:getVertexFormat()

formattableВершинный формат Mesh, который представляет собой таблицу, содержащую таблицы для каждого атрибута вершины, был создан Mesh в виде {attribute, ...}.
format.attributetableТаблица, содержащая имя атрибута, тип данных и количество компонентов в атрибуте в виде {name, datatype, components}.
format....tableДополнительные атрибуты вершин в Mesh.

Mesh:getVertexMap

Получает вершинное отображение для Mesh. Вершина отображает порядок, в котором вершины используются при рисовании сетки. Вершины, вершинная карта и режим рисования сетки работают вместе, чтобы определить, что именно отображается на экране.

Если ранее не было установлено вершинное отображение через Mesh: setVertexMap, тогда эта функция вернет нуль в LÖVE 0.10.0+ или пустую таблицу в 0.9.2 и старше.

map = Mesh:getVertexMap()

maptableТаблица, содержащая список индексов вершин, используемых при рисовании.

Mesh:isAttributeEnabled

Возвращает, разрешен ли конкретный атрибут вершины в Mesh. Данные вершин из отключенных атрибутов не используются при рисовании сетки.

enabled = Mesh:isAttributeEnabled( name )

enabledbooleanИспользуется ли атрибут вершины при рисовании этого Mesh.
namestringИмя атрибута вершины для включения или отключения.

Mesh:setAttributeEnabled

Включает или отключает определенный атрибут вершины в Mesh. Данные вершин из отключенных атрибутов не используются при рисовании сетки.

Mesh:setAttributeEnabled( name, enable )

namestringИмя атрибута вершины для включения или отключения.
enablebooleanИспользуется ли атрибут вершины при рисовании этого Mesh.

Mesh:setDrawMode

Устанавливает режим, используемый при рисовании сетки.

Mesh:setDrawMode( mode )

modeMeshDrawModeРежим, используемый при рисовании сетки.

Mesh:setDrawRange

Ограничивает рисованные вершины сетки подмножеством общего числа.

Если для Mesh используется карта вершин, этот метод будет устанавливать подмножество значений в массиве вершинного массива, а не подмножество всех вершин в Mesh.

Например, если вызывается Mesh: setVertexMap (1, 2, 3, 1, 3, 4) и Mesh: setDrawRange (4, 6), будут нарисованы вершины 1, 3 и 4.

Mesh:setDrawRange( min, max )

minnumberИндекс первой вершины, которую нужно использовать при рисовании, или индекс первого значения в карте вершин, если он установлен для этой сетки.
maxnumberИндекс последней вершины, которую следует использовать при рисовании, или индекс последнего значения в карте вершин, если он установлен для этой сетки.

Mesh:setDrawRange()

Позволяет все вершины в Mesh , который можно сделать.

Mesh:setTexture

Устанавливает текстуру (изображение или холст), используемую при рисовании сетки.

При вызове без аргумента отключает текстуру. По умолчанию нетекстурированные сетки имеют белый цвет.

Mesh:setTexture()

Mesh:setTexture( texture )

textureTextureИзображение или холст для текстурирования сетки при рисовании.

Mesh:setVertex

Устанавливает свойства вершины в сетке.

Mesh:setVertex( index, attributecomponent, ... )

indexnumberИндекс вершины, которую вы хотите изменить.
attributecomponentnumberПервый компонент первого атрибута вершины в указанной вершине.
...numberДополнительные компоненты всех атрибутов вершин в указанной вершине.

Mesh:setVertex( index, vertex )

indexnumberИндекс вершины, которую вы хотите изменить.
vertextableТаблица с информацией о вершинах, в виде {attributecomponent, ...}.
vertex.attributecomponentnumberПервый компонент первого атрибута вершины в указанной вершине.
vertex....numberДополнительные компоненты всех атрибутов вершин в указанной вершине.

Mesh:setVertex( index, x, y, u, v, r, g, b, a )

Установка компонентов вершина Mesh , который не был создан с пользовательский формат вершин.

indexnumberИндекс вершины, которую вы хотите изменить.
xnumberПоложение вершины на оси х.
ynumberПоложение вершины на оси y.
unumberГоризонтальная составляющая координаты текстуры.
vnumberВертикальная составляющая координаты текстуры.
r (255)numberКрасный компонент цвета вершины.
g (255)numberЗеленый компонент цвета вершины.
b (255)numberСиний компонент цвета вершины.
a (255)numberАльфа-компонент цвета вершин.

Mesh:setVertex( index, vertex )

Sets the vertex components of a Mesh that wasn't created with a custom vertex format.

indexnumberИндекс вершины, которую вы хотите изменить.
vertextableТаблица с информацией о вершинах.
vertex.[1]numberПоложение вершины на оси х.
vertex.[2]numberПоложение вершины на оси y.
vertex.[3]numberГоризонтальная составляющая координаты текстуры.
vertex.[4]numberВертикальная составляющая координаты текстуры.
vertex.[5] (255)numberКрасный компонент цвета вершины.
vertex.[6] (255)numberЗеленый компонент цвета вершины.
vertex.[7] (255)numberСиний компонент цвета вершины.
vertex.[8] (255)numberАльфа-компонент цвета вершин.

Mesh:setVertexAttribute

Устанавливает свойства определенного атрибута в вершине в Mesh.

Меши без пользовательского формата вершин, указанные в love.graphics.newMesh, имеют положение в качестве их первого атрибута, координаты текстур как их второй атрибут и цвет как их третий атрибут.

Mesh:setVertexAttribute( vertexindex, attributeindex, value1, value2, ... )

vertexindexnumberИндекс измененной вершины.
attributeindexnumberИндекс атрибута внутри вершины должен быть изменен.
value1numberЗначение первого компонента атрибута.
value2numberЗначение второго компонента атрибута.
...numberЛюбые дополнительные атрибуты атрибута вершины.

Mesh:setVertexMap

Устанавливает отображение вершины для сетки. Вершина отображает порядок, в котором вершины используются при рисовании сетки. Вершины, вершинная карта и режим рисования сетки работают вместе, чтобы определить, что именно отображается на экране.

Вершинная карта позволяет вам переупорядочивать или повторно использовать вершины при рисовании без изменения фактических параметров вершин или дублирующих вершин. Это особенно полезно в сочетании с различными режимами рисования сетки.

Mesh:setVertexMap( map )

maptableТаблица, содержащая список индексов вершин для использования при рисовании. Значения должны находиться в диапазоне {1, Mesh: getVertexCount ()}.

Mesh:setVertexMap( vi1, vi2, vi3 )

vi1numberИндекс первой вершины, используемой при рисовании. Должен находиться в диапазоне {1, Mesh: getVertexCount ()}.
vi2numberИндекс второй вершины, используемой при рисовании.
vi3numberИндекс третьей вершины, которую нужно использовать при рисовании.

Mesh:setVertices

Заменяет диапазон вершин в Mesh новыми. Общее количество вершин в сетке не может быть изменено после его создания.

Mesh:setVertices( vertices )

verticestableТаблица, заполненная таблицами информации о вершинах для каждой вершины, в виде {vertex, ...}, где каждая вершина представляет собой таблицу в виде {attributecomponent, ...}.
vertices.attributecomponentnumberПервый компонент первого атрибута вершины в вершине.
vertices....numberДополнительные компоненты всех вершинных атрибутов в вершине.
vertices.startvertex (1)numberИндекс первой вершины заменить.

Mesh:setVertices( vertices )

Sets the vertex components of a Mesh that wasn't created with a custom vertex format.

verticestableТаблица, заполненная таблицами информации о вершинах для каждой вершины:
vertices.[1]numberПоложение вершины на оси х.
vertices.[2]numberПоложение вершины на оси y.
vertices.[3]numberГоризонтальная составляющая координаты текстуры. Координаты текстуры обычно находятся в диапазоне {0, 1}, но могут быть больше или меньше (см. WrapMode).
vertices.[4]numberВертикальная составляющая координаты текстуры. Координаты текстуры обычно находятся в диапазоне {0, 1}, но могут быть больше или меньше (см. WrapMode).
vertices.[5] (255)numberКомпонент красного цвета.
vertices.[6] (255)numberЗеленый цвет.
vertices.[7] (255)numberСиний цветной компонент.
vertices.[8] (255)numberАльфа-компонент цвета.

Image

Изображение.

Constructors

Functions

Supertypes

Image:getData

Получает исходную ImageData или CompressedImageData, используемую для создания изображения.

Все изображения содержат ссылку на данные, которые были использованы для создания изображения. Данные используются для обновления изображения, когда love.window.setMode или Image: вызывается refresh.

data = Image:getData()

dataImageDataИсходная ImageData, используемая для создания изображения, если изображение не сжато.

data = Image:getData()

dataCompressedImageDataОригинальная CompressedImageData, используемая для создания изображения, если изображение сжато.

Image:getDimensions

Получает ширину и высоту изображения.

width, height = Image:getDimensions()

widthnumberШирина изображения в пикселях.
heightnumberВысота изображения в пикселях.

Image:getFilter

Возвращает режим фильтра для изображения.

min, mag = Image:getFilter()

minFilterModeРежим фильтра, используемый для минимизации изображения.
magFilterModeРежим фильтра, используемый при увеличении изображения.

Image:getFlags

Возвращает флаги, используемые при создании изображения.

flags = Image:getFlags()

flagstableТаблица с клавишами ImageFlag.

Image:getHeight

Получает высоту изображения.

height = Image:getHeight()

heightnumberВысота изображения в пикселях.

Image:getMipmapFilter

Возвращает режим фильтра mipmap для изображения.

mode, sharpness = Image:getMipmapFilter()

modeFilterModeРежим фильтра используется между уровнями mipmap. nil, если фильтрация mipmap не включена.
sharpnessnumberЗначение, используемое для определения того, должно ли изображение использовать более или менее подробные уровни mipmap, чем обычно, при рисовании.

Image:getWidth

Возвращает ширину изображения.

width = Image:getWidth()

widthnumberШирина изображения в пикселях.

Image:getWrap

Получает свойства обтекания изображения.

Эта функция возвращает текущие установленные горизонтальные и вертикальные режимы обертки для изображения.

horizontal, vertical = Image:getWrap()

horizontalWrapModeГоризонтальный режим обтекания изображения.
verticalWrapModeВертикальный режим обтекания изображения.

Image:refresh

Перезагружает содержимое изображения из ImageData или CompressedImageData, используемых для создания изображения.

Image:refresh()

Image:refresh( x, y, width, height )

xnumberОсь X в верхнем левом углу области в пределах изображения для перезагрузки.
ynumberОсь y в верхнем левом углу области в пределах изображения для перезагрузки.
widthnumberШирина области в пределах изображения для перезагрузки.
heightnumberВысота области в пределах изображения для перезагрузки.

Image:setFilter

Устанавливает режим фильтрации для изображения.

Image:setFilter( min, mag )

minFilterModeФильтрация при уменьшении.
mag (min)FilterModeФильтрация при увеличении.

Image:setMipmapFilter

Устанавливает режим фильтра mipmap для изображения.

Mipmapping полезна при рисовании изображения в уменьшенном масштабе. Он может улучшить производительность и уменьшить проблемы с псевдонимом.

В 0.10.0 и новее изображение должно быть создано с включенным флагом mipmaps для фильтра mipmap.

Image:setMipmapFilter( filtermode, sharpness )

filtermodeFilterModeРежим фильтра для использования между уровнями mipmap. «Ближайшие» часто дают лучшую производительность.
sharpness (0)numberПоложительное значение резкости заставляет изображение использовать более подробный уровень mipmap при рисовании за счет производительности. Отрицательное значение делает обратное.

Image:setMipmapFilter()

Отключает фильтрацию MIPMAP.

Image:setWrap

Устанавливает свойства упаковки изображения.

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

Если вы используете квадрат, размер которого больше, чем размер изображения, и не используйте повторную черепицу, может возникнуть нежелательный визуальный эффект изображения, растягивающий весь путь заполнения Квадрата. Если это так, установите Image: getWrap («repeat», «repeat») для всех изображений, которые будут повторяться, и использование Quad соответствующего размера приведет к лучшему визуальному виду.

Image:setWrap( horizontal, vertical )

horizontalWrapModeГоризонтальный режим обтекания изображения.
vertical (horizontal)WrapModeВертикальный режим обтекания изображения.

ParticleSystem

Используется для создания различных эффектов вроде огня.

Система частиц создается и выводится на экран с помощью функций из love.graphics. Также они должны быть обновлены в функции update(dt), если вы намереваетесь увидеть хоть какие-то изменения по времени.

Constructors

Functions

Supertypes

ParticleSystem:clone

Создает идентичную копию ParticleSystem в состоянии остановки.

Cloned ParticleSystem наследует все установленное состояние исходной ParticleSystem, но они инициализируются.

particlesystem = ParticleSystem:clone()

particlesystemParticleSystemНовая идентичная копия этой ParticleSystem.

ParticleSystem:emit

Излучает взрыв частиц от эмиттера частиц.

ParticleSystem:emit( numparticles )

numparticlesnumberКоличество частиц, которые испускают. Количество излучаемых частиц будет усечено, если будет достигнут максимальный размер буфера системы частиц.

ParticleSystem:getCount

Получает количество частиц, которые в настоящее время находятся в системе.

count = ParticleSystem:getCount()

countnumberТекущее количество живых частиц.

ParticleSystem:getAreaSpread

Получает параметры порождения для частиц для области.

distribution, dx, dy = ParticleSystem:getAreaSpread()

distributionAreaSpreadDistributionТип распределения для новых частиц.
dxnumberМаксимальное расстояние от источника к эмиттеру вдоль оси x для равномерного распределения или стандартное отклонение вдоль оси x для нормального распределения.
dynumberМаксимальное расстояние от источника излучения по оси Y для равномерного распределения или стандартное отклонение вдоль оси y для нормального распределения.

ParticleSystem:getBufferSize

Получает размер буфера (максимально допустимое количество частиц в системе).

buffer = ParticleSystem:getBufferSize()

buffernumberРазмер буфера.

ParticleSystem:getColors

Получает серию цветов для применения к спрайту частиц. Система частиц будет интерполировать между каждым цветом равномерно по времени жизни частицы. Для этой функции должна быть активирована цветовая модуляция.

Аргументы передаются группами по четыре, представляя компоненты требуемого значения RGBA. Необходимо указать хотя бы один цвет. Могут использоваться не более восьми.

r1, g1, b1, a1, r2, g2, b2, a2, ... = ParticleSystem:getColors()

r1numberПервый цвет, красный компонент (0-255).
g1numberПервый цвет, зеленый компонент (0-255).
b1numberПервый цвет, синий компонент (0-255).
a1numberПервый цвет, альфа-компонент (0-255).
r2numberВторой цвет, красный компонент (0-255).
g2numberВторой цвет, зеленый компонент (0-255).
b2numberВторой цвет, синий компонент (0-255).
a2numberВторой цвет, альфа-компонент (0-255).
...numberИ т.п.

ParticleSystem:getDirection

Получает направление, в которое будут выбрасываться частицы.

direction = ParticleSystem:getDirection()

directionnumberНаправление частиц (в радианах).

ParticleSystem:getEmissionRate

Получает количество частиц, испускаемых в секунду.

rate = ParticleSystem:getEmissionRate()

ratenumberКоличество частиц в секунду.

ParticleSystem:getInsertMode

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

mode = ParticleSystem:getInsertMode()

modeParticleInsertModeРежим использования, когда ParticleSystem добавляет новые частицы.

ParticleSystem:getLinearAcceleration

Получает линейное ускорение (ускорение вдоль осей x и y) для частиц.

Каждая созданная частица будет ускоряться вдоль осей x и y между xmin, ymin и xmax, ymax.

xmin, ymin, xmax, ymax = ParticleSystem:getLinearAcceleration()

xminnumberМинимальное ускорение вдоль оси х.
yminnumberМинимальное ускорение вдоль оси y.
xmaxnumberМаксимальное ускорение вдоль оси х.
ymaxnumberМаксимальное ускорение вдоль оси y.

ParticleSystem:getLinearDamping

Получает количество линейного затухания (постоянное торможение) для частиц.

min, max = ParticleSystem:getLinearDamping()

minnumberМинимальное количество линейного демпфирования, нанесенного на частицы.
maxnumberМаксимальное количество линейного демпфирования, нанесенного на частицы.

ParticleSystem:getEmitterLifetime

Получает, как долго система частиц должна излучать частицы (если -1, то она испускает частицы навсегда).

life = ParticleSystem:getEmitterLifetime()

lifenumberВремя жизни излучателя (в секундах).

ParticleSystem:getOffset

Получите положение смещения, вокруг которого вращается спутник частиц. Если эта функция не используется, частицы вращаются вокруг их центра.

x, y = ParticleSystem:getOffset()

xnumberКоордината x вращения отключается.
ynumberКоордината y вращения отключается.

ParticleSystem:getParticleLifetime

Получает жизнь частиц.

min, max = ParticleSystem:getParticleLifetime()

minnumberМинимальный срок службы частиц (в секундах).
max (min)numberМаксимальный срок службы частиц (в секундах).

ParticleSystem:getQuads

Получает серию квадов, используемых для спрайтов частиц.

quads = ParticleSystem:getQuads()

quadstableТаблица, содержащая используемые квады.

ParticleSystem:getPosition

Получает положение излучателя.

x, y = ParticleSystem:getPosition()

xnumberПоложение вдоль оси х.
ynumberПоложение вдоль оси Y.

ParticleSystem:getRadialAcceleration

Получите радиальное ускорение (вдали от излучателя).

min, max = ParticleSystem:getRadialAcceleration()

minnumberМинимальное ускорение.
max (min)numberМаксимальное ускорение.

ParticleSystem:getRotation

Получает вращение изображения при создании частиц (в радианах).

min, max = ParticleSystem:getRotation()

minnumberМинимальный начальный угол (радиан).
max (min)numberМаксимальный начальный угол (радианы).

ParticleSystem:getSizes

Получает ряд размеров, с помощью которых можно масштабировать спрайт частиц. 1.0 - нормальный размер. Система частиц будет интерполировать между каждым размером равномерно по времени жизни частицы.

Необходимо указать хотя бы один размер. Могут использоваться не более восьми.

size1, size2, ... = ParticleSystem:getSizes()

size1numberПервый размер.
size2numberВторой размер.
...numberИ т.п.

ParticleSystem:getSizeVariation

Получает степень вариации (0 означает отсутствие вариации и 1 означает полное изменение между началом и концом).

variation = ParticleSystem:getSizeVariation()

variationnumberСтепень вариации (0 означает отсутствие вариации и 1 означает полное изменение между началом и концом).

ParticleSystem:getSpeed

Получает скорость частиц.

min, max = ParticleSystem:getSpeed()

minnumberМинимальная линейная скорость частиц.
max (min)numberМаксимальная линейная скорость частиц.

ParticleSystem:getSpin

Возвращает спин спрайта.

min, max = ParticleSystem:getSpin()

minnumberМинимальный спин (радианы в секунду).
max (min)numberМаксимальный крутящий момент (радиан в секунду).

ParticleSystem:getSpinVariation

Получает степень вариации (0 означает отсутствие вариации и 1 означает полное изменение между началом и концом).

variation = ParticleSystem:getSpinVariation()

variationnumberСтепень вариации (0 означает отсутствие вариации и 1 означает полное изменение между началом и концом).

ParticleSystem:getSpread

Получает размер спреда для системы.

spread = ParticleSystem:getSpread()

spreadnumberОбъем распространения (радианы).

ParticleSystem:getTexture

Получает изображение или холст, который должен испускаться.

texture = ParticleSystem:getTexture()

textureTextureИзображение или холст для использования для частицы.

ParticleSystem:getTangentialAcceleration

Получает тангенциальное ускорение (ускорение, перпендикулярное направлению частицы).

min, max = ParticleSystem:getTangentialAcceleration()

minnumberМинимальное ускорение.
max (min)numberМаксимальное ускорение.

ParticleSystem:hasRelativeRotation

Получает, являются ли углы и вращения частиц относительно их скоростей. Если включено, частицы выравниваются с углом их скоростей и вращаются относительно этого угла.

enabled = ParticleSystem:hasRelativeRotation()

enabledbooleanИстинно, если включено относительное вращение частиц, false, если оно отключено.

ParticleSystem:isActive

Проверяет, активно ли система частиц излучает частицы.

active = ParticleSystem:isActive()

activebooleanИстинно, если система активна, в противном случае - false.

ParticleSystem:isPaused

Проверяет, приостановлена ​​ли система частиц.

paused = ParticleSystem:isPaused()

pausedbooleanИстинно, если система приостановлена, в противном случае - false.

ParticleSystem:isStopped

Проверяет, остановлена ​​ли система частиц.

stopped = ParticleSystem:isStopped()

stoppedbooleanИстинно, если система остановлена, в противном случае - false.

ParticleSystem:moveTo

Перемещает положение излучателя. Это приводит к более плавному поведению частиц, чем при использовании ParticleSystem: setPosition используется каждый кадр.

ParticleSystem:moveTo( x, y )

xnumberПоложение вдоль оси х.
ynumberПоложение вдоль оси Y.

ParticleSystem:pause

Приостанавливает излучатель частиц.

ParticleSystem:pause()

ParticleSystem:reset

Сбрасывает излучатель частиц, удаляет все существующие частицы и возвращает счетчик времени жизни.

ParticleSystem:reset()

ParticleSystem:setAreaSpread

Устанавливает параметры нереста на основе области для частиц. Новые созданные частицы будут появляться в области вокруг излучателя на основе параметров этой функции.

ParticleSystem:setAreaSpread( distribution, dx, dy )

distributionAreaSpreadDistributionТип распределения для новых частиц.
dxnumberМаксимальное расстояние от источника к эмиттеру вдоль оси x для равномерного распределения или стандартное отклонение вдоль оси x для нормального распределения.
dynumberМаксимальное расстояние от источника излучения по оси Y для равномерного распределения или стандартное отклонение вдоль оси y для нормального распределения.

ParticleSystem:setBufferSize

Устанавливает размер буфера (максимально допустимое количество частиц в системе).

ParticleSystem:setBufferSize( buffer )

buffernumberРазмер буфера.

ParticleSystem:setColors

Устанавливает ряд цветов для применения к спрайту частиц. Система частиц будет интерполировать между каждым цветом равномерно по времени жизни частицы. Для этой функции должна быть активирована цветовая модуляция.

Аргументы передаются группами по четыре, представляя компоненты требуемого значения RGBA. Необходимо указать хотя бы один цвет. Могут использоваться не более восьми.

ParticleSystem:setColors( r1, g1, b1, a1, r2, g2, b2, a2, ... )

r1numberПервый цвет, красный компонент (0-255).
g1numberПервый цвет, зеленый компонент (0-255).
b1numberПервый цвет, синий компонент (0-255).
a1numberПервый цвет, альфа-компонент (0-255).
r2numberВторой цвет, красный компонент (0-255).
g2numberВторой цвет, зеленый компонент (0-255).
b2numberВторой цвет, синий компонент (0-255).
a2numberВторой цвет, альфа-компонент (0-255).
...numberИ т.п.

ParticleSystem:setDirection

Устанавливает направление излучения частиц.

ParticleSystem:setDirection( direction )

directionnumberНаправление частиц (в радианах).

ParticleSystem:setEmissionRate

Устанавливает количество частиц, испускаемых в секунду.

ParticleSystem:setEmissionRate( rate )

ratenumberКоличество частиц в секунду.

ParticleSystem:setEmitterLifetime

Устанавливает, как долго система частиц должна излучать частицы (если -1, то она испускает частицы навсегда).

ParticleSystem:setEmitterLifetime( life )

lifenumberВремя жизни излучателя (в секундах).

ParticleSystem:setInsertMode

Устанавливает режим использования, когда ParticleSystem добавляет новые частицы.

ParticleSystem:setInsertMode( mode )

modeParticleInsertModeРежим использования, когда ParticleSystem добавляет новые частицы.

ParticleSystem:setLinearAcceleration

Устанавливает линейное ускорение (ускорение вдоль осей x и y) для частиц.

Каждая созданная частица будет ускоряться вдоль осей x и y между xmin, ymin и xmax, ymax.

ParticleSystem:setLinearAcceleration( xmin, ymin, xmax, ymax )

xminnumberМинимальное ускорение вдоль оси х.
ymin (0)numberМинимальное ускорение вдоль оси y.
xmax (xmin)numberМаксимальное ускорение вдоль оси х.
ymax (ymin)numberМаксимальное ускорение вдоль оси y.

ParticleSystem:setLinearDamping

Устанавливает количество линейного затухания (постоянное торможение) для частиц.

ParticleSystem:setLinearDamping( min, max )

minnumberМинимальное количество линейного демпфирования, нанесенного на частицы.
maxnumberМаксимальное количество линейного демпфирования, нанесенного на частицы.

ParticleSystem:setOffset

Установите положение смещения, вокруг которого вращается спутник частиц. Если эта функция не используется, частицы вращаются вокруг их центра.

ParticleSystem:setOffset( x, y )

xnumberКоордината x смещения вращения.
ynumberКоордината y смещения вращения.

ParticleSystem:setParticleLifetime

Устанавливает срок службы частиц.

ParticleSystem:setParticleLifetime( min, max )

minnumberМинимальный срок службы частиц (в секундах).
max (min)numberМаксимальный срок службы частиц (в секундах).

ParticleSystem:setPosition

Устанавливает положение излучателя.

ParticleSystem:setPosition( x, y )

xnumberПоложение вдоль оси х.
ynumberПоложение вдоль оси Y.

ParticleSystem:setQuads

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

ParticleSystem:setQuads( quad1, quad2 )

quad1QuadПервый Quad использовать.
quad2QuadВторая Quad использовать.

ParticleSystem:setQuads( quads )

quadstableТаблица, содержащая Quads для использования.

ParticleSystem:setRadialAcceleration

Установите радиальное ускорение (вдали от излучателя).

ParticleSystem:setRadialAcceleration( min, max )

minnumberМинимальное ускорение.
max (min)numberМаксимальное ускорение.

ParticleSystem:setRelativeRotation

Устанавливает, являются ли углы частиц и вращения относительно их скоростей. Если включено, частицы выравниваются с углом их скоростей и вращаются относительно этого угла.

ParticleSystem:setRelativeRotation( enable )

enablebooleanВерно для обеспечения относительного вращения частиц, false, чтобы отключить его.

ParticleSystem:setRotation

Нужно делиться оригинальным формаль ...

ParticleSystem:setRotation( min, max )

minnumberМинимальный начальный угол (радиан).
max (min)numberМаксимальный начальный угол (радианы).

ParticleSystem:setSizes

Устанавливает ряд размеров, с помощью которых можно масштабировать спрайт частиц. 1.0 - нормальный размер. Система частиц будет интерполировать между каждым размером равномерно по времени жизни частицы.

Необходимо указать хотя бы один размер. Могут использоваться не более восьми.

ParticleSystem:setSizes( size1, size2, ... )

size1numberПервый размер.
size2numberВторой размер.
...numberИ т.п.

ParticleSystem:setSizeVariation

Устанавливает степень вариации (0 означает отсутствие вариации и 1 означает полное изменение между началом и концом).

ParticleSystem:setSizeVariation( variation )

variationnumberСтепень вариации (0 означает отсутствие вариации и 1 означает полное изменение между началом и концом).

ParticleSystem:setSpeed

Устанавливает скорость частиц.

ParticleSystem:setSpeed( min, max )

minnumberМинимальная линейная скорость частиц.
max (min)numberМаксимальная линейная скорость частиц.

ParticleSystem:setSpin

Устанавливает спин спрайта.

ParticleSystem:setSpin( min, max )

minnumberМинимальный спин (радианы в секунду).
max (min)numberМаксимальный крутящий момент (радиан в секунду).

ParticleSystem:setSpinVariation

Устанавливает степень вариации (0 означает отсутствие вариации и 1 означает полное изменение между началом и концом).

ParticleSystem:setSpinVariation( variation )

variationnumberСтепень вариации (0 означает отсутствие вариации и 1 означает полное изменение между началом и концом).

ParticleSystem:setSpread

Устанавливает размер спреда для системы.

ParticleSystem:setSpread( spread )

spreadnumberОбъем распространения (радианы).

ParticleSystem:setTexture

Устанавливает изображение или холст, который должен быть испущен.

ParticleSystem:setTexture( texture )

textureTextureИзображение или холст для использования для частицы.

ParticleSystem:setTangentialAcceleration

Устанавливает тангенциальное ускорение (ускорение, перпендикулярное направлению частицы).

ParticleSystem:setTangentialAcceleration( min, max )

minnumberМинимальное ускорение.
max (min)numberМаксимальное ускорение.

ParticleSystem:start

Начинает излучение частицы.

ParticleSystem:start()

ParticleSystem:stop

Остановка излучателя частиц, сброс счетчика времени жизни.

ParticleSystem:stop()

ParticleSystem:update

Обновляет систему частиц; перемещение, создание и уничтожение частиц.

ParticleSystem:update( dt )

dtnumberВремя (секунды) с момента последнего кадра.

Quad

Текстурный прямоугольник с информацией о текстурных координатах.

Текстурные прямоугольники можно использовать, чтобы выбрать, какую часть текстуры отрисовывать. Таким образом, можно загрузить один большой «атлас текстур» и, затем, делить его на фрагменты.

Constructors

Functions

Supertypes

Quad:getTextureDimensions

Возвращает параметры текстурной текстуры, первоначально заданные в love.graphics.newQuad.

sw, sh = Quad:getTextureDimensions()

swnumberШирина текстуры, используемая Quad.
shnumberВысота текстуры, используемая Quad.

Quad:getViewport

Возвращает текущее поле вывода для данного текстурного прямоугольника.

x, y, w, h = Quad:getViewport()

xnumberАбсцисса верхнего левого угла.
ynumberОрдината правого верхнего угла.
wnumberШирина поля вывода.
hnumberВысота поля вывода.

Quad:setViewport

Задаёт текстурные координаты согласно полю вывода.

Quad:setViewport( x, y, w, h )

xnumberАбсцисса верхнего левого угла.
ynumberОрдината правого верхнего угла.
wnumberШирина поля вывода.
hnumberВысота поля вывода.

Shader

Shader используется для расширенной аппаратной ускоренной обработки пикселов или вершин. Эти эффекты написаны на языке, основанном на GLSL (OpenGL Shading Language), с несколькими упрощенными для упрощения кодирования вещами.

Потенциальное использование шейдеров включает HDR / bloom, motion blur, оттенки серого / инвертированные / сепия / любой цветовой эффект, отражение / преломление, искажения, отображение рельефа и многое другое! Вот коллекция основных шейдеров и хорошая отправная точка для изучения: https://github.com/vrld/shine

Constructors

Functions

Supertypes

Shader:getExternVariable

Получает информацию о переменной «extern» («равномерность») в шейдере.

type, components, arrayelements = Shader:getExternVariable( name )

typeShaderVariableTypeБазовый тип переменной.
componentsnumberКоличество компонентов в переменной (например, 2 для vec2 или mat2.)
arrayelementsnumberЧисло элементов в массиве, если переменная является массивом, или 1, если нет.
namestringИмя внешней переменной.

Shader:getWarnings

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

warnings = Shader:getWarnings()

warningsstringПредупреждающие сообщения (если есть).

Shader:send

Отправляет одно или несколько значений в специальную (равномерную) переменную внутри шейдера. Однородные переменные должны быть отмечены с использованием равномерного или ключевого слова extern.

Shader:send( name, number, ... )

namestringИмя номера для отправки в шейдер.
numbernumberНомер для отправки для сохранения в однородной переменной.
...numberДополнительные номера для отправки, если равномерная переменная является массивом.

Shader:send( name, vector, ... )

namestringИмя вектора для отправки в шейдер.
vectortableЧисла для отправки однородной переменной в виде вектора. Количество элементов в таблице определяет тип вектора (например, два числа -> vec2). Можно использовать не менее двух и не более четырех чисел.
...tableДополнительные векторы для отправки, если равномерная переменная является массивом. Все векторы должны быть одного размера (например, только vec3).

Shader:send( name, matrix, ... )

namestringИмя матрицы для отправки в шейдер.
matrixtable2x2, 3x3 или 4x4, чтобы отправить единую переменную. Используя табличную форму: {{a, b, c, d}, {e, f, g, h}, ...}.
...tableДополнительные матрицы того же типа, что и матрица для хранения в однородном массиве.

Shader:send( name, texture )

namestringНазвание текстуры для отправки в шейдер.
textureTextureТекстура (изображение или холст) для отправки однородной переменной.

Shader:send( name, boolean, ... )

namestringИмя логического для отправки в шейдер.
booleanbooleanBoolean для отправки для сохранения в равномерной переменной.
...booleanДополнительные логические значения для отправки, если равномерная переменная является массивом.

Shader:sendColor

Отправляет один или несколько цветов в специальную переменную (extern / uniform) vec3 или vec4 внутри шейдера. Компоненты цвета должны находиться в диапазоне {0, 255}, в отличие от Shader: send. Цвета гамма-коррекции, если включена глобальная гамма-коррекция.

Shader:sendColor( name, color, ... )

namestringИмя переменной цвета для отправки в шейдер.
colortableТаблица с красными, зелеными, синими и дополнительными альфа-цветными компонентами в диапазоне {0, 255} для отправки в экстерн в виде вектора.
...tableДополнительные цвета для отправки в случае, если extern является массивом. Все цвета должны быть одного размера (например, только vec3).

SpriteBatch

Накопление геометрии в буфере, которая может быть нарисована за один вызов.

Constructors

Functions

Supertypes

SpriteBatch:add

Добавьте спрайт в партию.

id = SpriteBatch:add( x, y, r, sx, sy, ox, oy, kx, ky )

idnumberИдентификатор добавленного спрайта.
xnumberПозиция для рисования объекта (ось x).
ynumberПозиция для рисования объекта (ось y).
r (0)numberОриентация (радианы).
sx (1)numberМасштабный коэффициент (ось х).
sy (sx)numberМасштабный коэффициент (ось Y).
ox (0)numberПроисхождение смещения (ось x).
oy (0)numberПроисхождение смещения (ось y).
kx (0)numberКоэффициент сдвига (ось х).
ky (0)numberКоэффициент сдвига (ось y).

id = SpriteBatch:add( quad, x, y, r, sx, sy, ox, oy, kx, ky )

idnumberИдентификатор добавленного спрайта.
quadQuadКвадрат для добавления.
xnumberПозиция для рисования объекта (ось x).
ynumberПозиция для рисования объекта (ось y).
r (0)numberОриентация (радианы).
sx (1)numberМасштабный коэффициент (ось х).
sy (sx)numberМасштабный коэффициент (ось Y).
ox (0)numberПроисхождение смещения (ось x).
oy (0)numberПроисхождение смещения (ось y).
kx (0)numberКоэффициент сдвига (ось х).
ky (0)numberКоэффициент сдвига (ось y).

SpriteBatch:attachAttribute

Прикрепляет атрибут per-vertex из Mesh на этот SpriteBatch, для использования при рисовании. Это можно комбинировать с шейдером, чтобы увеличить SpriteBatch с помощью вершины или дополнительной информации для каждого спрайта вместо того, чтобы иметь только цвета с использованием спрайтов.

Каждый спрайт в SpriteBatch имеет 4 вершины в следующем порядке: верхний левый, нижний левый, верхний правый, нижний правый. Индекс, возвращаемый SpriteBatch: add (и используемый SpriteBatch: set) может быть умножен на 4 для определения первой вершины в конкретном спрайте.

SpriteBatch:attachAttribute( name, mesh )

namestringИмя атрибута вершины для присоединения.
meshMeshСетка для получения атрибута вершины.

SpriteBatch:clear

Удаляет все спрайты из буфера.

SpriteBatch:clear()

SpriteBatch:flush

Сразу же отправляет все новые и измененные данные спрайтов в пакетную версию на графическую карту.

SpriteBatch:flush()

SpriteBatch:getBufferSize

Получает максимальное количество спрайтов, которые может удерживать SpriteBatch.

size = SpriteBatch:getBufferSize()

sizenumberМаксимальное количество спрайтов, которые может содержать партия.

SpriteBatch:getColor

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

Если в SpriteBatch не задан цвет: setColor или текущий цвет SpriteBatch очищен, этот метод будет возвращать нуль.

r, g, b, a = SpriteBatch:getColor()

rnumberКрасный компонент (0-255).
gnumberЗеленый компонент (0-255).
bnumberСиний компонент (0-255).
anumberАльфа-компонент (0-255).

SpriteBatch:getCount

Получает количество спрайтов в настоящее время в SpriteBatch.

count = SpriteBatch:getCount()

countnumberКоличество спрайтов в настоящее время в партии.

SpriteBatch:getTexture

Получает изображение или холст, используемые SpriteBatch.

texture = SpriteBatch:getTexture()

textureTextureИзображение или холст для спрайтов.

SpriteBatch:set

Изменяет спрайт в партии. Для этого требуется идентификатор, возвращаемый add и addq.

SpriteBatch:set( id, x, y, r, sx, sy, ox, oy, kx, ky )

idnumberИдентификатор спрайта, который будет изменен.
xnumberПозиция для рисования объекта (ось x).
ynumberПозиция для рисования объекта (ось y).
r (0)numberОриентация (радианы).
sx (1)numberМасштабный коэффициент (ось х).
sy (sx)numberМасштабный коэффициент (ось Y).
ox (0)numberПроисхождение смещения (ось x).
oy (0)numberПроисхождение смещения (ось y).
kx (0)numberКоэффициент сдвига (ось х).
ky (0)numberКоэффициент сдвига (ось y).

SpriteBatch:set( id, quad, x, y, r, sx, sy, ox, oy, kx, ky )

idnumberИдентификатор спрайта, который будет изменен.
quadQuadКвадрат используется на изображении партии.
xnumberПозиция для рисования объекта (ось x).
ynumberПозиция для рисования объекта (ось y).
r (0)numberОриентация (радианы).
sx (1)numberМасштабный коэффициент (ось х).
sy (sx)numberМасштабный коэффициент (ось Y).
ox (0)numberПроисхождение смещения (ось x).
oy (0)numberПроисхождение смещения (ось y).
kx (0)numberКоэффициент сдвига (ось х).
ky (0)numberКоэффициент сдвига (ось y).

SpriteBatch:setBufferSize

Устанавливает максимальное количество спрайтов, которые может удерживать SpriteBatch. Существующие спрайты в партии (до нового максимума) не будут очищены при вызове этой функции.

SpriteBatch:setBufferSize( size )

sizenumberНовое максимальное количество спрайтов, которое может содержать партия.

SpriteBatch:setColor

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

В версии {{0.9.2}} и старше глобальный набор цветов с love.graphics.setColor не будет работать на SpriteBatch, если какой-либо из спрайтов имеет свой собственный цвет.

SpriteBatch:setColor( r, g, b, a )

rnumberКоличество красного.
gnumberКоличество зеленого.
bnumberКоличество синего.
a (255)numberКоличество альфа.

SpriteBatch:setColor()

Отключение всех цветов на-спрайт для этого SpriteBatch.

SpriteBatch:setTexture

Заменяет изображение или холст, используемый для спрайтов.

SpriteBatch:setTexture( texture )

textureTextureНовый образ или холст для спрайтов.

Text

Подходящий текст.

Constructors

Functions

Supertypes

Text:add

Добавляет дополнительный цветной текст в объект Text в указанной позиции.

index = Text:add( textstring, x, y, angle, sx, sy, ox, oy, kx, ky )

indexnumberНомер индекса, который можно использовать с текстом: getWidth или Text: getHeight.
textstringstringТекст, добавляемый к объекту.
x (0)numberПозиция нового текста по оси x.
y (0)numberПозиция нового текста по оси y.
angle (0)numberОриентация нового текста в радианах.
sx (1)numberМасштабный коэффициент по оси х.
sy (sx)numberМасштабный коэффициент по оси y.
ox (0)numberПроисхождение смещения по оси x.
oy (0)numberПроисхождение смещения по оси y.
kx (0)numberКоэффициент сдвига / перекоса по оси х.
ky (0)numberКоэффициент сдвига / перекоса по оси y.

index = Text:add( coloredtext, x, y, angle, sx, sy, ox, oy, kx, ky )

indexnumberНомер индекса, который можно использовать с текстом: getWidth или Text: getHeight.
coloredtexttableТаблица, содержащая цвета и строки для использования в качестве нового текста в виде {color1, string1, color2, string2, ...}.
coloredtext.color1tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string1stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext.color2tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string2stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext....tables and stringsДополнительные цвета и строки.
x (0)numberПозиция нового текста по оси x.
y (0)numberПозиция нового текста по оси y.
angle (0)numberОриентация нового текста в радианах.
sx (1)numberМасштабный коэффициент по оси х.
sy (sx)numberМасштабный коэффициент по оси y.
ox (0)numberПроисхождение смещения по оси x.
oy (0)numberПроисхождение смещения по оси y.
kx (0)numberКоэффициент сдвига / перекоса по оси х.
ky (0)numberКоэффициент сдвига / перекоса по оси y.

Text:addf

Добавляет дополнительный форматированный / цветной текст в текстовый объект в указанной позиции.

index = Text:addf( textstring, wraplimit, align, x, y, angle, sx, sy, ox, oy, kx, ky )

indexnumberНомер индекса, который можно использовать с текстом: getWidth или Text: getHeight.
textstringstringТекст, добавляемый к объекту.
wraplimitnumberМаксимальная ширина в пикселях текста до того, как он автоматически будет перенесен в новую строку.
alignAlignModeВыравнивание текста.
xnumberПозиция нового текста по оси x.
ynumberПозиция нового текста по оси y.
angle (0)numberОриентация объекта в радианах.
sx (1)numberМасштабный коэффициент по оси х.
sy (sx)numberМасштабный коэффициент по оси y.
ox (0)numberПроисхождение смещения по оси x.
oy (0)numberПроисхождение смещения по оси y.
kx (0)numberКоэффициент сдвига / перекоса по оси х.
ky (0)numberКоэффициент сдвига / перекоса по оси y.

index = Text:addf( coloredtext, wraplimit, align, x, y, angle, sx, sy, ox, oy, kx, ky )

indexnumberНомер индекса, который можно использовать с текстом: getWidth или Text: getHeight.
coloredtexttableТаблица, содержащая цвета и строки для использования в качестве нового текста в виде {color1, string1, color2, string2, ...}.
coloredtext.color1tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string1stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext.color2tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string2stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext....tables and stringsДополнительные цвета и строки.
wraplimitnumberМаксимальная ширина в пикселях текста до того, как он автоматически будет перенесен в новую строку.
alignAlignModeВыравнивание текста.
xnumberПозиция нового текста по оси x.
ynumberПозиция нового текста по оси y.
angle (0)numberОриентация объекта в радианах.
sx (1)numberМасштабный коэффициент по оси х.
sy (sx)numberМасштабный коэффициент по оси y.
ox (0)numberПроисхождение смещения по оси x.
oy (0)numberПроисхождение смещения по оси y.
kx (0)numberКоэффициент сдвига / перекоса по оси х.
ky (0)numberКоэффициент сдвига / перекоса по оси y.

Text:clear

Очищает содержимое объекта Text.

Text:clear()

Text:getDimensions

Получает ширину и высоту текста в пикселях.

width, height = Text:getDimensions()

widthnumberШирина текста. Если добавлено несколько подстрок с текстом: add, возвращается длина последней подстроки.
heightnumberВысота текста. Если добавлено несколько подстрок с текстом: add, возвращается высота последней подстроки.

width, height = Text:getDimensions( index )

Получает ширину и высоту определенной подстроки , который ранее был добавлен кнопки Text объекта.

widthnumberШирина подстроки (до масштабирования и других преобразований).
heightnumberВысота подстроки (до масштабирования и других преобразований).
indexnumberНомер индекса, возвращаемый текстом: add или Text: addf.

Text:getFont

Получает шрифт, используемый с объектом Text.

font = Text:getFont()

fontFontШрифт, используемый с этим объектом Text.

Text:getHeight

Получает высоту текста в пикселях.

height = Text:getHeight()

heightnumberВысота текста. Если добавлено несколько подстрок с текстом: add, возвращается высота последней подстроки.

height = Text:getHeight( index )

Получает высоту определенной подстроки , который ранее был добавлен к Text объекта.

heightnumberВысота подстроки (до масштабирования и других преобразований).
indexnumberНомер индекса, возвращаемый текстом: add или Text: addf.

Text:getWidth

Возвращает ширину текста в пикселях.

width = Text:getWidth()

widthnumberШирина текста. Если добавлено несколько подстрок с текстом: add, возвращается длина последней подстроки.

width = Text:getWidth( index )

Получает ширину определенной подстроки , который ранее был добавлен к Text объекта.

widthnumberШирина подстроки (до масштабирования и других преобразований).
indexnumberНомер индекса, возвращаемый текстом: add или Text: addf.

Text:set

Заменяет содержимое объекта Text новой неформатированной строкой.

Text:set( textstring )

textstringstringНовая строка текста для использования.

Text:set( coloredtext )

coloredtexttableТаблица, содержащая цвета и строки для использования в качестве нового текста в виде {color1, string1, color2, string2, ...}.
coloredtext.color1tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string1stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext.color2tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string2stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext....tables and stringsДополнительные цвета и строки.

Text:set()

Удаляет содержимое Text объекта.

- +2981

Заменяет содержимое Text объекта с новой отформатированной строки.

Text:setf

Заменяет содержимое объекта Text новой форматированной строкой.

Text:setf( textstring, wraplimit, align )

textstringstringНовая строка текста для использования.
wraplimitnumberМаксимальная ширина в пикселях текста до того, как он автоматически будет перенесен в новую строку.
align ("left")AlignModeВыравнивание текста.

Text:setf( coloredtext, wraplimit, align )

coloredtexttableТаблица, содержащая цвета и строки для использования в качестве нового текста в виде {color1, string1, color2, string2, ...}.
coloredtext.color1tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string1stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext.color2tableТаблица, содержащая красные, зеленые, синие и дополнительные альфа-компоненты для использования в качестве цвета для следующей строки в таблице в виде {красного, зеленого, синего, альфа}.
coloredtext.string2stringСтрока текста, которая имеет цвет, указанный предыдущим цветом.
coloredtext....tables and stringsДополнительные цвета и строки.
wraplimitnumberМаксимальная ширина в пикселях текста до того, как он автоматически будет перенесен в новую строку.
align ("left")AlignModeВыравнивание текста.

Text:setf()

Clears the contents of the Text object.

Text:setFont

Заменяет шрифт, используемый с текстом.

Text:setFont( font )

fontFontНовый шрифт для использования с этим объектом Text.

Texture

Суперкласс для рисования объектов, представляющих текстуру. Все текстуры можно рисовать с помощью Quads. Это абстрактный тип, который нельзя создать напрямую.

Supertypes

Subtypes

Video

Выбираемое видео.

Constructors

Functions

Supertypes

Video:getDimensions

Получает ширину и высоту видео в пикселях.

width, height = Video:getDimensions()

widthnumberШирина видео.
heightnumberВысота видео.

Video:getFilter

Получает фильтры масштабирования, используемые при рисовании видео.

min, mag, anisotropy = Video:getFilter()

minFilterModeРежим фильтра, используемый при масштабировании видео вниз.
magFilterModeРежим фильтра, используемый при масштабировании видео.
anisotropy (1)numberМаксимальное количество анизотропной фильтрации.

Video:getHeight

Получает высоту видео в пикселях.

height = Video:getHeight()

heightnumberВысота видео.

Video:getSource

Возвращает аудио источник, используемый для воспроизведения звука видео. Может возвращать nil, если видео не имеет звука, или если Video: setSource вызывается с аргументом nil.

source = Video:getSource()

sourceSourceИсточник звука, используемый для воспроизведения звука, или ноль, если видео не имеет звука.

Video:getWidth

Получает ширину видео в пикселях.

width = Video:getWidth()

widthnumberШирина видео.

Video:isPlaying

Возвращает, воспроизводится ли видео.

playing = Video:isPlaying()

playingbooleanВоспроизведение видео.

Video:pause

Приостанавливает видео.

Video:pause()

Video:play

Начинает воспроизведение видео. Чтобы видео появлялось на экране, оно должно быть нарисовано с помощью love.graphics.draw.

Video:play()

Video:rewind

Перематывает видео в начало.

Video:rewind()

Video:seek

Устанавливает текущую позицию воспроизведения видео.

Video:seek( offset )

offsetnumberВремя в секундах с момента начала видео.

Video:setFilter

Устанавливает фильтры масштабирования, используемые при рисовании видео.

Video:setFilter( min, mag, anisotropy )

minFilterModeРежим фильтра, используемый при масштабировании видео вниз.
magFilterModeРежим фильтра, используемый при масштабировании видео.
anisotropy (1)numberМаксимальное количество анизотропной фильтрации.

Video:setSource

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

Video:setSource( source )

source (nil)SourceИсточник звука, используемый для воспроизведения звука, или nil для отключения синхронизации звука.

Video:tell

Возвращает текущую позицию воспроизведения видео.

Video:tell( seconds )

secondsnumberВремя в секундах с момента начала видео.

love.image

Types

Functions

Enums

love.image.isCompressed

Определяет, может ли файл быть загружен как CompressedData.

compressed = love.image.isCompressed( filename )

compressedbooleanМожно ли загрузить файл в формате CompressedImageData или нет.
filenamestringИмя файла потенциально сжатого изображения.

compressed = love.image.isCompressed( fileData )

compressedbooleanМожет ли FileData быть загружен как CompressedData или нет.
fileDataFileDataFileData, который может содержать сжатое изображение.

love.image.newCompressedData

Создайте новый объект CompressedImageData из файла сжатого изображения. LÖVE поддерживает несколько сжатых форматов текстур, перечисленных на странице CompressedImageFormat.

compressedImageData = love.image.newCompressedData( file )

compressedImageDataCompressedImageDataНовый объект CompressedImageData.
filestring / File / FileDataПуть к файлу / File / FileData файла сжатого изображения.

love.image.newImageData

Создает новый объект ImageData.

imageData = love.image.newImageData( width, height, data )

imageDataImageDataНовый пустой объект ImageData. Значения цветов каждого пикселя (включая альфа-значения!) Будут установлены на ноль.
widthnumberШирина изображения.
heightnumberВысота изображения.
data (none)stringДанные для загрузки в ImageData (байты RGBA, слева направо и сверху вниз).

imageData = love.image.newImageData( file )

imageDataImageDataНовый объект ImageData.
filestring / File / FileDataПуть к файлу / File / FileData файла изображения.

CompressedImageFormat

DXT1

Формат DXT1. RGB с 4 битами на пиксель (по сравнению с 32 битами для ImageData и обычных изображений). Подходит для полностью непрозрачных изображений. Подходит для полностью непрозрачных изображений на настольных системах.

DXT3

Формат DXT3. RGBA с 8 бит на пиксель. Плавные изменения непрозрачности не очень хорошо сочетаются с этим форматом.

DXT5

Формат DXT5. RGBA с 8 бит на пиксель. Рекомендуется для изображений с различной непрозрачностью на настольных системах.

BC4

Формат BC4 (также известный как 3Dc + или ATI1.) Сохраняет только красный канал с 4 битами на пиксель.

BC4s

Подписанный вариант формата BC4. То же, что и выше, но значения пикселей в текстуре находятся в диапазоне {-1, 1} вместо {0, 1} в шейдерах.

BC5

Формат BC5 (также известный как 3Dc или ATI2.) Сохраняет красный и зеленый каналы со скоростью 8 бит на пиксель.

BC5s

Подписанный вариант формата BC5.

BC6h

Формат BC6H. Сохраняет данные RGB с половинной точностью с плавающей запятой в диапазоне от {0, 65504} до 8 бит на пиксель. Подходит для HDR-изображений на настольных системах.

BC6hs

Подписанный вариант формата BC6H. Сохраняет данные RGB в диапазоне от {-65504, +65504}.

BC7

Формат BC7 (также известный как BPTC.) Сохраняет данные RGB или RGBA с 8 бит на пиксель.

ETC1

Формат ETC1. RGB с 4 битами на пиксель. Подходит для полностью непрозрачных изображений на старых устройствах Android.

ETC2rgb

Вариант RGB формата ETC2. RGB с 4 битами на пиксель. Подходит для полностью непрозрачных изображений на новых мобильных устройствах.

ETC2rgba

Вариант RGBA формата ETC2. RGBA с 8 бит на пиксель. Рекомендуется для изображений с различной непрозрачностью на новых мобильных устройствах.

ETC2rgba1

Вариант RGBA формата ETC2, где пиксели либо полностью прозрачны, либо полностью непрозрачны. RGBA с 4 битами на пиксель.

EACr

Одноканальный вариант формата EAC. Сохраняет только красный канал, по 4 бита на пиксель.

EACrs

Подписанный одноканальный вариант формата EAC. То же, что и выше, но значения пикселей в текстуре находятся в диапазоне {-1, 1} вместо {0, 1} в шейдерах.

EACrg

Двухканальный вариант формата EAC. Сохраняет красный и зеленый каналы со скоростью 8 бит на пиксель.

EACrgs

Подписанный двухканальный вариант формата EAC.

PVR1rgb2

2-битный вариант RGB формата PVRTC1. Хранит данные RGB со скоростью 2 бит на пиксель. Текстуры, сжатые форматами PVRTC1, должны быть квадратными и иметь два размера.

PVR1rgb4

4-битный вариант RGB формата PVRTC1. Хранит данные RGB с 4 битами на пиксель.

PVR1rgba2

2-битный RGBA-вариант формата PVRTC1.

PVR1rgba4

4-битный RGBA-вариант формата PVRTC1.

ASTC4x4

4x4 пикселей на блок вариант формата ASTC. RGBA с 8 бит на пиксель.

ASTC5x4

5x4 пикселей на блок вариант формата ASTC. RGBA с 6.4 бит на пиксель.

ASTC5x5

5x5 пикселей на блок вариант формата ASTC. RGBA с 5.12 бит на пиксель.

ASTC6x5

6x5 пикселей на блок вариант формата ASTC. RGBA с 4,27 бит на пиксель.

ASTC6x6

6x6 пикселей на блок вариант формата ASTC. RGBA данных с 3,56 бит на пиксель.

ASTC8x5

8x5 пикселей на блок вариант формата ASTC. RGBA с 3,2 бит на пиксель.

ASTC8x6

8x6 пикселей на блок вариант формата ASTC. RGBA - 2,67 бит на пиксель.

ASTC8x8

8x8 пикселей на блок вариант формата ASTC. RGBA с 2 битами на пиксель.

ASTC10x5

10x5 пикселей на блок вариант формата ASTC. RGBA с 2,56 бит на пиксель.

ASTC10x6

10x6 пикселей на блок вариант формата ASTC. RGBA с 2,13 бит на пиксель.

ASTC10x8

10x8 пикселей на блок вариант формата ASTC. RGBA с 1,6 бит на пиксель.

ASTC10x10

10x10 пикселей на блок вариант формата ASTC. RGBA с 1,28 бит на пиксель.

ASTC12x10

12x10 пикселей на блок вариант формата ASTC. RGBA с 1.07 бит на пиксель.

ASTC12x12

12x12 пикселей на блок вариант формата ASTC. RGBA - 0,89 бит на пиксель.

ImageFormat

tga

Targa формат.

png

Формат изображения PNG.

CompressedImageData

Представляет данные сжатого изображения, предназначенные для сжатия в ОЗУ.

CompressedImageData включает стандартные сжатые форматы текстур, такие как DXT1, DXT5 и BC5 / 3Dc.

Вы не можете нарисовать CompressedImageData непосредственно на экране. См. Изображение для этого.

Constructors

Functions

Supertypes

CompressedImageData:getDimensions

Возвращает ширину и высоту CompressedImageData.

width, height = CompressedImageData:getDimensions()

widthnumberШирина CompressedImageData.
heightnumberВысота CompressedImageData.

width, height = CompressedImageData:getDimensions( level )

widthnumberШирина CompressedImageData.
heightnumberВысота CompressedImageData.
levelnumberУровень mipmap. Должен находиться в диапазоне {1, CompressedImageData: getMipmapCount ()}.

CompressedImageData:getFormat

Получает формат CompressedImageData.

format = CompressedImageData:getFormat()

formatCompressedImageFormatФормат CompressedImageData.

CompressedImageData:getHeight

Получает высоту CompressedImageData.

height = CompressedImageData:getHeight()

heightnumberВысота CompressedImageData.

height = CompressedImageData:getHeight( level )

heightnumberВысота CompressedImageData.
levelnumberУровень mipmap. Должен находиться в диапазоне {1, CompressedImageData: getMipmapCount ()}.

CompressedImageData:getMipmapCount

Получает количество уровней mipmap в CompressedImageData. Базовый уровень mipmap (исходное изображение) включен в счет.

mipmaps = CompressedImageData:getMipmapCount()

mipmapsnumberКоличество уровней mipmap, хранящихся в CompressedImageData.

CompressedImageData:getWidth

Получает ширину CompressedImageData.

width = CompressedImageData:getWidth()

widthnumberШирина CompressedImageData.

width = CompressedImageData:getWidth( level )

widthnumberШирина CompressedImageData.
levelnumberУровень mipmap. Должен находиться в диапазоне {1, CompressedImageData: getMipmapCount ()}.

ImageData

Декодированные данные изображения.

Вы не можете использовать ImageData для рисования на экране. Смотрите Image для этого.

Constructors

Functions

Supertypes

ImageData:encode

Кодирует ImageData и, возможно, записывает его в каталог сохранения.

filedata = ImageData:encode( format, filename )

filedataFileDataЗакодированное изображение как новый объект FileData.
formatImageFormatФормат для кодирования изображения как.
filename (nil)stringИмя файла для записи файла. Если nil, файл не будет записан, но FileData все равно будет возвращен.

ImageData:getDimensions

Получает ширину и высоту ImageData в пикселях.

width, height = ImageData:getDimensions()

widthnumberШирина изображения в пикселях.
heightnumberВысота изображения в пикселях.

ImageData:getHeight

Получает высоту ImageData в пикселях.

height = ImageData:getHeight()

heightnumberВысота изображения в пикселях.

ImageData:getPixel

Получает цвет пикселя в определенной позиции на изображении.

Действительные значения x и y начинаются с 0 и переходят к ширине и высоте изображения минус 1. Нецелые значения перекрываются.

r, g, b, a = ImageData:getPixel( x, y )

rnumberКрасный компонент (0-255).
gnumberЗеленый компонент (0-255).
bnumberСиний компонент (0-255).
anumberАльфа-компонент (0-255).
xnumberПоложение пикселя по оси x.
ynumberПоложение пикселя по оси y.

ImageData:getWidth

Получает ширину ImageData в пикселях.

width = ImageData:getWidth()

widthnumberШирина изображения в пикселях.

ImageData:mapPixel

Преобразуйте изображение, применив функцию к каждому пикселю.

Эта функция является функцией более высокого порядка. Он принимает другую функцию в качестве параметра и называет ее один раз для каждого пикселя в ImageData.

Параметр функции вызывается с шестью параметрами для каждого пикселя по очереди. Параметры - это числа, которые представляют координаты x и y пикселя и его красные, зеленые, синие и альфа-значения. Параметр функции может возвращать до четырех значений числа, которые становятся новыми r, g, b и значениями пикселя. Если функция возвращает меньше значений, остальные компоненты устанавливаются в 0.

ImageData:mapPixel( pixelFunction )

pixelFunctionfunctionПараметр функции применяется к каждому пикселю.

ImageData:paste

Вставьте в ImageData из другого источника ImageData.

ImageData:paste( source, dx, dy, sx, sy, sw, sh )

sourceImageDataSource ImageData, из которого следует копировать.
dxnumberНазначение верхнего левого положения по оси x.
dynumberНазначение верхнего левого положения по оси y.
sxnumberИсходное левое верхнее положение по оси x.
synumberВерхнее левое положение источника по оси Y.
swnumberШирина источника.
shnumberВысота источника.

ImageData:setPixel

Устанавливает цвет пикселя в определенной позиции на изображении.

Действительные значения x и y начинаются с 0 и приближаются к ширине и высоте изображения минус 1.

ImageData:setPixel( x, y, r, g, b, a )

xnumberПоложение пикселя по оси x.
ynumberПоложение пикселя по оси y.
rnumberКрасный компонент (0-255).
gnumberЗеленый компонент (0-255).
bnumberСиний компонент (0-255).
anumberАльфа-компонент (0-255).

love.joystick

Types

Functions

Enums

love.joystick.getJoystickCount

Возвращает количество подключенных джойстиков.

joystickcount = love.joystick.getJoystickCount()

joystickcountnumberКоличество подключенных джойстиков.

love.joystick.getJoysticks

Получает список подключенных джойстиков.

joysticks = love.joystick.getJoysticks()

joystickstableСписок подключенных в настоящее время джойстиков.

love.joystick.loadGamepadMappings

Загружает строку или файл сопоставления геймпада, созданный с помощью love.joystick.saveGamepadMappings.

love.joystick.loadGamepadMappings( filename )

filenamestringИмя файла для загрузки строки сопоставлений.

love.joystick.loadGamepadMappings( mappings )

mappingsstringСтрока отображений для загрузки.

love.joystick.saveGamepadMappings

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

mappings = love.joystick.saveGamepadMappings( filename )

mappingsstringСтрока отображений, которая была записана в файл.
filename (no file)stringИмя файла для сохранения строки сопоставлений.

love.joystick.setGamepadMapping

Привязывает виртуальный геймпад к кнопке, оси или шляпе для всех джойстиков определенного типа. Например, если эта функция используется с GUID, возвращаемым контроллером Dualshock 3 в OS X, привязка будет влиять на Джойстик: getGamepadAxis и Джойстик: isGamepadDown для всех контроллеров Dualshock 3, используемых с игрой при запуске в OS X.

LÖVE включает встроенные привязки геймпада для многих обычных контроллеров. Эта функция позволяет вам изменить привязки или добавить новые для типов Joysticks, которые по умолчанию не распознаются как игровые приставки.

Кнопки и оси виртуального геймпада сконструированы вокруг макета контроллера Xbox 360.

success = love.joystick.setGamepadMapping( guid, button, inputtype, inputindex, hatdirection )

successbooleanБыла ли успешная привязка кнопки виртуального геймпада.
guidstringИдентификатор GUID, зависящий от ОС, для типа джойстика привязка.
buttonGamepadButtonКнопка виртуального геймпада для привязки.
inputtypeJoystickInputTypeТип ввода для привязки кнопки виртуального геймпада.
inputindexnumberИндекс оси, кнопки или шляпы для привязки кнопки виртуального геймпада.
hatdirectionJoystickHatНаправление шляпы, если кнопка виртуального геймпада будет привязана к шляпе. в противном случае.

success = love.joystick.setGamepadMapping( guid, axis, inputtype, inputindex, hatdirection )

successbooleanБыла ли успешная привязка кнопки виртуального геймпада.
guidstringИдентификатор GUID, зависящий от ОС, для типа джойстика привязка.
axisGamepadAxisВиртуальная ось геймпада для привязки.
inputtypeJoystickInputTypeТип ввода для привязки оси виртуального геймпада.
inputindexnumberИндекс оси, кнопки или шапки для привязки оси виртуального геймпада.
hatdirectionJoystickHatНаправление шляпы, если ось виртуального геймпада будет привязана к шляпе. в противном случае.

GamepadAxis

leftx

Ось оси левого пальца.

lefty

У-ось левого пальца.

rightx

Х-ось правого пальца.

righty

У-ось правого пальца.

triggerleft

Левый аналоговый триггер.

triggerright

Правильный аналоговый триггер.

GamepadButton

a

Кнопка нижней грани (A).

b

Правая кнопка (B).

x

Левая кнопка (X).

y

Верхняя кнопка (Y).

back

Кнопка назад.

guide

Направляющая кнопка.

start

Кнопка Пуск.

leftstick

Кнопка левой кнопки мыши.

rightstick

Щелкните правой кнопкой мыши.

leftshoulder

Левый бампер.

rightshoulder

Правый бампер.

dpup

D-pad вверх.

dpdown

D-pad вниз.

dpleft

D-pad оставлен.

dpright

D-pad справа.

JoystickHat

c

Сосредоточенный

d

вниз

l

Оставил

ld

Left + Down

lu

Left + Up

r

Правильно

rd

Right + Down

ru

Right + Up

u

вверх

JoystickInputType

axis

Аналоговая ось.

button

Кнопка.

hat

8-звездочное значение шляпы.

Joystick

Представляет собой физический джойстик.

Constructors

Functions

Supertypes

Joystick:getAxes

Возвращает направление каждой оси.

axisDir1, axisDir2, axisDirN = Joystick:getAxes()

axisDir1numberНаправление оси1.
axisDir2numberНаправление оси2.
axisDirNnumberНаправление оси N.

Joystick:getAxis

Возвращает направление оси.

direction = Joystick:getAxis( axis )

directionnumberТекущее значение оси.
axisnumberИндекс проверяемой оси.

Joystick:getAxisCount

Возвращает количество осей на джойстике.

axes = Joystick:getAxisCount()

axesnumberКоличество доступных осей.

Joystick:getButtonCount

Возвращает количество кнопок на джойстике.

buttons = Joystick:getButtonCount()

buttonsnumberКоличество доступных кнопок.

Joystick:getGUID

Получает стабильный GUID, уникальный для типа физического джойстика, который не изменяется со временем. Например, все контроллеры Sony Dualshock 3 в OS X имеют одинаковый идентификатор GUID. Значение зависит от платформы.

guid = Joystick:getGUID()

guidstringУникальный идентификатор, зависящий от ОС типа Joystick.

Joystick:getGamepadAxis

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

direction = Joystick:getGamepadAxis( axis )

directionnumberТекущее значение оси.
axisGamepadAxisПроверяемая виртуальная ось.

Joystick:getGamepadMapping

Возвращает кнопку, ось или шляпу, к которой привязан вход виртуального геймпада.

inputtype, inputindex, hatdirection = Joystick:getGamepadMapping( axis )

inputtypeJoystickInputTypeТип ввода виртуальной оси геймпада связан.
inputindexnumberИндекс кнопки, оси или шляпы джойстика, к которой привязана ось виртуального геймпада.
hatdirectionJoystickHatНаправление шляпы, если ось виртуального геймпада привязана к шляпе. в противном случае.
axisGamepadAxisВиртуальная ось геймпада для получения привязки.

inputtype, inputindex, hatdirection = Joystick:getGamepadMapping( button )

inputtypeJoystickInputTypeТип ввода кнопки виртуального геймпада связан.
inputindexnumberИндекс кнопки, оси или шляпы джойстика, к которой привязана кнопка виртуального геймпада.
hatdirectionJoystickHatНаправление шляпы, если кнопка виртуального геймпада привязана к шляпе. в противном случае.
buttonGamepadAxisКнопка виртуального геймпада для получения привязки.

Joystick:getHat

Получает направление шляпы Джойстика.

direction = Joystick:getHat( hat )

directionJoystickHatНаправление шляпы нажимается.
hatnumberИндекс проверяемой шляпы.

Joystick:getHatCount

Получает количество шляп на джойстике.

hats = Joystick:getHatCount()

hatsnumberСколько шляп имеет джойстик.

Joystick:getID

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

id, instanceid = Joystick:getID()

idnumberУникальный идентификатор джойстика. Остается то же самое, пока игра запущена.
instanceidnumberУникальный идентификатор экземпляра. Изменяется при каждом повторном подключении джойстика. nil, если джойстик не подключен.

Joystick:getName

Получает имя джойстика.

name = Joystick:getName()

namestringИмя джойстика.

Joystick:getVibration

Получает сильные вибрации двигателя на джойстике с поддержкой грохота.

left, right = Joystick:getVibration()

leftnumberСила тока левого вибрационного двигателя на джойстике.
rightnumberСила тока правого вибрационного двигателя на джойстике.

Joystick:isConnected

Получает, подключен ли джойстик.

connected = Joystick:isConnected()

connectedbooleanИстина, если в настоящий момент подключен джойстик, в противном случае - false.

Joystick:isDown

Проверяет, нажата ли кнопка джойстика.

LÖVE 0.9.0 имел ошибку, которая требовала, чтобы индексы кнопок передавались в Джойстик: isDown будет 0-based вместо 1-based, например, кнопка 1 будет равна 0 для этой функции. Это было зафиксировано в 0,9.1.

anyDown = Joystick:isDown( ... )

anyDownbooleanИстина, если какая-либо поставляемая кнопка недоступна, false, если нет.
...numberИндекс кнопки для проверки.

Joystick:isGamepad

Получает, распознается ли джойстик как геймпад. Если это так, кнопки и оси джойстика могут использоваться стандартизированным образом в разных операционных системах и моделях джойстика через джойстик: getGamepadAxis и связанные с ним функции.

LÖVE автоматически распознает большинство популярных контроллеров с аналогичной компоновкой для контроллера Xbox 360 в качестве игровых приставок, но вы можете добавить больше с помощью love.joystick.setGamepadMapping.

isgamepad = Joystick:isGamepad()

isgamepadbooleanИстина, если джойстик распознается как геймпад, в противном случае false.

Joystick:isGamepadDown

Проверяет, нажата ли кнопка виртуального геймпада на джойстике. Если джойстик не распознается как геймпад или не подключен, то эта функция всегда будет возвращать значение false.

anyDown = Joystick:isGamepadDown( ... )

anyDownbooleanИстина, если какая-либо поставляемая кнопка недоступна, false, если нет.
...GamepadButtonКнопка геймпада для проверки.

Joystick:isVibrationSupported

Получает, поддерживает ли джойстик вибрацию.

supported = Joystick:isVibrationSupported()

supportedbooleanИстинно, если на этом джойстике поддерживается вибрация обратной связи / силы, ложная, если нет.

Joystick:setVibration

Устанавливает скорости вибрационного двигателя на джойстике с поддержкой грохота.

success = Joystick:setVibration( left, right, duration )

successbooleanИстинно, если вибрация была успешно применена, ложь, если нет.
leftnumberСила левого вибрационного двигателя на джойстике. Должно быть в диапазоне {0, 1}.
rightnumberСила правого вибрационного двигателя на джойстике. Должно быть в диапазоне {0, 1}.
duration (-1)numberПродолжительность вибрации в секундах. Отрицательное значение означает бесконечную продолжительность.

love.keyboard

Functions

Enums

love.keyboard.getKeyFromScancode

Получает ключ, соответствующий данному аппаратным scancode.

В отличие от ключевых констант, Scancodes не являются раскладками клавиатуры. Например, scancode «w» будет сгенерирован, если нажата клавиша в том же месте, что и клавиша «w» на американской клавиатуре, независимо от того, что обозначен ключ или какие параметры операционной системы пользователя.

Scancodes полезны для создания элементов управления по умолчанию, которые имеют одинаковые физические местоположения во всех системах.

key = love.keyboard.getKeyFromScancode( scancode )

keyKeyConstantКлюч, соответствующий данному scancode, или «неизвестный», если scancode не сопоставляется с KeyConstant в текущей системе.
scancodeScancodeСканкод, чтобы получить ключ от.

love.keyboard.getScancodeFromKey

Получает аппаратный scancode, соответствующий данному ключу.

В отличие от ключевых констант, Scancodes не являются раскладками клавиатуры. Например, scancode «w» будет сгенерирован, если нажата клавиша в том же месте, что и клавиша «w» на американской клавиатуре, независимо от того, что обозначен ключ или какие параметры операционной системы пользователя.

Scancodes полезны для создания элементов управления по умолчанию, которые имеют одинаковые физические местоположения во всех системах.

scancode = love.keyboard.getScancodeFromKey( key )

scancodeScancodeСканкод, соответствующий данному ключу, или «неизвестный», если данный ключ не имеет физического представления в текущей системе.
keyKeyConstantКлюч для получения scancode.

love.keyboard.hasKeyRepeat

Возвращает, включено ли повторное нажатие клавиши.

enabled = love.keyboard.hasKeyRepeat()

enabledbooleanВключено ли повторное нажатие клавиши.

love.keyboard.hasTextInput

Получает, разрешены ли события ввода текста.

enabled = love.keyboard.hasTextInput()

enabledbooleanВключены ли события ввода текста.

love.keyboard.isDown

Проверяет, является ли определенная клавиша нажатой.

anyDown = love.keyboard.isDown( key, ... )

anyDownbooleanИстина, если какой-либо поставляемый ключ не работает, false, если нет.
keyKeyConstantКлюч для проверки.
...KeyConstantДополнительные ключи для проверки.

love.keyboard.isScancodeDown

Проверяет, нажаты ли указанные Scancodes. Не путать с любовью.

В отличие от обычных KeyConstants, Scancodes не являются раскладками клавиатуры. Сканкод «w» используется, если нажата клавиша в том же месте, что и клавиша «w» на американской клавиатуре, независимо от того, что обозначена клавишей или каковы настройки операционной системы пользователя.

down = love.keyboard.isScancodeDown( scancode, ... )

downbooleanИстинно, если какой-либо поставляемый Scancode выключен, false, если нет.
scancodeScancodeScancode для проверки.
...ScancodeДополнительные Scancodes для проверки.

love.keyboard.setKeyRepeat

Включает повторение клавиш и устанавливает интервал с задержкой.

love.keyboard.setKeyRepeat( enable )

enablebooleanДолжны ли быть активированы повторные события нажатия клавиш при удерживании клавиши.

love.keyboard.setTextInput

Включает или отключает события ввода текста. Он включен по умолчанию для Windows, Mac и Linux и по умолчанию отключен для iOS и Android.

love.keyboard.setTextInput( enable )

enablebooleanДолжны ли быть включены события ввода текста.

love.keyboard.setTextInput( enable, x, y, w, h )

enablebooleanДолжны ли быть включены события ввода текста.
xnumberЭкранная клавиатура x.
ynumberЭкранная клавиатура y.
wnumberШирина экранной клавиатуры.
hnumberВысота экранной клавиатуры.

KeyConstant

a

Ключ A

b

Кнопка B

c

Клавиша C

d

Ключ D

e

Ключ E

f

Клавиша F

g

Ключ G

h

Ключ H

i

Ключ I

j

J-ключ

k

Ключ K

l

Ключ L

m

Ключ M

n

Ключ N

o

Ключ O

p

Ключ P

q

Q-ключ

r

Ключ R

s

Кнопка S

t

Ключ Т

u

Клавиша U

v

Клавиша V

w

Ключ W

x

Ключ X

y

Ключ Y

z

Ключ Z

0

Нулевой ключ

1

Один ключ

2

Два ключа

3

Три ключевых

4

Четыре ключа

5

Пять ключей

6

Шесть ключевых

7

Семь ключевых

8

Восьмой ключ

9

Девять ключей

space

Космический ключ

!

Восклицательный знак

"

Ключ двойной цитаты

#

Хэш-ключ

$

Долларовый ключ

&

Клавиша амперсанда

'

Ключ с одной цитатой

(

Левая скобка

)

Ключ правой скобки

*

Ключ Asterisk

+

Плюс ключ

,

Запятая клавиша

-

Дефис-минус-ключ

.

Кнопка полной остановки

/

Слэш-ключ

:

Колонный ключ

;

Точка с запятой

<

Меньше, чем ключ

=

Равный ключ

>

Больше, чем ключ

?

Ключ вопроса

@

При знаке

[

Левая квадратная скобка

\

Ключ с обратной косой чертой

]

Прямоугольная скобка

^

Ключ Caret

_

Подчеркивающий ключ

`

Мощный акцентный ключ

kp0

Нулевая клавиша numpad

kp1

Клавиша numpad one key

kp2

Клавиша numpad two

kp3

Цифровая клавиша три клавиши

kp4

Клавиша numpad four

kp5

Клавиша numpad пять

kp6

Клавиша numpad six

kp7

Клавиша numpad семь

kp8

Клавиша с восьмью клавишами

kp9

Клавиша numpad девять

kp.

Клавиша с десятичной запятой numpad

kp/

Клавиша деления numpad

kp*

Клавиша умножения numpad

kp-

Клавиша выделения numpad

kp+

Клавиша добавления numpad

kpenter

Клавиша ввода numpad

kp=

Клавиша numpad равна ключу

up

Клавиша курсора вверх

down

Клавиша курсора вниз

right

Правая клавиша курсора

left

Левая клавиша курсора

home

Домашний ключ

end

Конец ключа

pageup

Кнопка вверх страницы

pagedown

Кнопка вниз

insert

Вставить ключ

backspace

Ключ возврата

tab

Клавиша Tab

clear

Очистить ключ

return

Ключ возврата

delete

Удалить ключ

f1

1-я функциональная клавиша

f2

Вторая функциональная клавиша

f3

3-я функциональная клавиша

f4

4-я функциональная клавиша

f5

Пятая функциональная клавиша

f6

6-я функциональная клавиша

f7

7-я функциональная клавиша

f8

8-я функциональная клавиша

f9

9-я функциональная клавиша

f10

10-я функциональная клавиша

f11

11-я функциональная клавиша

f12

12-я функциональная клавиша

f13

13-я функциональная клавиша

f14

14-я функциональная клавиша

f15

15-я функциональная клавиша

numlock

Клавиша с цифровым замком

capslock

Ключ блокировки

scrollock

Кнопка блокировки прокрутки

rshift

Правая клавиша переключения

lshift

Левая клавиша переключения

rctrl

Правая клавиша управления

lctrl

Левая клавиша управления

ralt

Правая клавиша

lalt

Левая клавиша

rmeta

Правильный мета ключ

lmeta

Левый мета ключ

lsuper

Левый супер ключ

rsuper

Правый супер ключ

mode

Клавиша режима

compose

Создать ключ

pause

Клавиша паузы

escape

Кнопка Escape

help

Справка

print

Кнопка печати

sysreq

Ключ системного запроса

break

Переключатель

menu

Кнопка меню

power

Кнопка питания

euro

Евро (€ euro;) ключ

undo

Клавиша отмены

www

Ключ WWW

mail

Почтовый ключ

calculator

Калькулятор

appsearch

Ключ поиска приложения

apphome

Главная страница приложения

appback

Задняя клавиша приложения

appforward

Кнопка приложения вперед

apprefresh

Ключ обновления приложения

appbookmarks

Ключ закладки приложения

Scancode

a

Ключ «А» на американском макете.

b

Клавиша «В» на американском макете.

c

Клавиша «C» на американском макете.

d

Клавиша «D» на американском макете.

e

Клавиша «E» на американском макете.

f

Клавиша «F» на американском макете.

g

Клавиша «G» на американском макете.

h

Клавиша «H» на американском макете.

i

«Я» на американском макете.

j

Клавиша «J» на американском макете.

k

Ключ «K» на американском макете.

l

Клавиша «L» на американском макете.

m

Клавиша «М» на американском макете.

n

Клавиша «N» на американском макете.

o

Клавиша «O» на американском макете.

p

Клавиша «P» на американском макете.

q

Клавиша «Q» на американском макете.

r

Клавиша «R» на американском макете.

s

Клавиша «S» на американском макете.

t

Ключ «Т» на американском макете.

u

Клавиша «U» на американском макете.

v

Клавиша «V» на американском макете.

w

Клавиша «W» на американском макете.

x

Клавиша «X» на американском макете.

y

Кнопка «Y» на американском макете.

z

Клавиша «Z» на американском макете.

1

Клавиша «1» на американском макете.

2

Клавиша «2» на американском макете.

3

Клавиша «3» на американском макете.

4

Ключ «4» на американском макете.

5

Клавиша «5» на американском макете.

6

Клавиша «6» на американском макете.

7

Ключ «7» на американском макете.

8

Клавиша «8» на американском макете.

9

Клавиша «9» на американском макете.

0

Клавиша «0» на американском макете.

return

Кнопка «вернуться» / «ввести» на американском макете.

escape

Кнопка «escape» на американском макете.

backspace

Клавиша «backspace» на американском макете.

tab

Кнопка «tab» на американском макете.

space

Пробел на американском макете.

-

Минус-ключ на американском макете.

=

Эквалайзер на американском макете.

[

Левый ключ на американском макете.

]

Ключ правой клавиши на американском макете.

\

Ключ обратной косой черты на американском макете.

nonus#

Скрипт не-U.S.

;

Ключ с запятой на американском макете.

'

Апостроф-ключ на американском макете.

`

Ключ с обратной отметкой / могилой на американском макете.

,

Клавиша с запятой на американском макете.

.

Клавиша периода на американском макете.

/

Клавиша «вперед-вниз» на американском макете.

capslock

Ключ-заглушка на американском макете.

f1

Клавиша F1 на американском макете.

f2

Ключ F2 на американском макете.

f3

Кнопка F3 на американском макете.

f4

Кнопка F4 на американском макете.

f5

Клавиша F5 на американском макете.

f6

Ключ F6 на американском макете.

f7

Кнопка F7 на американском макете.

f8

Кнопка F8 на американском макете.

f9

Клавиша F9 на американском макете.

f10

Клавиша F10 на американском макете.

f11

Ключ F11 на американском макете.

f12

Клавиша F12 на американском макете.

f13

Ключ F13 на американском макете.

f14

Клавиша F14 на американском макете.

f15

Клавиша F15 на американском макете.

f16

Клавиша F16 на американском макете.

f17

Клавиша F17 на американском макете.

f18

Ключ F18 на американском макете.

f19

Клавиша F19 на американском макете.

f20

Клавиша F20 на американском макете.

f21

Ключ F21 на американском макете.

f22

Кнопка F22 на американском макете.

f23

Клавиша F23 на американском макете.

f24

Кнопка F24 на американском макете.

lctrl

Левая клавиша управления на американском макете.

lshift

Левая клавиша сдвига на американском макете.

lalt

Левая клавиша alt / option на американском макете.

lgui

Левый GUI (команда / windows / супер) на американском макете.

rctrl

Правильный ключ управления на американском макете.

rshift

Правая клавиша сдвига на американском макете.

ralt

Правильный ключ alt / option на американском макете.

rgui

Правильный графический интерфейс (команда / windows / super) на американском макете.

printscreen

Ключ для печати на американском макете.

scrolllock

Кнопка прокрутки блокировки на американском макете.

pause

Клавиша паузы на американском макете.

insert

Вставьте ключ в американский макет.

home

Домашний ключ на американском макете.

numlock

Клавиша numlock / clear на американском макете.

pageup

Клавиша-страница на американском макете.

delete

Клавиша forward-delete на американском макете.

end

Конечный ключ на американском макете.

pagedown

Клавиша-страница вниз на американском макете.

right

Клавиша со стрелкой вправо на американском макете.

left

Клавиша со стрелкой влево на американском макете.

down

Клавиша со стрелкой вниз на американском макете.

up

Клавиша со стрелкой вверх на американском макете.

nonusbackslash

Сканкод с обратной косой чертой.

application

Ключ приложения на американском макете. Контекстное меню Windows, составьте ключ.

execute

Кнопка «выполнить» на американском макете.

help

Ключ «помощи» на американском макете.

menu

Клавиша «меню» на американском макете.

select

Кнопка «выбрать» на американском макете.

stop

Клавиша «Стоп» на американском макете.

again

«Еще раз» на американском макете.

undo

Клавиша «отменить» на американском макете.

cut

«Вырезать» ключ на американском макете.

copy

Ключ «копировать» на американском макете.

paste

Клавиша «вставить» на американском макете.

find

Ключ «найти» на американском макете.

kp/

Клавиша с клавишей «вперед-вниз» на американском макете.

kp*

Клавиша «*» на американском макете.

kp-

Клавиша минус-клавиши на американском макете.

kp+

Клавиатура плюс клавиша на американском макете.

kp=

Клавиатура равна ключу на американском макете.

kpenter

Клавиатура вводит ключ в американский макет.

kp1

Клавиатура «1» на американском макете.

kp2

Клавиша «2» на американском макете.

kp3

Клавиатура «3» на американском макете.

kp4

Клавиатура «4» на американском макете.

kp5

Клавиша «5» на американском макете.

kp6

Клавиша «6» на американском макете.

kp7

Клавиша «7» на американском макете.

kp8

Клавиатура «8» на американском макете.

kp9

Клавиша «9» на американском макете.

kp0

Клавиша «0» на американском макете.

kp.

Клавиша ключа клавиатуры на американском макете.

international1

Первый международный ключ на американском макете. Используется на азиатских клавиатурах.

international2

Второй международный ключ на американском макете.

international3

3-й международный ключ на американском макете. Иен.

international4

Четвертый международный ключ на американском макете.

international5

Пятый международный ключ на американском макете.

international6

6-й международный ключ на американском макете.

international7

7-й международный ключ на американском макете.

international8

8-й международный ключ на американском макете.

international9

9-й международный ключ на американском макете.

lang1

Hangul / английский toggle scancode.

lang2

Конверсия Hanja.

lang3

Катаканский сканкод.

lang4

Хирагана - сканкод.

lang5

Zenkaku / Hankaku scancode.

mute

Клавиша отключения звука на американском макете.

volumeup

Клавиша увеличения громкости на американском макете.

volumedown

Клавиша уменьшения громкости на американском макете.

audionext

Звуковой следующий трек-ключ на американском макете.

audioprev

Аудио предыдущая дорожка на американском макете.

audiostop

Клавиша остановки звука на американском макете.

audioplay

Кнопка воспроизведения звука на американском макете.

audiomute

Кнопка отключения звука на американском макете.

mediaselect

Клавиша выбора мультимедиа на американском макете.

www

Клавиша «WWW» на американском макете.

mail

Клавиша «Почта» на американском макете.

calculator

Ключ калькулятора на американском макете.

computer

Ключ «компьютер» на американском макете.

acsearch

Клавиша поиска AC на американском макете.

achome

Клавиша AC Home на американском макете.

acback

Клавиша AC Back на американском макете.

acforward

Клавиша AC Forward на американском макете.

acstop

Клавиша AC Stop на американском макете.

acrefresh

Кнопка AC Refresh на американском макете.

acbookmarks

Клавиша AC Bookmarks на американском макете.

power

Системный сканер.

brightnessdown

Яркость вниз scancode.

brightnessup

Яркость сканера.

displayswitch

Сканкод дисплея.

kbdillumtoggle

Подсветка клавиатуры переключает scancode.

kbdillumdown

Клавиатура подсветки вниз scancode.

kbdillumup

Клавиатура подсвечивает scancode.

eject

Выброс scancode.

sleep

Системный сцинкод сна.

alterase

Клавиша alt-erase на американском макете.

sysreq

Ключ sysreq на американском макете.

cancel

Клавиша «отменить» на американском макете.

clear

«Ясный» ключ на американском макете.

prior

«Предыдущий» ключ на американском макете.

return2

Ключ «return2» на американском макете.

separator

Клавиша «разделитель» на американском макете.

out

Ключ «выход» на американском макете.

oper

Клавиша «oper» на американском макете.

clearagain

Ключ «clearagain» на американском макете.

crsel

Ключ «скребок» на американском макете.

exsel

Ключ «exsel» на американском макете.

kp00

Клавиша клавиатуры 00 на американском макете.

kp000

Клавиатура 000 на американском макете.

thsousandsseparator

Клавиша тысяч-разделителей на американском макете.

decimalseparator

Десятичный разделительный ключ на американском макете.

currencyunit

Ключ единицы валюты на американском макете.

currencysubunit

Клавиша подуровня валюты на американском макете.

app1

Скрипка «app1».

app2

Скрипт «app2».

unknown

Неизвестный ключ.

love.math

Types

Functions

Enums

love.math.compress

Сжимает строку или данные с использованием специального алгоритма сжатия.

compressedData = love.math.compress( rawstring, format, level )

compressedDataCompressedDataНовый объект Data, содержащий сжатую версию строки.
rawstringstringСырая (не сжатая) строка для сжатия.
format ("lz4")CompressedDataFormatФормат, используемый при сжатии строки.
level (-1)numberУровень сжатия для использования от 0 до 9. -1 указывает уровень по умолчанию. Значение этого аргумента зависит от используемого формата сжатия.

compressedData = love.math.compress( data, format, level )

compressedDataCompressedDataНовый объект Data, содержащий сжатую версию необработанных данных.
dataDataОбъект данных, содержащий необработанные (не сжатые) данные для сжатия.
format ("lz4")CompressedDataFormatФормат, используемый при сжатии данных.
level (-1)numberУровень сжатия для использования от 0 до 9. -1 указывает уровень по умолчанию. Значение этого аргумента зависит от используемого формата сжатия.

love.math.decompress

Декомпрессирует сжатые данные или ранее сжатую строку или объект данных.

rawstring = love.math.decompress( compressedData )

rawstringstringСтрока, содержащая необработанные распакованные данные.
compressedDataCompressedDataСжатые данные для распаковки.

rawstring = love.math.decompress( compressedString, format )

rawstringstringСтрока, содержащая необработанные распакованные данные.
compressedStringstringСтрока, содержащая данные, ранее сжатые с помощью love.math.compress.
formatCompressedDataFormatФормат, который использовался для сжатия данной строки.

rawstring = love.math.decompress( data, format )

rawstringstringСтрока, содержащая необработанные распакованные данные.
dataDataОбъект Data, содержащий данные, ранее сжатые с помощью love.math.compress.
formatCompressedDataFormatФормат, который использовался для сжатия данных.

love.math.gammaToLinear

Преобразует цвет из гамма-пространства (sRGB) в линейное пространство (RGB). Это полезно при выполнении гамма-коррекции, и вам нужно делать математику в линейном RGB в тех немногих случаях, когда LÖVE не обрабатывает конверсии автоматически.

lr, lg, lb = love.math.gammaToLinear( r, g, b )

lrnumberКрасный канал преобразованного цвета в линейном пространстве RGB.
lgnumberЗеленый канал преобразованного цвета в линейном пространстве RGB.
lbnumberСиний канал преобразованного цвета в линейном пространстве RGB.
rnumberКрасный канал цвета sRGB для преобразования.
gnumberЗеленый канал цвета sRGB для преобразования.
bnumberСиний канал цвета sRGB для преобразования.

lr, lg, lb = love.math.gammaToLinear( color )

lrnumberКрасный канал преобразованного цвета в линейном пространстве RGB.
lgnumberЗеленый канал преобразованного цвета в линейном пространстве RGB.
lbnumberСиний канал преобразованного цвета в линейном пространстве RGB.
colortableМассив с красными, зелеными и синими каналами цвета sRGB для преобразования.

lc = love.math.gammaToLinear( c )

lcnumberЗначение цветового канала в линейном пространстве RGB.
cnumberЗначение цветного канала в пространстве sRGB для преобразования.

love.math.getRandomSeed

Получает семя генератора случайных чисел.

Состояние разбито на два числа из-за использования Lua удвоений для всех чисел - двойники не могут точно представлять целочисленные значения выше 2 ^ 53.

low, high = love.math.getRandomSeed()

lownumberЦелочисленное число, представляющее младшие 32 бита значения бит-бит генератора случайных чисел.
highnumberЦелочисленное число, представляющее более высокие 32 бита значения бит-бит генератора случайных чисел.

love.math.getRandomState

Возвращает текущее состояние генератора случайных чисел. Это возвращает непрозрачную строку, зависящую от реализации, которая полезна только для последующего использования с RandomGenerator: setState.

Это отличается от RandomGenerator: getSeed в том, что getState получает текущее состояние RandomGenerator, тогда как getSeed получает ранее заданное начальное число.

Значение строки состояния не зависит от текущей операционной системы.

state = love.math.getRandomState()

statestringТекущее состояние объекта RandomGenerator, представленное в виде строки.

love.math.isConvex

Проверяет, является ли многоугольник выпуклым.

PolygonShapes в love.physics, некоторые формы Mesh и многоугольники, нарисованные с помощью love.graphics.polygon, должны быть простыми выпуклыми многоугольниками.

convex = love.math.isConvex( vertices )

convexbooleanЯвляется ли данный многоугольник выпуклым.
verticestableВершины многоугольника как таблицы в виде {x1, y1, x2, y2, x3, y3, ...}.

convex = love.math.isConvex( x1, y1, x2, y2, x3, y3, ... )

convexbooleanЯвляется ли данный многоугольник выпуклым.
x1numberПоложение первой вершины многоугольника на оси х.
y1numberПоложение первой вершины многоугольника на оси y.
x2numberПоложение второй вершины многоугольника на оси х.
y2numberПоложение второй вершины многоугольника на оси y.
x3numberПоложение третьей вершины многоугольника на оси х.
y3numberПоложение третьей вершины многоугольника по оси y.
...numberДополнительные вершины.

love.math.linearToGamma

Преобразует цвет из линейного пространства (RGB) в гамма-пространство (sRGB). Это полезно при сохранении линейных значений цвета RGB в изображении, поскольку линейное цветовое пространство RGB имеет меньшую точность, чем sRGB для темных цветов, что может привести к заметному цветовому диапазону при рисовании.

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

cr, cg, cb = love.math.linearToGamma( lr, lg, lb )

crnumberКрасный канал преобразованного цвета в пространстве гаммы sRGB.
cgnumberЗеленый канал преобразованного цвета в пространстве гаммы sRGB.
cbnumberСиний канал преобразованного цвета в пространстве гамма-памяти.
lrnumberКрасный канал линейного цвета RGB для преобразования.
lgnumberЗеленый канал линейного цвета RGB для преобразования.
lbnumberСиний канал линейного цвета RGB для преобразования.

cr, cg, cb = love.math.linearToGamma( color )

crnumberКрасный канал преобразованного цвета в пространстве гаммы sRGB.
cgnumberЗеленый канал преобразованного цвета в пространстве гаммы sRGB.
cbnumberСиний канал преобразованного цвета в пространстве гамма-памяти.
colortableМассив с красными, зелеными и синими каналами линейного цвета RGB для преобразования.

c = love.math.linearToGamma( lc )

cnumberЗначение цветового канала в гамме sRGB.
lcnumberЗначение цветного канала в линейном пространстве RGB для преобразования.

love.math.newBezierCurve

Создает новый обект BezierCurve.

Количество вершин в определенном многоугольнике определяют степень кривой, например три вершины определяют квадратичную (степень 2) кривую Безье, четыре вершины определяют кубическую (степень 3) кривую Безье, и т.д.

curve = love.math.newBezierCurve( vertices )

curveBezierCurveОбъект кривой Bézier.
verticestableВершины управляющего многоугольника в виде таблицы в виде {x1, y1, x2, y2, x3, y3, ...}.

curve = love.math.newBezierCurve( x1, y1, x2, y2, x3, y3, ... )

curveBezierCurveОбъект кривой Bézier.
x1numberПоложение первой вершины управляющего многоугольника на оси х.
y1numberПоложение первой вершины управляющего многоугольника на оси y.
x2numberПоложение второй вершины управляющего многоугольника на оси х.
y2numberПоложение второй вершины управляющего многоугольника по оси y.
x3numberПоложение третьей вершины управляющего многоугольника на оси х.
y3numberПоложение третьей вершины управляющего многоугольника на оси y.
...numberДополнительные вершины.

love.math.newRandomGenerator

Создает новый объект RandomGenerator (Русский), который является полностью независимым от других RandomGenerator объектов и случайных функций.

rng = love.math.newRandomGenerator()

rngRandomGeneratorНовый объект Генератора случайных чисел.

rng = love.math.newRandomGenerator( seed )

rngRandomGeneratorНовый объект Генератора случайных чисел.
seednumberНачальное число seed используемых для этого объекта.

rng = love.math.newRandomGenerator( low, high )

rngRandomGeneratorНовый объект Генератора случайных чисел.
lownumberНизкие 32 битные числа семян для использования этого объекта.
highnumberВысокие 32 битные числа семян для использования этого объекта.

love.math.noise

Генерирует симплексный шум в одном-четырёх измерениях.

Симплексный шум близок к шуму Перлина. Широко используется для процедурной генерации игрового контента. Существует множество интернет страниц, где детально обсуждаются симплексный шум и шум Перлина.

value = love.math.noise( x )

Формирует Simplex шум от 1 размерности.

valuenumberЗначение шума в диапазоне {0, 1}.
xnumberНомер, используемый для генерации значения шума.

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

Формирует Simplex шума от 2 -й измерений.

valuenumberЗначение шума в диапазоне {0, 1}.
xnumberПервое значение двумерного вектора, используемого для генерации значения шума.
ynumberВторое значение двумерного вектора, используемого для генерации значения шума.

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

Формирует Перлина шум (Simplex шум в версии 0.9.2 и старше) от 3 Габаритные размеры.

valuenumberЗначение шума в диапазоне {0, 1}.
xnumberПервое значение трехмерного вектора, используемого для генерации значения шума.
ynumberВторое значение 3-мерного вектора, используемого для генерации значения шума.
znumberТретье значение трехмерного вектора, используемого для генерации значения шума.

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

Формирует Перлина шум (Simplex шум в версии 0.9.2 и старше) от 4 Габаритные размеры.

valuenumberЗначение шума в диапазоне {0, 1}.
xnumberПервое значение 4-мерного вектора, используемого для генерации значения шума.
ynumberВторое значение 4-мерного вектора, используемого для генерации значения шума.
znumberТретье значение 4-мерного вектора, используемого для генерации значения шума.
wnumberЧетвертое значение 4-мерного вектора, используемого для генерации значения шума.

love.math.random

Производит псевдослучайное число независимо от платформы.

number = love.math.random()

Получить равномерно распределенных псевдослучайных вещественное число в пределах [0, 1].

numbernumberПсевдослучайное число.

number = love.math.random( max )

Получить равномерно распределенных псевдослучайных целое число в пределах [1, макс].

numbernumberПсевдослучайное целое число.
maxnumberМаксимально возможное значение, которое оно должно вернуть.

number = love.math.random( min, max )

Получить равномерно распределенных псевдослучайных целое число в пределах [мин], макс.

numbernumberПсевдослучайное целое число.
minnumberМинимальное возможное значение, которое оно должно вернуть.
maxnumberМаксимально возможное значение, которое оно должно вернуть.

love.math.randomNormal

Получите нормально распределенное псевдослучайное число.

number = love.math.randomNormal( stddev, mean )

numbernumberОбычно распределенное случайное число с дисперсией (stddev) ² и указанное среднее значение.
stddev (1)numberСтандартное отклонение распределения.
mean (0)numberСреднее распределение.

love.math.setRandomSeed

Устанавливает семя генератора случайных чисел с использованием указанного целого числа.

love.math.setRandomSeed( seed )

seednumberЦелочисленное число, с которым вы хотите засеять рандомизацию. Должно быть в пределах {1, 2 ^ 53}.

love.math.setRandomSeed( low, high )

lownumberНижние 32 бита значения состояния. Должно быть в пределах {0, 2 ^ 32 - 1}.
highnumberБолее высокие 32 бита значения состояния. Должно быть в пределах {0, 2 ^ 32 - 1}.

love.math.setRandomState

Возвращает текущее состояние генератора случайных чисел. Это возвращает непрозрачную строку, зависящую от реализации, которая полезна только для последующего использования с RandomGenerator: setState.

Это отличается от RandomGenerator: getSeed в том, что getState получает текущее состояние RandomGenerator, тогда как getSeed получает ранее заданное начальное число.

Значение строки состояния не зависит от текущей операционной системы.

love.math.setRandomState( state )

statestringТекущее состояние объекта RandomGenerator, представленное в виде строки.

love.math.triangulate

Триангулируем простой многоугольник.

triangles = love.math.triangulate( polygon )

trianglestableСписок треугольников состоит из многоугольника в виде {{x1, y1, x2, y2, x3, y3}, {x1, y1, x2, y2, x3, y3}, ...}.
polygontableПолигон для триангуляции. Не должен пересекаться.

triangles = love.math.triangulate( x1, y1, x2, y2, x3, y3, ... )

trianglestableСписок треугольников состоит из многоугольника в виде {{x1, y1, x2, y2, x3, y3}, {x1, y1, x2, y2, x3, y3}, ...}.
x1numberПоложение первой вершины многоугольника на оси х.
y1numberПоложение первой вершины многоугольника на оси y.
x2numberПоложение второй вершины многоугольника на оси х.
y2numberПоложение второй вершины многоугольника на оси y.
x3numberПоложение третьей вершины многоугольника на оси х.
y3numberПоложение третьей вершины многоугольника по оси y.
...numberДополнительные вершины.

CompressedDataFormat

lz4

Формат сжатия LZ4. Сжимает и распаковывает очень быстро, но коэффициент сжатия не самый лучший. LZ4-HC используется, когда указан уровень сжатия 9.

zlib

Формат zlib представляет собой сжатые данные DEFLATE с небольшим количеством данных заголовка. Слизируется относительно медленно и быстро разлагается, и имеет приличную степень сжатия.

gzip

Формат gzip представляет собой сжатые данные DEFLATE с чуть большим заголовком, чем zlib. Поскольку он использует DEFLATE, он имеет те же характеристики сжатия, что и формат zlib.

BezierCurve

Объект кривая Безье, который может определять количество и создавать кривые Безье произвольной степени.

Для получения более подробной информации о кривых Безье посетите эту отличную статью в Википедии.

Constructors

Functions

Supertypes

BezierCurve:evaluate

Оцените кривую Bézier при параметре t. Параметр должен быть между 0 и 1 (включительно).

Эта функция может использоваться для перемещения объектов по дорожкам или параметрам твинов. Однако он не должен использоваться для визуализации кривой, см. «Безье»: рендеринг для этой цели.

x, y = BezierCurve:evaluate( t )

xnumberх координаты кривой при параметре t.
ynumbery координаты кривой при параметре t.
tnumberГде оценить кривую.

BezierCurve:getControlPoint

Получает координаты контрольной точки i, Индексы начинаются с 1.

x, y = BezierCurve:getControlPoint( i )

xnumberПоложение контрольной точки вдоль оси x.
ynumberПоложение контрольной точки вдоль оси y.
inumberИндекс контрольной точки.

BezierCurve:getControlPointCount

Получает число контрольных точек на кривой Безье.

count = BezierCurve:getControlPointCount()

countnumberЧисло контрольных точек.

BezierCurve:getDegree

Получает степень кривой Безье. Степень равна числу контрольных точек - 1.

degree = BezierCurve:getDegree()

degreenumberСтепень кривой Безье.

BezierCurve:getDerivative

Получить производную кривую Безье.

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

derivative = BezierCurve:getDerivative()

derivativeBezierCurveПроизводная кривая.

BezierCurve:getSegment

Получает BezierCurve, который соответствует указанному сегменту этого BezierCurve.

curve = BezierCurve:getSegment( startpoint, endpoint )

curveBezierCurveA Безье, которое соответствует указанному сегменту.
startpointnumberНачальная точка вдоль кривой. Должно быть от 0 до 1.
endpointnumberКонец сегмента. Должно быть от 0 до 1.

BezierCurve:insertControlPoint

Вставляет контрольную точку после контрольной точки i. Индексы начинаются с 1. Отрицательные показатели обходят: -1 это последняя контрольная точка, -2 один перед последний контрольной точкой, и т.д.

BezierCurve:insertControlPoint( x, y, i )

xnumberПоложение контрольной точки вдоль оси x.
ynumberПоложение контрольной точки вдоль оси у.
i (-1)numberИндекс контрольной точки.

BezierCurve:removeControlPoint

Удаляет указанную контрольную точку.

BezierCurve:removeControlPoint( index )

indexnumberИндекс контрольной точки для удаления.

BezierCurve:render

Получает список координат, которые будут использоваться вместе с love.graphics.line (Русский).

Образцы функции кривой Безье, используют рекурсивное разбитие (рекурсия на Википедии). Вы можете контролировать глубину рекурсии с помощью параметра глубины.

Если вы просто хотите узнать позицию на кривой учитывая параметр, используете BezierCurve:evaluate (Русский).

coordinates = BezierCurve:render( depth )

coordinatestableСписок x, y-координатных пар точек на кривой.
depth (5)numberКоличество рекурсивных шагов разбиения.

BezierCurve:renderSegment

Получить список координат на определенной части кривой, которая будет использоваться с love.graphics.line.

Эта функция отображает кривую Bézier с использованием рекурсивного подразделения. Вы можете управлять глубиной рекурсии с помощью параметра глубины.

Если вам просто нужно знать положение на кривой с заданным параметром, используйте BezierCurve: оцените.

coordinates = BezierCurve:renderSegment( startpoint, endpoint, depth )

coordinatestableСписок x, y-координатных пар точек на кривой.
startpointnumberНачальная точка вдоль кривой. Должно быть от 0 до 1.
endpointnumberКонец сегмента для рендеринга. Должно быть от 0 до 1.
depth (5)numberКоличество рекурсивных шагов разбиения.

BezierCurve:rotate

Поворачивает кривую Безье под углом.

BezierCurve:rotate( angle, ox, oy )

anglenumberУгол поворота в радианах.
ox (0)numberX координата центра вращения.
oy (0)numberY координата центра вращения.

BezierCurve:scale

Масштаб кривой Безье с коэффициентом.

BezierCurve:scale( s, ox, oy )

snumberМасштаб.
ox (0)numberX координата масштабирования центра.
oy (0)numberY координата масштабирования центра.

BezierCurve:setControlPoint

Устанавливает координаты контрольной точки i. Индексы начинаются с 1.

BezierCurve:setControlPoint( i, ox, oy )

inumberИндекс контрольной точки.
oxnumberПоложение контрольной точки вдоль оси x.
oynumberПоложение контрольной точки вдоль оси y.

BezierCurve:translate

Перемещает кривую Безье по смещению.

BezierCurve:translate( dx, dy )

dxnumberСмещение по оси x.
dynumberСмещение по оси y.

CompressedData

Представляет байтовые данные, сжатые с использованием определенного алгоритма.

Функция love.math.decompress может использоваться для снятия сжатия данных.

Constructors

Functions

Supertypes

CompressedData:getFormat

Получает формат сжатия CompressedData.

format = CompressedData:getFormat()

formatCompressedDataFormatФормат CompressedData.

RandomGenerator

Случайное число генерации объекта, который имеет свое собственное случайное состояние.

Constructors

Functions

Supertypes

RandomGenerator:getSeed

Получает семя объекта генератора случайных чисел.

Семя делится на два числа из-за использования Lua оно удваивается для всех числовых значений - число двойной точности не может точно представлять целые значения выше 2^53, но начальное значение представляет собой целое число в диапазоне 2^64 - 1.

low, high = RandomGenerator:getSeed()

lownumberЦелое число, представляющее меньше 32 битного 64 битного RandomGenerator значения семени.
highnumberЦелое число, представляющее больше 32 битного 64 битного RandomGenerator значения семени.

RandomGenerator:getState

Получает текущее состояние генератора случайных чисел. Она возвращает не точно зависящую от реализации строку, которая полезна только для последующего использования с RandomGenerator:setState (Русский).

Она отличается от RandomGenerator: getSeed тем что GetState получает текущее состояние RandomGenerator, тогда как getSeed получает установленное ранее количество семян.

state = RandomGenerator:getState()

statestringТекущее состояние обекта RandomGenerator, представленное в виде строки.

RandomGenerator:random

Производит псевдослучайное число независимо от платформы.

number = RandomGenerator:random()

Получить равномерно распределенных псевдослучайных чисел в пределах [0, 1].

numbernumberПсевдослучайное число.

number = RandomGenerator:random( max )

Получить равномерно распределенных псевдослучайных целое число в пределах [1, макс].

numbernumberПсевдослучайное целое число.
maxnumberМаксимально возможное значение, которое оно должно вернуть.

number = RandomGenerator:random( min, max )

Получить равномерно распределенных псевдослучайных целое число в пределах [мин], макс.

numbernumberПсевдослучайное целое число.
minnumberМинимальное возможное значение, которое оно должно вернуть.
maxnumberМаксимально возможное значение, которое оно должно вернуть.

RandomGenerator:randomNormal

Получите нормально распределенное псевдослучайное число.

number = RandomGenerator:randomNormal( stddev, mean )

numbernumberОбычно распределенное случайное число с дисперсией (stddev) ² и указанное среднее значение.
stddev (1)numberСтандартное отклонение распределения.
mean (0)numberСреднее распределение.

RandomGenerator:setSeed

Устанавливает семя генератора случайных чисел с использованием указанного целого числа.

RandomGenerator:setSeed( seed )

seednumberЦелочисленное число, с которым вы хотите засеять рандомизацию. Должно быть в пределах {1, 2 ^ 53}.

RandomGenerator:setSeed( low, high )

lownumberНижние 32 бита значения состояния. Должно быть в пределах {0, 2 ^ 32 - 1}.
high (0)numberБолее высокие 32 бита значения состояния. Должно быть в пределах {0, 2 ^ 32 - 1}.

RandomGenerator:setState

Устанавливает текущее состояние генератора случайных чисел. Значение, используемое в качестве аргумента для этой функции, является непрозрачной строкой, зависящей от реализации, и должно происходить только из предыдущего вызова RandomGenerator: getState.

Это отличается от RandomGenerator: setSeed в том, что setState напрямую устанавливает текущее зависящее от реализации состояние RandomGenerator, тогда как setSeed дает ему новое начальное значение.

Эффект строки состояния не зависит от текущей операционной системы.

RandomGenerator:setState( state )

statestringНовое состояние объекта RandomGenerator, представленное в виде строки. Это должно происходить из предыдущего вызова RandomGenerator: getState.

love.mouse

Types

Functions

Enums

love.mouse.getCursor

Получает текущий курсор.

cursor = love.mouse.getCursor()

cursorCursorТекущий курсор, или nil, если курсор не установлен.

love.mouse.getPosition

Получает текущую позицию мыши.

x, y = love.mouse.getPosition()

xnumberПозиция мыши по оси X.
ynumberПозиция мыши по оси Y.

love.mouse.getRelativeMode

Возвращает, разрешен ли относительный режим для мыши.

Если относительный режим включен, курсор скрыт и не перемещается, когда мышь делает, но относительные события движения мыши все еще генерируются через love.mousemoved. Это позволяет мыши двигаться в любом направлении на неопределенный срок, если курсор не застревает по краям экрана.

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

enabled = love.mouse.getRelativeMode()

enabledbooleanИстина, если относительный режим включен, false, если он отключен.

love.mouse.getSystemCursor

Получает объект Cursor, представляющий системный курсор.

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

cursor = love.mouse.getSystemCursor( ctype )

cursorCursorОбъект Cursor, представляющий тип системного курсора.
ctypeCursorTypeТип системного курсора для получения.

love.mouse.getX

Получает текущую X координату мыши.

x = love.mouse.getX()

xnumberПозиция мыши по оси X.

love.mouse.getY

Получает текущую Y координату мыши.

y = love.mouse.getY()

ynumberПозиция мыши по оси Y.

love.mouse.hasCursor

Возвращает, поддерживается ли функция курсора.

Если это не поддерживается, вызов love.mouse.newCursor и love.mouse.getSystemCursor вызовет ошибку. Мобильные устройства не поддерживают курсоры.

hascursor = love.mouse.hasCursor()

hascursorbooleanИмеет ли система функциональность курсора.

love.mouse.isDown

Проверяет, нажата ли определенная кнопка мыши.

down = love.mouse.isDown( button, ... )

downbooleanИстина, если указанная кнопка не работает.
buttonnumberИндекс кнопки для проверки. 1 - основная кнопка мыши, 2 - вторичная кнопка мыши и т. Д.
...numberДополнительные номера кнопок для проверки.

love.mouse.isGrabbed

Проверяет, захвачена ли мышь в окне.

grabbed = love.mouse.isGrabbed()

grabbedbooleanTrue, если курсор захвачен, иначе false.

love.mouse.isVisible

Проверяет видимость курсора.

visible = love.mouse.isVisible()

visiblebooleanTrue, если курсор видимый, иначе false.

love.mouse.newCursor

Создает новый аппаратный объект Cursor из файла изображения или ImageData.

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

Горячая точка - это точка, которую использует операционная система для определения того, что было нажата, и в какой позиции находится курсор мыши. Например, обычный указатель стрелки обычно имеет свое горячее пятно в верхнем левом углу изображения, но курсор перекрестия может иметь его посередине.

cursor = love.mouse.newCursor( imageData, hotx, hoty )

cursorCursorНовый объект курсора.
imageDataImageDataImageData для использования для нового курсора.
hotx (0)numberX-координата в ImageData для горячей точки курсора.
hoty (0)numberY-координата в ImageData точки горячего курсора.

cursor = love.mouse.newCursor( filepath, hotx, hoty )

cursorCursorНовый объект курсора.
filepathstringПуть к изображению, используемому для нового курсора.
hotx (0)numberX-координата в ImageData для горячей точки курсора.
hoty (0)numberY-координата в ImageData точки горячего курсора.

cursor = love.mouse.newCursor( fileData, hotx, hoty )

cursorCursorНовый объект курсора.
fileDataFileDataДанные, представляющие изображение для нового курсора.
hotx (0)numberX-координата в ImageData для горячей точки курсора.
hoty (0)numberY-координата в ImageData точки горячего курсора.

love.mouse.setCursor

Устанавливает текущий курсор мыши.

Сбрасывает текущий указатель мыши по умолчанию при вызове без аргументов.

love.mouse.setCursor()

love.mouse.setCursor( cursor )

cursorCursorОбъект Cursor для использования в качестве текущего курсора мыши.

love.mouse.setGrabbed

Захватывает мышь и ограничивает ее в окне.

love.mouse.setGrabbed( grab )

grabbooleanВерно ограничивать мышь, ложно, чтобы она оставила окно.

love.mouse.setPosition

Устанавливает позицию мыши.

love.mouse.setPosition( x, y )

xnumberНовая координата мыши по оси X.
ynumberНовая координата мыши по оси Y.

love.mouse.setRelativeMode

Устанавливает, разрешен ли относительный режим для мыши.

Когда относительный режим включен, курсор скрыт и не перемещается, когда мышь делает, но относительные события движения мыши все еще генерируются через love.mousemoved. Это позволяет мыши двигаться в любом направлении на неопределенный срок, если курсор не застревает по краям экрана.

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

love.mouse.setRelativeMode( enable )

enablebooleanВерно, чтобы включить относительный режим, false, чтобы отключить его.

love.mouse.setVisible

Устанавливает видимость курсора.

love.mouse.setVisible( visible )

visiblebooleanTrue, чтобы сделать курсор вижимым, false - чтобы скрыть курсор.

love.mouse.setX

Устанавливает текущую позицию X мыши. Нецелые значения заполняются.

love.mouse.setX( x )

xnumberНовое положение мыши вдоль оси x.

love.mouse.setY

Устанавливает текущую позицию Y мыши. Нецелые значения заполняются.

love.mouse.setY( y )

ynumberНовое положение мыши вдоль оси y.

CursorType

image

Курсор использует пользовательский образ.

arrow

Указатель стрелки.

ibeam

Я-луч, обычно используемый при перетаскивании редактируемого или выбираемого текста.

wait

Ждите графика.

waitarrow

Маленький указатель ожидания со стрелкой.

crosshair

Символ перекрестия.

sizenwse

Двойная стрелка указывает на верхний левый и правый нижний.

sizenesw

Двойная стрелка указывает на верхний правый и нижний левый.

sizewe

Двойная стрелка, указывающая влево и вправо.

sizens

Двойная стрелка направлена ​​вверх и вниз.

sizeall

Четырехконечная стрелка направлена ​​вверх, вниз, влево и вправо.

no

Срезанный круг или скрещенные кости.

hand

Символ руки.

Cursor

Представляет собой аппаратный курсор.

Constructors

Functions

Supertypes

Cursor:getType

Возвращает тип курсора.

cursortype = Cursor:getType()

cursortypeCursorTypeТип курсора.

love.physics

Types

Functions

Enums

love.physics.getDistance

Возвращает две ближайшие точки между двумя креплениями и расстояние между ними.

distance, x1, y1, x2, y2 = love.physics.getDistance( fixture1, fixture2 )

distancenumberРасстояние между двумя точками.
x1numberХ-координата первой точки.
y1numberУ-координата первой точки.
x2numberХ-координата второй точки.
y2numberУ-координата второй точки.
fixture1FixtureПервый светильник.
fixture2FixtureВторой светильник.

love.physics.getMeter

Получите масштаб мира.

Мировой масштаб - это количество пикселей на метр. Постарайтесь сохранить размеры фигур менее чем в 10 раз по сравнению с этой шкалой.

Это важно, потому что физика в Box2D настроена так, чтобы хорошо работать для объектов размером от 0,1 м до 10 м. Все физические координаты делятся на это число для физических расчетов.

scale = love.physics.getMeter()

scalenumberРазмер 1 метра в пикселях.

love.physics.newBody

Создает новое тело.

Тело с нулевой массой является '''статичным''' и не будет передвигаться.

Масса может быть изменена в любое время с помощью Body:setMass или Body:setMassFromShapes.

body = love.physics.newBody( world, x, y, type )

bodyBodyНовый орган.
worldWorldМир для создания тела.
x (0)numberПоложение х тела.
y (0)numberПоложение y тела.
type ("static")BodyTypeТип тела.

love.physics.newChainShape

Создает новый ChainShape.

shape = love.physics.newChainShape( loop, x1, y1, x2, y2, ... )

shapeChainShapeНовая форма.
loopbooleanЕсли цепь должна вернуться к первой точке.
x1numberПозиция x первой точки.
y1numberПозиция y первой точки.
x2numberПоложение x второй точки.
y2numberПозиция y второй точки.
...numberДополнительные позиции позиций.

shape = love.physics.newChainShape( loop, points )

shapeChainShapeНовая форма.
loopbooleanЕсли цепь должна вернуться к первой точке.
pointstableСписок точек для построения ChainShape в виде {x1, y1, x2, y2, ...}.

love.physics.newCircleShape

Создает новую форму в виде окружности в локальных координатах x и y.

shape = love.physics.newCircleShape( radius )

shapeCircleShapeНовый CircleShape.
radiusnumberРадиус окружности.

shape = love.physics.newCircleShape( x, y, radius )

shapeCircleShapeНовый CircleShape.
xnumberСмещение окружности по оси X.
ynumberСмещение окружности по оси Y.
radiusnumberРадиус окружности.

love.physics.newDistanceJoint

Создает DistanceJoint для двух тел.

Это соединение держит две точки двух тел на одном расстоянии. Точки указываются в локальных координатах соответствующего тела, причем расстояние (в глобальных координатах), которое было между этими точками при создании соединения, берется за константное расстояние, на котором необходимо держать эти две точки.

joint = love.physics.newDistanceJoint( body1, body2, x1, y1, x2, y2, collideConnected )

jointDistanceJointНовый дистанционный шов.
body1BodyПервый корпус прикрепляется к суставу.
body2BodyВторой корпус прикрепляется к суставу.
x1numberПоложение x первой точки привязки (мировое пространство).
y1numberПозиция y первой точки привязки (мировое пространство).
x2numberХ положение второй точки анкера (мировое пространство).
y2numberПозиция y второй точки привязки (мировое пространство).
collideConnected (false)booleanУказывает, должны ли два тела сталкиваться друг с другом.

love.physics.newEdgeShape

Создает форму ребра.

shape = love.physics.newEdgeShape( x1, y1, x2, y2 )

shapeEdgeShapeНовая форма.
x1numberПозиция x первой точки.
y1numberПозиция y первой точки.
x2numberПоложение x второй точки.
y2numberПозиция y второй точки.

love.physics.newFixture

Создает и прикрепляет приспособление к телу.

fixture = love.physics.newFixture( body, shape, density )

fixtureFixtureНовый светильник.
bodyBodyТело, которое прикрепляет светильник.
shapeShapeФорма крепления.
density (1)numberПлотность светильника.

love.physics.newFrictionJoint

Создайте трение между двумя телами. Фрикцион Joint применяет трение к телу.

joint = love.physics.newFrictionJoint( body1, body2, x, y, collideConnected )

jointFrictionJointНовый FrictionJoint.
body1BodyПервый корпус прикрепляется к суставу.
body2BodyВторой корпус прикрепляется к суставу.
xnumberХ положение точки привязки.
ynumberУ положения точки привязки.
collideConnected (false)booleanУказывает, должны ли два тела сталкиваться друг с другом.

love.physics.newGearJoint

Создает GearJoint для двух тел.

Это соединение использует два других соединения типа PrismaticJoint или RevoluteJoint. Использование этого соединения требует, чтобы PrismaticJoint и RevoluteJoint соединяли тела, одно из которых является статическим. Причем статическое тело в этих соединениях должно использоваться в качестве первого. Когда вы удаляете тела или соединения, то в первую очередь нужно удалять GearJoint, а потом уже все остальное.

GearJoint использует отношение, определяющее как будут относиться друг к другу угол или расстояние соединенных объектов. Формула <tt>coordinate1 + ratio * coordinate2</tt> всегда будет равно константному значению, которое определяется при создании соединения.

joint = love.physics.newGearJoint( joint1, joint2, ratio, collideConnected )

jointGearJointНовый редуктор.
joint1JointПервое соединение для соединения с зубчатым соединением.
joint2JointВторое соединение для соединения с зубчатым соединением.
ratio (1)numberПередаточное число.
collideConnected (false)booleanУказывает, должны ли два тела сталкиваться друг с другом.

love.physics.newMotorJoint

Создает соединение между двумя телами, которое контролирует относительное движение между ними.

Уставки положения и вращения могут быть указаны после создания MotorJoint, а также максимальной силы и крутящего момента двигателя, которые будут применяться для достижения смещений цели.

joint = love.physics.newMotorJoint( body1, body2, correctionFactor, collideConnected )

jointMotorJointНовый MotorJoint.
body1BodyПервый корпус прикрепляется к суставу.
body2BodyВторой корпус прикрепляется к суставу.
correctionFactor (0.3)numberКоэффициент коррекции начального положения сустава в диапазоне {0, 1}.
collideConnected (false)booleanУказывает, должны ли два тела сталкиваться друг с другом.

love.physics.newMouseJoint

Создает соединение между телом и мышью.

Это соединение фактически присоединяет тело к фиксированной точке. Чтобы сделать точку подвижной, необходимо обновлять ее координаты (см. пример ниже).

Преимущество MouseJoint перед обычной сменой положения тела в том, что столкновения объекта обрабатываются физически корректно.

joint = love.physics.newMouseJoint( body, x, y )

jointMouseJointНовый мышечный сустав.
bodyBodyТело прикрепляется к мыши.
xnumberПозиция x точки подключения.
ynumberПозиция y точки подключения.

love.physics.newPolygonShape

Создает многоугольную форму.

Эта форма может иметь максимум 8 вершин и она должна быть выпуклой.

shape = love.physics.newPolygonShape( x1, y1, x2, y2, ... )

shapePolygonShapeНовый PolygonShape.
x1numberПоложение первой точки на оси х.
y1numberПоложение первой точки по оси y.
x2numberПоложение второй точки на оси х.
y2numberПоложение второй точки по оси y.
...numberВы можете продолжить передачу большего количества позиций точек, чтобы создать PolygonShape.

shape = love.physics.newPolygonShape( vertices )

shapePolygonShapeНовый PolygonShape.
verticestableСписок вершин для построения многоугольника в виде {x1, y1, x2, y2, x3, y3, ...}.

love.physics.newPrismaticJoint

Создает PrismaticJoint для двух тел.

PrismaticJoint держит два тела так, что они двигаются относительно друг друга по определенной оси и не вращаются относительно друг друга. Создание и использование PrismaticJoint подобно RevoluteJoint, только с перемещением вместо вращения и силой вместо крутящего момента.

joint = love.physics.newPrismaticJoint( body1, body2, x1, y1, x2, y2, ax, ay, collideConnected, referenceAngle )

jointPrismaticJointНовый призматический сустав.
body1BodyПервый корпус соединяется с призматическим суставом.
body2BodyВторой корпус соединяется с призматическим суставом.
x1numberВ х-координата первой опорной точки.
y1numberКоордината первой точки привязки.
x2numberХ координата второй точки привязки.
y2numberКоордината второй точки привязки.
axnumberКоордината x вектора оси.
aynumberКоордината y вектора оси.
collideConnected (false)booleanУказывает, должны ли два тела сталкиваться друг с другом.
referenceAngle (0)numberИсходный угол между корпусом 1 и корпусом 2, в радианах.

love.physics.newPulleyJoint

Создает совместный шкив для соединения двух тел друг с другом и землей.

PulleyJoint симулирует шкив с необязательным блоком и веревкой. Если параметр ''ratio'' имеет значение, отличное от единицы, то моделируется веревка, изменяемая с одной стороны быстрее, чем с другой. Общая длина веревок с обеих сторон всегда равна константе <tt>length1 + ratio * length2</tt>, которая вычисляется при создании соединения.

PulleyJoint может вести себя непредсказуемо, если одна из сторон полностью выдвинута. Рекомендуется использовать метод setMaxLengths, чтобы ограничить максимальную длину, которую могут достичь веревки.

joint = love.physics.newPulleyJoint( body1, body2, gx1, gy1, gx2, gy2, x1, y1, x2, y2, ratio, collideConnected )

jointPulleyJointНовый шкив.
body1BodyПервый корпус для соединения с шкивом.
body2BodyВторой корпус для соединения с шкивом.
gx1numberКоордината х земного якоря первого тела.
gy1numberКоордината y наземного якоря первого тела.
gx2numberКоордината x земного якоря второго тела.
gy2numberКоордината y земного якоря второго тела.
x1numberКоордината x координатного шкива в первом корпусе.
y1numberКоордината y координатного шкива в первом корпусе.
x2numberКоордината x шкивного анкерного соединения во втором корпусе.
y2numberКоордината y координатного шкива шкива во втором корпусе.
ratio (1)numberСоотношение соединений.
collideConnected (true)booleanУказывает, должны ли два тела сталкиваться друг с другом.

love.physics.newRectangleShape

Краткая форма для создания прямоугольной формы многоугольника.

Прямоугольник создается в локальных координатах.

shape = love.physics.newRectangleShape( width, height )

shapePolygonShapeНовую форму PolygonShape.
widthnumberШирина прямоугольника.
heightnumberВысота прямоугольника.

shape = love.physics.newRectangleShape( x, y, width, height, angle )

shapePolygonShapeНовую форму PolygonShape.
xnumberСмещение по оси X.
ynumberСмешение по оси Y.
widthnumberШирина прямоугольника.
heightnumberВысота прямоугольника.
angle (0)numberНачальный угол прямоугольника.

love.physics.newRevoluteJoint

Создает шарнир между двумя телами.

Это соединение соединяет два тела так, чтобы они вращались вокруг одной точки.

joint = love.physics.newRevoluteJoint( body1, body2, x, y, collideConnected )

jointRevoluteJointНовый револьверный сустав.
body1BodyПервый корпус.
body2BodyВторой корпус.
xnumberПозиция x точки подключения.
ynumberПозиция y точки подключения.
collideConnected (false)booleanУказывает, должны ли два тела сталкиваться друг с другом.

joint = love.physics.newRevoluteJoint( body1, body2, x1, y1, x2, y2, collideConnected, referenceAngle )

jointRevoluteJointНовый револьверный сустав.
body1BodyПервый корпус.
body2BodyВторой корпус.
x1numberПоложение x первой точки подключения.
y1numberПозиция y первой точки подключения.
x2numberПоложение x второй точки подключения.
y2numberПозиция y второй точки подключения.
collideConnected (false)booleanУказывает, должны ли два тела сталкиваться друг с другом.
referenceAngle (0)numberУказывает, должны ли два тела сталкиваться друг с другом.

love.physics.newRopeJoint

Создайте соединение между двумя телами. Его единственная функция - обеспечить максимальное расстояние между этими телами.

joint = love.physics.newRopeJoint( body1, body2, x1, y1, x2, y2, maxLength, collideConnected )

jointRopeJointНовый RopeJoint.
body1BodyПервый корпус прикрепляется к суставу.
body2BodyВторой корпус прикрепляется к суставу.
x1numberПоложение x первой точки привязки.
y1numberПозиция y первой точки привязки.
x2numberХ положение второй опорной точки.
y2numberУ положения второй опорной точки.
maxLengthnumberМаксимальное расстояние для тел.
collideConnected (false)booleanУказывает, должны ли два тела сталкиваться друг с другом.

love.physics.newWeldJoint

Создает ограничение между двумя телами. WeldJoint по существу склеивает два тела вместе. Ограничение немного мягкое, однако, из-за итеративного решателя Box2D.

joint = love.physics.newWeldJoint( body1, body2, x1, y1, x2, y2, collideConnected, referenceAngle )

jointWeldJointНовый WeldJoint.
body1BodyПервый корпус прикрепляется к суставу.
body2BodyВторой корпус прикрепляется к суставу.
x1numberПоложение x первой точки привязки (мировое пространство).
y1numberПозиция y первой точки привязки (мировое пространство).
x2numberХ положение второй точки анкера (мировое пространство).
y2numberПозиция y второй точки привязки (мировое пространство).
collideConnected (false)booleanУказывает, должны ли два тела сталкиваться друг с другом.
referenceAngle (0)numberИсходный угол между корпусом 1 и корпусом 2, в радианах.

love.physics.newWheelJoint

Создает колесный сустав.

joint = love.physics.newWheelJoint( body1, body2, x, y, ax, ay, collideConnected )

jointWheelJointНовый WheelJoint.
body1BodyПервый корпус.
body2BodyВторой корпус.
xnumberХ положение точки привязки.
ynumberУ положения точки привязки.
axnumberПоложение x вектора оси.
aynumberПоложение y вектора оси.
collideConnected (false)booleanУказывает, должны ли два тела сталкиваться друг с другом.

love.physics.newWorld

Создает объект World.

world = love.physics.newWorld( xg, yg, sleep )

worldWorldХрабрый новый мир.
xg (0)numberX компонента силы тяжести.
yg (0)numberУ-составляющая силы тяжести.
sleep (true)booleanМогут ли тела в этом мире спать.

love.physics.setMeter

Устанавливает пиксельные коэффициенты масштаба шкалы.

Все координаты в физическом модуле делятся на это число и преобразуются в счетчики, и он создает удобный способ рисования объектов непосредственно на экране без необходимости преобразования графики.

Рекомендуется создавать фигуры размером не более 10 раз. Это важно, потому что Box2D настроен на то, чтобы хорошо работать с размерами форм от 0,1 до 10 метров. Шкала шкалы по умолчанию - 30.

Функция love.physics.setMeter не применяется задним числом к ​​созданным объектам. Созданные объекты сохраняют свои координаты метра, но масштабный коэффициент будет влиять на их пиксельные координаты.

love.physics.setMeter( scale )

scalenumberМасштабный коэффициент как целое.

BodyType

static

Статические тела не двигаются.

dynamic

Динамические тела сталкиваются со всеми телами.

kinematic

Кинематические тела сталкиваются только с динамическими телами.

JointType

distance

DistanceJoint.

gear

GearJoint.

mouse

MouseJoint.

prismatic

PrismaticJoint.

pulley

PulleyJoint.

revolute

RevoluteJoint.

friction

Фрикционная связь.

weld

WeldJoint.

rope

A RopeJoint.

ShapeType

circle

Окружность.

polygon

Многоугольник.

edge

Грань.

chain

Ломаная.

Body

Тело объекта со скоростью и положением.

Constructors

Functions

Supertypes

Body:applyAngularImpulse

Применяет угловой импульс к телу. Это делает одно мгновенное добавление к импульсу тела.

Тело с большей массой будет реагировать меньше. Реакция не зависит от времени и эквивалентна одновременному применению силы в течение 1 секунды. Импульсы лучше всего использовать, чтобы дать один толчок телу. Для непрерывного толчка к телу лучше использовать Body: applyForce.

Body:applyAngularImpulse( impulse )

impulsenumberИмпульс в килограммовом квадратном метре в секунду.

Body:applyForce

Применяет силу к телу.

Сила толкает тело в направлении. Тело с большей массой будет реагировать меньше. Реакция также зависит от того, как долго сила воздействует на тело: поскольку сила действует непрерывно в течении всего временного шага, короткий временной шаг только подтолкнет тело на короткое время. Силу лучше применять для многих временных шагов, чтобы сила воздействовала на тело непрерывно (как гравитация например). Для единичного толчка, не зависящего от временных шагов, лучше использовать Body:applyImpulse

Если точка применения силы не указана, то сила применяется к центру масс тела. Сила, примененная не к центру масс, будет заставлять тело вращаться (зависит от момента инерции)

Учтите, что компоненты силы и позиции должны передаваться в мировых координатах.

Body:applyForce( fx, fy )

fxnumberСила x для приложения к центру масс.
fynumberУ-составляющая силы применяется к центру масс.

Body:applyForce( fx, fy, x, y )

fxnumberX компонента применяемой силы.
fynumberY компонента применяемой силы.
xnumberX координата точки применения силы.
ynumberY координата точки применения силы.

Body:applyLinearImpulse

КИЕИЕИЕ Филиппильв Филипль Нульмайльль Нуль Нульльльль Филипль Нуль Нумайльльль Нульвинг Филип Нуль Нуль Нульльм Филип Нуль Нуль Нульвальдль Нульмайль Нульвальд Филип Нуль Нуль Нуль Нульвальдль Нульмайль Нульмаймонт Нульбаль АПЦ Нульмайль Нульмайль Нульбальд Филиппиль Нумайль Нульмайльго Филиппиль Нумайль Нуль Это делает одно мгновенное добавление к импульсу тела.

ПИЕЕНЦ АПЕНЕНЦ АПЕНЕНЦ АПЕНЕНЦ АПЕНЕНЦ АПЕНЕНЦ АПЕНЕНЦ АПЕНЕНЦ АПЕНЕНЦ АПЕНЕН АПЕНЕН АПЕНЕН АПЕНЕН Филиппиль АПЕНЦ АПЕНЕНЦ АПЕНЕНЦ Филипльль Нульмайльго Филиппольльсовойльдсовой Филипльсовой Филиппольльсовойльсовой Филипльсовой Филипльсовой Филиппольльльсовой Филипльсовой Филипльсовой Филиппольльльсовой Филипльсовой Филипльсовой Филипко-Филипльсовой Тело с большей массой будет реагировать меньше. Реакция не зависит от времени и эквивалентна одновременному применению силы в течение 1 секунды. Импульсы лучше всего использовать, чтобы дать один толчок телу. Для непрерывного толчка к телу лучше использовать Body: applyForce.

Если положение применить импульс не дано, оно будет действовать на центр массы тела. За сутки уж уж уж ужль ...

Ну ужльси Нуль Нуль Нуль Нуль Нуль Нуль Нуль Нуль Нуль Нуль Нуль Нуль Нуль Нуль Нуль вамайль

Body:applyLinearImpulse( ix, iy )

ixnumberХ-составляющая импульса, приложенная к центру масс.
iynumberУ-составляющая импульса, приложенного к центру масс.

Body:applyLinearImpulse( ix, iy, x, y )

ixnumberХ-компонент импульса.
iynumberУ-компонент импульса.
xnumberПоложение x для применения импульса.
ynumberПозиция y для применения импульса.

Body:applyTorque

Применяет крутящий момент к телу.

Крутящий момент похож на силу, только он влияет на угол вращения тела. Эффект зависит от момента инерции тела.

Body:applyTorque( torque )

torquenumberКрутящий момент.

Body:destroy

Явно удаляет тело.

Если у Вас нет времени ждать сборщика мусора, это Функция может быть использована для удаления объекта сразу, но учтите, что произойдет ошибка, если вы попытаетесь использовать объект после вызова этой Функции.

Body:destroy()

Body:getAngle

Возвращает угол поворота тела.

Угол измеряется в радианах. Если вам нужно перевести радианы в градусы, используйте math.deg.

Значение угла равное нулю подразумевает, что "тело смотрит вправо". Хоть радианы увеличиваются в направлении против часовой стрелки, с точки зрения наблюдателя, из-за направленности оси Y вниз, радианы увеличиваются ''по часовой'' стрелке.

angle = Body:getAngle()

anglenumberУгол в радианах.

Body:getAngularDamping

Получает угловое торможение тела.

Угловое торможение - это ''скорость убывания угловой скорости с течением времени'': вращающееся тело без торможения и без воздействия внешних сил будет продолжать вращаться все время. Вращающееся тело с торможением постепенно перестанет вращаться.

Торможение не то же самое что трение - они могут быть смоделированы вместе. Однако, только торможение моделируется в Box2D (и в LÖVE).

Параметры торможения должны быть между 0 и бесконечностью, где 0 означает отсутствие торможения, а бесконечность означает полное торможение. Обычно вы будете использовать значения торможения в диапазоне от 0 до 0,1.

damping = Body:getAngularDamping()

dampingnumberЗначение углового торможения.

Body:getAngularVelocity

Получает угловую скорость тела.

Угловая скорость - это ''скорость изменения угла с течением времени''.

Она изменяется в World:update путем применения моментов, смещенных от центра сил/импульсов и углового торможения. Скорость может быть установлена непосредственно функцией Body:setAngularVelocity.

Если вам нужно узнать скорость перемещения тела, используйте Body:getLinearVelocity.

w = Body:getAngularVelocity()

wnumberУгловая скорость в радианах в секунду.

Body:getContactList

Получает список всех Контактов, прикрепленных к Телу.

contacts = Body:getContactList()

contactstableСписок со всеми контактами, связанными с телом.

Body:getFixtureList

Получает таблицу со всеми приспособлениями.

fixtures = Body:getFixtureList()

fixturestableПоследовательность со всеми приспособлениями.

Body:getGravityScale

Получает коэффициент гравитационной шкалы.

scale = Body:getGravityScale()

scalenumberМасштабный коэффициент гравитации.

Body:getInertia

Получает момент инерции тела.

Момент инерции, это на сколько тяжело заставить тело вращаться. Устанавливается четвертым параметром в функции Body:setMass или автоматически в Body:setMassFromShapes.

inertia = Body:getInertia()

inertianumberМомент инерции тела.

Body:getJointList

Получает таблицу, содержащую суставы, прикрепленные к этому органу.

joints = Body:getJointList()

jointstableПоследовательность с суставами, прикрепленными к телу.

Body:getLinearDamping

Получает линейное затухание тела.

Линейное затухание - это скорость уменьшения линейной скорости во времени. Движущееся тело без демпфирования и внешних сил будет продолжать двигаться бесконечно, как в случае с пространством. Движущееся тело с демпфированием постепенно прекратит движение.

Демпфирование - это не то же самое, что трение - они могут быть смоделированы вместе. Тем не менее, только демпфирование обеспечивается Box2D (и LÖVE).

damping = Body:getLinearDamping()

dampingnumberЗначение линейного затухания.

Body:getLinearVelocity

Получает линейную скорость тела из его центра масс.

Линейная скорость - это скорость изменения положения во времени.

Если вам нужна скорость изменения угла во времени, используйте Body: getAngularVelocity. Если вам нужно получить линейную скорость точки, отличную от центра масс:

Тело: getLinearVelocityFromLocalPoint позволяет указать точку в локальных координатах.

Body: getLinearVelocityFromWorldPoint позволяет указать точку в мировых координатах.

x, y = Body:getLinearVelocity()

xnumberХ-компонента вектора скорости.
ynumberУ-составляющая вектора скорости.

Body:getLinearVelocityFromLocalPoint

Получите линейную скорость точки на теле.

Линейная скорость для точки на теле - это скорость центра тела тела плюс скорость в этой точке от вращения тела.

Точка на теле должна указываться в локальных координатах. Используйте Body: getLinearVelocityFromWorldPoint, чтобы указать это с мировыми координатами.

vx, vy = Body:getLinearVelocityFromLocalPoint( x, y )

vxnumberХ-компонента скорости в точке (х, у).
vynumberУ-составляющая скорости в точке (х, у).
xnumberПоложение х для измерения скорости.
ynumberПозиция y для измерения скорости.

Body:getLinearVelocityFromWorldPoint

Получите линейную скорость точки на теле.

Линейная скорость для точки на теле - это скорость центра тела тела плюс скорость в этой точке от вращения тела.

Точка на теле должна указываться в мировых координатах. Используйте Body: getLinearVelocityFromLocalPoint, чтобы указать это с локальными координатами.

vx, vy = Body:getLinearVelocityFromWorldPoint( x, y )

vxnumberХ-компонента скорости в точке (х, у).
vynumberУ-составляющая скорости в точке (х, у).
xnumberПоложение х для измерения скорости.
ynumberПозиция y для измерения скорости.

Body:getLocalCenter

Получить центр массового положения в локальных координатах.

Используйте Body: getWorldCenter, чтобы получить центр масс в мировых координатах.

x, y = Body:getLocalCenter()

xnumberКоордината x центра масс.
ynumberКоордината y центра масс.

Body:getLocalPoint

Преобразовать точку из координат мира в локальные координаты.

localX, localY = Body:getLocalPoint( worldX, worldY )

localXnumberПоложение x в локальных координатах.
localYnumberПоложение y в локальных координатах.
worldXnumberПоложение x в мировых координатах.
worldYnumberПоложение y в мировых координатах.

Body:getLocalVector

Преобразование вектора из координат мира в локальные координаты.

localX, localY = Body:getLocalVector( worldX, worldY )

localXnumberВекторная компонента x в локальных координатах.
localYnumberВектор y-компонента в локальных координатах.
worldXnumberВекторная компонента x в мировых координатах.
worldYnumberВектор y-компонента в мировых координатах.

Body:getMass

Получите массу тела.

mass = Body:getMass()

massnumberМасса тела (в килограммах).

Body:getMassData

Получает массу, ее центр и вращательную инерцию.

x, y, mass, inertia = Body:getMassData()

xnumberХ-положение центра масс.
ynumberПоложение y центра масс.
massnumberМасса тела.
inertianumberВращательная инерция.

Body:getPosition

Получите положение тела.

Обратите внимание, что это не может быть центром массы тела.

x, y = Body:getPosition()

xnumberПоложение x.
ynumberПозиция y.

Body:getType

Получает тип тела.

type = Body:getType()

typeBodyTypeТип кузова.

Body:getUserData

Получает значение Lua, связанное с этим телом.

value = Body:getUserData()

valueanyЗначение Lua, связанное с телом.

Body:getWorld

Получает мир, в котором живет организм.

world = Body:getWorld()

worldWorldМир, в котором живет организм.

Body:getWorldCenter

Получить центр массового положения в мировых координатах.

Используйте Body: getLocalCenter, чтобы получить центр масс в локальных координатах.

x, y = Body:getWorldCenter()

xnumberКоордината x центра масс.
ynumberКоордината y центра масс.

Body:getWorldPoint

Преобразование точки из локальных координат в мировые координаты.

worldX, worldY = Body:getWorldPoint( localX, localY )

worldXnumberПоложение x в мировых координатах.
worldYnumberПоложение y в мировых координатах.
localXnumberПоложение x в локальных координатах.
localYnumberПоложение y в локальных координатах.

Body:getWorldPoints

Преобразует несколько точек из локальных координат в мировые координаты.

x1, y1, x2, y2, ... = Body:getWorldPoints( x1, y1, x2, y2, ... )

x1numberПреобразованная позиция x первой точки.
y1numberПреобразованное положение y первой точки.
x2numberПреобразованная позиция x второй точки.
y2numberТрансформированное положение y второй точки.
...numberПреобразованные позиции x и y дополнительных точек.
x1numberПозиция x первой точки.
y1numberПозиция y первой точки.
x2numberПоложение x второй точки.
y2numberПозиция y второй точки.
...numberБольше x и y точек.

Body:getWorldVector

Преобразование вектора из локальных координат в мировые координаты.

worldX, worldY = Body:getWorldVector( localX, localY )

worldXnumberВекторная компонента x в мировых координатах.
worldYnumberВектор y-компонента в мировых координатах.
localXnumberВекторная компонента x в локальных координатах.
localYnumberВектор y-компонента в локальных координатах.

Body:getX

Получите положение x тела в мировых координатах.

x = Body:getX()

xnumberПоложение x в мировых координатах.

Body:getY

Получите y позицию тела в мировых координатах.

y = Body:getY()

ynumberПоложение y в мировых координатах.

Body:isActive

Получает, активно ли тело используется в симуляции.

status = Body:isActive()

statusbooleanИстинно, если тело активно или ложно, если нет.

Body:isAwake

Получает статус сна для тела.

status = Body:isAwake()

statusbooleanИстинно, если тело бодрствует или ложно, если нет.

Body:isBullet

Получить статус пули тела.

Существует два метода проверки для коллизий тела:

при их местоположении, когда мир обновляется (по умолчанию)

используя непрерывное обнаружение столкновений (CCD)

Метод по умолчанию эффективен, но тело, движущееся очень быстро, может иногда перепрыгивать через другое тело, не создавая столкновения. Тело, установленное как пуля, будет использовать CCD. Это менее эффективно, но гарантированно не прыгать при быстром движении.

Обратите внимание, что статические тела (с нулевой массой) всегда используют ПЗС, поэтому ваши стены не позволят быстро движущемуся телу проходить, даже если это не пуля.

status = Body:isBullet()

statusbooleanСостояние пули тела.

Body:isDestroyed

Получает, уничтожено ли Тело. Разрушенные тела нельзя использовать.

destroyed = Body:isDestroyed()

destroyedbooleanЯвляется ли Тело разрушенным.

Body:isFixedRotation

Получает, заблокировано ли вращение тела.

fixed = Body:isFixedRotation()

fixedbooleanИстинно, если вращение тела заблокировано или false, если нет.

Body:isSleepingAllowed

Получает спящее поведение тела.

status = Body:isSleepingAllowed()

statusbooleanИстинно, если тело разрешено спать или ложно, если нет.

Body:resetMassData

Сбрасывает массу тела, пересчитывая его из свойств массы светильников.

Body:resetMassData()

Body:setActive

Устанавливает, активен ли организм в мире.

Неактивное тело не участвует в симуляции. Он не будет двигаться или вызвать какие-либо столкновения.

Body:setActive( active )

activebooleanЕсли тело активно или нет.

Body:setAngle

Установите угол тела.

Угол измеряется в радианах. Если вам нужно преобразовать его из градусов, используйте math.rad.

Значение 0 радианов будет означать «смотреть вправо». Хотя радианы увеличиваются против часовой стрелки, ось y указывает вниз, поэтому она становится по часовой стрелке с нашей точки зрения.

Можно вызвать столкновение с другим телом, изменив его угол.

Body:setAngle( angle )

anglenumberУгол в радианах.

Body:setAngularDamping

Устанавливает угловое затухание тела.

См. Тело: getAngularDamping для определения углового затухания.

Угловое затухание может принимать любое значение от 0 до бесконечности. Однако рекомендуется оставаться между 0 и 0,1. Другие ценности будут выглядеть нереалистичными.

Body:setAngularDamping( damping )

dampingnumberНовое угловое затухание.

Body:setAngularVelocity

Устанавливает угловую скорость тела.

Угловая скорость - это скорость изменения угла во времени.

Эта функция ничего не накапливает; любые импульсы, ранее применявшиеся со времени последнего вызова World: обновление будет потеряно.

Body:setAngularVelocity( w )

wnumberНовая угловая скорость в радианах в секунду

Body:setAwake

Пробуждает тело или засыпает.

Body:setAwake( awake )

awakebooleanСостояние сна сна.

Body:setBullet

Установите статус пули тела.

Существует два метода проверки для коллизий тела:

при их местоположении, когда мир обновляется (по умолчанию)

используя непрерывное обнаружение столкновений (CCD)

Метод по умолчанию эффективен, но тело, движущееся очень быстро, может иногда перепрыгивать через другое тело, не создавая столкновения. Тело, установленное как пуля, будет использовать CCD. Это менее эффективно, но гарантированно не прыгать при быстром движении.

Обратите внимание, что статические тела (с нулевой массой) всегда используют ПЗС, поэтому ваши стены не позволят быстро движущемуся телу проходить, даже если это не пуля.

Body:setBullet( status )

statusbooleanСостояние пули тела.

Body:setFixedRotation

Установите, имеет ли тело фиксированное вращение.

Тела с фиксированным вращением не меняют скорость, с которой они вращаются.

Body:setFixedRotation( fixed )

fixedbooleanДолжно ли тело иметь фиксированное вращение.

Body:setGravityScale

Устанавливает новый коэффициент гравитационного масштаба для тела.

Body:setGravityScale( scale )

scalenumberНовый коэффициент гравитационной шкалы.

Body:setInertia

Установите инерцию тела.

Body:setInertia( inertia )

inertianumberНовый момент инерции в килограммах на метр в квадрате.

Body:setLinearDamping

Устанавливает линейное демпфирование тела

См. Тело: getLinearDamping для определения линейного затухания.

Линейное затухание может принимать любое значение от 0 до бесконечности. Однако рекомендуется оставаться между 0 и 0,1. Другие значения заставят объекты выглядеть «floaty».

Body:setLinearDamping( ld )

ldnumberНовое линейное затухание.

Body:setLinearVelocity

Устанавливает новую линейную скорость для тела.

Эта функция ничего не накапливает; любые импульсы, ранее применявшиеся со времени последнего вызова World: обновление будет потеряно.

Body:setLinearVelocity( x, y )

xnumberХ-компонента вектора скорости.
ynumberУ-составляющая вектора скорости.

Body:setMass

Устанавливает массу в килограммах.

Body:setMass( mass )

massnumberМасса в килограммах.

Body:setMassData

Переопределяет вычисленные значения массы.

Body:setMassData( x, y, mass, inertia )

xnumberХ-компонента центра масс в локальных координатах.
ynumberУ-составляющая центра масс в локальных координатах.
massnumberМасса в килограммах.
inertianumberИнерция вращения в килограммах на квадратный метр.

Body:setPosition

Установите положение тела.

Обратите внимание, что это не может быть центром массы тела.

Body:setPosition( x, y )

xnumberПоложение x.
ynumberПозиция y.

Body:setSleepingAllowed

Устанавливает спящее поведение тела.

Body:setSleepingAllowed( allowed )

allowedbooleanИстинно, если тело разрешено спать или ложно, если нет.

Body:setType

Устанавливает новый тип тела.

Body:setType( type )

typeBodyTypeНовый тип.

Body:setUserData

Связывает значение Lua с телом.

Чтобы удалить ссылку, явно передайте nil.

Body:setUserData( value )

valueanyЗначение Lua для связи с телом.

Body:setX

Установите положение x тела.

Body:setX( x )

xnumberПоложение x.

Body:setY

Установите y-позицию тела.

Body:setY( y )

ynumberПозиция y.

ChainShape

ChainShape состоит из нескольких сегментов линии. Его можно использовать для создания границ вашей местности. Форма не имеет объема и может только сталкиваться с PolygonShape и CircleShape.

В отличие от PolygonShape, ChainShape не имеет предела вершин или должен иметь форму выпуклой формы, но самопересечения не поддерживаются.

Constructors

Functions

Supertypes

ChainShape:getChildEdge

Получает дочерний элемент формы как EdgeShape.

EdgeShape = ChainShape:getChildEdge( index )

EdgeShapenumberРебенок как EdgeShape.
indexnumberИндекс ребенка.

ChainShape:getNextVertex

Получает вершину, которая устанавливает соединение с следующей формой.

Установка следующих и предыдущих вершин ChainShape может помочь предотвратить нежелательные столкновения, когда плоская фигура скользит по краю и переходит к новой фигуре.

ChainShape:getNextVertex( x, y )

x (nil)numberX-компонент вершины, или nil, если ChainShape: setNextVertex не был вызван.
y (nil)numberY-компонента вершины, или nil, если ChainShape: setNextVertex не был вызван.

ChainShape:getPoint

Получает точку фигуры.

x, y = ChainShape:getPoint( index )

xnumberХ-координата точки.
ynumberУ-координата точки.
indexnumberИндекс возвращаемой точки.

ChainShape:getPoints

Получает все точки формы.

x1, y1, x2, y2, ... = ChainShape:getPoints()

x1numberХ-координата первой точки.
y1numberУ-координата первой точки.
x2numberХ-координата второй точки.
y2numberУ-координата второй точки.
...numberДополнительные значения x и y.

ChainShape:getPreviousVertex

Получает вершину, которая устанавливает соединение с предыдущей формой.

Установка следующих и предыдущих вершин ChainShape может помочь предотвратить нежелательные столкновения, когда плоская фигура скользит по краю и переходит к новой фигуре.

x, y = ChainShape:getPreviousVertex()

x (nil)numberX-компонент вершины, или nil, если ChainShape: setNextVertex не был вызван.
y (nil)numberY-компонента вершины, или nil, если ChainShape: setNextVertex не был вызван.

ChainShape:getVertexCount

Получает количество вершин, которые имеет форма.

count = ChainShape:getVertexCount()

countnumberЧисло вершин.

ChainShape:setNextVertex

Устанавливает вершину, которая устанавливает соединение с следующей формой.

Это может помочь предотвратить нежелательные столкновения, когда плоская фигура скользит по краю и переходит к новой форме.

ChainShape:setNextVertex( x, y )

xnumberХ-компонента вершины.
ynumberY-компонента вершины.

ChainShape:setPreviousVertex

Устанавливает вершину, которая устанавливает соединение с предыдущей формой.

Это может помочь предотвратить нежелательные столкновения, когда плоская фигура скользит по краю и переходит к новой форме.

ChainShape:setPreviousVertex( x, y )

xnumberХ-компонента вершины.
ynumberY-компонента вершины.

CircleShape

Форма в виде окружности, с определенным радиусом и локальными координатами.

Создать окружность можно с помощью функции love.physics.newCircleShape.

Constructors

Functions

Supertypes

CircleShape:getPoint

Получает центральную точку формы круга.

x, y = CircleShape:getPoint()

xnumberХ-компонента центральной точки круга.
ynumberУ-компонента центральной точки круга.

CircleShape:getRadius

Получает радиус формы круга.

radius = CircleShape:getRadius()

radiusnumberРадиус круга.

CircleShape:setPoint

Устанавливает расположение центра формы круга.

CircleShape:setPoint( x, y )

xnumberX-компонент новой центральной точки круга.
ynumberY-компонента новой центральной точки круга.

CircleShape:setRadius

Устанавливает радиус круга.

CircleShape:setRadius( radius )

radiusnumberРадиус круга.

Contact

Контакты объектов нужны для управления пересечениями объектов.

Functions

Supertypes

Contact:getFixtures

Получает два светильника, которые удерживают фигуры, которые находятся в контакте.

fixtureA, fixtureB = Contact:getFixtures()

fixtureAFixtureПервый светильник.
fixtureBFixtureВторой светильник.

Contact:getFriction

Получите трение между двумя фигурами, которые находятся в контакте.

friction = Contact:getFriction()

frictionnumberТрение контакта.

Contact:getNormal

Получить нормальный вектор между двумя фигурами, которые находятся в контакте.

Эта функция возвращает координаты единичного вектора, который указывает от первой формы ко второй.

nx, ny = Contact:getNormal()

nxnumberХ-компонента нормального вектора.
nynumberУ-компонента нормального вектора.

Contact:getPositions

Получает контактные точки двух сталкивающихся приборов. Может быть один или два очка.

x1, y1, x2, y2 = Contact:getPositions()

x1numberКоордината x первой контактной точки.
y1numberКоордината y первой контактной точки.
x2numberКоордината x второй контактной точки.
y2numberКоордината y второй контактной точки.

Contact:getRestitution

Получите реституцию между двумя фигурами, которые находятся в контакте.

restitution = Contact:getRestitution()

restitutionnumberРеституция между двумя формами.

Contact:isEnabled

Возвращает, включен ли контакт. Столкновение будет игнорироваться, если контакт отключится в обратном вызове preSolve.

enabled = Contact:isEnabled()

enabledbooleanTrue, если включено, false в противном случае.

Contact:isTouching

Получает, касаются ли две сталкивающиеся приспособления друг к другу.

touching = Contact:isTouching()

touchingbooleanПравда, если они касаются или ложь, если нет.

Contact:resetFriction

Сбрасывает контактное трение на значение смеси обоих светильников.

Contact:resetFriction()

Contact:resetRestitution

Сбрасывает репликацию контакта на значение смеси обоих приборов.

Contact:resetRestitution()

Contact:setEnabled

Включает или отключает контакт.

Contact:setEnabled( enabled )

enabledbooleanИстина для включения или ложного отключения.

Contact:setFriction

Устанавливает контактное трение.

Contact:setFriction( friction )

frictionnumberКонтактное трение.

Contact:setRestitution

Устанавливает реституцию контакта.

Contact:setRestitution( restitution )

restitutionnumberРеституция контактов.

EdgeShape

EdgeShape - это сегмент линии. Они могут использоваться для создания границ вашей местности. Форма не имеет объема и может только сталкиваться с PolygonShape и CircleShape.

Constructors

Functions

Supertypes

EdgeShape:getPoints

Получает локальные координаты точек ребер.

x1, y1, x2, y2 = EdgeShape:getPoints()

x1numberХ-компонента первой вершины.
y1numberY-компонента первой вершины.
x2numberX-компонент второй вершины.
y2numberY-компонента второй вершины.

EdgeShape:getNextVertex

Получает вершину, которая устанавливает соединение с следующей формой.

Установка следующих и предыдущих вершин EdgeShape может помочь предотвратить нежелательные столкновения, когда плоская фигура скользит по краю и переходит к новой форме.

x, y = EdgeShape:getNextVertex()

xnumberX-компонент вершины или nil, если EdgeShape: setNextVertex не был вызван.
ynumberY-компонента вершины, или nil, если EdgeShape: setNextVertex не был вызван.

EdgeShape:getPreviousVertex

Получает вершину, которая устанавливает соединение с предыдущей формой.

Установка следующих и предыдущих вершин EdgeShape может помочь предотвратить нежелательные столкновения, когда плоская фигура скользит по краю и переходит к новой форме.

x, y = EdgeShape:getPreviousVertex()

xnumberX-компонент вершины, или nil, если EdgeShape: setPreviousVertex не был вызван.
ynumberY-компонента вершины или nil, если EdgeShape: setPreviousVertex не был вызван.

EdgeShape:setNextVertex

Устанавливает вершину, которая устанавливает соединение с следующей формой.

Это может помочь предотвратить нежелательные столкновения, когда плоская фигура скользит по краю и переходит к новой форме.

EdgeShape:setNextVertex( x, y )

xnumberХ-компонента вершины.
ynumberY-компонента вершины.

EdgeShape:setPreviousVertex

Устанавливает вершину, которая устанавливает соединение с предыдущей формой.

Это может помочь предотвратить нежелательные столкновения, когда плоская фигура скользит по краю и переходит к новой форме.

EdgeShape:setPreviousVertex( x, y )

xnumberХ-компонента вершины.
ynumberY-компонента вершины.

DistanceJoint

Держит два тела на определенной дистанции.

Constructors

Functions

Supertypes

DistanceJoint:getDampingRatio

Получает коэффициент демпфирования.

ratio = DistanceJoint:getDampingRatio()

rationumberКоэффициент демпфирования.

DistanceJoint:getFrequency

Получает скорость ответа.

Hz = DistanceJoint:getFrequency()

HznumberСкорость реакции.

DistanceJoint:getLength

Получает равновесное расстояние между двумя телами.

l = DistanceJoint:getLength()

lnumberДлина между двумя телами.

DistanceJoint:setDampingRatio

Устанавливает коэффициент демпфирования.

DistanceJoint:setDampingRatio( ratio )

rationumberКоэффициент демпфирования.

DistanceJoint:setFrequency

Устанавливает скорость ответа.

DistanceJoint:setFrequency( Hz )

HznumberСкорость реакции.

DistanceJoint:setLength

Устанавливает равновесное расстояние между двумя телами.

DistanceJoint:setLength( l )

lnumberДлина между двумя телами.

Fixture

"Fixture" присоединяют "shape" к "body".

Constructors

Functions

Supertypes

Fixture:destroy

Уничтожает приспособление

Fixture:destroy()

Fixture:getBody

Возвращает тело, к которому прикреплено приспособление.

body = Fixture:getBody()

bodyBodyРодительское тело.

Fixture:getBoundingBox

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

topLeftX, topLeftY, bottomRightX, bottomRightY = Fixture:getBoundingBox( index )

topLeftXnumberПоложение x верхней левой точки.
topLeftYnumberПозиция y верхней левой точки.
bottomRightXnumberПоложение x нижней правой части.
bottomRightYnumberПозиция y нижней правой точки.
index (1)numberОграничительная коробка светильника.

Fixture:getCategory

Получает категории, к которым принадлежит прибор.

category1, category2, ... = Fixture:getCategory()

category1numberПервая категория.
category2numberВторая категория.
...numberДополнительные категории.

Fixture:getDensity

Получает плотность прибора.

density = Fixture:getDensity()

densitynumberПлотность прибора в килограммах на квадратный метр.

Fixture:getFilterData

Получает данные фильтра прибора. Категории и маски кодируются как биты 16-разрядного целого.

categories, mask, group = Fixture:getFilterData()

categoriesnumberКатегории как целое число от 0 до 65535.
masknumberМаска как целое число от 0 до 65535.
groupnumberГруппа как целое число от -32768 до 32767.

Fixture:getFriction

Получает трение светильника.

friction = Fixture:getFriction()

frictionnumberФрикционное трение.

Fixture:getGroupIndex

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

Группы варьируются от -32768 до 32767.

group = Fixture:getGroupIndex()

groupnumberГруппа приборов.

Fixture:getMask

Получает маску категории светильника.

mask1, mask2, ... = Fixture:getMask()

mask1numberПервая категория выбрана маской.
mask2numberВторая категория выбрана маской.
...numberДополнительные категории, выбранные маской.

Fixture:getMassData

Получает массу, ее центр и вращательную инерцию.

x, y, mass, inertia = Fixture:getMassData()

xnumberХ-положение центра масс.
ynumberПоложение y центра масс.
massnumberМасса светильника.
inertianumberВращательная инерция.

Fixture:getRestitution

Получает реституцию светильника.

restitution = Fixture:getRestitution()

restitutionnumberРеституция светильника.

Fixture:getShape

Получает форму приспособления. Эта форма является ссылкой на фактические данные, используемые в симуляции. Можно изменить значения между временными отметками.

Не вызывайте никаких функций в этой форме после того, как материнская арматура была уничтожена. Эта форма укажет на недопустимый адрес памяти и, вероятно, вызовет сбои, если вы будете взаимодействовать с ним.

shape = Fixture:getShape()

shapeShapeФорма приспособления.

Fixture:getUserData

Получает значение Lua, связанное с этим приспособлением.

Используйте эту функцию только в одном потоке.

value = Fixture:getUserData()

valueanyЗначение Lua, связанное с прибором.

Fixture:isDestroyed

Получает, будет ли устройство уничтожено. Разрушенные светильники не могут быть использованы.

destroyed = Fixture:isDestroyed()

destroyedbooleanБудет ли устройство уничтожено.

Fixture:isSensor

Получает, является ли прибор датчиком.

sensor = Fixture:isSensor()

sensorbooleanЕсли прибор является датчиком.

Fixture:rayCast

Отбрасывает луч против формы светильника и возвращает нормальный вектор поверхности и положение линии, где попадает луч. Если луч пропустил форму, то будет возвращено ноль.

Луч начинается с первой точки входной линии и идет к второй точке линии. Четвертым аргументом является максимальное расстояние, которое луч будет перемещаться как масштабный коэффициент длины входной линии.

Параметр childIndex используется для указания того, какой дочерний элемент родительской формы, такой как ChainShape, будет подвергаться лучу. Для ChainShapes индекс 1 является первым ребром в цепочке. Рэй, отбрасывающий родительскую форму, будет проверять только указанный дочерний элемент, поэтому, если вы хотите проверить каждую форму родителя, вы должны пропустить все его дочерние элементы.

Мировое положение удара можно рассчитать, умножив вектор линии на третье возвращаемое значение и добавив его в начальную точку линии.

hitx, hity = x1 + (x2 - x1) * доля, y1 + (y2 - y1) * доля

x, y, fraction = Fixture:rayCast( x1, y1, x2, y1, maxFraction, childIndex )

xnumberПоложение x, в котором луч пересекается с формой.
ynumberПоложение y, в котором луч пересекается с формой.
fractionnumberПозиция на входном векторе, где пересечение произошло как число от 0 до 1.
x1numberПоложение x начальной точки луча.
y1numberПоложение y начальной точки луча.
x2numberПоложение x конечной точки луча.
y1numberПоложение y конечной точки луча.
maxFractionnumberМаксимальное расстояние, на которое луч будет перемещаться как число от 0 до 1.
childIndex (1)numberИндекс ребенка, на который падает луч.

Fixture:setCategory

Устанавливает категории, к которым принадлежит приспособление. Может быть до 16 категорий, представленных как число от 1 до 16.

Fixture:setCategory( category1, category2, ... )

category1numberПервая категория.
category2numberВторая категория.
...numberДополнительные категории.

Fixture:setDensity

Устанавливает плотность прибора. Тело вызова: resetMassData, если это должно вступить в силу немедленно.

Fixture:setDensity( density )

densitynumberПлотность прибора в килограммах на квадратный метр.

Fixture:setFilterData

Установка фильтрации данных "fixture".

Группы, категории и маска могут быть использованы для определения поведения столкновения "fixture".

Если две "fixture" в одной группе, то они либо всегда сталкиваются, если группа является положительной, или никогда не сталкиваются, если группа отрицательная. Если группа равна нулю или они не совпадают, то происходит проверка контакта между "mask". "Fixture" не сталкиваются, если это не так. Если они в разных категориях, возвращается значение контакта. "Fixture" всегда сталкиваются, если ни одно значение не было установлено.

Там может быть до 16 категорий. Категории и маски кодируются в виде битов 16-разрядного числа.

Fixture:setFilterData( categories, mask, group )

categoriesnumberКатегории как целое число от 0 до 65535.
masknumberМаска как целое число от 0 до 65535.
groupnumberГруппа как целое число от -32768 до 32767.

Fixture:setFriction

Устанавливает трение прибора.

Fixture:setFriction( friction )

frictionnumberФрикционное трение.

Fixture:setGroupIndex

Устанавливает группу, к которой принадлежит прибор. Светильники с той же группой всегда будут сталкиваться, если группа положительна или никогда не сталкивается, если она отрицательная. Группа нуль означает отсутствие группы.

Группы варьируются от -32768 до 32767.

Fixture:setGroupIndex( group )

groupnumberГруппа как целое число от -32768 до 32767.

Fixture:setMask

Устанавливает маску категории светильника. Может быть до 16 категорий, представленных как число от 1 до 16.

Это приспособление будет сталкиваться с светильниками, которые находятся в выбранных категориях, если другое приспособление также имеет категорию этого приспособления.

Fixture:setMask( mask1, mask2, ... )

mask1numberПервая категория.
mask2numberВторая категория.
...numberДополнительные категории.

Fixture:setRestitution

Устанавливает реставрацию прибора.

Fixture:setRestitution( restitution )

restitutionnumberРеституция светильника.

Fixture:setSensor

Устанавливает, должен ли прибор работать как датчик.

Датчик не производит ответы на столкновения, но для этого прибора все равно будут вызваны обратные вызовы начала и конца.

Fixture:setSensor( sensor )

sensorbooleanСостояние датчика.

Fixture:setUserData

Связывает значение Lua с прибором.

Используйте эту функцию только в одном потоке.

Fixture:setUserData( value )

valueanyЗначение Lua, связанное с прибором.

Fixture:testPoint

Проверяет, находится ли точка внутри формы светильника.

isInside = Fixture:testPoint( x, y )

isInsidebooleanИстина, если точка внутри или ложна, если она снаружи.
xnumberПозиция x точки.
ynumberПозиция y точки.

FrictionJoint

Фрикцион Joint применяет трение к телу.

Constructors

Functions

Supertypes

FrictionJoint:getMaxForce

Получает максимальную силу трения в Ньютонах.

force = FrictionJoint:getMaxForce()

forcenumberМаксимальная сила в Ньютонах.

FrictionJoint:getMaxTorque

Получает максимальный крутящий момент в Ньютонах.

torque = FrictionJoint:getMaxTorque()

torquenumberМаксимальный крутящий момент в Ньютонах.

FrictionJoint:setMaxForce

Устанавливает максимальную силу трения в Ньютонах.

FrictionJoint:setMaxForce( maxForce )

maxForcenumberМаксимальная сила в Ньютонах.

FrictionJoint:setMaxTorque

Устанавливает максимальный крутящий момент в Ньютонах.

FrictionJoint:setMaxTorque( torque )

torquenumberМаксимальный крутящий момент в Ньютонах.

GearJoint

Держит тела таким образом, что они действуют как шестеренки.

Constructors

Functions

Supertypes

GearJoint:getJoints

Получите соединения, соединенные этим GearJoint.

joint1, joint2 = GearJoint:getJoints()

joint1JointПервый подключенный сустав.
joint2JointВторой соединенный сустав.

GearJoint:getRatio

Получите соотношение зубчатого зацепления.

ratio = GearJoint:getRatio()

rationumberСоотношение сустава.

GearJoint:setRatio

Установите отношение зубчатого шкива.

GearJoint:setRatio( ratio )

rationumberНовое соотношение сустава.

Joint

Соединяет вместе несколько тел, взаимодействующих разными сопсобами.

Functions

Supertypes

Subtypes

Joint:destroy

Явно уничтожает Joint. Если у вас нет времени ждать сбора мусора, эта функция может быть использована для немедленного освобождения объекта, но обратите внимание, что при попытке использовать объект после вызова этой функции произойдет ошибка.

Joint:destroy()

Joint:getAnchors

Получите опорные точки сустава.

x1, y1, x2, y2 = Joint:getAnchors()

x1numberХ-компонент якоря на корпусе 1.
y1numberY-компонент якоря на корпусе 1.
x2numberХ-компонент якоря на корпусе 2.
y2numberY-компонент якоря на корпусе 2.

Joint:getBodies

Получает тела, к которым прикреплен Сустав.

bodyA, bodyB = Joint:getBodies()

bodyABodyПервый орган.
bodyBBodyВторой орган.

Joint:getCollideConnected

Получает, сталкиваются ли связанные тела.

c = Joint:getCollideConnected()

cbooleanИстинно, если они сталкиваются, в противном случае - false.

Joint:getReactionForce

Получает силу реакции на корпус 2 на совместном якоре.

x, y = Joint:getReactionForce()

xnumberX составляющая силы.
ynumberУ-составляющая силы.

Joint:getReactionTorque

Получает реактивный крутящий момент на втором корпусе.

torque = Joint:getReactionTorque( invdt )

torquenumberРеактивный крутящий момент на втором корпусе.
invdtnumberКак долго сила применяется. Обычно обратный временной шаг или 1 / dt.

Joint:getType

Возвращает строку, представляющую тип.

type = Joint:getType()

typeJointTypeСтрока с именем типа Joint.

Joint:getUserData

Получает значение Lua, связанное с этим суставом.

value = Joint:getUserData()

valueanyЗначение Lua, связанное с Joint.

Joint:isDestroyed

Получает, уничтожен ли сустав. Разрушенные суставы не могут быть использованы.

destroyed = Joint:isDestroyed()

destroyedbooleanУничтожен ли Союз.

Joint:setUserData

Связывает значение Lua с Joint.

Чтобы удалить ссылку, явно передайте nil.

Joint:setUserData( value )

valueanyЗначение Lua ассоциируется с Joint.

MotorJoint

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

Constructors

Functions

Supertypes

MotorJoint:getAngularOffset

Получает целевой угловой сдвиг между двумя телами, к которым прикреплен сустав.

angularoffset = MotorJoint:getAngularOffset()

angularoffsetnumberУгловое смещение цели в радианах: угол второго тела минус угол первого тела.

MotorJoint:getLinearOffset

Получает целевое линейное смещение между двумя телами, к которым прикреплен сустав.

x, y = MotorJoint:getLinearOffset()

xnumberКомпонент x целевого линейного смещения относительно первого тела.
ynumberY-составляющая целевого линейного смещения относительно первого тела.

MotorJoint:setAngularOffset

Устанавливает смещение целевого угла между двумя телами, к которым прикреплен сустав.

MotorJoint:setAngularOffset( angularoffset )

angularoffsetnumberУгловое смещение цели в радианах: угол второго тела минус угол первого тела.

MotorJoint:setLinearOffset

Устанавливает целевое линейное смещение между двумя телами, к которым прикреплен сустав.

MotorJoint:setLinearOffset( x, y )

xnumberКомпонент x целевого линейного смещения относительно первого тела.
ynumberY-составляющая целевого линейного смещения относительно первого тела.

MouseJoint

Для управления объектами с помощью мыши.

Создается функцией love.physics.newMouseJoint.

Constructors

Functions

Supertypes

MouseJoint:getDampingRatio

Получает коэффициент демпфирования.

ratio = MouseJoint:getDampingRatio()

rationumberНовый коэффициент демпфирования.

MouseJoint:getFrequency

Получает частоту.

freq = MouseJoint:getFrequency()

freqnumberЧастота в герцах.

MouseJoint:getMaxForce

Получает максимально допустимую силу.

f = MouseJoint:getMaxForce()

fnumberМаксимальное допустимое усилие.

MouseJoint:getTarget

Получает целевую точку.

x, y = MouseJoint:getTarget()

xnumberКомпонент x цели.
ynumberКомпонент x цели.

MouseJoint:setDampingRatio

Устанавливает новый коэффициент демпфирования.

MouseJoint:setDampingRatio( ratio )

rationumberНовый коэффициент демпфирования.

MouseJoint:setFrequency

Устанавливает новую частоту.

MouseJoint:setFrequency( freq )

freqnumberНовая частота в герцах.

MouseJoint:setMaxForce

Устанавливает максимально допустимую силу.

MouseJoint:setMaxForce( f )

fnumberМаксимальное допустимое усилие.

MouseJoint:setTarget

Устанавливает целевую точку.

MouseJoint:setTarget( x, y )

xnumberКомпонент x цели.
ynumberY-компонент цели.

PolygonShape

Выпуклый многоугольник с не более чем 8 сторонами.

Создать форму многоугольника можно с помощью love.physics.newPolygonShape или love.physics.newRectangleShape.

Constructors

Functions

Supertypes

PolygonShape:getPoints

Получить локальные координаты вершин многоугольника.

Эта функция имеет переменное количество возвращаемых значений. Его можно использовать вложенным способом с love.graphics.polygon.

Эта функция может иметь до 16 возвращаемых значений, так как она возвращает два значения для каждой вершины в многоугольнике. Другими словами, он может вернуть координаты до 8 пунктов.

x1, y1, x2, y2, ... = PolygonShape:getPoints()

x1numberХ-компонента первой вершины.
y1numberY-компонента первой вершины.
x2numberX-компонент второй вершины.
y2numberY-компонента второй вершины.
...numberДополнительные значения x и y.

PrismaticJoint

Ограничивает движение между телами по одной общей оси.

Constructors

Functions

Supertypes

PrismaticJoint:getAxis

Получает вектор оси космического пространства призматического сустава.

x, y = PrismaticJoint:getAxis()

xnumberКоордината оси x вектора осей мирового пространства.
ynumberКоордината оси Y вектора оси мира.

PrismaticJoint:getJointSpeed

Получите текущую общую угловую скорость.

s = PrismaticJoint:getJointSpeed()

snumber.

PrismaticJoint:getJointTranslation

Получите текущий совместный перевод.

t = PrismaticJoint:getJointTranslation()

tnumberСовместный перевод, обычно в метрах.

PrismaticJoint:getLimits

.

lower, upper = PrismaticJoint:getLimits()

lowernumberНижний предел, обычно в метрах.
uppernumberВерхний предел, обычно в метрах.

PrismaticJoint:getLowerLimit

Получает нижний предел.

lower = PrismaticJoint:getLowerLimit()

lowernumberНижний предел, обычно в метрах.

PrismaticJoint:getMaxMotorForce

Получает максимальную силу двигателя.

f = PrismaticJoint:getMaxMotorForce()

fnumberМаксимальная сила двигателя, обычно в N.

PrismaticJoint:getMotorForce

Получите текущую двигательную силу.

f = PrismaticJoint:getMotorForce()

fnumberТекущая двигательная сила, обычно в N.

PrismaticJoint:getMotorSpeed

Получает скорость двигателя.

s = PrismaticJoint:getMotorSpeed()

snumberСкорость двигателя, обычно в метрах в секунду.

PrismaticJoint:getUpperLimit

Получает верхний предел.

upper = PrismaticJoint:getUpperLimit()

uppernumberВерхний предел, обычно в метрах.

PrismaticJoint:hasLimitsEnabled

Проверяет, разрешены ли ограничения.

enabled = PrismaticJoint:hasLimitsEnabled()

enabledbooleanTrue, если включено, false в противном случае.

PrismaticJoint:isMotorEnabled

Проверяет, включен ли двигатель.

enabled = PrismaticJoint:isMotorEnabled()

enabledbooleanTrue, если включено, false, если отключено.

PrismaticJoint:setLimits

Устанавливает пределы.

PrismaticJoint:setLimits( lower, upper )

lowernumberНижний предел, обычно в метрах.
uppernumberВерхний предел, обычно в метрах.

PrismaticJoint:setLimitsEnabled

Включает или отключает пределы сустава.

PrismaticJoint:setLimitsEnabled( enable )

enablebooleanИстина для включения, false для отключения.

PrismaticJoint:setLowerLimit

Устанавливает нижний предел.

PrismaticJoint:setLowerLimit( lower )

lowernumberНижний предел, обычно в метрах.

PrismaticJoint:setMaxMotorForce

Установите максимальную силу двигателя.

PrismaticJoint:setMaxMotorForce( f )

fnumberМаксимальная сила двигателя, обычно в N.

PrismaticJoint:setMotorEnabled

Запускает или останавливает совместный двигатель.

PrismaticJoint:setMotorEnabled( enable )

enablebooleanИстина для включения, false для отключения.

PrismaticJoint:setMotorSpeed

Устанавливает скорость двигателя.

PrismaticJoint:setMotorSpeed( s )

snumberСкорость двигателя, обычно в метрах в секунду.

PrismaticJoint:setUpperLimit

Устанавливает верхний предел.

PrismaticJoint:setUpperLimit( upper )

uppernumberВерхний предел, обычно в метрах.

PulleyJoint

Позволяет симулировать тела, соединенные шкивом.

Constructors

Functions

Supertypes

PulleyJoint:getConstant

Получите общую длину веревки.

length = PulleyJoint:getConstant()

lengthnumberДлина веревки в суставе.

PulleyJoint:getGroundAnchors

Получите опорные позиции земли в мировых координатах.

a1x, a1y, a2x, a2y = PulleyJoint:getGroundAnchors()

a1xnumberКоордината x первого якоря.
a1ynumberКоордината y первого якоря.
a2xnumberКоордината x второго якоря.
a2ynumberКоордината y второго якоря.

PulleyJoint:getLengthA

Получите текущую длину сегмента каната, прикрепленного к первому корпусу.

length = PulleyJoint:getLengthA()

lengthnumberДлина сегмента каната.

PulleyJoint:getLengthB

Получите текущую длину сегмента каната, прикрепленного ко второму телу.

length = PulleyJoint:getLengthB()

lengthnumberДлина сегмента каната.

PulleyJoint:getMaxLengths

Получите максимальную длину сегментов каната.

len1, len2 = PulleyJoint:getMaxLengths()

len1numberМаксимальная длина первого сегмента каната.
len2numberМаксимальная длина второго сегмента каната.

PulleyJoint:getRatio

Получите соотношение шкива.

ratio = PulleyJoint:getRatio()

rationumberКоэффициент шкива соединения.

PulleyJoint:setConstant

Установите общую длину веревки.

Установка новой длины веревки обновляет значения максимальной длины сустава.

PulleyJoint:setConstant( length )

lengthnumberНовая длина веревки в суставе.

PulleyJoint:setMaxLengths

Установите максимальные длины сегментов каната.

Физический модуль также налагает максимальные значения для сегментов каната. Если параметры превышают эти значения, максимальные значения устанавливаются вместо запрошенных значений.

PulleyJoint:setMaxLengths( max1, max2 )

max1numberНовая максимальная длина первого сегмента.
max2numberНовая максимальная длина второго сегмента.

PulleyJoint:setRatio

Установите соотношение шкива.

PulleyJoint:setRatio( ratio )

rationumberНовое отношение шкива соединения.

RevoluteJoint

Позволяет вращать тела относительно общей точки.

Создается функцией love.physics.newRevoluteJoint.

Constructors

Functions

Supertypes

RevoluteJoint:setLimitsEnabled

Включает или отключает общие ограничения.

RevoluteJoint:setLimitsEnabled( enable )

enablebooleanИстина для включения, false для отключения.

RevoluteJoint:setMotorEnabled

Запускает или останавливает совместный двигатель.

RevoluteJoint:setMotorEnabled( enable )

enablebooleanИстина для включения, false для отключения.

RevoluteJoint:getJointAngle

Получите текущий угол соединения.

angle = RevoluteJoint:getJointAngle()

anglenumberУгол соединения в радианах.

RevoluteJoint:getJointSpeed

Получите текущую общую угловую скорость.

s = RevoluteJoint:getJointSpeed()

snumberСкорость поперечного вращения в радианах / секунда.

RevoluteJoint:getLimits

.

lower, upper = RevoluteJoint:getLimits()

lowernumberНижний предел, в радианах.
uppernumberВерхний предел, в радианах.

RevoluteJoint:getLowerLimit

Получает нижний предел.

lower = RevoluteJoint:getLowerLimit()

lowernumberНижний предел, в радианах.

RevoluteJoint:getMaxMotorTorque

Получает максимальную силу двигателя.

f = RevoluteJoint:getMaxMotorTorque()

fnumberМаксимальная сила двигателя, Нм.

RevoluteJoint:getMotorSpeed

Получает скорость двигателя.

s = RevoluteJoint:getMotorSpeed()

snumberСкорость двигателя, радианы в секунду.

RevoluteJoint:getMotorTorque

Получите текущую двигательную силу.

f = RevoluteJoint:getMotorTorque()

fnumberСила тока в Нм.

RevoluteJoint:getUpperLimit

Получает верхний предел.

upper = RevoluteJoint:getUpperLimit()

uppernumberВерхний предел, в радианах.

RevoluteJoint:hasLimitsEnabled

Проверяет, включены ли лимиты.

enabled = RevoluteJoint:hasLimitsEnabled()

enabledbooleanTrue, если включено, false в противном случае.

RevoluteJoint:isMotorEnabled

Проверяет, включен ли двигатель.

enabled = RevoluteJoint:isMotorEnabled()

enabledbooleanTrue, если включено, false, если отключено.

RevoluteJoint:setLimits

Устанавливает пределы.

RevoluteJoint:setLimits( lower, upper )

lowernumberНижний предел, в радианах.
uppernumberВерхний предел, в радианах.

RevoluteJoint:setLowerLimit

Устанавливает нижний предел.

RevoluteJoint:setLowerLimit( lower )

lowernumberНижний предел, в радианах.

RevoluteJoint:setMaxMotorTorque

Установите максимальную силу двигателя.

RevoluteJoint:setMaxMotorTorque( f )

fnumberМаксимальная сила двигателя, Нм.

RevoluteJoint:setMotorSpeed

Устанавливает скорость двигателя.

RevoluteJoint:setMotorSpeed( s )

snumberСкорость двигателя, радианы в секунду.

RevoluteJoint:setUpperLimit

Устанавливает верхний предел.

RevoluteJoint:setUpperLimit( upper )

uppernumberВерхний предел, в радианах.

RopeJoint

RopeJoint обеспечивает максимальное расстояние между двумя точками на двух телах. Это не имеет никакого другого эффекта.

Constructors

Functions

Supertypes

RopeJoint:getMaxLength

Получает максимальную длину RopeJoint.

maxLength = RopeJoint:getMaxLength()

maxLengthnumberМаксимальная длина RopeJoint.

Shape

Формы объектов, используемых для контроля массы и столкновений.

Каждая форма является либо кругом, либо многоугольником, и прикреплена к телу.

Создавайте новую форму с love.physics.newCircleShape, love.physics.newPolygonShape или love.physics.newRectangleShape.

Constructors

Functions

Supertypes

Subtypes

Shape:computeAABB

Получает точки ограничивающей рамки для преобразованной формы.

topLeftX, topLeftY, bottomRightX, bottomRightY = Shape:computeAABB( tx, ty, tr, childIndex )

topLeftXnumberПоложение x верхней левой точки.
topLeftYnumberПозиция y верхней левой точки.
bottomRightXnumberПоложение x нижней правой части.
bottomRightYnumberПозиция y нижней правой точки.
txnumberПеревод формы по оси х.
tynumberПеревод формы по оси y.
trnumberВращение формы.
childIndex (1)numberИндекс ребенка для вычисления ограничивающей рамки.

Shape:computeMass

Вычисляет свойства массы для формы с заданной плотностью.

x, y, mass, inertia = Shape:computeMass( density )

xnumberХ постулация центра масс.
ynumberПостановка центра масс.
massnumberМасса формы.
inertianumberВращательная инерция.
densitynumberПлотность формы.

Shape:getChildCount

Получает количество детей, которые имеют фигура.

count = Shape:getChildCount()

countnumberЧисло детей.

Shape:getRadius

Получает радиус формы.

radius = Shape:getRadius()

radiusnumberРадиус формы.

Shape:getType

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

type = Shape:getType()

typeShapeTypeТип формы.

Shape:rayCast

Отбрасывает луч против формы и возвращает нормальный вектор поверхности и положение линии, где попадает луч. Если луч пропустил форму, то будет возвращено ноль. Форма может быть преобразована, чтобы попасть в нужное положение.

Луч начинается с первой точки входной линии и идет к второй точке линии. Четвертым аргументом является максимальное расстояние, которое луч будет перемещаться как масштабный коэффициент длины входной линии.

Параметр childIndex используется для указания того, какой дочерний элемент родительской формы, такой как ChainShape, будет подвергаться лучу. Для ChainShapes индекс 1 является первым ребром в цепочке. Рэй, отбрасывающий родительскую форму, будет проверять только указанный дочерний элемент, поэтому, если вы хотите проверить каждую форму родителя, вы должны пропустить все его дочерние элементы.

Мировое положение удара можно рассчитать, умножив вектор линии на третье возвращаемое значение и добавив его в начальную точку линии.

hitx, hity = x1 + (x2 - x1) * доля, y1 + (y2 - y1) * доля

xn, yn, fraction = Shape:rayCast( x1, y1, x2, y2, maxFraction, tx, ty, tr, childIndex )

xnnumberХ-компонента нормального вектора края, где луч попадает в форму.
ynnumberУ-компонента нормального вектора края, где луч попадает в форму.
fractionnumberПозиция на входной линии, где пересечение произошло как фактор длины линии.
x1numberПозиция x начальной точки входной линии.
y1numberПозиция y исходной точки входной линии.
x2numberПозиция x конечной точки входной линии.
y2numberПозиция y конечной точки входной линии.
maxFractionnumberПараметр длины луча.
txnumberПеревод формы по оси х.
tynumberПеревод формы по оси y.
trnumberВращение формы.
childIndex (1)numberИндекс ребенка, на который падает луч.

Shape:testPoint

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

hit = Shape:testPoint( x, y )

hitbooleanИстинно, если внутри, ложно, если снаружи
xnumberХ-компонента точки.
ynumberY-компонент точки.

WeldJoint

WeldJoint по существу склеивает два тела вместе.

Constructors

Functions

Supertypes

WeldJoint:getDampingRatio

Получает коэффициент демпфирования сустава.

ratio = WeldJoint:getDampingRatio()

rationumberКоэффициент демпфирования.

WeldJoint:getFrequency

Получает частоту.

freq = WeldJoint:getFrequency()

freqnumberЧастота в герцах.

WeldJoint:setDampingRatio

Новый коэффициент демпфирования.

WeldJoint:setDampingRatio( ratio )

rationumberНовый коэффициент демпфирования.

WeldJoint:setFrequency

Устанавливает новую частоту.

WeldJoint:setFrequency( freq )

freqnumberНовая частота в герцах.

WheelJoint

Ограничивает точку на втором теле на линию на первом теле.

Constructors

Functions

Supertypes

WheelJoint:getAxis

Получает вектор оси космического пространства колесного сустава.

x, y = WheelJoint:getAxis()

xnumberКоордината оси x вектора осей мирового пространства.
ynumberКоордината оси Y вектора оси мира.

WheelJoint:getJointSpeed

Получает текущую совместную скорость перевода.

speed = WheelJoint:getJointSpeed()

speednumberСкорость перевода сустава в метрах в секунду.

WheelJoint:getJointTranslation

Получает текущий совместный перевод.

position = WheelJoint:getJointTranslation()

positionnumberПеревод сустава в метрах.

WheelJoint:getMaxMotorTorque

Получает максимальный крутящий момент двигателя.

maxTorque = WheelJoint:getMaxMotorTorque()

maxTorquenumberМаксимальный крутящий момент совместного двигателя в ньютонах.

WheelJoint:getMotorSpeed

Получает скорость двигателя.

speed = WheelJoint:getMotorSpeed()

speednumberСкорость совместного двигателя в радианах в секунду.

WheelJoint:getMotorTorque

Возвращает текущий крутящий момент на двигателе.

torque = WheelJoint:getMotorTorque( invdt )

torquenumberКрутящий момент на двигателе в ньютонах.
invdtnumberКак долго сила применяется. Обычно обратный временной шаг или 1 / dt.

WheelJoint:getSpringDampingRatio

Получает коэффициент демпфирования.

ratio = WheelJoint:getSpringDampingRatio()

rationumberКоэффициент демпфирования.

WheelJoint:getSpringFrequency

Получает частоту пружины.

freq = WheelJoint:getSpringFrequency()

freqnumberЧастота в герцах.

WheelJoint:setMaxMotorTorque

Устанавливает новый максимальный крутящий момент двигателя.

WheelJoint:setMaxMotorTorque( maxTorque )

maxTorquenumberНовый максимальный крутящий момент для совместного двигателя в новинках.

WheelJoint:setMotorEnabled

Запускает и останавливает совместный двигатель.

WheelJoint:setMotorEnabled( enable )

enablebooleanTrue включает двигатель, а false отключает его.

WheelJoint:setMotorSpeed

Устанавливает новую скорость для двигателя.

WheelJoint:setMotorSpeed( speed )

speednumberНовая скорость для совместного двигателя в радианах в секунду.

WheelJoint:setSpringDampingRatio

Устанавливает новый коэффициент демпфирования.

WheelJoint:setSpringDampingRatio( ratio )

rationumberНовый коэффициент демпфирования.

WheelJoint:setSpringFrequency

Устанавливает новую частоту пружины.

WheelJoint:setSpringFrequency( freq )

freqnumberНовая частота в герцах.

World

Объект, содержащий все тела и соединения.

Constructors

Functions

Supertypes

World:destroy

Уничтожает мир и вместе с ним все содержавшиеся в нём тела, соединения, крепежи и формы.

Произойдёт ошибка, если попытаться обратиться к уничтоженному объекту после вызова этой функции.

World:destroy()

World:getBodyCount

Получите количество тел в мире.

n = World:getBodyCount()

nnumberЧисло тел в мире.

World:getBodyList

Получает таблицу со всеми телами.

bodies = World:getBodyList()

bodiestableПоследовательность со всеми телами.

World:getCallbacks

Получает функции для обратных вызовов во время мирового обновления.

beginContact, endContact, preSolve, postSolve = World:getCallbacks()

beginContactfunctionПолучается, когда два светильника начинают перекрываться.
endContactfunctionПолучается, когда два светильника перестают перекрываться.
preSolvefunctionПолучает вызов до разрешения конфликта.
postSolvefunctionПолучается после того, как столкновение разрешено.

World:getContactCount

Получает количество контактов в мире.

n = World:getContactCount()

nnumberЧисло контактов в мире.

World:getContactFilter

Получает функцию фильтрации столкновений.

contactFilter = World:getContactFilter()

contactFilterfunctionФункция, которая обрабатывает фильтрацию контактов.

World:getContactList

Получает таблицу со всеми контактами.

contacts = World:getContactList()

contactstableПоследовательность со всеми контактами.

World:getGravity

Получите гравитацию мира.

x, y = World:getGravity()

xnumberX компонента силы тяжести.
ynumberУ-составляющая силы тяжести.

World:getJointCount

Получите количество суставов в мире.

n = World:getJointCount()

nnumberЧисло суставов в мире.

World:getJointList

Получает таблицу со всеми суставами.

joints = World:getJointList()

jointstableПоследовательность со всеми суставами.

World:isDestroyed

Получает, уничтожен ли мир. Разрушенные миры нельзя использовать.

destroyed = World:isDestroyed()

destroyedbooleanУничтожен мир.

World:isLocked

Получает, если мир обновляет свое состояние.

Это вернет true внутри обратных вызовов из World: setCallbacks.

locked = World:isLocked()

lockedbooleanБудет верно, если мир находится в процессе обновления своего состояния.

World:isSleepingAllowed

Получает поведение сна в мире.

allowSleep = World:isSleepingAllowed()

allowSleepbooleanПравда, если телам разрешено спать или ложно, если нет.

World:queryBoundingBox

Вызывает функцию для каждого прибора внутри указанной области.

World:queryBoundingBox( topLeftX, topLeftY, bottomRightX, bottomRightY, callback )

topLeftXnumberПоложение x верхней левой точки.
topLeftYnumberПозиция y верхней левой точки.
bottomRightXnumberПоложение x нижней правой части.
bottomRightYnumberПозиция y нижней правой точки.
callbackfunctionЭта функция получает один аргумент, прибор и возвращает логическое значение. Поиск будет продолжен, если он верен или остановится, если он является ложным.

World:rayCast

Отбрасывает луч и вызывает функцию для каждого пересекающегося светильника.

World:rayCast( x1, y1, x2, y2, callback )

x1numberПоложение x начальной точки луча.
y1numberПозиция y начальной точки луча.
x2numberПоложение x конечной точки луча.
y2numberПоложение y конечной точки луча.
callbackfunctionЭта функция получает шесть аргументов и должна возвращать число.

World:setCallbacks

Устанавливает функции для обратных вызовов коллизий во время мирового обновления.

В качестве аргументов можно указать четыре функции Lua. Значение nil удаляет функцию.

При вызове каждой функции будут переданы три аргумента. Первые два аргумента - встречные светильники, а третий аргумент - Контакт между ними. Обратный вызов PostSolve дополнительно получает нормальный и касательный импульс для каждой точки контакта.

World:setCallbacks( beginContact, endContact, preSolve, postSolve )

beginContactfunctionПолучается, когда два светильника начинают перекрываться.
endContactfunctionПолучается, когда два светильника перестают перекрываться.
preSolvefunctionПолучает вызов до разрешения конфликта.
postSolvefunctionПолучается после того, как столкновение разрешено.

World:setContactFilter

Устанавливает функцию фильтрации столкновений.

Если фильтрация групп и категорий не генерирует решение о столкновении, эта функция вызывается с двумя объектами в качестве аргументов. Функция должна возвращать логическое значение, где true означает, что приборы будут сталкиваться, а false означает, что они будут проходить друг через друга.

World:setContactFilter( filter )

filterfunctionФункция обработки контактной фильтрации.

World:setGravity

Установите гравитацию мира.

World:setGravity( x, y )

xnumberX компонента силы тяжести.
ynumberУ-составляющая силы тяжести.

World:setSleepingAllowed

Установите поведение сна в мире.

Спящий организм гораздо эффективнее имитировать, чем при бодрствовании.

Если спать разрешено, любое тело, которое отдохнуло, будет спать.

World:setSleepingAllowed( allowSleep )

allowSleepbooleanПравда, если телам разрешено спать или ложно, если нет.

World:translateOrigin

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

World:translateOrigin( x, y )

xnumberХ-компонента нового происхождения по отношению к старому происхождению.
ynumberУ-компонента нового происхождения относительно старого происхождения.

World:update

Обновите состояние мира.

World:update( dt )

dtnumberВремя (в секундах), чтобы продвинуть физическое моделирование.

love.sound

Types

love.sound.newSoundData

Создает объект SoundData из Decoder.

Полностью расширяет закодированные данные звука в исходные данные звука. Делайте это только для небольших файлов.

soundData = love.sound.newSoundData( file )

soundDataSoundDataНовый объект SoundData.
filestring / File / FileDataПуть к файлу / File / FileData файла для загрузки.

soundData = love.sound.newSoundData( samples, samplingRate, bitRate, channelCount )

soundDataSoundDataНовый объект SoundData или 0, если произошла ошибка.
samplesnumberОбщее количество сэмплов.
samplingRate (44100)numberСэмплов в секунду
bitRate (16)numberБит на сэмпл (8 или 16).
channelCount (2)numberЛибо 1 для моно, либо 2 для стерео.

SoundData

Содержит не обработанные аудио данные.

Чтобы воспроизвести эти данные, вы должны сначала загрузить их в объект Source.

Constructors

Functions

Supertypes

SoundData:getBitDepth

Получает количество бит на выборку.

bits = SoundData:getBitDepth()

bitsnumberЛибо 8, либо 16.

SoundData:getChannels

Возвращает количество каналов в потоке.

channels = SoundData:getChannels()

channelsnumber1 для моно, 2 для стерео.

SoundData:getDuration

Возвращает продолжительность звуковых данных.

duration = SoundData:getDuration()

durationnumberДлительность звуковых данных в секундах.

SoundData:getSample

Возвращает образец в указанной позиции.

sample = SoundData:getSample( i )

samplenumberНормализованный образец (диапазон от -1,0 до 1,0).
inumberЦелочисленное значение, определяющее положение образца (0 указывает на первый образец).

SoundData:getSampleCount

Возвращает количество выборок на канал SoundData.

count = SoundData:getSampleCount()

countnumberОбщее количество образцов.

SoundData:getSampleRate

Получает частоту дискретизации SoundData.

rate = SoundData:getSampleRate()

ratenumberКоличество выборок в секунду.

SoundData:setSample

Устанавливает образец в указанной позиции.

SoundData:setSample( i, sample )

inumberПоложение образца (0 означает первый образец).
samplenumberНормализованный образец (диапазон от -1,0 до 1,0).

love.system

Functions

Enums

love.system.getClipboardText

Получает текст из буфера обмена.

text = love.system.getClipboardText()

textstringТекст который содержится в буфере обмена системы.

love.system.getOS

Получает текущую операционную систему. LÖVE абстрагирует необходимость знать текущую операционную систему, но есть несколько случаев, когда это может быть полезно (особенно в сочетании с os.execute.)

osString = love.system.getOS()

osStringstringТекущая операционная система. "OS X", "Windows" или "Linux".

love.system.getPowerInfo

Получает информацию об источнике питания системы.

state, percent, seconds = love.system.getPowerInfo()

statePowerStateОсновное состояние источника питания.
percentnumberПроцент оставшегося заряда батареи составляет от 0 до 100. Ноль, если значение не может быть определено или батареи нет.
secondsnumberОтработано несколько секунд автономной работы. nil, если значение не может быть определено или нет батареи.

love.system.getProcessorCount

Получает количество ядер процессора в системе.

Число включает в себя потоки, если включены технологии, такие как Hyper-threading от Intel. Например, на 4-ядерном процессоре с Hyper-threading эта функция вернет 8.

cores = love.system.getProcessorCount()

coresnumberПолучает количество ядер процессора в системе.

love.system.openURL

Открывает URL-адрес с веб-браузером пользователя или файловым браузером.

success = love.system.openURL( url )

successbooleanБыл ли URL успешно открыт.
urlstringURL-адрес для открытия. Должен быть отформатирован как правильный URL. Чтобы открыть файл или папку, «файл: //» должен быть добавлен к пути.

love.system.setClipboardText

Помещает текст в буфер обмена.

love.system.setClipboardText( text )

textstringНовый текст для хранения в буфер обмена системы.

love.system.vibrate

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

love.system.vibrate( seconds )

seconds (0.5)numberПродолжительность вибрирования. Если вы вызываете устройство iOS, оно всегда будет вибрировать в течение 0,5 секунд из-за ограничений в API-интерфейсах iOS.

PowerState

unknown

Невозможно определить состояние питания.

battery

Не подключен, работает на батарее.

nobattery

Подключено, нет батареи.

charging

Загрязнен, заряжайте батарею.

charged

Аккумулятор полностью заряжен.

love.thread

Types

love.thread.getChannel

Создает или получает именованный канал потока.

channel = love.thread.getChannel( name )

channelChannelИменованный объект канала, который может быть дополнительно обработан.
namestringИмя канала, который вы хотите создать или получить.

love.thread.newChannel

Создайте новый безымянный канал потока.

Одно из них - передавать новые неназванные каналы другим каналам через канал: push

channel = love.thread.newChannel()

channelChannelОбъект неназванного канала, который может быть дополнительно обработан.

love.thread.newThread

Создает новый поток из объектов File или Data.

thread = love.thread.newThread( file )

threadThreadНовая тема, которая еще не запущена.
filestring / File / FileDataПуть к файлу / File / FileData файла Lua для использования в качестве источника.

thread = love.thread.newThread( codestring )

threadThreadНовая тема, которая еще не запущена.
codestringstringСтрока, содержащая код Lua для использования в качестве источника. Он должен иметь длину не менее 1024 символов или содержать по крайней мере одну новую строку.

Thread

Поток - это часть кода, которая может выполняться параллельно с другими потоками.

Constructors

Functions

Supertypes

Thread:getError

Извлекает строку ошибки из потока, если она вызвала ошибку.

message = Thread:getError()

messagestringСообщение об ошибке.

Thread:start

Запускает поток.

Потоки можно перезапустить после завершения их выполнения.

Thread:start()

Thread:start( arg1, arg2, ... )

arg1VariantСтрока, число, логическое значение, объект LÖVE или простая таблица.
arg2VariantСтрока, число, логическое значение, объект LÖVE или простая таблица.
...VariantВы можете продолжить передачу значений в поток.

Thread:wait

Подождите, пока закончится нить. Этот вызов будет блокироваться до тех пор, пока поток не завершится.

Thread:wait()

Thread:isRunning

Получает, работает ли поток в данный момент.

Нити, которые не запускаются, могут быть перезаписаны с помощью Thread: start.

running = Thread:isRunning()

runningbooleanИстинно, если поток работает, в противном случае - false.

Channel

Канал - это способ отправки и приема данных в разные потоки.

Constructors

Functions

Supertypes

Channel:clear

Очищает все сообщения в очереди каналов.

Channel:clear()

Channel:demand

Извлекает значение сообщения канала и удаляет его из очереди сообщений.

Он ждет, пока сообщение не появится в очереди, а затем вернет значение сообщения.

value = Channel:demand()

valueVariantСодержимое сообщения.

Channel:getCount

Извлекает количество сообщений в потоке.

count = Channel:getCount()

countnumberКоличество сообщений в очереди.

Channel:peek

Извлекает значение сообщения канала, но оставляет его в очереди.

Он возвращает нуль, если в очереди нет сообщений.

value = Channel:peek()

valueVariantСодержимое сообщения.

Channel:performAtomic

Выполняет указанную функцию атомарно относительно этого Канала.

Часто полезно использовать несколько методов в строке на одном канале. Однако, если несколько потоков обращаются к методам этого канала одновременно, разные вызовы в каждом потоке могут чередоваться (например, один или несколько вызовов второго потока могут возникать между вызовами первого потока).

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

ret1, ... = Channel:performAtomic( func, arg1, ... )

ret1anyПервое возвращаемое значение данной функции (если оно есть).
...anyЛюбые другие возвращаемые значения.
funcfunctionВызывается функция вызова, форма функции (канал, arg1, arg2, ...). Канал передается как первый аргумент функции, когда он вызывается.
arg1anyДополнительные аргументы, которые данная функция получит при ее вызове.
...anyДополнительные аргументы, которые данная функция получит при ее вызове.

Channel:pop

Извлекает значение сообщения канала и удаляет его из очереди сообщений.

Он возвращает nil, если в очереди нет сообщений.

value = Channel:pop()

valueVariantСодержимое сообщения.

Channel:push

Отправить сообщение в поток Channel.

См. «Вариант» для списка поддерживаемых типов.

Channel:push( value )

valueVariantСодержимое сообщения.

Channel:supply

Отправьте сообщение в поток Channel и дождитесь, пока поток примет его.

См. «Вариант» для списка поддерживаемых типов.

Channel:supply( value )

valueVariantСодержимое сообщения.

love.timer

Functions

love.timer.getAverageDelta

Возвращает среднее время delta (в секундах на кадр) в течение последней секунды.

delta = love.timer.getAverageDelta()

deltanumberСреднее время delta над последней секунды.

love.timer.getDelta

Возвращает время, прошедшее между последними двумя кадрами.

dt = love.timer.getDelta()

dtnumberВремя в секундах.

love.timer.getFPS

Возвращает текущее количество кадров в секунду.

fps = love.timer.getFPS()

fpsnumberТекущий FPS.

love.timer.getTime

Возвращает количество времени, прошедшее с некоторого момента в прошлом.

Эта функция должна использоваться для расчета времени между временными точками только тогда, когда погрешность во времени не имеет особого значения.

time = love.timer.getTime()

timenumberВремя в секундах.

love.timer.sleep

Приостанавливает программу на определенное количество времени.

love.timer.sleep( s )

snumberКоличество секунд, на которые надо приостановить программу.

love.timer.step

Определяет время между двумя кадрами.

Вызов этой функции меняет возвращаемое функцией love.timer.getDelta значение.

love.timer.step()

love.touch

Functions

love.touch.getPosition

Возвращает текущую позицию указанного сенсорного нажатия в пикселях.

x, y = love.touch.getPosition( id )

xnumberПоложение вдоль оси x сенсорного экрана внутри окна, в пикселях.
ynumberПоложение вдоль оси y сенсорного экрана внутри окна, в пикселях.
idlight userdataИдентификатор сенсорного пресса. Используйте love.touch.getTouches, love.touchpressed или love.touchmoved для получения значений идентификатора касания.

love.touch.getPressure

Возвращает текущее давление указанного касания.

pressure = love.touch.getPressure( id )

pressurenumberДавление сенсорного пресса. Большинство сенсорных экранов не чувствительны к давлению, и в этом случае давление будет 1.
idlight userdataИдентификатор сенсорного пресса. Используйте love.touch.getTouches, love.touchpressed или love.touchmoved для получения значений идентификатора касания.

love.touch.getTouches

Получает список всех активных сенсорных прессов.

touches = love.touch.getTouches()

touchestableСписок активных значений сенсорного нажатия, которые можно использовать с love.touch.getPosition.

love.video

love.window

Functions

Enums

love.window.close

Закрывает окно. Он может быть вновь открыт с помощью love.window.setMode.

love.window.close()

love.window.fromPixels

Преобразует число из пикселей в независимые от плотности единицы.

Плотность пикселей внутри окна может быть больше (или меньше), чем размер «окна». Например, на экране сетчатки в Mac OS X с включенным флагом окна highdpi окно может занимать тот же физический размер, что и окно 800x600, но область внутри окна использует 1600x1200 пикселей. love.window.fromPixels (1600) вернет 800 в этом случае.

Эта функция преобразует координаты из пикселей в размер, который пользователи ожидают, чтобы они отображались на экране. love.window.toPixels делает обратное. Флаг окна highdpi должен быть включен для использования полной плотности пикселей экрана Retina в Mac OS X и iOS. Флаг в настоящее время ничего не делает на Windows и Linux, а на Android он всегда включен.

Большинство функций LÖVE возвращают значения и ожидают аргументы в терминах пикселей, а не независимых от плотности единиц.

value = love.window.fromPixels( pixelvalue )

valuenumberПреобразованное число в единицах, не зависящих от плотности.
pixelvaluenumberЧисло в пикселях для преобразования в независимые от плотности единицы.

x, y = love.window.fromPixels( px, py )

xnumberПреобразованное значение оси x для координаты в единицах, не зависящих от плотности.
ynumberПреобразованное значение оси y координаты в единицах, не зависящих от плотности.
pxnumberЗначение оси x координаты в пикселях.
pynumberЗначение оси y координаты в пикселях.

love.window.getDisplayName

Возвращает имя дисплея.

name = love.window.getDisplayName( displayindex )

namestringИмя указанного дисплея.
displayindexnumberИндекс отображения, чтобы получить имя.

love.window.getFullscreen

Получает, будет ли окно полноэкранным.

fullscreen, fstype = love.window.getFullscreen()

fullscreenbooleanИстина, если окно полноэкранное, в противном случае - false.
fstypeFullscreenTypeТип полноэкранного режима.

love.window.getFullscreenModes

Получает список поддерживаемых полноэкранных режимов.

modes = love.window.getFullscreenModes( display )

modestableТаблица пар ширины / высоты. (Обратите внимание, что это может быть не в порядке.)
display (1)numberИндекс дисплея, если доступно несколько мониторов.

love.window.getIcon

Получает иконку окна.

imagedata = love.window.getIcon()

imagedataImageDataИконка окна или nil если иконка не была установлена с помощью love.window.setIcon_(Русский).

love.window.getMode

Возвращает текущий режим отображения.

width, height, flags = love.window.getMode()

widthnumberШирина окна.
heightnumberВысота окна.
flagstableТаблица, содержащая свойства окна.
flags.fullscreenbooleanПолноэкранный (true) или оконный (false).
flags.fullscreentypeFullscreenTypeТип полноэкранного режима.
flags.vsyncbooleanИстина, если частота кадров графики синхронизирована с частотой обновления монитора, в противном случае - false.
flags.msaanumberКоличество использованных образцов сглаживания (0, если MSAA отключен).
flags.resizablebooleanИстина, если окно изменяет размер в оконном режиме, в противном случае - false.
flags.borderlessbooleanИстина, если окно не имеет границ в оконном режиме, в противном случае - false.
flags.centeredbooleanИстина, если окно центрировано в оконном режиме, в противном случае - false.
flags.displaynumberИндекс отображения в настоящее время находится в окне, если доступно несколько мониторов.
flags.minwidthnumberМинимальная ширина окна, если он изменен.
flags.minheightnumberМинимальная высота окна, если он изменен.
flags.highdpibooleanВерно, если режим высокой четкости должен использоваться на дисплеях Retina в OS X и iOS. Ничего не отображается на не-сетчатке. Добавлено в 0.9.1.
flags.refreshratenumberЧастота обновления текущего режима отображения экрана в Гц. Может быть 0, если значение не может быть определено.
flags.xnumberX-координата положения окна на текущем дисплее.
flags.ynumberY-координата положения окна на текущем дисплее.

love.window.getPixelScale

Возвращает масштабный коэффициент DPI, связанный с окном.

Плотность пикселей внутри окна может быть больше (или меньше), чем размер «окна». Например, на экране сетчатки в Mac OS X с включенным флагом окна highdpi окно может занимать тот же физический размер, что и окно 800x600, но область внутри окна использует 1600x1200 пикселей. love.window.getPixelScale () вернет 2.0 в этом случае.

Функции love.window.fromPixels и love.window.toPixels также могут использоваться для преобразования между единицами.

Флаг окна highdpi должен быть включен для использования полной плотности пикселей экрана Retina в Mac OS X и iOS. Флаг в настоящее время ничего не делает на Windows и Linux, а на Android он всегда включен.

scale = love.window.getPixelScale()

scalenumberКоэффициент масштабирования пикселей, связанный с окном.

love.window.getPosition

Получает положение окна на экране.

Позиция окна находится в координатном пространстве дисплея, в котором он находится.

x, y, display = love.window.getPosition()

xnumberX-координата положения окна.
ynumberY-координата положения окна.
displaynumberИндекс отображения, в котором находится окно.

love.window.getTitle

Получает заголовок окна.

title = love.window.getTitle()

titlestringЗаголовок окна.

love.window.hasFocus

Проверяет, имеет ли игровое окно клавиатурный фокус.

focus = love.window.hasFocus()

focusbooleanИстина, если окно имеет фокус или false, если нет.

love.window.hasMouseFocus

Проверяет, имеет ли игровое окно фокус мыши.

focus = love.window.hasMouseFocus()

focusbooleanИстина, если в окне есть фокус мыши или false, если нет.

love.window.isDisplaySleepEnabled

Возвращает, разрешено ли показ во время работы программы.

Режим отображения по умолчанию отключен. Некоторые типы ввода (например, нажатия кнопок джойстика) могут не препятствовать отображению дисплея, если разрешено отображение сна.

enabled = love.window.isDisplaySleepEnabled()

enabledbooleanИстина, если спящий режим системы включен / разрешен, в противном случае - false.

love.window.isMaximized

Получает, будет ли Окно в настоящее время максимизировано.

Окно можно максимизировать, если оно не является полноэкранным и изменяет размер, и либо пользователь нажал кнопку Maximize окна, либо вызвал love.window.maximize.

maximized = love.window.isMaximized()

maximizedbooleanИстина, если окно в настоящее время максимизировано в оконном режиме, в противном случае - false.

love.window.isOpen

Проверяет, открыто ли окно.

open = love.window.isOpen()

openbooleanИстинно, если окно открыто, в противном случае - false.

love.window.isVisible

Проверяет, отображается ли игровое окно.

Окно считается видимым, если оно не сведено к минимуму, и программа не скрыта.

visible = love.window.isVisible()

visiblebooleanИстина, если окно видимо или ложно, если нет.

love.window.maximize

Делает окно как можно большим.

Эта функция не действует, если окно не изменяет размер, поскольку оно по существу программным образом нажимает кнопку «максимизировать» окна.

love.window.maximize()

love.window.minimize

Минимизирует окно на панели задач / док-станции системы.

love.window.minimize()

love.window.requestAttention

Заставляет окно запрашивать внимание пользователя, если оно не находится на переднем плане.

В Windows значок панели задач будет мигать, а в OS X значок док-станции будет отскакивать.

love.window.requestAttention( continuous )

continuous (false)booleanСледует ли постоянно запрашивать внимание, пока окно не станет активным, или сделайте это только один раз.

love.window.setDisplaySleepEnabled

Устанавливает, разрешено ли отображение сна во время работы программы.

Режим отображения по умолчанию отключен. Некоторые типы ввода (например, нажатия кнопок джойстика) могут не препятствовать отображению дисплея, если разрешено отображение сна.

love.window.setDisplaySleepEnabled( enable )

enablebooleanИстинно, чтобы включить режим сна системы, false, чтобы отключить его.

love.window.setFullscreen

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

Если введен полноэкранный режим и размер окна не соответствует одному из режимов отображения монитора (в нормальном полноэкранном режиме), или размер окна не соответствует размеру рабочего стола (в полноэкранном режиме «рабочий стол»), окно будет изменено соответственно. Окно снова вернется к исходному размеру, когда с помощью этой функции выйдет полноэкранный режим.

success = love.window.setFullscreen( fullscreen )

successbooleanИстина, если она выполнена успешно, в противном случае.
fullscreenbooleanВход в полноэкранный режим или выход из него.

success = love.window.setFullscreen( fullscreen, fstype )

successbooleanИстина, если она выполнена успешно, в противном случае.
fullscreenbooleanВход в полноэкранный режим или выход из него.
fstypeFullscreenTypeТип полноэкранного режима.

love.window.setIcon

Устанавлевает иконку окна. Не все ОС поддерживают большие картинки.

success = love.window.setIcon( imagedata )

successbooleanTrue если иконка была установлена, иначе false.
imagedataImageDataКартинка которая будет установлена в качестве иконки.

love.window.setMode

Устанавливает режим отображения и свойства окна.

Если ширина или высота равна 0, setMode будет использовать ширину и высоту рабочего стола.

Изменение режима отображения может иметь побочные эффекты: например, полотна будут очищены, а значения отправлены в шейдеры с помощью Shader: send будет удален. Обязательно сохраните содержимое полотна заранее или повторно нарисуйте их после этого, если вам нужно.

success = love.window.setMode( width, height, flags )

successbooleanИстина, если она выполнена успешно, в противном случае.
widthnumberШирина дисплея.
heightnumberВысота дисплея.
flagstableТаблица флагов с параметрами:
flags.fullscreen (false)booleanПолноэкранный (true) или оконный (false).
flags.fullscreentype ("desktop")FullscreenTypeТип полноэкранного режима для использования. Это значение по умолчанию равно «нормальному» в 0.9.2 и старше.
flags.vsync (true)booleanИстинно, если LÖVE должен ждать vsync, в противном случае false.
flags.msaa (0)numberЧисло образцов сглаживания.
flags.resizable (false)booleanИстина, если окно должно быть изменено в оконном режиме, в противном случае - false.
flags.borderless (false)booleanИстина, если окно должно быть без полей в оконном режиме, иначе false.
flags.centered (true)booleanИстинно, если окно должно быть центрировано в оконном режиме, в противном случае - false.
flags.display (1)numberИндекс дисплея для отображения окна, если доступно несколько мониторов.
flags.minwidth (1)numberМинимальная ширина окна, если он изменен. Не может быть меньше 1.
flags.minheight (1)numberМинимальная высота окна, если он изменен. Не может быть меньше 1.
flags.highdpi (false)booleanВерно, если режим высокой четкости должен использоваться на дисплеях Retina в OS X. Ничего не отображается на дисплее, отличном от Retina.
flags.x (nil)numberX-координата положения окна на указанном дисплее.
flags.y (nil)numberY-координата положения окна на указанном дисплее.

love.window.setPosition

Устанавливает положение окна на экране.

Положение окна находится в координатном пространстве указанного дисплея.

love.window.setPosition( x, y, display )

xnumberX-координата положения окна.
ynumberY-координата положения окна.
displaynumberИндекс отображения, в котором находится новое положение окна.

love.window.setTitle

Устанавливает заголовок окна.

love.window.setTitle( title )

titlestringНовый заголовок окна.

love.window.showMessageBox

Отображает диалоговое окно окна сообщения над окном любви. Поле сообщения содержит заголовок, дополнительный текст и кнопки.

success = love.window.showMessageBox( title, message, type, attachtowindow )

successbooleanБыло ли сообщение успешно отображено.
titlestringЗаголовок окна сообщения.
messagestringТекст внутри поля сообщения.
type ("info")MessageBoxTypeТип окна сообщения.
attachtowindow (true)booleanДолжно ли окно сообщения быть прикреплено к окну любви или свободно плавать.

pressedbutton = love.window.showMessageBox( title, message, buttonlist, type, attachtowindow )

pressedbuttonnumberИндекс кнопки, нажатой пользователем. Может быть 0, если диалоговое окно окна сообщения было закрыто без нажатия кнопки.
titlestringЗаголовок окна сообщения.
messagestringТекст внутри поля сообщения.
buttonlisttableТаблица, содержащая список имен кнопок для отображения. Таблица также может содержать поля enterbutton и escapebutton, который должен быть индексом кнопки по умолчанию для использования, когда пользователь нажимает «enter» или «escape» соответственно.
type ("info")MessageBoxTypeТип окна сообщения.
attachtowindow (true)booleanДолжно ли окно сообщения быть прикреплено к окну любви или свободно плавать.

love.window.toPixels

Преобразует число из независимых от плотности единиц в пиксели.

Плотность пикселей внутри окна может быть больше (или меньше), чем размер «окна». Например, на экране сетчатки в Mac OS X с включенным флагом окна highdpi окно может занимать тот же физический размер, что и окно 800x600, но область внутри окна использует 1600x1200 пикселей. love.window.toPixels (800) вернет 1600 в этом случае.

Это используется для преобразования координат из размера, который пользователи ожидают от отображения на экране на пикселях. love.window.fromPixels делает обратное. Флаг окна highdpi должен быть включен для использования полной плотности пикселей экрана Retina в Mac OS X и iOS. Флаг в настоящее время ничего не делает на Windows и Linux, а на Android он всегда включен.

Большинство функций LÖVE возвращают значения и ожидают аргументы в терминах пикселей, а не независимых от плотности единиц.

pixelvalue = love.window.toPixels( value )

pixelvaluenumberПреобразованное число в пикселях.
valuenumberЧисло в единицах, не зависящих от плотности, для преобразования в пиксели.

px, py = love.window.toPixels( x, y )

pxnumberПреобразованное значение оси x координаты в пикселях.
pynumberПреобразованное значение оси y координаты в пикселях.
xnumberЗначение оси x координаты в независимых по плотности единицах для преобразования в пиксели.
ynumberЗначение оси y координаты в независимых по плотности единицах для преобразования в пиксели.

FullscreenType

desktop

Иногда известен как безграничный полноэкранный оконный режим. Создается окно с размером экрана без полей, которое находится поверх всех элементов пользовательского интерфейса. Окно автоматически изменяется в соответствии с размерами рабочего стола, и его размер не может быть изменен.

exclusive

Стандартный эксклюзивный полноэкранный режим. Изменяет режим отображения (фактическое разрешение) монитора.

MessageBoxType

info

Информационный диалог.

warning

Предупреждение.

error

Диалоговое окно ошибки.