Roblox Studio
Roblox Studio — программа для разработки игр на популярной платформе Roblox. Позволяет без особых знаний проектировать трёхмерные миры и программировать игровую механику для игр в роблоксе, так что хорошо подходит для школьников, желающий восрать что-то своё.
Описание[править]
Roblox Studio появился одновременно вместе с запуском платформы Roblox, что и неудивительно, так как Роблокс всегда был конструктором, на который игры должны были создавать сами пользователи, что в общем-то всегда отдавало какой-то… хитросракостью, что ли. Изначально редактор представлял собой относительно простой инструмент для построения блочных структур, с годами обрастал новым потужным и жужжащим функционалом.
Центральную часть занимает область 3D-просмотра, где можно создавать игровые миры, одновременно бдительно на них посматривая. Панель Explorer отображает полную структуру всех объектов в проекте, использует качественное представление в виде дерева.
Для разработки игровицких применяется объектно-ориентированная модель данных. Каждый элемент игры представлен как экземпляр определённого класса, из известных можно назвать Part (базовый трёхмерный объект), Model (группа объектов), Script (программный код), Sound (аудиофайл) и так далее. Всего платформа насчитывает сотни различных классов, каждый может иметь собственные свойства, методы и события. Объекты организованы в иерархию, начинающуюся с корневого элемента DataModel.
В рамках системы используется Luau, диалект языка программирования Lua, специально оптимизированный для платформы Roblox. Luau сохраняет базовый синтаксис Lua, но в нём есть некоторые расширенные возможности, которые позволяют разрабатывать игры эффективнее.
Есть разные виды скриптов. Script выполняется на стороне сервера и управляет серверной логикой игры, обработкой данных, взаимодействием между игроками. LocalScript запускается на стороне клиента и отвечает за пользовательский интерфейс и локальные реакции на действия игрока. Можно создавать модули, которые затем использовать без особых проблем в различных скриптах. Объекты генерируют события (например, Touched при столкновении объектов, Changed при изменении свойств), на которые скрипты могут подписываться и реагировать нужным образом.
Имеется и Animation Editor для создания покадровой анимации персонажей и объектов. Разработчики могут радостно управлять скелетными моделями, устанавливать ключевые кадры и настраивать интерполяцию движений. Готовые анимации также можно восрать как объекты Animation и сразу же использовать. Роблокс имеет собственный физический движок, обрабатывающий столкновения, гравитацию, трение и другие физические взаимодействия. Объекты могут быть неподвижными или свободно перемещающимися по законам физики.