Миничат

MarkerIl 12 мин. Фига себе. Это что, обновление сайта?!
AnnTenna 2 дн. даже не верится что завтра уже 1 мая
poca 3 дн. А вот и среда =)
AnnTenna 4 дн. Ничего скоро уже майские...
MarsKnight 24.04.2026 18:48 Пережили эту рабочую недельку, пора пепечилить)
poca 24.04.2026 03:26 o_O пасиб за ссыль, похождения зелёной какахи доставили :D Ёмаё, куда катится игропром? =_=
Kerotan 24.04.2026 00:43 https://www.youtube.com/watch?v=vdUo12Zb1FU&t=5194s
Kerotan 24.04.2026 00:43 Из наших видел на RPG Maker Showcase 2026 - Exellent Award - "Heroines of Swords & Spells 2" (Best Comment Award) 1:00:03
Jas6666 23.04.2026 20:14 В принципе сами разработчики мейкера каждый год проводят "Фестиваль RPG Maker" вбей в поиск, выдаст страницу в стиме, там игры. сам уж решай стоящие ли игры, просто по отзыва
tim103 23.04.2026 15:05 Слушайте, а есть за последнее время вообще какие-то прорывные игры, которые в какой-то степени выстрелили в стим, и написанные на Rpg Maker? Если не считать старые проекты, по типу to the moon?
AnnTenna 23.04.2026 14:56 у нас жесть а не погодка)
AnnTenna 23.04.2026 14:45 доброго дня) как у вас погодка?)
ajir 20.04.2026 11:44 Phavn: Отлично!
Phavn 20.04.2026 10:54 Спасибо помогло. Вышел - куки данного сайта стёр - зашёл - заработало.
ajir 20.04.2026 10:37 Phavn: Если и это не помогает, не видишь - значит увы сбой с залогиниванием на форуме, попробуй очисть все данные сайта в браузере, залогиниться на первой странице сайта, перейти на форум, перейти в нужный подфорум и создать тему.
ajir 20.04.2026 10:35 Phavn: "Форум Светлая Зона и Академия RPG Maker Свободный Новая тема Темы прочитаны Подписаться" т.е. ищи "Новая тема".
Phavn 20.04.2026 10:10 Привет всем, кажется я уже спрашивал когда-то об этом — но как мне создать тут новую тему на форуме? Я их уже создавал, но теперь кнопки "создать тему" не вижу.
VaNyuHa 18.04.2026 05:33 мда... писал писал, а оказывается длинные смс нельзя, хах! В общем, понимаю, что можно через общие события и переменные было указывать координаты событий и игрока, и если мое нужное условие выполняется - активировать событие, но на этот раз просто решил узнать способ проще, вот и все)
VaNyuHa 18.04.2026 05:30 MarkerIl, согласен, этим мне и нравится rpgmv. Фантазия есть, в своей игре уже много головоломок на разную тему реализовал через общие события и встроенные функции. Но из-за работы и семьи мало времени на это... так что бывает в свободное время на работе сразу на черновике прописываю то, как будет работать задуманная головоломка, например (вращающи
VaNyuHa 18.04.2026 05:30 MarkerIl, согласен, этим мне и нравится rpgmv. Фантазия есть, в своей игре уже много головоломок на разную тему реализовал через общие события и встроенные функции. Но из-за работы и семьи мало времени на это... так что бывает в свободное время на работе сразу на черновике прописываю то, как будет работать задуманная головоломка, например (вращающи

Custom Graphics.freeze и Graphics.transition

Больше
16 года 6 мес. назад #29117 от Equilibrium Keeper
Вопрос к скриптерам, есть идеи как народными средставми реализовать
Graphics.freeze и Graphics.transition ?
Дело все в том, что Graphics.freeze сохраняет область 640х480 и ни пикселем больше. Graphics.transition берет ее в качестве исходника при переходе. Следовательно, при разрешение 1024х768 такой вариант не катит. Я уже переделал смену сценок методами fadeout и fadein (прикрутил эти фичи из VX), однако хотелось бы и стандартные переходы оставить. Тот же переход к бою с ними смотрится куда эффектнее.
Следовательно нужно либо переписать Graphics.freeze так, что бы он запоминал большую область экрана и Graphics.transition умел с ней работать, либо переписать их обоих. И вот здесь появляются сложности: Graphics.transition делает переход на основе серого градиента. Все это прекрастно, но средставами руби это выглядит, как взятие пикселя с перехода, расчета среднего между его составными частями (red+green+blue) / 3, обращением относительно 255 и последующей заливкой запомненного изображения прозрачностью. Итого: взять пиксель, посчитать, установить пиксель. Для разрешения 1024х768 эта операция будет проделана 200 540 160 раз. Если учесть, что после каждого такта цикла (0...255), будет вызываться Graphics.update - 786 432 раз. Но это утешает слабо.

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

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
16 года 6 мес. назад - 16 года 6 мес. назад #29131 от Sirius

Для разрешения 1024х768 эта операция будет проделана 200 540 160 раз. Если учесть, что после каждого такта цикла (0...255), будет вызываться Graphics.update - 786 432 раз. Но это утешает слабо.


А для разрешения 640х480?
И вот что интерестно, в VXе разрешение 544×416, а Graphics.freeze сохраняет область 640х480 как ты сказал. Неужели ЭфирныеМозги поленились переделать эту часть кода? Или эо сделанно специально?

З.Ы. Тут только до 640х480 :(

З.З.Ы.

Все это прекрастно, но средставами руби это выглядит, как взятие пикселя с перехода, расчета среднего между его составными частями (red+green+blue) / 3, обращением относительно 255 и последующей заливкой запомненного изображения прозрачностью. Итого: взять пиксель, посчитать, установить пиксель.


Скажи, это в каком скрипте именно прописано? Хочу тоже голову поломать :)
Последнее редактирование: 16 года 6 мес. назад пользователем Sirius.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
16 года 6 мес. назад - 16 года 6 мес. назад #29136 от Equilibrium Keeper

А для разрешения 640х480?

По количеству пикселей. :) 640 * 480 = 307 200 раз за один такт. Прозрачность у нас варьируется до 255, следовательно всего 78 336 000 раз

И вот что интерестно, в VXе разрешение 544×416, а Graphics.freeze сохраняет область 640х480 как ты сказал. Неужели ЭфирныеМозги поленились переделать эту часть кода? Или эо сделанно специально?

Я вообще не очень понимаю - зачем ЭфирныеМозги вводят те или иные ограничения. XP они сделали 640х480, тогда, как самым ходовым было 1024х768. Далее VX - кастрация до 544х416, заодно урезали боевку и тайлсеты. Да, при этом они ввели возможность менять размеры окна без методов WinAPI, но не потрудились ни выложить код Tilemap (низки поклон poccil), ни починить переходы. Я не понимаю почему. Видать, мозги и впрямь эфимерные...

Скажи, это в каком скрипте именно прописано? Хочу тоже голову поломать

Этого скрипта не существует. :) Это мое предположение - как можно реализовать переход. Других идей я пока не вижу. Можно сделать уход-во-тьму, выход-из-тьмы, как это сделано сейчас у меня. Можно сделать дефолтный переход (мы условно принимаем, что скриншот сделать возможно, ибо где-то я скрипт видел). А вот как еще можно, основываясь на черно-белоом рисунке, сделать переход? Я это вижу примерно так...
Code:
module Graphics def self.transition(duration = 60, filename = "", vague = 40) trans = Bitmap.new("Graphics/Transitions/#{filename}") k = duration.to_f / 255 i = 0; while i < (255 - vague) * k for y in 0...$frozen.height for x in 0...$frozen.width color = trans.get_pixel(x, y) a = [(255 - (color.red + color.blue + color.green) / 3) * k, 1].max color = $frozen.get_pixel(x, y) color.alpha = -= a $frozen.set_pixel(x, y, color) end end i += 1 end $frozen.dispose $frozen = nil end end

