Half-Life и Adrenaline Gamer форум

Всё об игре в Халф-Лайф и АГ
Текущее время: 02 дек 2022, 22:53

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: спрайты дыма за ракетой
СообщениеДобавлено: 26 фев 2021, 04:28 
Не в сети
Зарегистрирован:
26 апр 2019, 15:15
Последнее посещение:
06 окт 2022, 23:43
Сообщения: 50
Здраствуйте, подскажите, кто знает, пожалуста, как правильно реализовать дым, который оставляет летящая ракета , TE_BIMFOLOW не подходит, нужно чтоб за ракетой оставались именно много отдельных спрайтов. вот мои попытки, крашащие сервер :

public Rocket_FlyThink(const iRocket,id)
{
static Float: flDmgTime;
static Float: flGameTime;
static Float: vecOrigin[3];

pev(iRocket, pev_origin, vecOrigin);

pev(iRocket, pev_dmgtime, flDmgTime);
set_pev(iRocket, pev_nextthink, (flGameTime = get_gametime()) + 0.03);

engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, vecOrigin, 0);
write_byte(TE_SPRITE);
engfunc(EngFunc_WriteCoord, vecOrigin[0]);
engfunc(EngFunc_WriteCoord, vecOrigin[1]);
engfunc(EngFunc_WriteCoord, vecOrigin[2]);
write_short(pSprite); // index of precached sprite
write_byte(10);
write_byte(7); // 0.1's
message_end();

if (flDmgTime <= flGameTime)
{
set_pev(iRocket, pev_movetype, MOVETYPE_TOSS);
set_pev(iRocket, pev_gravity, 0.4);
}
}


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: спрайты дыма за ракетой
СообщениеДобавлено: 26 фев 2021, 14:13 
Не в сети
Аватара пользователя
Зарегистрирован:
27 дек 2019, 17:59
Последнее посещение:
02 дек 2022, 17:08
Сообщения: 228
Откуда: Иркутск
Думаю сервер просто перегружается : ты заставляешь ракету думать аж каждые 0.03 секунды, а при каждом think-e шлётся мессага. С такой частотой отправляемых сообщений не удивительно, что сервер крашится.

Может снизить частоту обновлений? Или, например, изменить модель самой ракеты, чтобы у неё изначально был дымовой хвост?
Можно ещё так попробовать: находим координаты ракеты каждые n милискеунд, создаем там энтити, задаём ей текстуру дыма (или что там есть) , а через какое -то время удаляем (тем же think-ом например)

_________________
ВК: https://vk.com/pristavka2013
GitHub: https://github.com/mrglaster
Почта: [email protected]

Есть объективная реальность, а есть печенье.


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: спрайты дыма за ракетой
СообщениеДобавлено: 26 фев 2021, 18:10 
Не в сети
Зарегистрирован:
26 апр 2019, 15:15
Последнее посещение:
06 окт 2022, 23:43
Сообщения: 50
Glaster писал(а):
Думаю сервер просто перегружается : ты заставляешь ракету думать аж каждые 0.03 секунды, а при каждом think-e шлётся мессага. С такой частотой отправляемых сообщений не удивительно, что сервер крашится.

Может снизить частоту обновлений? Или, например, изменить модель самой ракеты, чтобы у неё изначально был дымовой хвост?
Можно ещё так попробовать: находим координаты ракеты каждые n милискеунд, создаем там энтити, задаём ей текстуру дыма (или что там есть) , а через какое -то время удаляем (тем же think-ом например)
нет ! сервак крашится и-за того, что с кодом что-то не так, показ спрайтов даже не начинается, и посмотри на спорометатель- там тоже самое -вызов спрайта каждые 0.03 сек и всё нормально, а если к модели ракеты спрайт приделать то будет фигня-от лица стреляющего спрайт плоский.добавнять ещё и энтити с тектурой- это ещё больше будет нагружать чем спрайт без энтити


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: спрайты дыма за ракетой
СообщениеДобавлено: 27 фев 2021, 00:13 
Не в сети
Зарегистрирован:
26 апр 2019, 15:15
Последнее посещение:
06 окт 2022, 23:43
Сообщения: 50
Виталий писал(а):
Glaster писал(а):
Думаю сервер просто перегружается : ты заставляешь ракету думать аж каждые 0.03 секунды, а при каждом think-e шлётся мессага. С такой частотой отправляемых сообщений не удивительно, что сервер крашится.

Может снизить частоту обновлений? Или, например, изменить модель самой ракеты, чтобы у неё изначально был дымовой хвост?
Можно ещё так попробовать: находим координаты ракеты каждые n милискеунд, создаем там энтити, задаём ей текстуру дыма (или что там есть) , а через какое -то время удаляем (тем же think-ом например)
нет ! сервак крашится и-за того, что с кодом что-то не так, показ спрайтов даже не начинается, и посмотри на спорометатель- там тоже самое -вызов спрайта каждые 0.03 сек и всё нормально, а если к модели ракеты спрайт приделать то будет фигня-от лица стреляющего спрайт плоский.добавнять ещё и энтити с тектурой- это ещё больше будет нагружать чем спрайт без энтити
тема закрыта, решение найдено.


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: спрайты дыма за ракетой
СообщениеДобавлено: 27 фев 2021, 09:24 
Не в сети
Аватара пользователя
Зарегистрирован:
27 дек 2019, 17:59
Последнее посещение:
02 дек 2022, 17:08
Сообщения: 228
Откуда: Иркутск
Виталий писал(а):
тема закрыта, решение найдено.
Как решил, если не секрет?

_________________
ВК: https://vk.com/pristavka2013
GitHub: https://github.com/mrglaster
Почта: [email protected]

Есть объективная реальность, а есть печенье.


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: спрайты дыма за ракетой
СообщениеДобавлено: 01 мар 2021, 17:15 
Не в сети
Зарегистрирован:
26 апр 2019, 15:15
Последнее посещение:
06 окт 2022, 23:43
Сообщения: 50
Glaster писал(а):
Виталий писал(а):
тема закрыта, решение найдено.
Как решил, если не секрет?
также как и выше вызовом эффекта по статичным векторным координатам, но не вызов спрайта а вызов взрыва(без звука, частиц,подсветки), отсюда следовала проблема- траектория спрайтов рисовалась выше траектории полёта ракеты, решение- специально созданный спрайт для этой цели


Вернуться к началу
 Профиль 
  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB