HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Нубские вопросы от <censored> и других нубов
Чтобы не создавать сто тем
7 голосов
Страницы (260): « Первая ... « 168 169 170 171 [172] 173 174 175 176 » ... Последняя »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1002
Возраст: 31

Рейтинг



Ну чего ходить вокруг да около. Вот сам файл материалс. Я не могу там найти ничего странного, может вы найдете. Кроме одной закомменченой строчки //unbreakable crates

Вложение: materials.txt (4.8 кб)
Этот файл был скачан 117 раз.

__________________
Мой мод на Xash

Сообщить модератору | | IP: Записан
Сообщение: 198239

Старое сообщение 28-10-2020 17:45
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32190
Нанёс повреждений: 392 ед.

Рейтинг



Меня не интерисует файл materials, мне интересно как оно выглядит в памяти. Выкладывай лог с последним куском кода.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 198240

Старое сообщение 28-10-2020 17:53
-
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1002
Возраст: 31

Рейтинг



Сверил выведенный лог с последним кодом и файл материалс. Отсутствует последняя текстура.

[ Вложение ]
untitled.jpg

__________________
Мой мод на Xash

Сообщить модератору | | IP: Записан
Сообщение: 198241

Старое сообщение 28-10-2020 17:58
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32190
Нанёс повреждений: 392 ед.

Рейтинг



До меня дошло. Мы же сперва смотрим что там записывается, а портится оно уже после. Я еще и думал, что же меня так смущает.

C++ Source Code:
1
for( i = 0; i < gcTextures; i++ )
2
  pmove->Con_Printf( "%с %s\n", grgchTextureType[i], grgszTextureName[i] );
3
// вставить здесь
4
pmove->COM_FreeFile ( pMemFile );


Сделай вот так и выложи лог.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 198244

Старое сообщение 28-10-2020 19:10
-
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1002
Возраст: 31

Рейтинг



Тонна красных строчек "sprintf throw exception" в консоли.
На всякий случаю показываю, как вставил код:

Блин косяк там. Ща

Добавлено 28-10-2020 в 22:24:

Там была русская с в %c.
Все то же самое. Последней текстуры нет.

__________________
Мой мод на Xash

Отредактировано Aynekko 28-10-2020 в 19:22

Сообщить модератору | | IP: Записан
Сообщение: 198245

Старое сообщение 28-10-2020 19:24
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32190
Нанёс повреждений: 392 ед.

Рейтинг



Ну ладно, раз ты игноришь мои просьбы, разбирайся сам.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 198246

Старое сообщение 28-10-2020 19:33
-
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1002
Возраст: 31

Рейтинг



Ну вот лог. Только в чем смысл? Сверил список диффчекером, последней текстуры нет, а так все совпадает...

Вложение: engine.txt (7.1 кб)
Этот файл был скачан 104 раз.

__________________
Мой мод на Xash

Сообщить модератору | | IP: Записан
Сообщение: 198247

Старое сообщение 28-10-2020 19:38
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32190
Нанёс повреждений: 392 ед.

Рейтинг



Дай-ка подумать. У бинарного поиска могут быть некоторые фейлы вот как раз в тех случаях, что ты привёл.

Замени PM_FindTextureType вот на это

C++ Source Code:
1
char PM_FindTextureType( char *name )
2
{
3
  for( int i = 0; i < gcTextures; i++ )
4
  {
5
    if( !Q_stricmp( name, grgszTextureName[i] ))
6
      return grgchTextureType[i];
7
  }
8
  return CHAR_TEX_CONCRETE;
9
}

пока для теста. И приведи materials.txt в нормальный вид, без дубликатов, если еще не привёл.

Добавлено 28-10-2020 в 23:37:

Если заработает - верни старый код на место и замени вот эту строку
C++ Source Code:
val = strnicmp( name, grgszTextureName[ pivot ], CBTEXTURENAMEMAX-1 );

на
C++ Source Code:
val = Q_stricmp( name, grgszTextureName[ pivot ] );


Добавлено 28-10-2020 в 23:38:

Ну и CBTEXTURENAMEMAX оставь 24, лишним не будет.

Добавлено 28-10-2020 в 23:41:

Цитата:
Aynekko писал:
последней текстуры нет, а так все совпадает...

Это баг memfgets. Последняя строка должна быть пустой, чтобы он смог прочитать эту текстуру.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 198248

