Возможно ли скрыть оружие weapon_ (а не viewmodel) ?

Пакетик чая

Участник
Сообщения
66
Реакции
39
Собственно интересует возможно ли как-то скрыть именно weapon_ который задается для v_ модели (SetTransmit) не вариант т.к если через него то там скрывается все, прицел, патроны и т.д.
Делаю что-то типа custom weapons.. но столкнулся с проблемой что prediction_ просто ложится по верх деф модели, а деф модель при этом не скрывается и при стрельбе или же сменах оружий вот такой вот нюанс.
Посмотреть вложение Half Life Source 2021.03.21 - 11.09.40.02.mp4
 

ironman

Участник
Сообщения
359
Реакции
229
попробуй m_bDrawViewmodel.(скрывает все).
*m_nModelIndex < 1. на крайняк можешь использовать игровую функцию через sdkcall "CBaseCombatWeapon::Holster"( оффсеты win 249 | linux 250 ) на оружие. аргументов один. игра сама скрывает/показывает при повторном вызове.
 
Последнее редактирование:

Пакетик чая

Участник
Сообщения
66
Реакции
39
попробуй m_bDrawViewmodel.(скрывает все).
*m_nModelIndex < 1. на крайняк можешь использовать игровую функцию через sdkcall "CBaseCombatWeapon::Holster"( оффсеты win 249 | linux 250 ) на оружие. аргументов один. игра сама скрывает/показывает при повторном вызове.
да, оно то скрыть скрыло, но я похоже просто ошибся... там скорее всего дело в анимациях... при старте или же завершении любой анимации появляется на долесекунду деф модель, даже не знаю где оно может меняться.


Посмотреть вложение Half Life Source 2021.03.22 - 01.51.10.03.mp4
 

RusJJ

Вкусно пахну
Сообщения
2,020
Реакции
666
@Пакетик чая, а что будет, если поменять оружие, а затем вновь на нож переключиться?
 

Пакетик чая

Участник
Сообщения
66
Реакции
39
@Пакетик чая, а что будет, если поменять оружие, а затем вновь на нож переключиться?
тоже самое что на двух видео, я предполагаю что где-то в анимациях тянется деф модель и не сразу заменяется не знаю даже. Хотелось сделать с адекватной анимацией без ложных выстрелов как в CW и топорных зажимов но вот этот момент когда мелькает деф анимация напрягает и даже не знаю можно ли это как-то исправить
 

RusJJ

Вкусно пахну
Сообщения
2,020
Реакции
666
@Пакетик чая, анимация не связана с моделью. Если есть кости одинаковые, то они соответствующе двигаются. Не более. В КСЖо похожая ситуация, только фиксится переключением оружия.
 

ironman

Участник
Сообщения
359
Реакции
229
Попробуй DispatchKeyValue(weapon, "classname", "weapon_new"); или targetname.
Помню раньше так делал со скриптами на оружии и дефолтеая моделька не применялась а была error
 

Пакетик чая

Участник
Сообщения
66
Реакции
39
Попробуй DispatchKeyValue(weapon, "classname", "weapon_new"); или targetname.
Помню раньше так делал со скриптами на оружии и дефолтеая моделька не применялась а была error
не помогло

@Пакетик чая, анимация не связана с моделью. Если есть кости одинаковые, то они соответствующе двигаются. Не более. В КСЖо похожая ситуация, только фиксится переключением оружия.
не знаю... есть еще предположение что это в клиенте как-то заложено и именно из за этого custom weapon сделан так как сделан, а не через простое переопределение модели у оружия.

Посмотреть вложение Half Life Source 2021.03.22 - 16.26.52.04.mp4

П.с меняю модель через CBaseAnimating::SetModel
C++:
void CBaseAnimating::SetModel( const char *szModelName )
{
    MDLCACHE_CRITICAL_SECTION();

    // delete exiting studio model container
    UnlockStudioHdr();
    delete m_pStudioHdr;
    m_pStudioHdr = NULL;
    
    if ( szModelName[0] )
    {
        int modelIndex = modelinfo->GetModelIndex( szModelName );
        const model_t *model = modelinfo->GetModel( modelIndex );
        if ( model && ( modelinfo->GetModelType( model ) != mod_studio ) )
        {
            Msg( "Setting CBaseAnimating to non-studio model %s  (type:%i)\n",    szModelName, modelinfo->GetModelType( model ) );
        }
    }

    if ( m_boneCacheHandle )
    {
        Studio_DestroyBoneCache( m_boneCacheHandle );
        m_boneCacheHandle = 0;
    }

    UTIL_SetModel( this, szModelName );

    InitBoneControllers( );
    SetSequence( 0 );
    
    PopulatePoseParameters();
}
так-же пробовал через UTIL_SetModel но получаю один и тот же эффект
Сообщения автоматически склеены:

П.с оказывается дело в предикшене. cl_predict 0 исправляет данный визуальный баг однако фиг знает какие будут последствия.
как мне объяснил Reg1oxeN "значит предикция заменяет модельку. думает что рассинхрон и исправляет"
 
Последнее редактирование:
Сверху