Вообщем, хочу уменьшить все объекты, чтобы можно было делать по сути большие с точки зрения масштаба карты. Нашёл тутор, но не понял, что значит в шаге 7 "Enter both Entropy's omegafied code, and a modified version of my old PM_UpdateClipBox function:
NOTE:You'll need to include com_model.h, so make sure you wipe out any struct at the top of pm_shared.c thats been duplicated from com_model.h as well.", поэтому не компилится
Yo Den писал: "Enter both Entropy's omegafied code, and a modified version of my old PM_UpdateClipBox function:
Автор тутора какой-то дурачок. Вместо того, чтобы всё понятно описать, он придумал какие-то девчачьи, взрослые и рукопашные хуллы. Но особенно меня впечатлил чисто визуальный рескейлинг модели. От там прямым текстом пишет: дескать, я рекомендую скейлить модели правильно (то есть саму модель уменьшать, а не хак в коде юзать), и не вносить это изменение; если ваш мод (внимание, самый шик! ) не использует хитбоксы, а вместо этого использует BBOX, всё нормально. То есть в этом туторе мы имеем чисто визуальное уменьшение. Ну и как в это играть? Взял бы да написал, дескать, сначала уменьшите модели.
Цитата:
Yo Den писал: поэтому не компилится
Ты хоть лог компилятора приложи что ли... Чего там у тебя не компилится.
Ku2zoff писал: Ты хоть лог компилятора приложи что ли... Чего там у тебя не компилится.
что выкладывать то, если я не понимаю ""Enter both Entropy's omegafied code, and a modified version of my old PM_UpdateClipBox function:
NOTE:You'll need to include com_model.h, so make sure you wipe out any struct at the top of pm_shared.c thats been duplicated from com_model.h as well."" и не могу правильно выполнить этот шаг
ок, решил начать заново и компилить после каждого шага. В данный момент в туторе шаг 2, начинается со слов "Open up world.cpp
Find CWorld::Spawn(), place this above it:". Вроде бы понял, сделал так:
C++ Source Code:
1
extern"C"
2
int g_model_hulls_fixed;
3
4
void CWorld :: Spawn( void )
5
{
6
g_fGameOver = FALSE;
7
Precache( );
8
g_flWeaponCheat = CVAR_GET_FLOAT( "sv_cheats" ); // Is the impulse 101 command allowed?
9
g_model_hulls_fixed = 0; // New map - make sure all the models get fixed again
10
}
По дефолту там
C++ Source Code:
1
void CWorld :: Spawn( void )
2
{
3
g_fGameOver = FALSE;
4
Precache( );
5
g_flWeaponCheat = CVAR_GET_FLOAT( "sv_cheats" ); // Is the impulse 101 command allowed?
6
}
Возникает такая ошибка: "1>world.obj : error LNK2001: неразрешенный внешний символ "_g_model_hulls_fixed""
Добавлено 04-05-2015 в 18:41:
Ну или черт с ним, с тутором, лучше подскажите, как исправить то, что на скрине: если задать маленький хулл игроку и подойти к стене, то его взгляд будет проходить сквозь стену (на скрине взгляд проходит как раз сквозь стену и видно то, что внутри дома), как уменьшить "дальность взгляда" вектор ну или что это, как это вообще устроено, связано ли это с GetHullBounds?
Кроме уменьшения размеров в игре, тебе еще придётся перекомпилить все карты под новые хуллы и, конечно же, останется вопрос лимита энтитей на карте.
Допустим, на стандартной карте у тебя всё более-менее равномерно заполняется, а вот уменьшишь в 16 раз, ну ОК, но карта будет голой т.к. если игровых лимитов на стандартную карту хватает, то на новую уже не будет хватать.
И еще возникнет проблема с попаданиями в игрока - чем меньше хуллы и хитбоксы, тем сложнее попатсь. наткнулся на эту проблему в Тириане. А там я всего-то в 4 раза всё уменьшил, а вот в ракеты из пулемёта попасть уже не могу - мелкие они слишком стали...
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
Ghoul [BB] писал: перекомпилить все карты под новые хуллы
для начала эти карты нужно сделать)
Цитата:
Ghoul [BB] писал: но карта будет голой т.к. если игровых лимитов на стандартную карту хватает, то на новую уже не будет хватать.
как же, меньше дом на карте - меньше брашей на него используется, но карта не станет от этого голой.
Цитата:
Ghoul [BB] писал: И еще возникнет проблема с попаданиями в игрока - чем меньше хуллы и хитбоксы, тем сложнее попатсь. наткнулся на эту проблему в Тириане
вот это не совсем понял. Меньше же они становятся только физически, в игре то они выглядят такого же размера. В любом случае, единственная проблема у меня сейчас, это как сделать, чтобы подойдя в упор к стене, имея при этом маленький хулл, не проходить взглядом эту стену насквозь (при стандартном виде от первого лица), я не знаю как это исправить
Добавлено 04-05-2015 в 20:20:
Цитата:
Ghoul [BB] писал:
для примера набросал на коленке кривую карту. Всё в 16 раз меньше стандартных размеров хл, стандартная сетка хаммера. Высота 5этажки 63 юнита. Стандартная сетка хаммера
Yo Den писал: ""Enter both Entropy's omegafied code, and a modified version of my old PM_UpdateClipBox function:
Цитата:
XaeroX писал: Ну ты ввёл энтропийный омегифицированный код или нет? Что именно не получатся?
Ну я ж не ошибся, что автор дурачок А ведь это код, написанный юзером Entropy, модифицированный юзером Omega, и модифицированный код старой функции PM_UpdateClipBox, написанный Omega.
Эти буржуи, чесслово, меня забавляют до смерти. Придумывают весьма и весьма годные вещи, а реализуют через жопу с кучей индусского говнокода. И ещё умудряются комментировать свои туторы как Велимир Хлебников стихи писал, что ничего не разберёшь.
Цитата:
Yo Den писал: Возникает такая ошибка: "1>world.obj : error LNK2001: неразрешенный внешний символ "_g_model_hulls_fixed""
Фтопку русскую версию Visual Stduio. Я с трудом смог понять, что значит "неразрешенный внешний символ" Это значит "неопределённый (необозначенный) внешний символ", то есть "unresolved external symbol".
А ты вставил строчку int g_model_hulls_fixed = 0; в любое место вне функции в pm_shared.c?
Работай в этом направлении! Может, у тебя реально что получится.
Дома-коробки - замечательно, может, лимитов особо не едят. А вот как решишь засадить территорию деревьями да пушаблями-брейкаблами-дверями, тут и может повылазить. Но действуй, пробуй. Может, это только моё воображение.
Проглядывание через стену - охх, рад бы помочь, но у меня под рукой исходников нету. В Тириане погляди в коде дистанцию камеры. Там это пофикшено.
Добавлено 05-05-2015 в 07:52:
Да, еще надобно будет с декалями что-то делать - даже от пуль они у тебя во всю стену станут. Молчу уже про ракеты.
Добавлено 05-05-2015 в 07:53:
Ну и всё-таки потом попробуй пострелять по людям, а? Очень интересен эффект попадания. Особенно в голову...
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
На клиенте, в коде камеры. Охх, проще, напиши ~X~ вопросец.
Он долго бился над такой же проблемой.
Добавлено 05-05-2015 в 08:21:
Цитата:
Yo Den писал: ну я тринити использую, там всё ок.
А подробнее? Какую версию, откуда брал?
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo