doom2d.org

Главная база плоских морпехов
It is currently 24 Mar 2025, 01:51

All times are UTC + 3 hours




Post new topic Reply to topic  [ 15 posts ] 
Author Message
PostPosted: 01 May 2015, 22:58 
Offline
Site Admin
User avatar

Joined: 17 Oct 2009, 23:43
Posts: 7835
Location: \\HULK
Предлагаю обсудить тут возможный партикль-генератор для спецэффектов, как он мог бы работать.
Зачем он нужен? Например, выдавать искры из проводки. Или рисовать огонь. Или дым. Или пузырьки. Или кровышша с потолка капает.

_________________
И неважно, что нет морей на Марсе, каждый морпех носит море в сердце.


Top
 Profile  
 
PostPosted: 01 May 2015, 23:02 
Offline
Приколист
User avatar

Joined: 31 Oct 2009, 15:55
Posts: 2091
Да! А также можно по желанию брать текстуру в качестве анимации (секция ANIMTEXTURES или просто ANIM в ресурсном ваде) и рисовать её.

_________________
10.06.24


Top
 Profile  
 
PostPosted: 02 May 2015, 00:11 
Offline
Приколист
User avatar

Joined: 01 Jan 2011, 00:39
Posts: 1945
Location: Полигон НТИИМ
Капает кровушка ворогов с потолка :roll:

_________________
Image DM2002 testing
Image Total Destruction - F
EDODLΔ


Top
 Profile  
 
PostPosted: 02 May 2015, 00:13 
Offline
Site Admin
User avatar

Joined: 17 Oct 2009, 23:43
Posts: 7835
Location: \\HULK
О! Дописал.

_________________
И неважно, что нет морей на Марсе, каждый морпех носит море в сердце.


Top
 Profile  
 
PostPosted: 02 May 2015, 00:43 
Offline
Принципиально неуничтожаем
User avatar

Joined: 18 Oct 2009, 04:01
Posts: 7206
Location: Владивосток
Генератор определённо нужен, к тому же задатки в коде для него уже есть. Нужно только по идее написать эмиттер и триггер, его использующий.

Xtor wrote:
А также можно по желанию брать текстуру в качестве анимации (секция ANIMTEXTURES или просто ANIM в ресурсном ваде) и рисовать её.
Причём тут анимации? Речь идёт о генерации частиц навроде искр, которые появляются от стрельбы по стенам.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Top
 Profile  
 
PostPosted: 02 May 2015, 00:55 
Offline
Site Admin
User avatar

Joined: 17 Oct 2009, 23:43
Posts: 7835
Location: \\HULK
ЧД, совершенно верно.

_________________
И неважно, что нет морей на Марсе, каждый морпех носит море в сердце.


Top
 Profile  
 
PostPosted: 26 Jan 2016, 17:52 
Offline
Приколист
User avatar

Joined: 24 Jan 2012, 15:18
Posts: 1440
Location: Москва
Реализованный набор параметров на данный момент:
- количество - частиц за раз
- тип эффекта:
    - генератор частиц
    - анимация
- подтип эффекта/частицы:
    - брызги воды - поддерживают только стандартные цвета
    - цветные брызги (светлее)
    - цветные брызги (темнее)
    - кровь
    - искры
    - пузырьки - только в жидкости
- подтип эффекта/анимации:
    - телепортация
    - респаун
    - огонь колдуна
- цвет эффекта (брызги и кровь)
- по центру - да/нет (если нет, то создаются случайно в рамках области)
- задержка (0~65535) - в тиках между активацией (созданием частиц)
- скорость X (-128~127)
- скорость Y (-128~127)
- отклонение влево (0~255)
- отклонение вправо (0~255)
- отклонение вверх (0~255)
- отклонение вниз (0~255)

_________________
by Stas'M


Top
 Profile  
 
PostPosted: 26 Jan 2016, 18:05 
Offline
Site Admin
User avatar

Joined: 17 Oct 2009, 23:43
Posts: 7835
Location: \\HULK
Мб вместо скорость X, скорость Y ставить силу и угол, как в джамппадах?

_________________
И неважно, что нет морей на Марсе, каждый морпех носит море в сердце.


Top
 Profile  
 
PostPosted: 26 Jan 2016, 18:48 
Offline
Приколист
User avatar

Joined: 24 Jan 2012, 15:18
Posts: 1440
Location: Москва
Возможно. Но так мне кажется удобнее, в плане визуально прикинуть, докуда долетит та или иная частица.

Обновил концепт - добавил количество.

_________________
by Stas'M


Top
 Profile  
 
PostPosted: 27 Jan 2016, 04:47 
Offline
Приколист
User avatar

Joined: 24 Jan 2012, 15:18
Posts: 1440
Location: Москва
Немного модифицировал концепт, и реализовал реквест.

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

