Вторник, 23 Апреля 2024, 10:23

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Записи участника » OmKol [16]
Результаты поиска
OmKolДата: Воскресенье, 22 Августа 2010, 13:09 | Сообщение # 1 | Тема: Замена одного цвета на другой в спрайтах
был не раз
Сейчас нет на сайте
Quote (Made_In_USSR)
Это оптимизация biggrin

Оптимизация чего? Спрайты-то становятся больше по размеру.
OmKolДата: Воскресенье, 22 Августа 2010, 12:32 | Сообщение # 2 | Тема: Замена одного цвета на другой в спрайтах
был не раз
Сейчас нет на сайте
Quote (NeZnayu)
ezhickovich, Ну от тебя я например еще ни одной толковой причины "забить на гм" не слышал, только вопли неразборчивые )

Как минимум там ужасный редактор кода, в котором не работают некоторые комбинации клавиш и которых нельзя открыть несколько окон. Кроме того, одна и та же игра на разных компьютерах может отображаться по разному - у меня обычная нормальная картинка без сглаживания, а у друга со сглаживанием и съехавшими пикселями спрайтов (фиксится увеличением границы спрайта (или как правильнее выразиться) на пискель с каждой стороны, но это костыль, а костыли - это плохо).
OmKolДата: Суббота, 21 Августа 2010, 23:31 | Сообщение # 3 | Тема: Замена одного цвета на другой в спрайтах
был не раз
Сейчас нет на сайте
Quote (FedenkoVadik)
xDDD
это стандартными функциями тебе не осилить, я в свое время работал в вормс с заливкой через сурфейсы

Ага, сурфейсы. Ну вот мог бы их начать мучать, но уже поздно - я решил поучить С++ и HGE.
OmKolДата: Суббота, 21 Августа 2010, 20:48 | Сообщение # 4 | Тема: Замена одного цвета на другой в спрайтах
был не раз
Сейчас нет на сайте
Quote (NeZnayu)
OmKol, справку не осилил )

Нет, меня в jabber-конференции уговорили перейти на что-нибудь на С++. Или вам лишь бы ляпнуть? Сами-то хоть знаете, как делать вышесказанное?
OmKolДата: Суббота, 21 Августа 2010, 18:04 | Сообщение # 5 | Тема: Замена одного цвета на другой в спрайтах
был не раз
Сейчас нет на сайте
Quote (gamerX)
OmKol, можно рисовать черно-белый спрайт и писать туда где нужно
Code
image_blend=c_red//изменяет цвет спрайта на красный

smile

Не катит же. Ещё раз вспомним пример с Мега Меном - его костюм разделён на два цвета. И запросто один цвет может быть красным, а другой - синим. Можно, конечно, поделить Мега Мена на три части тела - один цвет, другой цвет и лицо - но это довольно громоздко, хотелось бы обойтись без костылей.

Добавлено (21.08.2010, 15:38)
---------------------------------------------
Ок, а можно ли средствами Game Maker во время загрузки игры в коде методом перебора всех пикселей спрайта и последующей замены пикселей определенного цвета на пиксели другого цвета создать копии спрайта? Или вычислительных мощностей не хватит? Тогда какой функцией получить цвет пикселя спрайта?

Добавлено (21.08.2010, 18:04)
---------------------------------------------
Вопрос закрыт - я перешёл на HGE.

Сообщение отредактировал OmKol - Суббота, 21 Августа 2010, 15:15
OmKolДата: Суббота, 21 Августа 2010, 10:07 | Сообщение # 6 | Тема: Замена одного цвета на другой в спрайтах
был не раз
Сейчас нет на сайте
Quote (FedenkoVadik)
лол, заходим в пеинт находим мощнейший эффект "ЗАЛИВКА" выбираем кликом, выбераем цвет, кликаем туда где хотим изменить цвет

