Ну естественно, поэтому компилятор и не может сгенерить, ведь он не видит цельную геометрию. И как раз на $concave он впадает в ступор.
Тебе нужна нормальная физмодель. Ее придется моделить вручную. Особенно, если ты хочешь салон.
Открываешь макс, и обтягиваешь свою модель боксами, как брашами. Слева пример очень грубой колизии для статичной модели, справа - тоже грубый пример более детальной колизии, на случай, если у авто должны открываться двери, подниматься/опускаться стекла, и вообще, можно в нее будет залезть игроку. Если честно, я сам такие физмодели еще не делал, и пока мне не совсем ясно, как открывать двери через https://developer.valvesoftware.com/wiki/$collisionjoints
Там где есть боксы - там стена, там где нету - там пустота. Все как в хаммере с брашами.
Что вы там поцику мозг делаете? Если плохо понимаете смысл своих советов - не советуйте вообще ничего. Развели какой то базар на базаре.
Честно сказать, не могу понять, зачем ты делаешь свою модель составной, из 3 частей? Она же у тебя статичная, на одной центральной кости, делай тогда уж всю модель, целиком. Если ты хочешь получить реальную модель с вращающимися, независимыми(анимированными) частями, с открывающимися дверями и т.д., тебе придется делать модель на разных костях, а это уже совсем другая, для тебя, история, там твоё "детство" закончится, если ты к этому не готов - можно и не продолжать.
Пусть, пока, делает вообще без включения collisionmodel, закомментируй этот блок на время
простейший пример:
если без него ошибка останется - физбокс точно ни причем, значит проблема в референсе. Разберётся с референсом - дальше уже проще будет.
Физбоксами не нужно обтягивать, если нужно - расскажу как сделать проще и точнее физбокс для модели любой сложности( не более 132 боксов).
Это для статической модели, для динамической модели (collisionjoints) там немного сложнее, но главное понять принцип работы и все будет OK, так же сложностей не будет.
После компиляции, в игре, нужно посмотреть, что у тебя там получилось с моделью, командами:
vcollide_wireframe 1 в игре увидеть физбокс
r_drawentities 0 (1 2 3)в игре отображение (2 скелет, 3 хитбоксы)
sv_cheats 1 не забыть, естественно.
Насчет изменения размеров - у тебя же исходники модели есть - значит в максе соединяешь все что есть в группу, группу scale меняешь на сколько тебе нужно, перед конвертацией разгруппируешь, можно, конечно, сделать $scale в .qc файле, но не советую - проблем потом может быть куча, лучше сразу все по уму делать.
Нажать цИферку 7 в максе - посмотреть кол-во поликов, если больше 10000(для простейшей модели) - нет смысла продолжать вообще.
Не пойму, простейшие вещи становятся проблемой, причем проблемой настолько извращенной, что просто диву даёшься, но похвально то, что поцики стараются что-то сделать с таким уровнем знаний.
Конечно же я сконь-пелял кроубаром его модельку, и с рефом вместо физ модели, и с закоменченным рефом.
Если подставлять реф - даже при условии, что в касыго лимиты на
$maxconvexpieces расширили до 90 - конь-пелятор из рефа пытается сделать 451 кусок.
Код:
WARNING: COSTLY COLLISION MODEL!!!! (451 parts - 40 allowed)
WARNING: Error with convex elements of limuzin.smd, building single convex!!!!
Model has 439 convex sub-parts
Зачем использовать референс вместо физмодели? Бред, но здесь разговор не об этом, сейчас нужно компилировать вообще без модели столкновений(физбокса), забыть про него, пока, вообще.
Post automatically merged:
$maxconvexpieces 90 !? В csgo!?
Не поверю, в hl2, так же и css уже было 132, ты что то путаешь, явно.
Post automatically merged:
Насчёт создания физбокса, в максе, завтра напишу, будет что то типа урока. Там сложного ничего нет.
На валв вики написано, что для касыго 90 кусков максимум. Пробовал ставить у себя для сурс 13 90 - конь-пеляторы параметр схавали, но ругань на max allowed 40 никуда не делась. Можно, конечно протестить на чем-нибудь с тяжелой физмоделью, но мне пока лень.
Значит так, краткий урок о создании точной модели столкновений, или понятнее - физбоксов. Для примера у меня есть моя модель кабины лифта:
1. Для начала нужно сделать деаттач нужных полигонов основной модели(деаттачить каждый элемент отдельно!).
2. Назначаю материал и группу сглаживания(будут одни для всех деаттаченных элементов физбокса), материал можно без текстуры, всё-равно физбокс в игре будет прозрачным. В принципе, назначение материала и группы сглаживания можно сделать в самом конце, когда все деаттаченные элементы будут собраны в один.
3. Если элементом является плоскость(план, и т.д.), накидываем на эту плоскую фигуру модификатор shell, дуем его в нужную сторону(не менее 0,5) и получаем рабочий элемент физбокса.
4. Дальше все деаттаченные элементы соединить в один(attach). Проверить на всякий случай группу сглаживания и назначенный материал.
На этом всё! Сложного ничего нет, точность физбоксов идеальная, у кого есть опыт работы с 3dsmax'ом меня поймут, если такого опыта нет - сорри, я не буду разжевывать каждому что да как.
Что касается сложных моделей столкновений, на нескольких костях, особенно анимированных, это обширная тема, я даже не буду её рассусоливать, я не педагог, у меня нет столько времени, но основной принцип тот же, если, конечно, это не персонажи или npc, здесь да, придётся обтягивать каждую кость боксами или капсулами и каждую из этих капсул(боксов) skin'нить к нужной кости по отдельности, либо другими вариантами делать скин. Можно не искать такие уроки в инете, навряд-ли они там есть(хотя чем чёрт не шутит), это чисто моя технология, отработанная мною и 100% рабочая.
На валв вики написано, что для касыго 90 кусков максимум. Пробовал ставить у себя для сурс 13 90 - конь-пеляторы параметр схавали, но ругань на max allowed 40 никуда не делась. Можно, конечно протестить на чем-нибудь с тяжелой физмоделью, но мне пока лень.
Если ты так же пытаешься делать референс физбоксом(что есть полный бред) - конечно будет ругаться.
Референс - это файл .smd конвертированный из мах(или др. 3d редакторов), это то что мы видим в игре.
Физбокс - это файл .smd(ни в коем случае не референс! это не унриал и юнити и т.д.) конвертированный из отдельной, упрощенной 3d модели референса.
Физбокс делается отдельной, .smd упрощенной моделью, никак иначе(если это, конечно, не ровные прямоугольники ).
И в фйле .qc $maxconvexpieces поставь сколько мах. нужно элементов сделать, это же ограничение.
Кстати, я не читаю вальву, как то нет времени да и желания, всё что я пишу - это моё, лично моё наработанное.
Вот, так же, моя моделька перекрёстка коридоров, где есть радиусы и т.д. с применением моей методики создания физбоксов
Ты вообще читаешь, что я пишу? Это пытался сделать другой юзер. Я лишь подтвердил свои догадки, и написал этому юзеру, как проще всего ему сделать физбоксы, ведь даже вольво настолько не заморачиваются с ними, и у них все работает (кроме гнома в джиппе в эп2). Авто не нужны настолько точные физбоксы.
Практически ничем не отличается от обтягивания боксами, и годится только для сравнительно простых моделей.
Ты вообще читаешь, что я пишу? Это пытался сделать другой юзер. Я лишь подтвердил свои догадки, и написал этому юзеру, как проще всего ему сделать физбоксы, ведь даже вольво настолько не заморачиваются с ними, и у них все работает (кроме гнома в джиппе в эп2). Авто не нужны настолько точные физбоксы.
Мне все равно кто там что пытался сделать. Я пишу урок. Это мой урок, личный.
По хорошему нужно бы спасибо сказать. Если у тебя мало опыта работы с 3d редакторами, не нужно грубить, нужно внимательно читать, и пытаться понять о чем урок. Свои женские амбиции хорошо бы оставить при себе, иначе мы так никуда не уйдем. Если у тебя есть свои уроки в этом плане - я с удовольствием их посмотрю, там и поспорим с тобой.
Мой урок - это мой, личный, урок. Никто мне не скажет что я его где-то там, на ютубе или еще где-то подсмотрел. Я автор.
Этот способ применим для очень сложных и очень точных физбоксов. Создаются просто и быстро, при этом не важно какой формы основная референс-модель.
Ты же можешь продолжать обтягивать и дальше, тратить на это огромное количество времени, при этом твои физбоксы, просто по определению, не будут точными никогда, при всем этом ты, ничего не понимая о принципах работы движка, пытаешься спорить - удивительно.
Я же тебе не запрещаю - дерзай, только не груби.
Простой пример - вот этот момент объясни, почему? Как ты "обтягиваешь боксами", может быть ты каким-то своим языком объясняешь, а я его не понимаю? А вдруг я твой метод не знаю?! Новый и супер действенный, так-то языком брякать любой может, давай посмотрим как ты делаешь. Может быть ты используешь WallWorm(если я не путаю), а может быть еще что-то, пусть это не твоё но хоть что то.
Сомневаюсь что ты что-то новенькое сообщить сможешь(хотя кто его знает, в этом и интрига), спорить я с тобой больше не буду, не вижу смысла.
Возьми урок на заметку для себя, спасибо потом скажешь.
Post automatically merged:
Вальвой не нужно козырять, мне они не указ.
Да движек ихний, да API ихние, только инфо. они всю спрятали, что люди сами нарыли, раскопали тем и пользуемся.
Движек source - терра инкогнито, просто простор для извращенных фантазий, особенно в плане программирования .
Использование моего метода создания физбоксов, на примере моей сложной, статич. модели, как раз доделывал свой умывальник(фонтан)..
Хоть модель и статичная, но достаточно сложная, время создания референс модели с UVW разверткой 5 часов, время создания физбоксов 3 часа.
Очень интересно было бы посмотреть за процессом "обтягивания боксами" такой модели.
Всем привет!
Как можно сделать так, чтобы не было видно этот перегиб?
Я всегда делаю по самому простому варианту, выделение нужных полигонов, деаттач как объект и все ОК, работаешь с деаттаченым, больные полики удаляешь.
Можно сделать ресет, но как то я такому варианту не совсем доверяю.
Не могу разобраться, как с тел. изменить свои сообщения.
Но надеюсь понятно что делать с такой болячкой, это перегиб треугольников, где то ты какой то из вертексов неправильно поставил, а потом не смог правильно сделать сглаживание.
Это bounding boxes. По-сути - это границы меша по всем осям.
Мне кажется, что оно такое большое, потому что на задней части башни должна быть антенна, но ее нет почему-то. @tonline_kms6
Мнение сорс эксперта? @wsw можно сам меш?
А я разве эксперт.
Судя по всему, после удаления, остались неудаленые вертексы, визуально их не видно, но по ним компилятором строится ограничительная рамка(боундингбокс), компилятор эти вертексы видит.
Нужно в максе удалить их, мозги себе не ломай.
В Viewer'е нажми галку нормалей(Ctrl+N), вполне возможно покажет где и что увеличивает тебе рамку.
В принципе, если подумать, а чем она тебе мешает? Это при кодировании AI, при трассировке препятствий, AI может считать эту рамку как будто у твоего танка большая башня и эта башня не пролезет по высоте, хотя опять же, ты будешь линковать(приаттачивать) башню к телу а при таком раскладе дочерние элементы(как раз это башня) отключают свои ограничения(физбоксы, хитбоксы(точно не помню, как-то с хитбоксами эксперементировал, но не помню уже результат), и т. д.).
В общем вопрос сомнительный, в плане того, что бы с ним мучаться, как говорится - забей, ну или как 100% вариант - 3dsmax.
Но идею я понял! Выделил все вертексы и увидел, что не полностью удалил антенну...
Всем спасибо, получилось!!!
Зачем мне это было надо: танк и башня у меня "prop_dynamic" - когда в них попадает выстрел из гранатомёта, он типа взрывается, а этот "объём" (bounding boxes) над башней мешал попаданиям, если снаряд проходил выше башни - танк тоже "взрывался"...
Не вышел каменный цветок... После компиляции в SMD - bounding boxes остались почти такими же...
Сделал по другому: у танка поставил collision - not solid, вокруг него сделал браш - func_brekable, теперь всё работает как хотел
Может кто-нибудь переделать модель гранатомёта? Заменить тот, что есть на РПГ-7.
Все исходники есть...
Я пробовал, но, что-то идёт не так...
В Crowbar декомпилировал исходную модель (MDL), получилось 9 файлов SMD, 7 файлов анимации в отдельном каталоге и два с самим гранатомётом, которые я и пытался переделать.
Все SMD импортировались в MAX нормально (у меня версия 2012). Вставлял РПГ-7 вместо прежнего, сохранял в SMD и Crowbar-ом компилировал, но: то гранатомёт развёрнут не в ту
сторону, то вообще всё в разные стороны разъехалось и руки куда-то делись...
Помогите люди добрые с моделькой
Пока не поймешь принципа работы - смысла в этой, твоей, суете не будет. Так и будешь тыкаться носом как кутёнок.
Хотя по другому у тебя(да и у любого) никак не получится, здесь не может быть уроков и подсказок типа - "нажми эту кнопочку".
Тебе нужно понять строение скелета, костей в отдельности, причём это я говорю пока про одиночную игру, а если это мультиплеер.... тебе нужен будет еще и вид от 3 лица(со стороны), и это нужно все как то совместить воедино, + сервер и клиента нужно будет друг с другом связать.
Я думаю ты рано полез с вопросами такого плана. Нет ответа без понимания принципа, никто за тебя делать ничего не будет.
Без обид.
А вообще, конкретно, по твоему вопросу - просто найди модель рук с гранатомётом, посадишь на вальвовский скелет, это и будет наиболее подходящий, для твоего случая, пример(конечно не ахти какой, зато простой но верный), там все точки аттачей, развесовка, анимация и т.д. уже есть, тебе нужно будет просто обтянуть вальвовские кости мясом, вот и всё.