Старое сообщение 28-10-2020 20:41
-
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1002
Возраст: 31

Рейтинг



И впрямь заработало О.о старый код вернул и строчку поменял, тоже работает. Последняя текстура так появилась в консоли только после того, как я добавил пустую строчку в тхт.
Файл чистый, без дубликатов и прочего. Большое спасибо!!!

Добавлено 28-10-2020 в 23:47:

Цитата:
Дядя Миша писал:
Это баг memfgets. Последняя строка должна быть пустой, чтобы он смог прочитать эту текстуру.

А, хых, ну вот я это и сделал

__________________
Мой мод на Xash

Сообщить модератору | | IP: Записан
Сообщение: 198249

Старое сообщение 28-10-2020 20:47
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32190
Нанёс повреждений: 392 ед.

Рейтинг



Да я понял. В сортировке Q_stricmp, а в поиске strnicmp, они отличаются.
Т.е. я там заменил, а тут просто забыл. Но CBTEXTURENAMEMAX всё равно надо было увеличить.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 198250

Старое сообщение 28-10-2020 20:56
-
Chyvachok
Житель форума

Дата регистрации: Jul 2011
Проживает: (void)
Сообщений: 1844

Рейтинг



В халве есть какое либо ограничение на кол-во бодигрупп у модели? А то добавил солдату боди для отстреленных конечностей, поврежденный и уничтоженный торс, и у него SetBodygroup перестал корректно работать, то есть оно боди просто рандомно меняет, к примеру при смерти вместо того чтобы убрать боди оружия SetBodygroup( GUN_GROUP, GUN_NONE ); меняет голову на голову негра у солдата, и боди ноги на отстреленную, та же фигня с головой офицера, SetBodygroup( HEAD_GROUP, HEAD_COMMANDER ); вместо того чтобы выставить голову в берете, меняет боди торса на поврежденный. Номера боди я уверен что правильные использую.

Я вообще заметил в халве эти SetBodygroup и GetBodygroup не корректно работают, первый тупит если у модели много бодигрупп, второй вообще не пашет, я его пробовал юзать для проверки какая голова солдата - хрен, пришлось через pev->body.

Вот в код самого hgrunta и модель, может кто подскажет как быть.

Добавлено 29-10-2020 в 09:53:

Короче сократил кол-во боди, убрал бодигруппу для торса вообще, плюс убрал blank боди у всех конечностей, и оно заработало, досадно что SetBodygroup не хочет работать с большим кол-во бодей, торс ладно, его можно отдельной моделью сделать, но я не знаю, сколько еще боди для оружия и пушек можно добавить чтобы оно не полетело.

Вложение: hgrunt.rar (846.6 кб)
Этот файл был скачан 39 раз.

Сообщить модератору | | IP: Записан
Сообщение: 198262

Старое сообщение 29-10-2020 07:53
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32190
Нанёс повреждений: 392 ед.

Рейтинг



В модельвьювере такая моделька нормально выглядит и у нее нормально всё меняется? Лучше смотреть в моём, потому что он пишет число-комбинацию для определённого набора боди. Посмотри, если всё нормально, скажи, какое там максимальное число было.

Добавлено 29-10-2020 в 11:23:

Вот я стрелочкой отметил

[ Вложение ]
body.jpg

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 198268

Старое сообщение 29-10-2020 08:23
-
Chyvachok
Житель форума

Дата регистрации: Jul 2011
Проживает: (void)
Сообщений: 1844

Рейтинг



Да все нормально, у модели которая работает максимально число 239, хотя я там убрал только 1 бодигруппу и поубирал у боди конечностей blank боди, а у той за 4000 переваливает, строка даже не помещается и переносится из-за чего точно число сложно разобрать, наверное этот setbodygroups не рассчитан на такие числа.

Отредактировано Chyvachok 29-10-2020 в 08:43

Сообщить модератору | | IP: Записан
Сообщение: 198271

Старое сообщение 29-10-2020 08:41
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32190
Нанёс повреждений: 392 ед.

Рейтинг



SetBodyGroups рассчитан. Надо delta.lst подкорректировать.

В секции Entity_Encode

C++ Source Code:
DEFINE_DELTA( body, DT_INTEGER, 8, 1.0 ),

8 мало, это всего 256 комбинаций. 12 - уже 4096.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 198274

