Автор | Сообщение |
|
Отправлено: 17.05.09 17:48. Заголовок: Помогите с эффектом, plz =)
Дорогие друзья-игроделы! В общем, делаю игру и прошу вашей помощи. Не знаю, зачем мне это понадобилось, но вдруг захотел, чтобы на протяжении прохождения уровня поверх экрана проходил плавный дым, в некоторых местах затемняющий локацию. Пробовал делать через стандартные эффекты, в виде серии скриптов effect_create_below(ef_cloud,view_xview,view_yview,0.8,c_black), но они жутко тормозят процесс игры, к тому же на них остаются следы от пересекающихся с ними объектов. Ну так вот, как добиться этого эффекта, чтобы не возникало проблем с производительностью и глюками в самой игре? Заранее спасибо ^^ PS: Примерно это должно выглядеть так:
|
|
|
Ответов - 9
[только новые]
|
|
|
| |
Пост N: 530
Зарегистрирован: 26.06.07
Откуда: Россия, Владивосток
Награды:
|
|
Отправлено: 17.05.09 18:57. Заголовок: ALIEN XIII пишет: н..
ALIEN XIII пишет: цитата: | но они жутко тормозят процесс игры |
| Попробуй пореже создавать дым раза в 4 если допустим у тебя каждый шаг дым создается и скорость комнаты 30 то за секунду от 5 обьектов дым создасться 150 раз.. с этим нужно быть поокуратнее ALIEN XIII пишет: цитата: | остаются следы от пересекающихся с ними объектов |
| Странно у меня такого не наблюдалось..ты случаем не отключал цвет фона?
|
|
|
|
Отправлено: 17.05.09 19:36. Заголовок: zuko пишет: Странно..
zuko пишет: цитата: | Странно у меня такого не наблюдалось..ты случаем не отключал цвет фона? |
|
Как я понял, объекты "перекрашивают" облака из-за того, что у меня игра блюр использует.. zuko пишет: цитата: | Попробуй пореже создавать дым раза в 4 если допустим у тебя каждый шаг дым создается и скорость комнаты 30 то за секунду от 5 обьектов дым создасться 150 раз.. с этим нужно быть поокуратнее |
| По идее через effect_clear() можно их "перезагрузить", но дело в том, что если прописывать создание облаков Step'e, то опять же мешает блюр (а его убирать не хочется), а в create они слишком прозрачны и быстро исчезают (а чтобы не исчезали нужно создать по нескольку в разных координатах, и получаются те же 50-100объектов). Вот, к тому же эти облака находятся в статичном положении, можно с таким же успехом создать полупрозрачный спрайт (появилась идея анимирования прозрачного спрайта)) Но нет какого-нибудь другого способа сразу перекрыть экран своего рода чёрной облачной рябью? PS: Изначально я задумывал, что участки, где размещены эти облака станут чёрно-белыми, но я абсолютно не представляю как это сделать на Game Maker.
|
|
|
|
| |
Пост N: 2293
Зарегистрирован: 23.06.06
|
|
Отправлено: 17.05.09 22:41. Заголовок: ALIEN XIII пишет: Н..
ALIEN XIII пишет: цитата: | Но нет какого-нибудь другого способа сразу перекрыть экран своего рода чёрной облачной рябью? |
| сам же и ответил на свой вопрос сделай большую такую текстутру дыма(высота = высота окна, ширина= несколько окон). сделай её закольцованной. оответсвенно расставь прозрачность. и просто накладывай поверх картинки. правда, если захочется эффектор рассевания дыма или резкого появления, придётся покрутиться(но и тут есть способ, подсказка - разные значения прозрачности для черных пикселей)
|
|
|
|
| |
Пост N: 2294
Зарегистрирован: 23.06.06
|
|
Отправлено: 17.05.09 22:44. Заголовок: ALIEN XIII пишет: И..
ALIEN XIII пишет: цитата: | Изначально я задумывал, что участки, где размещены эти облака станут чёрно-белыми, но я абсолютно не представляю как это сделать на Game Maker. |
| для таких эффектов надо своё двиг программировать... или шейдеры. хотя не уверен, я шейдеры не писал ни разу и не знаю, что они могут, а что нет... боюсь, что в ГМ, если такие эффекты и будут, то не раньше 8й версии
|
|
|
|
Отправлено: 17.05.09 22:50. Заголовок: Ban Forever пишет: ..
Ban Forever пишет: цитата: | сам же и ответил на свой вопрос сделай большую такую текстутру дыма |
| Да, я уже написал, что: цитата: | появилась идея анимирования прозрачного спрайта |
| Просто все эти текстуры весят много. Либо мучаться с "затиркой" швов на рисунке 100*100px, либо делать полные 800*600, что при анимировании даст резкий толчок по весу в игре. Ну, на крайний случай так и сделаю, но, возможно, есть и другой более простой способ это реализовать. Ban Forever пишет: цитата: | боюсь, что в ГМ, если такие эффекты и будут, то не раньше 8й версии |
| Это немного огорчает. Хотя, с другой стороны, должно быть что-то вроде обесцвечивания изображения, а там уже можно поэкспериментировать с отдельными участками локации.
|
|
|
|
| |
Пост N: 2295
Зарегистрирован: 23.06.06
|
|
Отправлено: 18.05.09 00:37. Заголовок: ALIEN XIII пишет: в..
ALIEN XIII пишет: цитата: | возможно, есть и другой более простой способ это реализовать. |
| не программными методами, только аппаратными, а ГМ их не предоставляет(без доп. библиотек) ALIEN XIII пишет: цитата: | Просто все эти текстуры весят много. |
| сколько весит двухцветная текстура 800x600 в png?
|
|
|
|
| |
Пост N: 806
Зарегистрирован: 02.12.06
Откуда: ЕСР, Новосибирск
|
|
Отправлено: 18.05.09 10:48. Заголовок: http://gmakers.ru/in..
|
|
|
|
| |
Пост N: 405
Зарегистрирован: 21.04.07
Откуда: Россия, город Волосат
|
|
Отправлено: 18.05.09 13:35. Заголовок: Хм, ну если и станда..
Хм, ну если и стандартные эффекты на фоне остаются, тогда частицы я думаю нет смысла пробовать... Блюр у тебя же через сурфейсы? Вот и попробуй ченть с сурфейсами, может бленд моды попробовать...
|
|
|
|
Отправлено: 18.05.09 14:25. Заголовок: Ban Forever пишет: ..
Ban Forever пишет: цитата: | не программными методами, только аппаратными, а ГМ их не предоставляет(без доп. библиотек) |
| В некоторые моменты поражаюсь возможностям Game Maker'а Mikozoid пишет: цитата: | Вот тут есть черно-белый фильтр, может пригодится. Но работает небыстро |
| Спасибо за пример, думаю, смогу настроить это под себя.) Likantrop пишет: цитата: | Блюр у тебя же через сурфейсы? Вот и попробуй ченть с сурфейсами, может бленд моды попробовать... |
| Да, через сурфейсы. Честно, с визуальными эффектами у меня туговато, т.к. никогда до этой игры их не использовал. Думаю, поступлю так: создам анимированную картину с "облаками", присвою ей альфа значение, а поверх проведу координаты фильтра..). Всем большое спасибо! =)
|
|
|
|