![]() |
Страницы (5): « 1 2 [3] 4 5 » Показать все 70 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Кастомные декали паранои (https://hlfx.ru/forum/showthread.php?threadid=2010)
Вот тута всё что надо
__________________
Сайт латвийского мода
Игроки в халф лайф делятся на две больше группы - те, кто не доехал на поезде и те, кто прошел несколько раз.
ToMMuK там у трассы джиттер примерно в пять юнитов получается.
А декали ставяться через раз, может в этом все дело?
Чему равны flSpreadX, flSpreadY ? Попробуй их занулить для теста.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
flSpreadX = 0.00
flSpreadY = 0.01, чаще 0.00, ну или -0.01
Даже если их обнулять, всё равно тот же эффект
__________________
Сайт латвийского мода
Игроки в халф лайф делятся на две больше группы - те, кто не доехал на поезде и те, кто прошел несколько раз.
Извиняюсь за поднятие старой темы, просто мне тоже интересно из-за чего так путает декали - я в принципи кое-какую закономерность нашёл
Вот
Ну вот ты сам и ответил на свой вопрос - звучит звук попадания в дерево и там же выбирается "деревянная декаль".
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Я имел в виду при каких условиях - как я понимаю, пуля ''трейслайн'' пролетает мимо ящика и попадает куда надо, а вот ''TraceTexture'' в момент полёта таки задевает первую попавшуюся текстуру (этот самый ящик), определяет её, и рисует в конечной точке трейслайна декаль, соответствующую этой текстуре - я правильно мыслю?
Я без понятия как конкретно этот механизм устроен, но скажу, что TRACE_TEXTURE работает со вполне конкретной энтитью. То есть ей нельзя просто пустить трассу, чтобы она нашла первую энтить на пути.
Нет, ей надо указать именно ту энтить, в которую упёрлась твоя трасса от выстрела. И вот именно её она будет трейсить. Такие дела.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Может её можно заменить на трейслайн - только я не знаю как с помощью него устроить проверку.
Нет, тут не всё так просто. Тут надо разбираться как следует.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
В ev_hldm есть функция определения звука удара пуль об определённую поверхность - EV_HLDM_PlayTextureSound, от туда же рисуестся вот такой эффект (обычный SmokePuff)
if ( pe && pe->solid == SOLID_BSP )
{
CObject *pObj = new CSmokePuff( ptr->endpos, ptr->plane.normal, 0.8, 0.2, spd_min, spd_max, 10, 20, spd_side, 0.4, 0.27, 0.14 );
g_objmanager.AddObject(pObj);
} - сам эффект записан в triapiobjects.cpp. Я хотел там сделать свой (искры для металла), но как его правильно написать на клиенте я не знаю - просто чтоб спрайт появлялся и исчезал. Подскажите пожалуйста, как это можно сделать?
Сделал на сервере черес мессагу, думал в combat.cpp в конце функции FireBulletsPlayer поставить, только как рисовать его в месте попадания пули не знаю. Если так - UTIL_Richo( pev->origin ) - то не подходит, хотя и работает. Вот мессага
void UTIL_Richo( const Vector &position )
{
MESSAGE_BEGIN( MSG_PAS, SVC_TEMPENTITY, position );
WRITE_BYTE( TE_SPRITE );
WRITE_COORD( position.x );
WRITE_COORD( position.y );
WRITE_COORD( position.z );
WRITE_SHORT( g_sModelIndexRicho );
WRITE_BYTE( 1 );
WRITE_BYTE( 100 );
MESSAGE_END();
} - может кто знает, какие параметры нужно поставить?
Ну искр не будет при таком подходе-то.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ну я имел в виду не SPARKS а просто спрайт искры, просто чтоб появлялся и исчезал. Вот так - UTIL_Richo( pev->origin ) - работает, но рисует спрайт не в точке попадания пули, а прямо под игроком.
Так надо не pev->origin, а trace_entity->pev->origin хотя бы, но тоже фигня, будет рисоваться только на энтитях и в точке оригина. Надо вектор трейса совать.
__________________
-Brain is dead-
Временная зона GMT. Текущее время 12:04. | Страницы (5): « 1 2 [3] 4 5 » Показать все 70 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024