Естсественно, это лишь предположение. Я даже не пробовла это запустить, и допускаю наличие синтаксических ошибок.
Вот, пока писал, еще подумал, что get_pixel можно прогнать для обеих картинок в самом начале и заполнить хэш, и брать инфу уже из него. Но 786 432 установок пикселя никуда не денутся... >_>

И еще - должен же Graphics.freeze где-то хранить скриншот! Знать бы где? В себе не может - это модуль. Значит в глобальной переменной?.. >_>

Истина там, во тьме, и во тьме ты иди - мыслящий бродит во тьме.
В себя самого загляни, открой свою дорогу в Ничто.
В Ничто ты войди, во тьму, и пойми:
Пока ты во тьме, не может она быть Ничем - ведь там ты.
Последнее редактирование: 16 года 6 мес. назад пользователем Equilibrium Keeper.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
16 года 6 мес. назад #29165 от Sirius

По количеству пикселей. 640 * 480 = 307 200 раз за один такт. Прозрачность у нас варьируется до 255, следовательно всего 78 336 000 раз


Обе цифры страшные :) Всего в 3 раза разница, это смертельно?

И еще - должен же Graphics.freeze где-то хранить скриншот! Знать бы где? В себе не может - это модуль. Значит в глобальной переменной?.. >_>


