HLFX.Ru Forum
Показать все 13 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- cl_entity_t (https://hlfx.ru/forum/showthread.php?threadid=4121)


Отправлено ILZM 10-10-2013 в 15:49:

cl_entity_t

Цитата:
cl_entity_t g_PlayerBodyEnt; например.

Допустим нужно создать клиентскую энтити какую-нибудь. Сказано на манер viewmodel'и.
В Xash3D в V_SetupRefDef:
C++ Source Code:
clgame.viewent.curstate.modelindex = cl.frame.local.client.viewmodel;
clgame.viewent.model = Mod_Handle( clgame.viewent.curstate.modelindex );
clgame.viewent.curstate.number = cl.playernum + 1;
clgame.viewent.curstate.entityType = ET_NORMAL;
clgame.viewent.index = cl.playernum + 1;


Ну аналогично в V_CalcRefDef в XashXT:
C++ Source Code:
1
cl_entity_t *pViewMdl2;
2
 
3
pViewMdl2->curstate.modelindex =	view->curstate.modelindex;
4
pViewMdl2->modelhandle=				view->modelhandle;
5
pViewMdl2->model=					view->model;
6
pViewMdl2->index =					ent->index + 2;
7
pViewMdl2->curstate.entityType =	ET_NORMAL;
8
pViewMdl2->origin =					view->origin;

Вылет...
Есть еще
C++ Source Code:
1
/*
2
=========================
3
HUD_CreateEntities
4
 
5
Gives us a chance to add additional entities to the render this frame
6
=========================
7
*/
8
void DLLEXPORT HUD_CreateEntities( void )
9
{
10
  // e.g., create a persistent cl_entity_t somewhere.
11
  // Load an appropriate model into it ( gEngfuncs.CL_LoadModel )
12
  // Call gEngfuncs.CL_CreateVisibleEntity to add it to the visedicts list
13
 
14
  if( tr.world_has_portals || tr.world_has_screens )
15
    HUD_AddEntity( ET_PLAYER, GET_LOCAL_PLAYER(), GET_LOCAL_PLAYER()->model->name );
16
}

Признаюсь, не получается и не знаю что делать
Поэтому, как создать энтитю на клиенте без сервера?)


Отправлено Дядя Миша 10-10-2013 в 15:54:

О господе...

C++ Source Code:
1
void CStudioModelRenderer::Init( void )
2
{
3
  ...
4
 
5
  m_pCvarLegsOffset		= CVAR_REGISTER( "legs_offset", "15", FCVAR_ARCHIVE );

В StudioSetupTransform
C++ Source Code:
1
if( RP_LOCALCLIENT( m_pCurrentEntity ) && !RI.thirdPerson )
2
{
3
  if( m_fDrawPlayerLegs || !RP_NORMALPASS( ))
4
  {
5
    Vector ang, forward;
6
    ang = tr.cached_refdef->viewangles;
7
    ang[PITCH] = ang[ROLL] = 0; // yaw only
8
    AngleVectors( ang, forward, NULL, NULL );
9
    origin += forward * -m_pCvarLegsOffset->value;
10
  }
11
}

В StudioDrawPlayer
C++ Source Code:
1
if( RP_NORMALPASS() && RP_LOCALCLIENT( m_pCurrentEntity ) && !RI.thirdPerson )
2
{
3
  m_pRenderModel = IEngineStudio.Mod_ForName( "models/player_legs.mdl", false );
4
  m_fDrawPlayerLegs = true;
5
}
6
else m_pRenderModel = IEngineStudio.SetupPlayerModel( m_nPlayerIndex );

И вот то, что ты в конце поста привёл - оно тоже нужно, только без условий.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ILZM 10-10-2013 в 15:58:

А это не ноги. Просто клиентская модель, но спасибо за них). Можно сказать вторая viewmodel.


Отправлено Дядя Миша 10-10-2013 в 16:20:

ILZM в tri.cpp есть пример создания клиентских энтить.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ILZM 25-04-2014 в 17:22:

Простите, что поднимаю старую тему, но ноги не видны...


Отправлено Дядя Миша 25-04-2014 в 17:38:

ILZM я тут твой первый пост перечитал. Ты знаешь чем отличается указатель от объекта?
Или ты звездочку к переменной добавляешь просто по вкусу?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ILZM 25-04-2014 в 17:54:

Дядя Миша, нет)) Если компилится или работает, значит всё нормально! Но это уже не важно. Ноги то не видны по тутору. Мб что-то упущено?


Отправлено Дядя Миша 25-04-2014 в 18:00:

Да ето не тутор, это просто общий принцип.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ~ X ~ 26-04-2014 в 08:23:

Цитата:
ILZM писал:
нет)) Если компилится или работает, значит всё нормально!


Дядя Миша это ж не наша ЦА, правда? не?

__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]


Отправлено Дядя Миша 26-04-2014 в 10:30:

Это надо у него спросить.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ILZM 27-04-2014 в 06:13:

Что такое ЦА это типа я хомичок?


Отправлено Дядя Миша 27-04-2014 в 12:36:

Ты сам выбрал

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ILZM 28-04-2014 в 16:12:

Дядя Миша, донаты? Какие донаты ?


Временная зона GMT. Текущее время 10:00.
Показать все 13 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024