*WALL* Ты думаешь, я настолько туп? Ты когда-нибудь играл на восьмибитной приставке (например, Dendy)? Ты знаешь, что там смена цвета спрайта происходит путём замены цвета в палитре, заданной для спрайта из трёх цветов? Например, в игре Mega Man у глав. персонажа может быть восемь дополнительных оружий, в зависимости от выбора которого у него меняется цвет костюма. Так вот, мне нужно то же самое. Понятное дело, что тогдашняя быстрая замена цвета была возможна благодаря ограничениям тогдашних игровых платформ, но тупо перерисовывать в Paint - не катит, так как замена цвета в Paint требует сравнительно приличное количество времени и ресурсов. Поэтому мне нужно что-нибудь аналогичное скрипту из первого поста, в котором конкретное значение исходного цвета заменяется на конкретное значение конечного цвета.


Сообщение отредактировал OmKol - Суббота, 21 Августа 2010, 10:16
OmKolДата: Пятница, 20 Августа 2010, 23:49 | Сообщение # 7 | Тема: Замена одного цвета на другой в спрайтах
был не раз
Сейчас нет на сайте
Quote (ADJA)

К примеру для перекраски в красный: image_blend=c_red

Для перекраски в красный чего? Куда вбивать значение исходного цвета? Судя по описанию в хелпе, как мне кажется, это вообще не то - мне нужно один конкретный цвет в RGB заменить на другой конкретный цвет в RGB. А даже если и оно - я вставил это в код и ничего мне это не дало.


Сообщение отредактировал OmKol - Пятница, 20 Августа 2010, 23:50
OmKolДата: Пятница, 20 Августа 2010, 18:45 | Сообщение # 8 | Тема: Замена одного цвета на другой в спрайтах
был не раз
Сейчас нет на сайте
Собственно, задача - заменить один цвет на другой. Гугл выдал скрипт - линк - но он не работает в GM 8 Pro. Покопался в мануалах, но пока ничего нужного мне не нашёл. Собственно хотелось бы получить ответ на этот вопрос, если он имеется.
OmKolДата: Пятница, 16 Июля 2010, 23:52 | Сообщение # 9 | Тема: Вопрос касательно объектов
был не раз
Сейчас нет на сайте
Quote (FedenkoVadik)
Короче есть событие End Step юзай его, то что ті там напишишь, будет віполяццо в конце.

Как много раз оно мне было нужно, но я уже решил всё по-другому. Потом пригодится.

Quote (FedenkoVadik)

Не помню точно название функций, помоему есть object_set_mask ну или чет в этом роде...

Ага, только я в мануале мало что понял по этому поводу, ну да ладно - мне же лучше, что не принялся писать извращенский код.
OmKolДата: Пятница, 16 Июля 2010, 21:41 | Сообщение # 10 | Тема: Вопрос касательно объектов
был не раз
Сейчас нет на сайте
Quote (GLaDOS)
OmKol, Ну можно попробовать переменными сделать

Переменными сделать что?

Я вообще не понимаю, в каком порядке выполняются объекты. Как мне кажется, параметр "Глубина" ни на что не влияет в плане порядка выполнения кода объектов.

Добавлено (16.07.2010, 21:16)
---------------------------------------------
Ладно, а вот теперь у меня такая задачка - получить x и y от всех instances объекта. Можно вручную взять номер каждого instance, но это слишком муторно - думаю, есть легче способ.

Добавлено (16.07.2010, 21:41)
---------------------------------------------
Или, например, несколько масок для объекта. В момент такого-то столкновения использовать такую-то маску, иначе другую.

Сообщение отредактировал OmKol - Пятница, 16 Июля 2010, 21:17
OmKolДата: Пятница, 16 Июля 2010, 19:53 | Сообщение # 11 | Тема: Вопрос касательно объектов
был не раз
Сейчас нет на сайте
Нет, это ещё не конец. Итак, выполняется код одного объекта. Затем выполняется код другого объекта. И мне нужно, чтобы после всех этих объектов выполнялся ещё некоторый код. Как это реализовывается?
Вопрос всё ещё актуален, хотя костыль в обход этого я уже реализовал.