$game_temp.background_bitmap это чтоль?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
16 года 5 мес. назад - 16 года 5 мес. назад #29175 от Equilibrium Keeper

Обе цифры страшные Всего в 3 раза разница, это смертельно?

Не знаю. Никогда не делал ничего подобного. Вот градиентную заливку с помощью обычной - делал. Там 1024х768 заливается меньше чем за секунду. Но там то всего 1024 (или 768), а не несколько сотен тысяч...

$game_temp.background_bitmap это чтоль?

Неа - в XP такого вообще не существует. Да и Graphics.freeze можно вызвать в самом начале - тобишь создаваемые дальше $game_*** он не трогает. Только уже созданные на момент запуска переменные. Попробовать порыть $1, $2,..,$9 что-ли? Но вряд ли...
---
Нет, они остаются пустыми... =\
Хуже всего, если Graphics написан на C и хранит картинку в переменных недоступных из руби...
Так бы можно было просто подсунуть ему новую картинку. А так - только переписывать оба метода...

Истина там, во тьме, и во тьме ты иди - мыслящий бродит во тьме.
В себя самого загляни, открой свою дорогу в Ничто.
В Ничто ты войди, во тьму, и пойми:
Пока ты во тьме, не может она быть Ничем - ведь там ты.
Последнее редактирование: 16 года 5 мес. назад пользователем Equilibrium Keeper.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
16 года 5 мес. назад - 16 года 5 мес. назад #29186 от Sirius
Жаль я мало разбираюсь в том, как там графика работает. Но вот в RGSS2 вместо Graphics.freeze можно попробовать Graphics.snap_to_bitmap. ХЗ поможет ли... А так, раскрутить разрешение до 1024 х 768 было бы очень даже неплохо!

Хуже всего, если Graphics написан на C и хранит картинку в переменных недоступных из руби...
Так бы можно было просто подсунуть ему новую картинку. А так - только переписывать оба метода...


Кстати, в Си можно вставлять код ассемблера. Руби ведь на Си написан, там наверно тоже Си код можно воткнуть... :)


Вот что-то с этой области:
Последнее редактирование: 16 года 5 мес. назад пользователем Sirius.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

2 место Готв Писатель 2 место 3 место Победитель конкурса Организатор конкурсов
Больше
16 года 5 мес. назад - 16 года 5 мес. назад #29192 от Agckuu_Coceg
Sirius писал(а):
Кстати, в Си можно вставлять код ассемблера. Руби ведь на Си написан, там наверно тоже Си код можно воткнуть... :)

Ну, Руби - отдельный язык программирования, но его алгоритмы в принципе похожи на C и C++. Я честно говоря не уверен, что в него воткнуть ассемблер, но если это прокатит, то это будет реальная жуть.

А что именно нужно, Кипер? Система изменения размера экрана, что ли?

Огромный любитель среброволосых или пепельноволосых 2D-девушек с хорошим характером или со скрытыми привлекательными чертами.
Последнее редактирование: 16 года 5 мес. назад пользователем Agckuu_Coceg.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
16 года 5 мес. назад #29195 от Equilibrium Keeper
А ты прочитай первое сообщение в теме. -_-
"Система изменения размера экрана" уже написана и готова. Все работает корректно за исключением 2х моментов:
1) Тормоза на картах с большим количеством анимированных автотайлов (например, если все залить автотайловой водой).
2) Переход при помощи Graphics.transition осуществляется только для области 0, 0, 640, 480.

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

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

2 место Готв Писатель 2 место 3 место Победитель конкурса Организатор конкурсов
Больше
16 года 5 мес. назад #29233 от Agckuu_Coceg
Equilibrium Keeper писал(а):

А ты прочитай первое сообщение в теме. -_-
"Система изменения размера экрана" уже написана и готова. Все работает корректно за исключением 2х моментов:
1) Тормоза на картах с большим количеством анимированных автотайлов (например, если все залить автотайловой водой).
2) Переход при помощи Graphics.transition осуществляется только для области 0, 0, 640, 480.


Ну, первое ещё возможно решить с помощью анти-лага.
А вот со вторым я не в курсе. Можно, конечно полазить в других скриптах изменения размера экрана, и посмотреть, как оно выглядит.

Огромный любитель среброволосых или пепельноволосых 2D-девушек с хорошим характером или со скрытыми привлекательными чертами.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Переводчик Учитель
Больше
16 года 5 мес. назад #29235 от mephis
Да никто там ничего не придумал. Народ пришёл к выводу, что надо переписывать RGSS*.dll и game.exe. Уже несколько проектов этому посвящено.

→ → ↓ ↑ Y

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
16 года 5 мес. назад #29319 от Equilibrium Keeper
Agckuu_Coceg
Извини, но ты не в теме. :) Какой к черту антилаг? Там проблема в алгоритме отрисовки автотайлов.

mephis
Ммм... Ну и хрен с ним, по большому счету. Заменю все темными переходами. Разрешение дороже. -_-

Еще вопрос - а никто не в курсе из-за чего происходит мерцание при скроле карты? При любом разрешении, даже на стандартном движке. Особенно заметно, если залить большую карту одним тайлом и пройтись по ней...

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

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

2 место Готв Писатель 2 место 3 место Победитель конкурса Организатор конкурсов
Больше
16 года 5 мес. назад #29323 от Agckuu_Coceg
Ты говорил про тормоза на картах при авто-тайловой отрисовке. Я тебе и ответил, что такие проблемы можно сгладить антилагом.

Эффект мерцания происходит лишь на некоторых мониторах из-за эффектов системы скролла камеры Мозго***в. Проблема нерешаема.

Огромный любитель среброволосых или пепельноволосых 2D-девушек с хорошим характером или со скрытыми привлекательными чертами.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Переводчик Учитель
Больше
16 года 5 мес. назад #29325 от mephis
Equilibrium Keeper, вообще, на каком-то из забугорных форумов я читал, что некий товарищ написал dll-ку, с функцией захвата изображения с указанного окна. И вызывал её, через скрипты в Руби. Она даже называлась - Transition. Надо поискать...