Старое сообщение 29-10-2020 09:13
-
Chyvachok
Житель форума

Дата регистрации: Jul 2011
Проживает: (void)
Сообщений: 1844

Рейтинг



Дядя Миша теперь ясно где править, если еще боди понадобятся, спасибо.

Еще хотел по поводу трассы спросить, я ее вчера так и сяк мандровал, так и не вымандровал в итоге, идея в чем, я все еще тот лазер мучаю, решил попровать рисовать луч на сервере, допустим координата выстрела у меня
vecSrc = vecSrc + gpGlobals->v_forward * 8 + gpGlobals->v_right * 7.25 - gpGlobals->v_up * 6;.

То есть точку выстрела я сместил, и я хотел бы как-то подвернуть трассу, чтобы она тоже шла из сдвинутого vecSrc в прицел, то есть ровно центр экрана, а не из m_pPlayer->GetGunPosition(), и тут загвостка, как vecDir у трассы повернуть так чтобы она не тупо прямо шла, т.к. она тоже сместилась от прицела, а подвернуть чтобы она прямо в прицел смотрела.

Вот видно насколько он ниже прицела попадает: https://imgur.com/a/3ZmGyaJ

Вопрос, почему мне просто в начале луча не указать смещенный vecSrc, а в конце tr.vecEndPos который идет из трассы которая идет из m_pPlayer->GetGunPosition(), тут тоже есть загвозда, да луч, идет из ствола прямо в центр экрана, но есть сбоку от прицела есть преграда, через которую луч проходит, он проходит сквозь нее, не нанося ей урона, и не останавливаясь на ней, тоже не порядок: https://imgur.com/a/6fDkj4c

Такая же проблема кстати у ванильного гаусса: https://imgur.com/a/F7FiHON

Добавлено 29-10-2020 в 12:03:

У меня есть код, который подправляет VecDir для снарядов, чтобы они тоже летели ровно в центр экрана, но он не хочет никак работать для трассы, оно ее направляет куда попало, но не в центр экрана.

Он выглядит таким образом для снарядов:

code:
Vector vecDir = m_pPlayer->GetAimForwardWithOffset(); float rightOffset = 6.0; float downOffset = 2.7; //addition to UTIL_VecSkew vecDir = UTIL_VecSkew( vecSrc, vecDir, rightOffset, downOffset, ENT( pev ) ); vecSrc = vecSrc + gpGlobals->v_right * rightOffset - gpGlobals->v_up * downOffset; И сами функции, позаиствовал из Халф Пейна: Vector CBasePlayer::GetAimForwardWithOffset( bool degrees ) { Vector vecDirShooting; Vector crosshairAngle = Vector( 0, 0, 0 ); Vector angles = pev->v_angle + crosshairAngle; if ( degrees ) { return angles; } g_engfuncs.pfnAngleVectors( angles, vecDirShooting, NULL, NULL ); return vecDirShooting; } // Offset the source of trace to the right\left alittle, and then rotate the aim to the left\right according to the distance Vector UTIL_VecSkew( const Vector &vecSrc, Vector vecAiming, float rightOffset, float downOffset, edict_t *shooter ) { TraceResult tr; Vector vecEnd; float traceDistance = 8192; UTIL_TraceLine( vecSrc, vecSrc + gpGlobals->v_forward * traceDistance, dont_ignore_monsters, shooter, &tr ); float hitDistance = ( tr.vecEndPos - vecSrc ).Length(); double yawRotation = ( atan( rightOffset / hitDistance ) * 180 ) / M_PI; double pitchRotation = ( atan( downOffset / hitDistance ) * 180 ) / M_PI; //addition rotate vertically, not just left/right g_engfuncs.pfnAngleVectors( UTIL_VecToAngles( vecAiming ) + Vector( pitchRotation, yawRotation, 0.0 ), vecAiming, Vector(), Vector() ); vecAiming.z *= -1.0; return vecAiming; }

Сообщить модератору | | IP: Записан
Сообщение: 198276

Старое сообщение 29-10-2020 10:03
- За что?
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 11:10. Новая тема    Ответить
Страницы (260): « Первая ... « 168 169 170 171 [172] 173 174 175 176 » ... Последняя »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Нубские вопросы от <censored> и других нубов
Чтобы не создавать сто тем
7 голосов
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

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