Помимо частиц, триггер может создавать и анимации. Но к ним, естественно, неприменимы параметры скорости и отклонения.

TODO:
- Добавить дым, и возможно другие анимации (не путать с частицами)
- Реализовать частицы и анимации в сетевой игре на клиенте

_________________
by Stas'M


Top
 Profile  
 
PostPosted: 27 Jan 2016, 12:27 
Offline
Site Admin
User avatar

Joined: 17 Oct 2009, 23:43
Posts: 7835
Location: \\HULK
» объясню, для чего нужны отклонения
Да и так понятно. Дым, который сносит ветер.

UPD:
1. Искры всегда сносит вправо, независимо от настроек
2. Было бы ООООЧЕНЬ (хотя я понимаю, что трудно) неплохо заиметь превью такого генератора. Можно прямо в окне редактора.
Чтобы наглядно видеть, как он меняется в зависимости от введенных параметров.
3. Также неплохо было бы регулировать ускорение свободного падения для частиц.
4. Очень хочется заполучить "выцветалку". Т.е. чтоб частицы плавно гасли (у них при этом растёт альфа, когда альфа 255, частица убирается).

P.S. вот Экстрейн обрадуется...

_________________
И неважно, что нет морей на Марсе, каждый морпех носит море в сердце.


Top
 Profile  
 
PostPosted: 31 Mar 2023, 13:58 
Offline
Приколист
User avatar

Joined: 17 Oct 2009, 19:57
Posts: 4102
Location: Киров
Пытался сделать косой дождь, а в итоге ни один из параметров триггера это не делает, вообще не реагирует на изменение скорости и отклонения.
Сделали бы действительно как у триггера "ускорение" угол и ускорение. Так и нагляднее и понятнее.

_________________
Давай, картечью демонов
Размажем по стене.
Давай, берсерком выпустим
Весь ливер сатане!

Сделайте нормальный огнемёт! :evil:


Top
 Profile  
 
PostPosted: 03 Apr 2023, 16:42 
Offline
Принципиально неуничтожаем
User avatar

Joined: 18 Oct 2009, 04:01
Posts: 7206
Location: Владивосток
Понял, что этому триггеру всё-таки придётся приделать свойство "Сетевая игра", так как эффекты по умолчанию синхронизироваться не должны, и в новой сети это надо будет учесть. Иначе они попросту насмерть кладут трафик, что в свою очередь влечёт увеличение лагов и потерь пакетов. Такое хорошо заметно, если запустить KakaoDM на сколь-нибудь отдалённом сервере, потому что на карте есть дождик, сделанный не триггером "Эффект", а батарейками плазмы, плещущимися в бутерброде из "лифта вверх" и воды.

Варианты у подобного свойства должны быть примерно такими:

  • Нет - Эффект должен только возникать на клиенте только исходя из других событий (т.е. предсказываться), но не синхронизироваться.
  • Ненадёжно - Эффект должен синхронизировать смену состояния и номер кадра, но только unreliable-пакетами.
  • Без кадров - Эффект должен синхронизировать смену состояния reliable-пакетами, а номер кадра unreliable-пакетами.
  • Всё - Эффект должен синхронизировать и смену состояния, и номер кадра reliable-пакетами.

Замечание, конечно же, требует дополнительной проработки и обдумывания.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Top
 Profile  
 
PostPosted: 04 Apr 2023, 02:08 
Offline
Приколист

Joined: 04 Feb 2010, 14:42
Posts: 988
Синхронизация самих эффектов не нужна. Они существуют только на клиенте.

А вот триггер "эффект" надо нормально заредизайнить:
1) его должно быть возможно включать и выключать отдельными командами -- минимизируем засирание канала (включили один раз дождь и забыли навсегда)
2) каждая команда должна содержать в себе только ид генератора частиц + время когда активирован + сид для рандома (опционально, можно вычислять на клиенте из параметров ид+время) -- опять же минимизируем засирание канала + даем достаточно данных для качественного предсказания где появится эффект и куда полетит.
3) вся остальная информация у клиента есть: точка генерации, направление, количество, тип, как долго генерировать эффекты, etc.
4) опционально можно добавить флажок для игнора динамических объектов (двери, платформы, переключаемые лифты)


Top
 Profile  
 
PostPosted: 13 Jul 2024, 15:42 
Offline
Принципиально неуничтожаем
User avatar

Joined: 18 Oct 2009, 04:01
Posts: 7206
Location: Владивосток
Такое ощущение, что после вот этого коммита KakaoDM по сети стала лагать как будто бы меньше. Но надо проверить дотошнее.
https://repo.or.cz/d2df-sdl.git/commit/8588b7c95416f44e70773a7fc8f2cff890911889

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 15 posts ] 

All times are UTC + 3 hours


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
doom2d.org, since 2007