→ → ↓ ↑ Y

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
16 года 5 мес. назад #29338 от Sirius
Насчет мерцания: Как купил себе: ЖК монитор 22 дюйма Acer, при полноэкранном развороте в 2003 и в VXе изображение начинает дико мерцать. В ХР же все нормально. Причем, мерцание только при фулскрине. В других играх замечено не было. Обливионы и тому подобные при полноэкранном режиме работали нормально. Игры на эмуляторе GBA тоже без проблем идут на полном эжкране. Дрова последние ставил, DX тоже. Как то спрашивал на ГДСА, там никто не в курсе. Посоветовали поставить старые дрова, но я думаю тут проблема именно в мэйкере...

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Переводчик Учитель
Больше
16 года 5 мес. назад #29340 от mephis
Как это не решаема? За бугром вот советуют Аппаратное ускорение снизить до 3-го деления. И мерцание пройдёт.

Кстати, насчёт скрипта разрешения. Помню тему, где за правильно работающий скрипт, меняющий разрешение и убирающий мерцание, сулили штукас баксов. Но, вроде как безрезультатно.

→ → ↓ ↑ Y

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
16 года 5 мес. назад #29347 от Equilibrium Keeper
А у меня в XP и в окне... >_>
Эх, вот и не знаю - то ли браться за грейд мейкера, то ли писать движок на MMF... В последнем не хватает уже родного Руби. А в мейкере - гибкости. >_>

А хотел написать на RGSS оболочку для баз. :) Тобишь тот же RPG Maker, только игровыми средствами - можно было бы добавлять любые поля в базу данных, менять интерфейс как угодно и тут же тестировать работу скриптов... Но вот эти неменяемые элементы убивают все желание этим заниматься...

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

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Переводчик Учитель
Больше
16 года 5 мес. назад #29348 от mephis
Значит нужно переписать неменяемые элементы, game.exe & rgss*.dll.

→ → ↓ ↑ Y

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

2 место Готв Писатель 2 место 3 место Победитель конкурса Организатор конкурсов
Больше
16 года 5 мес. назад - 16 года 5 мес. назад #29517 от Agckuu_Coceg
mephis писал(а):

Equilibrium Keeper, вообще, на каком-то из забугорных форумов я читал, что некий товарищ написал dll-ку, с функцией захвата изображения с указанного окна. И вызывал её, через скрипты в Руби. Она даже называлась - Transition. Надо поискать...


Этот кто-то - некий Selwyn с RMXP.ORG. И скрипт называется Resolution, а не Transition, mephis.

Что касается самого скрипта - я его нашёл. И скрипт, и display.dll.

Скрипт
ВНИМАНИЕ: Спойлер!

Ссылка на *dll:
ССЫЛКА

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

Огромный любитель среброволосых или пепельноволосых 2D-девушек с хорошим характером или со скрытыми привлекательными чертами.
Последнее редактирование: 16 года 5 мес. назад пользователем Agckuu_Coceg.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
16 года 5 мес. назад - 16 года 5 мес. назад #29554 от Equilibrium Keeper
И что это за разврат? В принципе, у меня нечто похожее, вот только я одного не понимаю - зачем было писать DLL, если для сменя разрешения подходит стандартная функция WinAPI?..
Code:
#----------------------------------------------------------------------------- # Перемещает окно # Возвращает :integer - 0 при ошибке # 1 :handle - дескриптор окна # 2 :integer - координата x окна # 3 :integer - координата y окна # 4 :integer - ширина окна # 5 :integer - высота окна # 6 :integer - если 1 - окно будет перерисовано #----------------------------------------------------------------------------- MoveWindow = Win32API.new('user32','MoveWindow',['l','i','i','i','i','i'],'i') #-----------------------------------------------------------------------------

В любом случае, к переходам это никоим местом не относится, так что хватит оффтопить.

Истина там, во тьме, и во тьме ты иди - мыслящий бродит во тьме.
В себя самого загляни, открой свою дорогу в Ничто.
В Ничто ты войди, во тьму, и пойми:
Пока ты во тьме, не может она быть Ничем - ведь там ты.
Последнее редактирование: 16 года 5 мес. назад пользователем Equilibrium Keeper.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Время создания страницы: 0.120 секунд
Работает на Kunena форум