Движок Rect JS

PHP/JS+HTML+CSS/Python/др.

Сообщение Движок Rect JS
» 16 фев 2019, 17:29

Всем доброго времени суток. :hii:
В ходе изучения языка программирования JavaScript я работал над собственным игровым движком "Rect JS". Он уже пригоден к использованию и сейчас я делаю на нём игру. Но он ещё не закончен и мне интересно услышать ваше мнение и советы.

http://black-rect.epizy.com/pages/view.php?f=rjs

Вот ссылка на скачивание и документацию.
Документацию я писал в час ночи, не судите строго за опечатки)))
Мой маленький блог "Мой Путь Разработчика": https://t.me/my_programmer_path

 Мои проекты
Rect JS Engine: viewtopic.php?f=116&t=14949
INI Editor Pro: viewtopic.php?f=14&t=13354
Симулятор Бомжа: viewtopic.php?f=116&t=13457
Mineсraft 2D JS: viewtopic.php?f=116&t=13642
Змейка на JS: viewtopic.php?f=116&t=13990
Project Sinus JS: viewtopic.php?f=116&t=13837

Black Square

Моя Музыка
Аватара пользователя

Участник
Сообщений: 215
Я тут с 03 фев 2017
Откуда: Киев
Двиг: C2, СC, JS
Лицензия: Business
Репутация 12 [ ? ]

Сообщение Движок Rect JS
» 21 ноя 2020, 22:01

Классно реализовано и облегчает работу с js, но это всё таки не движок, а фреймворк
:clapping:
 Мои уроки
Аватара пользователя

Участник
Сообщений: 15
Я тут с 29 июн 2020
Откуда: Минеральные Воды
Двиг: construct 2
Лицензия: personal
VK: vk.com/dshved2006
Репутация 3 [ ? ]

Сообщение Движок Rect JS
» 21 ноя 2020, 22:51

Полностью согласен!
Технически - это фреймворк, но он заменяет собой движок. Как в своё время таким был PointJS, до момента создания редактора PointJS Game Coder. У меня же на данный момент в разработке уже Rect Engine 5. Виз. редактора там нету, однако функционал и оптимизация там намного лучше и шире чем в Rect Engine 2 (А ссылка именно на него).
Если хоть одному человеку это интересно я запарюсь, напишу документацию и выложу движок (фреймворк).
Мой маленький блог "Мой Путь Разработчика": https://t.me/my_programmer_path

 Мои проекты
Rect JS Engine: viewtopic.php?f=116&t=14949
INI Editor Pro: viewtopic.php?f=14&t=13354
Симулятор Бомжа: viewtopic.php?f=116&t=13457
Mineсraft 2D JS: viewtopic.php?f=116&t=13642
Змейка на JS: viewtopic.php?f=116&t=13990
Project Sinus JS: viewtopic.php?f=116&t=13837

Black Square

Моя Музыка
Аватара пользователя

Участник
Сообщений: 215
Я тут с 03 фев 2017
Откуда: Киев
Двиг: C2, СC, JS
Лицензия: Business
Репутация 12 [ ? ]

Сообщение Движок Rect JS
» 21 ноя 2020, 23:03

Если что вот тема где есть ссылка на видео работы с Rect Engine 5.
viewtopic.php?f=6&t=16813
Мой маленький блог "Мой Путь Разработчика": https://t.me/my_programmer_path

 Мои проекты
Rect JS Engine: viewtopic.php?f=116&t=14949
INI Editor Pro: viewtopic.php?f=14&t=13354
Симулятор Бомжа: viewtopic.php?f=116&t=13457
Mineсraft 2D JS: viewtopic.php?f=116&t=13642
Змейка на JS: viewtopic.php?f=116&t=13990
Project Sinus JS: viewtopic.php?f=116&t=13837

Black Square

Моя Музыка
Аватара пользователя

Участник
Сообщений: 215
Я тут с 03 фев 2017
Откуда: Киев
Двиг: C2, СC, JS
Лицензия: Business
Репутация 12 [ ? ]

Сообщение Движок Rect JS
» 21 ноя 2020, 23:44

Lord OST, Интересно, может быть что-то на этом движке сделаю. Если будешь дальше его разрабатывать, то советую тебе в него:

  1. Добавить некоторые панели из Construct (Layer Bar, Project Bar, Properties Bar)
  2. Взять из Construct некоторые элементы для управления сценой (перемещение объекта, вращение объекта, изменение размера объекта, панорамирование сцены и пр.)
  3. Взять из Unity способ добавления "поведений". Например, создал ты скрипт, объявил в нем переменные отвечающие за нужные тебе свойства (скорость передвижения, сила прыжка и т. д.), сохранил скрипт, после назначил его объекту и у тебя появляются параметры которые ты можешь назначить (это что-то вроде свойства какого-то поведения в Construct, только здесь у тебя собственный скрипт)
Исходники:
Библиотека исходников для Construct Classic - http://c2community.ru/forum/viewtopic.php?f=16&t=16843

Плагины:
Портирование плагины [C3Runtime] - http://c2community.ru/forum/viewtopic.php?f=200&t=17021
Поддельные плагины [C3Runtime] - http://c2community.ru/forum/viewtopic.php?f=200&t=16933
Аватара пользователя

Участник
Сообщений: 564
Я тут с 12 мар 2020
Откуда: GameSoul Inc.
Двиг: Construct,Unity
Лицензия: Business
Репутация 71 [ ? ]

Сообщение Движок Rect JS
» 22 ноя 2020, 15:21

GameSoul, спасибо за советы. По поводу поведений, в моём движке это можно сделать через плагины или систему ассетов, но сделать универсальную систему поведений - очень хорошая идея. В том видео, где показан процесс разработки просто Sublime Text и браузер, отдельного редактора пока нет, но у меня в планах его сделать, причём его можно сделать даже в браузере (как С3).
Мой маленький блог "Мой Путь Разработчика": https://t.me/my_programmer_path

 Мои проекты
Rect JS Engine: viewtopic.php?f=116&t=14949
INI Editor Pro: viewtopic.php?f=14&t=13354
Симулятор Бомжа: viewtopic.php?f=116&t=13457
Mineсraft 2D JS: viewtopic.php?f=116&t=13642
Змейка на JS: viewtopic.php?f=116&t=13990
Project Sinus JS: viewtopic.php?f=116&t=13837

Black Square

Моя Музыка
Аватара пользователя

Участник
Сообщений: 215
Я тут с 03 фев 2017
Откуда: Киев
Двиг: C2, СC, JS
Лицензия: Business
Репутация 12 [ ? ]

Сообщение Движок Rect JS
» 22 ноя 2020, 17:47

причём его можно сделать даже в браузере (как С3)

Это неплохо, но лучше также сделай десктопную версию.

Также нашёл некоторые неточности в документации + лучше добавить несколько методов (и переименовать):
1.png
Неточность


 События клавиатуры
В этих методах PARAM1 означает номер клавиши клавиатуры по индексу или строке, PARAM2 - локация клавиши (чтобы можно было отличать левые и правые клавиши, такие как Shift, Control, Alt, Meta). Регистр в методах важен!

rjs.onKey(PARAM1, PARAM2, function(event)) - зажатие кнопки на клавиатуре
rjs.onKeyDown(PARAM1, PARAM2, function(event)) - нажатие кнопки на клавиатуре
rjs.onKeyUp(PARAM1, PARAM2, function(event)) - отпускание кнопки на клавиатуре

 События мыши
В этих методах PARAM1 возвращает кнопку мыши по индексу или строке, или any - любая кнопка мыши.

rjs.click(PARAM1, function (event)) - при клике мыши
rjs.dbclick(PARAM1, function (event)) - при двойном клике мыши
rjs.mousedown(PARAM1, function (event)) - при зажатии кнопки мыши
rjs.mouseup(PARAM1, function (event)) - при отпускании кнопки мыши
rjs.mousemove(function (event)) - при движении курсора мыши

В этом методе PARAM1 означает направление колесика мыши (вверх или вниз), или any - в любом направлении.
rjs.mousewheel(PARAM1, function (event)) - при движении колесика мыши
Исходники:
Библиотека исходников для Construct Classic - http://c2community.ru/forum/viewtopic.php?f=16&t=16843

Плагины:
Портирование плагины [C3Runtime] - http://c2community.ru/forum/viewtopic.php?f=200&t=17021
Поддельные плагины [C3Runtime] - http://c2community.ru/forum/viewtopic.php?f=200&t=16933
Аватара пользователя

Участник
Сообщений: 564
Я тут с 12 мар 2020
Откуда: GameSoul Inc.
Двиг: Construct,Unity
Лицензия: Business
Репутация 71 [ ? ]

Сообщение Движок Rect JS
» 22 ноя 2020, 18:08

Это старая версия движка (Rect Engine 2), её поддержка давно прекращена. Сейчас я работаю над Rect Engine 5, это похожий движок с похожей логикой, но лучшей оптимизацией и кучей других фич. Спасибо за замечание и советы, но исправлять я это уже не буду, т.к. буду публиковать RE-5, а RE-2 из сети удалю. Кстати, может нам стоит как-то в Discord связаться, думаю нам было бы интересно пообщаться.
Мой дискорд: Lord ØST#0085
Мой маленький блог "Мой Путь Разработчика": https://t.me/my_programmer_path

 Мои проекты
Rect JS Engine: viewtopic.php?f=116&t=14949
INI Editor Pro: viewtopic.php?f=14&t=13354
Симулятор Бомжа: viewtopic.php?f=116&t=13457
Mineсraft 2D JS: viewtopic.php?f=116&t=13642
Змейка на JS: viewtopic.php?f=116&t=13990
Project Sinus JS: viewtopic.php?f=116&t=13837

Black Square

Моя Музыка
Аватара пользователя

Участник
Сообщений: 215
Я тут с 03 фев 2017
Откуда: Киев
Двиг: C2, СC, JS
Лицензия: Business
Репутация 12 [ ? ]



Вернуться в Web

Сейчас эту тему просматривают

Зарегистрированные пользователи: нет зарегистрированных пользователей

Наверх