theleo_ua Вообщем всё, буду пробовать 3, 4 способы. Больше у меня нет терпения подгонять параметры политр спрайтов под Гоззу. Всё почти получилось, но синий начал выкобениваться. Если бы инструменты были в порядке, - проблем нет. а то - нужно перегнать спрайт из Херетика, в цветувую палитру Дума - которая не сходится по цветам уже с оригиналом. То есть этот сконвертированный спрайт, уже имеет другие полутона и палитра у него уже будет другая, которая опять же не будет сходиться с встроенной думовской в Гоззу.
Короче намучился - это адд, без Дума. Зелёный подогнал, а синий - нужно где-то 5-6 диаппазонов, чтобы охватить весь спектр, да и то, вслепую это сделать не реально, так как сконвертированный спрайт не сходится с встроенной палитрой Гоззы. Вообщем нафиг. Думаю что ты всё это прошёл, поэтому и предлагал мне последние 2 способа.
Попробовал 3-4 способ. Перекрасил спрайты, закинул в мод, посмотрел - хм, всё выглядит так же, как и при Translation методе 2. Нафиг, вернулся к Translation медоду 2, так как там меньше ресурсов в моде используется, для достижения той же цели. Реально попарившись с палитрами, в слепую, так как красно-жёлтый спрайт в моде, имеет труколор и он не определяется палеттами никак. Но всё таки мне удалось настроить торчи, более-менее. На это пока останавливаюсь с цветами.
По поводу отрёхмеривания пламени - да, параметрами можно расширить пламя по X или Y, но только в плоскости. Ни о каком 3D говорить не приходится. Может я не так тебя понял, но у меня всё равно плоская картинка.
theleo_ua Тут не 3D огонь. https://www.youtube.com/watch?v=nk2TL4GEa8w Да, в Декорейте по оси X и Y можно его отрегулировать, что он будет выглядеть по разному, но он не 3D. Как бы ты на него не смотрел, он всё равно плоский. Можешь посмотреть на огонь сверху, или снизу, ты увидишь, что он как спрайт. Вроде и ZZYZX об этом говорил, что в Гоззе по его сути не может быть 3D геренаторов. Типа не расположен он для этого.
Бог с ним, мне бы хотябы с 2D разобраться. Поэтому я и спрашивал - можно ли повернуть TNT1 A 0, на 90гр., чтобы сделать крест из невидимых спрайтов?
Да, в Декорейте по оси X и Y можно его отрегулировать, что он будет выглядеть по разному, но он не 3D. Как бы ты на него не смотрел, он всё равно плоский
1) В консоли give artifly и после этого кнопками pgup/pgdn (или какие у тебя забиндены) полетай над огнем и убедись то он не плоский
2) Кинь мне скриншот и ролик 3д огня из интернета, а то мне не совсем понятно, как должен выглядеть 3д огонь, если мой огонь из ролика внезапно 2д
aivar242:
можно ли повернуть TNT1 A 0, на 90гр., чтобы сделать крест из невидимых спрайтов?
ACTOR FiremanFire_BIG : TeleGlitter1
{
States
{
Spawn:
TNT1 A 1
TNT1 A 0 ACS_NamedExecuteWithResult("ChangeScale", 7, 10)
Goto SpawnBasic
SpawnBasic:
FX09 A 1 Bright A_AccTeleGlitter
FX09 A 1 Bright A_AccTeleGlitter
FX09 A 1 Bright A_AccTeleGlitter
FX09 A 1 Bright A_AccTeleGlitter
FX09 B 2 Bright
FX09 B 2 Bright A_AccTeleGlitter
FX09 B 2 Bright
FX09 B 2 Bright A_AccTeleGlitter
//FX09 B 0 A_Jump(256, "End1", "End2", "End3", "End4")
//FX09 C 1 Bright
//FX09 D 1 Bright
//FX09 E 1 Bright
//FX09 F 1 Bright
FX09 G 1 Bright
FX09 H 1 Bright
FX09 I 1 Bright
FX09 J 1 Bright
FX09 J 0 A_Jump(256, "End1", "End2")
End1:
FX09 K 1 Bright
Stop
End2:
FX09 K 2 Bright
Stop
}
}
ACTOR FiremanFire_SMALL : FiremanFire_BIG
{
States
{
Spawn:
TNT1 A 1
TNT1 A 0 ACS_NamedExecuteWithResult("ChangeScale", 1, 6)
Goto SpawnBasic
}
}
ACTOR RedTorch_ADD_Flame : RedTorch replaces RedTorch
{
var int user_i;
States
{
Spawn:
TRED A 1
TRED A 0 A_SpawnItemEx("FiremanFire_BIG", random[TeleGlitter](0,8)-1, random[TeleGlitter](0,8)-1, 52, 1, 1, 0.30)
TRED A 0
{
for (user_i = 0; user_i < 0; user_i++)
{
Там видно что плоскость как у спрайта. Особенно это видно когда на высоте, или снизу на пламя смотришь. Мне очень важно, чтобы огонь был затрёхмеренный. Никая спрайтовая анимация не сравнится с генерацией партиклей. Даже если генерация плохенькая. Спрайтовая анимация - прошлый век.
Может у меня что-то в коде не так? Я его взял от бочек, который ты мне ещё в начале этой ветки кидал. Мне не понравилось то пламя, что в последнем коде, несколько страниц назад было, (матрёшка) поэтому я взял от бочки. Возможно что-то с верхней частью кода не так, где идёт спаун спрайтов FX09.
1) Убедительная просьба на будущее: не юзать fastpic, выкладывай например на itmages.ru
Мне архилень разбираться, почему картинки с убогих хостингов блочатся
2) Выложи видео следующего процесса: как ты врубаешь крылья (give artifly) и летаешь сверху над огнем, смотря на него сверху вниз, и плавно опускаешься вниз на пол, не спуская прицел с огня
aivar242:
Никая спрайтовая анимация не сравнится с генерацией партиклей. Даже если генерация плохенькая. Спрайтовая анимация - прошлый век.
Кто тебе сказал что у тебя спрайтовая анимация? Твой огонь генерируется партиклами, просто вместо каждого отдельно взятого партикла (партикл - маленький кусочек огня) у тебя спрайт. Ты будешь удивлен, но все партиклы в большинстве случаев это спрайты (или комбинации группы спрайтов), даже в думсдее и UE4 (исключение составляют партиклы которые состоят из 3д моделей, как например куски поломанной бочки при взрыве твоих бочек, но огонь такими партиклами обычно не делают)
Если бы твой огонь был спрайтом, то при взгляде на него сверху ты бы увидел плоскую линию, например такую (смотреть левую половину картинки, там где Y-axis). Но так как при взгляде сверху ты увидишь "шапку" огня, то он у тебя трехмерный
А если же тебя парит, что каждый отдельный кусочек огня не трехмерный, здесь я не могу помочь - смени порт на думсдей тогда
1) Да, понял свою проблему, "спрайты не смотрели на игрока". Главное, что по умолчанию они установлены на X/Y, я их сам всегда ставил на Y, даже не знаю почему. Ясно же, что смотреть на трупики монстров, сверху, как на тонкую линию фанеры - не приятно. Видос запиливать не стал, так как проблема не существенна и решена.
2) Огонь тот, я его специально так настроил, чтобы лучше партикли видно было. Сам огонь, каким он сейчас является, если брать по высшему классу - мне не особо нравится, так как он имеет не совсем правильные пропорции, которые на данном этапе, настроить не реально - надо перерисовывать спрайты. Например, верхняя часть огня, имеет такой же размер партиклей, как и нижняя - это не правильно. Верх пламени, всегда сужается. Это я думаю конечно можно решить в Декорейте, но там это займёт не одну строчку кода и надо будет работать с каждым партиклем в отдельности. Это всё потом, главное сейчас сделано. Попробую со свечами помудрить, хотя они все уже сделаны, спрайтовой анимацией, но как я уже говорил, - даже плохинькая герерация партиклей, лучше любой спрайтовой анимации, где сразу видно, что это спрайтами сделано.
Монстры в Думе - это тоже спрайтовая анимация, но тут "за не имением лучшего, как говорится". В современных играх, до сих пор, большой редкостью считается расчленёнка и трупики на левеле в 3D, вернее даже сказать нет такого до сих пор, а в Думе это возможно, потому что спрайтовая анимация не жрёт рессурсов компа, и делай сколько хочешь этой расчленёнки. Это подтвержает мод Brutal Doom.
theleo_ua:
(попробуй вернуть тот огонь, который мы обсуждали в последнее время)
Мне он визуально не понравился, хотя и попробую. Структура языков пламени у него не правильная. как ты считаешь, он лучше (правильней) того - бочечного кода?
1) Да, понял свою проблему, "спрайты не смотрели на игрока". Главное, что по умолчанию они установлены на X/Y, я их сам всегда ставил на Y, даже не знаю почему. Ясно же, что смотреть на трупики монстров, сверху, как на тонкую линию фанеры - не приятно. Видос запиливать не стал, так как проблема не существенна и решена.
Есть кстати 2 способа заставить спрайт смотреть на тебя по вертикали:
1) Через опции, как я писал выше
2) Через декорейт прописать параметр +FORCEXYBILLBOARD
Второй способ хорош тем, что можно одни спрайты заставить смотреть на тебя, а другие заставить не смотреть на тебя. Напомню, что речь идет строго про вертикальный поворот
aivar242:
Мне он визуально не понравился, хотя и попробую. Структура языков пламени у него не правильная.
Идея следующая: генератор огня - это строка spawnitemex(блаблабла). Ты можешь разбить огонь на несколько генераторов, каждый из которых будет генерировать свою часть огня, и каждому генератору подсунуть свои параметры (т.е. несколько строк spawnitemex(блаблабла), у каждой свой "центр", свой радиус, свои скорости по осям XYZ, своя густота и прочее)
Идея следующая: генератор огня - это строка spawnitemex(блаблабла). Ты можешь разбить огонь на несколько генераторов, каждый из которых будет генерировать свою часть огня, и каждому генератору подсунуть свои параметры (т.е. несколько строк spawnitemex(блаблабла), у каждой свой "центр", свой радиус, свои скорости по осям XYZ, своя густота и прочее)
Да, я догадался, что так можно сделать, но это сложный и долгий процесс. В данный момент я поставил с твоей помощью начало в Гоззе. Это хорошо. От этого, в будущем можно будет отталкиваться и строить уже классный огонь, с перерисованными HD спрайтами. Сейчас эти спрайты (партиклы) имеют мизерный размер.
Так код выглядит на данный момент. Я помню ты говорил, что раньше было более удобно сделано, вроде бы через Modeldef просто решалось, а теперь мол нужны костыли, в Декорейте и ACS, чтобы решить эту проблему (слежения за игроком).
Возможно сейчас, появилось более продвинутое решение?
theleo_ua Ясно. Тогда у меня с паком пока всё. Выкачу видос. Все строки кода и параметры для моделей были не копипасчены, а вбиты с нуля. Так же отпораметрены точно по спрайтам, что и заняло больше всего времени + изучение азов Декорейта, так же с нуля. Спасибо TheLeo за помощь.
Добавлено спустя 2 дня 10 часов 18 минут 31 секунду:
theleo_ua Вообщем в будущем, у сфер, надо слежение за игроком доработать и пламя торчей тоже. Если на сферы смотришь с уступа, на определённой высоте, то она не видит игрока и смотрит вперёд. На уровне E4M3, в начале, это видно.
Вообщем в будущем, у сфер, надо слежение за игроком доработать и пламя торчей тоже. Если на сферы смотришь с уступа, на определённой высоте, то она не видит игрока и смотрит вперёд. На уровне E4M3, в начале, это видно.
Для сфер в modeldef замени везде INHERIT на USE
Например вместо INHERITACTORPITCH напиши USEACTORPITCH
Такое проделай для всех моделей (где используются такие свойства) и в будущем вместо INHERITACTORPITCH всегда пиши USEACTORPITCH. Дело в том, что в гоззе 2.4.0 надо было inherit писать, а в 3.0 уже только USE работает
theleo_ua Только что проверил: - в порте 2.4.0 - всё работает отлично с поворотами сфер, а в 3.0 - нет! Только горизонталь, а вертикаль нет. Очередные поздравления Графу Захлу.
Сейчас попробую твой новый способ.
theleo_ua:
А с пламенем что не так?
Нет, пламя отличное получилось, почти как оригинал по тону и цветовым переходам. Я имел ввиду форму огня. Там надо будет к верху сузить огонь. Выложил свой пак на других ресурсах, так народу понравились модельки. Уже задают вопросы, как к Brutal Doom подрубить, типа хотят видеть эти модели в Брутале.
Тут у меня классная идея появилась, надеюсь легко решаемая, но об этом чуть позже.
Скрытый текст:
По поводу этих изменений. Граф что - прикалывается что ли? Как можно играться ключевыми функциями того же ACS, командами, постоянно меняя их, от настроения? Этож беспридел. Тут никогда, ничего работать не будет с такими приколами. Странное дело - порт уже версий 10, да наверно больше, делает то же самое, - так же играет музыку, так же показывает модели, такой же движок. Спрашивается, - что же тогда меняется? А то что я заметил, меняется загрузка оперативной памяти, по ходу это главное достоинство новых версий этого порта. Версия 2.3.2. - занимала 130мб. оперативки, 3.0 - 186мб., и похоже этот показатель будет рости.
Вот я поменяю настройки для 3.0 версии Гоззы, чтобы сфера нормально крутилась, ну так народ сидит на 2.4.0, а того и на 2.0 версиях. Я же не могу все варианты команд на вращение сфер, раздавать для каждой версии порта. Фигово это конечно, что Граф играется с настройками, как ребёнок. Должна же быть какая-то стабильность. Например сразу, одним махом, менять глобальные настройки только в юбилейных версиях, типа 3.0, 4.0, 5.0.
Я имел ввиду форму огня. Там надо будет к верху сузить огонь.
Варианты вижу такие:
1) Делать несколько генераторов огня, один широкий снизу, второй поуже чуть выше, третий еще уже еще выше и т д
2) Сделать сложную математическую формулу, которая будет направлять куски огня к центру в стиле "чем дальше от центра отспавнился кусок огня, тем сильнее смещается направление его полета". Вот помнишь у тебя были горящие бочки с наклоном огня вбок? Вот по такому принципу можно будет наклонять ось полета летящих кусков огня "вбок по направлению к центру" таким образом, чтобы создался эффект конуса
3) Актор куска огня сделать так, что он уменьшается со временем (соответственно, чем выше он долетел, тем он стал меньше, и это будет выглядеть как конус)
Можно эти варианты комбинировать
aivar242:
Уже задают вопросы, как к Brutal Doom подрубить, типа хотят видеть эти модели в Брутале.