Пользователи · Поиск по форуму · · Вход в аккаунт · Регистрация |
Форум о визуальных новеллах » Для всех » Общалка » Флудилка (Общение на любые темы) |
Флудилка |
Aleks-sempai#3287Согласен. Тем не менее в том же БЛ галерея спрайтов на андроиде выглядит умопомрачительно.
Сообщение отредактировал Aleks-sempai - Среда, 28/Июл/2021, 14:18
|
SludgeAcolyte#3289Раз уж зашла речь про RenPy, расскажу о наболевшем. Если коротко: RenPy неплох, если вы – художник/сценарист, который не хочет сильно лезть в технические вещи и сделать сравнительно простую в геймплейном плане новеллу. Однако, как только вы начинаете, что называется, «залезать под капот», RenPy становится не просто плохим, а… катастрофически плохим. Проблема в том, что корнями своими RenPy уходит в середину нулевых, то есть во времена, когда ВНки были просто развлечением в духе «покликать-почитать», а всякими мини-играми, анимациями никто толком и не помышлял. И, несмотря на поток обновлений, в архитектурном плане RenPy так и застрял в 2005 году.
Теперь подробнее в чем это выражается: 1) Невыносимо ужасный псевдокод – RenPy Python. В сущности своей, псевдокод – это как бы код, но минус различные синтаксические конструкции, элементы и прочее. Он хорош для людей несведущих, т.е. которым нужно просто «картинку вывести и музычку завести». Но как только вы ставите перед собой более сложные задачи – вам приходится думать и работать как программист. И именно в этот момент ренпаевский псевдокод начинает трахать вам мозги своей неполноценностью. Пример 1 Вы хотите сделать так, чтобы при нажатии одной кнопки визуал другой кнопки менялся. Как это сделать на нормальном языке программирования? Да очень просто: кнопка – объект, у объекта есть свойства. Пишете что-то в духе button1.image = “test2.png” и радуетесь жизни. В RenPy кнопки – это нечто в вакууме, сидящее внутри screen. Извне свойства кнопки в RenPy не поменять, остается придумывать какие-то флаги, по включению которых отображается версия кнопки №2 – страшное зрелище. Пример 2 Вы хотите вызвать из кнопки больше одного действия. Как это сделать на нормальном языке программирования? Да очень просто: вызываете функцию и радуетесь жизни. В RenPy вызвать свою функцию из кнопки нельзя – хоть ты тресни. Нельзя и все. Вместо этого RenPy предлагает очередной костыль: передать в action список из действий. Но у этого есть свои ограничения: в этом списке могут быть только те вещи, которые умеет делать родной псевдокод, а, как я уже говорил, умеет он делать довольно мало вещей. А что если вам нужно вызвать питоновский код из кнопки? Опять же, нельзя. Ну как… можно в принципе, но у этого есть свои проблемы – об этом дальше. 2) В RenPy нет внятных функций обновления игры (типа как update и start в Unity). То, как именно он обновляет содержимое экрана, когда и в какой момент перерисовывает его содержимое – тайна за семью печатями, на это вы не имеете абсолютно никакого влияния. Это терпимо, если вы просто выводите картинки и спрайты т.к. сильно для этого развлекаться с отрисовкой для этого не нужно. А вот когда это может быть плохо… Пример 3 Помните, я говорил, что есть костыль, позволяющий вызвать python код из кнопки? Костыль этот – прыгнуть из кнопки на label под которым этот код лежит. Отлично, проблема решена! Как бы не так… Проблема в том, что как только вы прыгаете куда-то из кнопки – RenPy услужливо подтирает за вас все кнопочки, которые вы расположили под screen. И он не отрисует их заново до того момента, пока вы его об этом не попросите. Почему так? Я не знаю. Можно на это повлиять? Нет. Все это приводит к тому, что при каждом нажатии на одну кнопку, все кнопки будут исчезать на полсекунды, пока RenPy не допрет до того, что надо бы нарисовать их заново. 3) В RenPy нет нормального графического редактора интерфейса. В Unity есть, в Unreal Engine есть. В любой нормальной среде программирования есть. Чем мы хуже? Тот, кто хотя бы раз не пытался переделать интерфейс RenPy полностью под себя, никогда не поймет всю боль отмеривания пикселей в фотошопе и забивания бесконечных xpos ypos xalign yalign. Напоминает чем-то мои уроки информатики из середины нулевых, когда я занимался написанием страничек на HTML через блокнотик. Рабочий меток, конечно. Только вот сейчас не 2007 год. Фуф, все. Я выговорился. В общем, подводя итог: RenPy – это как старый жигуль. Привычный, родной и знакомый. Но поставь его на гоночную трассу – начинаются проблемы. Для серьезных задач RenPy не подходит абсолютно и люди постепенно это осознают. Это заметно на самом деле. Раньше, на тех же Anivisual Contest-ах новеллы на Юнити были редкими, крайне кривыми зверями. А сейчас их все больше и больше, а исполнение все лучше. И это не может не радовать мое больное от RenPy сердце. Сообщение отредактировал SludgeAcolyte - Среда, 28/Июл/2021, 15:40
|
Katruna#3291Но в целом - я соглашусь. Ренпи - это чисто движок для визуальных новелл и если ыт хочешь сделать что-то за его пределами - тут надо уже плясать.
Но лично для меня - он очень удобен и хорош. Я периодически все же сочиняю что-то вне его рамок, но в целом, все что я хочу- получается вполне безболезненно реализовать на нем. Но если вы хотите доп. мини игры или другие подобные навороты - это да, лучше не ебатсья с ренпи, а идти уже на юнити. |
| |||