HLFX.Ru Forum Страницы (264): « Первая ... « 89 90 91 92 [93] 94 95 96 97 » ... Последняя »
Показать все 3960 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Нубские вопросы от <censored> и других нубов (https://hlfx.ru/forum/showthread.php?threadid=4535)


Отправлено Ku2zoff 16-12-2017 в 19:22:

Цитата:
thambs писал:
Длья объектов размером больше 2м можно придерживаться пропорции 1:1; для объектов размером с игрока , вроде дверных проёмов, узких комнат масштаб 1:1.1 .. 1:1.2 по горизонтали; для мелочёвки размером 50см и меньше -- 1:25 .. 1.5.

Вот, совет опытного маппера, как и что нужно скейлить. Так что, semerjon, дерзай. Но не делай 1:1, будет выглядеть убого.


Отправлено Smykov 16-12-2017 в 19:24:

Спасибо, учту


Отправлено thambs 16-12-2017 в 19:36:

Ещё моменты:
минимальная ширина коридора что бы в нём гарантированно смогли разойтись 2 игрока -- 72, монстра -- 96 юнитов;
минимальная ширина дверей -- 40 юнитов, оптимально 48; высота дверей 96-80;
минимальная ширина комнатушки -- 120 юнитов;
если делаешь реалмэппинг про рашку, то ширину комнат в пяти/многоэтажках лучше делать в 128--144 юнита, а ширину несущих стен 8-12 юнитов.

__________________
http://www.moddb.com/mods/monorail-quest


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

Цитата:
Ku2zoff писал:
А для экономии MAX_MODELS в движке, ты можешь загружать брашевые пропы из внешних BSP, есть такой фокус

внешняя и внутренняя модель расходуют слоты одинаково.

Цитата:
Ku2zoff писал:
Математически - нет. Визуально - да.

Ктож мне говорил, поиграл в халфу в 3д очках и все пропорции сразу встали на свои места.

Цитата:
Ku2zoff писал:
studiomdl ничего не отрезает

Полигоны нет, а кости - вполне может.

__________________
My Projects: download page

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

Цитата:

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


Отправлено Ku2zoff 17-12-2017 в 03:52:

Цитата:
Дядя Миша писал:
внешняя и внутренняя модель расходуют слоты одинаково.

Дядя Миша, просвети пож-та. Если мы делаем десять брашевых столов (func_wall) и располагаем их в разных местах карты под разными углами, это будут десять разных моделей? Если да, то десять таких же (точечных) столов, грузящих одну заранее откомпиленную модель из table.bsp, будут занимать не десять слотов в таблице моделей, а один. У меня всё руки не доходят проверить эту теорию.


Отправлено Sigurth 17-12-2017 в 07:28:

Ku2zoff Я пытался задавать моделью откомпиленный кубик, но на нем не рисовались декали, фонариком и вообще любыми источниками света не освещался. Вышло хуже, чем просто модель ставить, но коллизия была нормальная. И то не уверен, ведь это кубик. Хотя может быть я делал это неправильно.

__________________
Никогда не поздно сделать мод под хл1


Отправлено Дядя Миша 17-12-2017 в 12:59:

Цитата:
Ku2zoff писал:
Если мы делаем десять брашевых столов (func_wall) и располагаем их в разных местах карты под разными углами, это будут десять разных моделей? Если да, то десять таких же (точечных) столов, грузящих одну заранее откомпиленную модель из table.bsp, будут занимать не десять слотов в таблице моделей, а один.

Если одинаковую модель пихать в разные места, то экономия будет конечно. Просто брашевые модели обычно все уникальны, если конечно речь не идёт за аптечки-патроны.

Цитата:
Sigurth писал:
Хотя может быть я делал это неправильно.

халфа изначально с ними не очень хорошо дружит.

__________________
My Projects: download page

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

Цитата:

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


Отправлено Ku2zoff 17-12-2017 в 13:38:

Цитата:
Дядя Миша писал:
Просто брашевые модели обычно все уникальны, если конечно речь не идёт за аптечки-патроны.

Вагончики на картах c0a* все одинаковые. А их там до 3х штук на карте. Ещё зарядники здоровья и брони. Всякие лампы под потолком, двери. Можно нехило так сэкономить на больших картах, до 20-30 моделей. Хотя, конечно, самая экономия будет, если прекэшить как можно меньше моделей и спрайтов.


Отправлено Chyvachok 17-12-2017 в 15:11:

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


Отправлено Ghoul [BB] 17-12-2017 в 15:50:

Цитата:
Ku2zoff писал:
Вагончики на картах c0a* все одинаковые. А их там до 3х штук на карте. Ещё зарядники здоровья и брони. Всякие лампы под потолком, двери. Можно нехило так сэкономить на больших картах, до 20-30 моделей. Хотя, конечно, самая экономия будет, если прекэшить как можно меньше моделей и спрайтов.


Eсли вы отказываетесь от w_*.mdl оружия, а так же запихиваете все айтемы, гильзы и пикапы по отдельным субмоделям, прирост в экономии моделей будет существенным.
добавьте сюда отрисовку всех спецэффектов многокадровыми спрайтами из набора разных фреймов - и это ещё экономия. если же ещё для таких вещей сделать client precache, подгружая это дело только из клиентки, то ещё ужмёмся. собственно, во всём остальном моделей вполне должно хватить, если, конечно, вы не делаете детализацию карты одними моделями. Да и в этом случае прежде fps не позволит т.к. будет слишком много еполи в кадре...
А если ещё и перейдёте на Ксаш... то ... ну вы поели...

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено Sigurth 18-12-2017 в 04:46:

Как узнать количество bodyparts у модели на клиенте?

Пробовал

C++ Source Code:
model->numframes

возвращает 0

Пробовал
C++ Source Code:
((studiohdr_t *)IEngineStudio.Mod_Extradata(model))->numbodyparts

возвращает 0

Задаю непосредственно бодю вот так
C++ Source Code:
1
if( model->type == mod_sprite )
2
  pTemp->entity.curstate.frame = RandomLong( 0, frameCount - 1 );
3
else if( model->type == mod_studio )
4
  pTemp->entity.curstate.body = RandomLong( 0, frameCount - 1 );


Просто делаю кастомный CL_BreakModel, скопипастил код из ксаша, с некоторыми изменениями. Так вот, в Ксаше код такой
C++ Source Code:
1
// frameCount это количество bodyparts
2
Mod_GetFrames( modelIndex, &frameCount );
3
 
4
// где функция выше это
5
void Mod_GetFrames( int handle, int *numFrames )
6
{
7
  model_t    *mod = Mod_Handle( handle );
8
 
9
  if( !numFrames ) return;
10
  if( !mod )
11
  {
12
    *numFrames = 1;
13
    return;
14
  }
15
 
16
  *numFrames = mod->numframes;
17
  if( *numFrames < 1 ) *numFrames = 1;
18
}


За исключением того, что все гибсы падают с одинаковым body == 0, все остальное работает как надо.

ЧЯДНТ

__________________
Никогда не поздно сделать мод под хл1


Отправлено Дядя Миша 18-12-2017 в 10:13:

Если у тебя numbodyparts возвращает ноль, то модель вообще не будет рисоваться. Что-то ты не то возвращаешь. Далее, если ты делаешь на чистой халфе, то она и не пишеть кол-во бодей в numframes, это только ксаш так делает. Но можно взять R_StudioBodyVariations и рассчитать самому.

__________________
My Projects: download page

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

Цитата:

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


Отправлено Sigurth 18-12-2017 в 12:29:

Цитата:
Дядя Миша писал:
Если у тебя numbodyparts возвращает ноль, то модель вообще не будет рисоваться

Ошибся, ((studiohdr_t *)IEngineStudio.Mod_Extradata(model))->numbodyparts возвращает единицу, не ноль.

Но теперь все заработало, стырил из ксаша R_StudioBodyVariations, но был уверен, что не заработает, ведь в ней цикл с этим самым numbodyparts, который мне надо было найти, однако все работает. Главное, что работает. Спасибо,
Дядя Миша

__________________
Никогда не поздно сделать мод под хл1


Отправлено Sigurth 19-12-2017 в 14:54:

Кстати до меня дошло почему. numbodyparts это не сами субмодели, а бодигруппы с субмоделями, и вот в каждой бодигруппе есть уже сами субмодели в количестве pbodypart[i].nummodels

__________________
Никогда не поздно сделать мод под хл1


Отправлено Crystallize 19-12-2017 в 17:41:

Как в кваке повесить на одну и ту же клавишу одновременно +left и +moveleft?


Временная зона GMT. Текущее время 12:57. Страницы (264): « Первая ... « 89 90 91 92 [93] 94 95 96 97 » ... Последняя »
Показать все 3960 сообщений этой темы на одной странице

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