Сообщение отредактировал OmKol - Пятница, 16 Июля 2010, 20:01
OmKolДата: Понедельник, 12 Июля 2010, 22:06 | Сообщение # 12 | Тема: Вопрос касательно объектов
был не раз
Сейчас нет на сайте
И снова объекты. Вопрос:
Имеется игра, в которой имеются комната "Главное меню" и много комнат, где происходит игровой процесс. При входе в первую такую комнату инициализируется помещенный на карту объект, помеченный как постоянный и соответственно работающий в других комнатах. При возврате в главное меню надо убить этот объект, но при этом чтобы при заходе снова в комнату игрового процесса этот объект заново инициализировался. Можно его не убивать, но тогда будут не работать пункты меню в главном меню. Вопрос: Как убить, заморозить или что-нибудь ещё сделать с постоянным объектом, чтобы он не мешал? Или я может что-то не так делаю?

Вопрос закрыт и ответ этому вопросу instance_destroy()

Добавлено (12.07.2010, 22:06)
---------------------------------------------
И снова вопрос по так называемым экземплярам объекта - instances.
Я вот думаю, как узнать, какой экземпляр выполняется первым, а какой - последним. Это важно для совершения одной проверки, перед которой необходимо обнулить переменные.
Или возможно ли как-то схитрить и в самом коде создать экземпляр, выполняющийся первым? Вообще любым способом написать код, который гарантированно будет запускаться перед началом работы такого-то объекта.
Ах да, event Draw. Или использовать другой event?
Хмм, да тут вообще проблема необычного характера - похоже на то, что переменная обнуляется сама по себе. Либо инициализируется всё время event Create, хотя так не должно быть. Ничего не понимаю.
Теперь понял - один объект обращается с целью получить значение другой переменной, но... 0, 1, 24... переменные разные... у меня не укладывается это в голове.
А поставлю вопрос по другому - как определить, что объект встретился хотя бы с одним из множества экземпляров другого объекта?
Хм... заработал обычный place_meeting. А почему он раньше работал только с одним instance? Чудеса, глюки... Вопрос закрыт.

Сообщение отредактировал OmKol - Понедельник, 12 Июля 2010, 22:44
OmKolДата: Воскресенье, 04 Июля 2010, 01:40 | Сообщение # 13 | Тема: Вопросик по Великому Game Maker!
был не раз
Сейчас нет на сайте
Если чтение строки из файла, то чем не подходит file_text_read_string(fileid)?
Если чтение n-ой строки из файла, то разве нельзя пропустить n-1 строк, используя file_text_readln(fileid)?
OmKolДата: Суббота, 03 Июля 2010, 13:15 | Сообщение # 14 | Тема: Вопрос касательно объектов
был не раз
Сейчас нет на сайте
Quote (FedenkoVadik)
есть разница? Хотя, он все равно не вернется...

Ну а как же - одних и тех же объектов может быть на карте помещено несколько (эти копии я и предпочитаю называть экземплярами, поправьте меня, если я использую неверный термин). Соответственно для каждого экземпляра объекта исполняется код. И иногда бывает удобно работать с id этого экземпляра объекта. Я правда ещё не пробовал - успел найти другую реализацию нужного мне алгоритма.
OmKolДата: Пятница, 02 Июля 2010, 22:09 | Сообщение # 15 | Тема: Вопрос касательно объектов
был не раз
Сейчас нет на сайте
Quote (FedenkoVadik)
id

Хм, спасибо. Я почему-то сначала подумал, что id - это номер самого объекта.
OmKolДата: Пятница, 02 Июля 2010, 19:05 | Сообщение # 16 | Тема: Вопрос касательно объектов
был не раз
Сейчас нет на сайте
1. Имеется объект. Вот возьмём переменные x и y. Для каждого экземпляра (или копии или как они называются в Game Maker) объекта, помещаемого на карте, эти переменные разные - сами экземпляры находятся в разных же местах. А переменные, которые я создаю, присваиваются объекту в целом - то есть для каждого экземпляра значение переменной одинаково. Собственно как создать переменные, значения которых для разных экземпляров объекта будут разные, если это возможно?
Мой косяк - позор мне. Они и вправду локальны - это моя ошибка в коде, не самая очевидная.
2. Как узнать номер экземпляра объекта?


Сообщение отредактировал OmKol - Понедельник, 12 Июля 2010, 22:07
Форум игроделов » Записи участника » OmKol [16]
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг