Кто разбирается в экспорте брони из макса в nif ? У меня проблема в согласовании "худой"(_0) и "толстой"(_1) моделей. Когда в racemenu слайдер веса стоит в крайних положениях, то все выглядит нормально, но если его поставить в какое-то промежуточное положение, то модель распадается на треугольники. Пример:
То, что текстура черная и обратная сторона прозрачная это нормально. На третьем скрине видно, что при весе 50 модель разваливается на треугольники.
Читал, что такое бывает если количество вершин или треугольников в моделях _0 и _1 не совпадает, у меня и то и другое совпадает. По сути при изменении веса происходит морфинг модели _0 в модель _1. И распадание может происходить даже если порядок вершин не совпадает. Я заморочился и экспортировал координаты вершин из nif в текстовый файл и в экселе посчитал расстояние между соответствующими вершинами модели _0 и модели _1, пытаясь найти аномально удаленные друг от друга вершины, но таких не нашлось, все в пределах нормы. Также еще в интернете вычитал, что экспортировать модель с весом _0 и с весом _1 нужно не закрывая макс, то есть нужно сразу после экспорта _0 подогнать модель под вес _1 и тут же экспортировать, если в процессе где-то сохранялся и закрывал-открывал макс, то после модель экспортируется криво. Но это по-моему вообще бред. Еще читал, что нужно обязательно добавлять модификатор Smooth, иначе тоже количество вершин при экспорте не будет совпадать. При чем тут Smooth непонятно, пробовал добавлять его, при экспорте количество вершин стало меньше, чем без него, но, однако, проблему это тоже не решает.
Кто занимался созданием брони для Skyrim, как вы делали модели _0 и _1 ?
andrelo-1, попробуй по этому видео с момента 1:30.
Мне кажется это не подойдет. Тут, я так понимаю, с помощью масштабирования скелета создается модель _1 из _0. Возможно этот способ работает для какого-то одного тела, но будет ли он работать для других тел ? Мне нужно подогнать под UNP. У меня была похожая идея сделать модель _1 из _0 с помощью Caliente Outfit Studio, но там тело под броней нормально преобразовывается, а сама броня как-то криво.
Я же написал с момента 1:30. До этого момента на видео идет создание модели _1, а так как она у тебя есть, то тебе нужен всего лишь конец видео.
Морфинг я тоже уже пробовал. Просто у меня модели в разных файлах находятся, и перетащить одну к другой я могу только через экспорт-импорт. Пробовал импортировать из nif, но такая модель не выбирается в качестве таргета для морфинга. Надо было изначально все в одном файле делать. Сейчас попробую через другие форматы импортировать, может получится.
Изменение репутации для пользователя andrelo-1
andrelo-1Offline
Сообщение №4
| Тема: Вопросы по моделированию
написано: 18 мая 2015, 13:08
| Отредактировано: andrelo-1 - 18 мая 2015, 20:24
Получилось ! Правда при экспорте в любой формат почему-то треугольников становится больше, так что пришлось обе модели сначала экспортировать потом импортировать. CemKey, благодарю за помощь.
PS: Вообщем, я так понял, что модификатор Skin у обеих моделей тоже должен быть одинаковый, именно из-за него скорее всего у меня и были проблемы, возможно достаточно скопировать его с одной модели на другую и тогда морфинг не понадобится. Но правда эту теорию я пока не проверял.
PPS: Попробовал скопировать Skin с одной модели на другую, вроде все работает . Хотя я не уверен, что тут нет каких-нибудь подводных камней, ведь макс не зря наверно ругается, когда пытаешься редактировать меш, на котором уже висит Skin.
Люди, появилась такая проблема. При замене NiTriShapeData первой модели на NiTriShapeData второй модели у второй модели на первой пропадает часть полигонов. Есть ли решение?
Скорее всего число вершин/треугольников разное, поэтому скин на второй модели неправильно работает.
По настройке Skyrim.ini и SkyrimPrefs.ini есть вот такой хороший гайд http://www.geforce.com/whats-n....guide#1 там все со скриншотами, местами даже с бенчмарками, как какая настройка влияет на производительность. ( Хотел линкануть русский сайт, однако не дает, говорит запрещенный URL. Конкурирующий сайт ? )
Myprism, дак попробуй для шлема использовать слот, который не скрывает волосы, например как обруч. Да, хотя я не уверен, но вроде шлем не должен скрывать волосы, если не указывать ему явно слоты 31(волосы) и 41(длинные волосы) в ArmorAddon.
Лично я вообще не понимаю эту привязку кровати к фракциям. Все кровати имхо должны быть общими, захотел лег на любую кровать, только если хозяин против, то можно по шее получить, ну или штраф за покушение на чужую собственность.
Потому, что в пакетах кроме кровати всегда указывается радиус поиска, чтобы при сбое (например, на пути нпс встал кто-то другой) нпс продолжил искать кровать. И если кровати не указать фракцию, то на нее может лечь не тот нпс.
У нпц разве нет привязки к определенной кровати ? Я думал, что у каждого нпц есть своя собственная кровать, на которую он всегда ложиться. А насчет того, чтобы добраться куда-то, то много раз замечал, что если на пути нпц кто-то стоит, то он тыркается-тыркается, потом телепортируется через препятствие и доходит куда ему нужно.
А кто разбирается в пакетах и процедурах ? Есть вопрос по процедуре Find: как сделать какое-то альтернативное действие, если Find ничего не нашел ? Пока что получается, что если Find ничего не находит, то пакет зависает на этом фаинде и дальше не двигается, не выполняет следующие процедуры.
Уважаемые, в СК существует условие - GetIsAliasRef, которое позволяет обращаться к значению Алиаса квеста, в котором это условие используется. Вопрос, существует ли аналогичное условие, позволяющее обращаться к алиасу произвольного(!) квеста?
Смотря насколько произвольного квеста. Если квест вполне конкретный, то наверно можно добавить алиас на алиас этого квеста (External Alias Reference) и к нему применять GetIsAliasRef(). Если квест изначально не известен, то тут наверно только извращения со скриптами.
Но на самом деле не все так смешно. Если ранг кандидата в супруги (то есть те, у кого появляется вопрос - Ты мне нравишься?) совпадает с рангом супруга, то условие бесполезно...
Ну на самом деле тут надо проверять. Есть консольный аналог этой команды GetRelationshipRank, чтобы не писать скриптов и т.д., выбрать мышкой нпц и набрать "GetRelationshipRank player". И можно наверно еще добавить условие HasFamilyRelationship, т.е. является ли членом семьи. Также есть консольный аналог HasFamilyRelationship.
Подскажите, пожалуйста. Поставила анимацию женская походка, в esp переделала морды некоторым персам и поставила галочку opposite gender anims , но девушки не хотят расставаться со своей ванильной мужланской походкой. Esp в NMM стоит в самом низу. Начинаю игру заново.
Галочку надо убирать, а не ставить, чтобы девушки ходили как девушки .
Можно ли как-то с помощью условий (Conditions) определить, является ли объект кроватью ( т.е. при его использовании появляется меню сна ) ? Есть конечно способ создать список всех возможных кроватей, но этот способ будет работать только с ванильными кроватями, так что... Функция IsFurnitureAnimType похоже вообще не работает, либо она для чего-то другого. Или хотя бы в скрипте можно ли как-то это определить ?
aramor222, а зачем тебе в твоем плагине что-то еще кроме твоих изменений ? Ставишь плагин ниже неофициального патча в списке ( а выше все равно не сможешь ), и будет тебе счастье.
Кто может объяснить, по какому принципу определяется, могу я спать на кровати или нет ? Интересуют случаи, как например кровать в доме Алвора в Ривервуде. Если я в начале игры выбрал сторону имперцев, то потом Алвор и его семья становятся как бы друзьями, и я могу брать почти все в их доме, спать на их кровати и т.д. Так вот, если проверить, кто является владельцем кровати, то выясняется, что это не я, а фракция семьи Алвора, при этом у меня отношения с этой фракцией нейтральные, но несмотря на это я могу спать на их кровати. Что еще может влиять на то, могу ли я спать на кровати или нет ?
Тут еще важна дружба с самим персонажем. Я не проверяла, но мне кажется, что это тоже имеет значение. За отсутствием пока комментариев более опытных товарищей, предлагаю Вам расковырять начальный квест в месте,где идет разговор в доме о драконе. Я думаю, именно в этот момент появляется разрешение жить в доме.
Похоже на то. В самом квесте Алвор устанавливается как друг (Alvor.SetRelationshipRank(Player, 1)), с остальными членами его семьи у меня отношения как просто знакомый (0). Та же ерунда с ярлом Вайтрана, после выполнения квеста становится можно лазать по всем шкафам в Драконьем Пределе. Но это тогда жесть получается, потому что нужно еще перебрать всех, кто принадлежит фракции, а в папирусе просто нет такой функции.
Расскажите для чего Вам это нужно. Может быть мы сможем придумать какой-нибудь "костыль".
Пишу мод, который при активации кровати будет запускать анимацию сна для ГГ (да, еще один мод , я в курсе, что такие уже есть). Поэтому мне надо понять, может ли ГГ спать на данной кровати. Если более точно, то мне это требуется для замены текста, который выводится при наведении курсора на кровать, и соответственно команды активации кровати на свою, в случае если ГГ может использовать кровать. В принципе я могу сделать эту замену для всех кроватей вообще, но тогда нельзя будет понять можно ли использовать кровать или нет простым наведением курсора на нее, как это есть сейчас.
А зачем заменять текст? Разве нельзя оставить таким, какой он есть?
Ну в принципе да, можно оставить таким как есть , я просто думал, что если заменять команду по-умолчанию на свою, то текст тоже замениться на текст моей команды. А сейчас попробовал - не заменяется, а при клике появляется меню с текстом моей команды. Однако это меню будет появляться для всех кроватей, а хотелось бы, чтобы только для тех, на которых ГГ может спать, так что проверять все равно как-то нужно.
Нужно... А ты уже придумал, как отличить кровать от любой другой фурнитуры? Условиями или скриптом.
Есть один вариант - написал плагин для SKSE, и там проверяю флаги у объекта на который смотрит ГГ, у кроватей есть определенные установленные флаги фурнитуры, которые методом тыка определил. Вроде работает. В идеале бы конечно это все проверять через условия при добавлении команды, но там дальше определения, что это фурнитура, никак не получается.
Может, можно было бы потыкаться вообще с другой стороны... Со стороны редактирования Flash файла меню, в котором задается время сна...
Меню тут наверно никак не поможет, оно появляется уже после того как игра проверила, может ГГ спать на кровати или нет, и если не может, то оно просто не вызывается.
Dsion, у меня наоборот должно быть, сначала лег, потом указал сколько спать. Если прерывать сон и потом просто проматывать время, то это время не будет считаться сном, соответственно не будет бафов и прочие моды, которые зависят от сна, тоже работать не будут.
Я все-таки расковырял Skyrim и нашел, как проверяется может ли ГГ спать на кровати или нет. Правда пришлось заниматься реверс-инжинирингом, хорошо еще разработчики SKSE довольно много уже дизассемблировали. Вообщем, там действительно проверяется, есть ли во фракции, которой принадлежит кровать, друзья ГГ. В игре есть табличка, в которой для каждой фракции хранится сколько там друзей, лучших друзей (Confidant), союзников и возлюбленных. И если есть хотя бы кто-то из них во фракции, то спать на кровати можно . Это конечно не считая тех кроватей, у которых нет владельцев, или владелец сам ГГ.
Распространять вместе с модом собственную допиленную версию SKSE или собственный загрузчик, инджектящий библиотеку, - это будет не очень-то скромно... Неужели нету способа попроще... *чешет репу*
Проверял еще, нельзя ли отличить кровать от другой фурнитуры с помощью функции HasNode. Подумал, вдруг у кроватей есть какой-то уникальный нод в нифах... Не нашел...
Перед показом меню сна проверка на то, кровать это или нет, делается по тому, какой первый маркер у фурнитуры, если это маркер "Sleep", то показывается меню сна. Однако процедура пакета Find как-то по другому ищет кровати, если у стула сменить маркер "Sit" на "Sleep" то она его не воспринимает как кровать.