Перейти к содержанию

Truewolf

Клуб TESALL
  • Постов

    5 815
  • Зарегистрирован

  • Посещение

  • Победитель дней

    2

Весь контент Truewolf

  1. spellcustomer, people can fly, 4A games, Capcom, Nintendo, Infinity Ward (да, колда, но на рынке шутеров она как была в фаворе так и осталась, а кто сказал что шутер хуже или лучше этих ваших эрпыгэ), RockStar, Square Enix, Eidos, Ubisoft, несмотря на конвейер, делает это качественно, Platinum Games, с десяток японских компаний направленных на внутренний рынок и выкатывающий на мировой не так часто типа namco, частично sega и мелкомягкие. или вы думаете, что игрострой состоит из 4х компаний? Obsidian Entertainment не испортилась по 1 причине. завод тушенки, которую выпускает ТОЛЬКО тушенку испортиться не может. так же, как и убейсофт. упд. так фолаут 76 и не рпг и не являлся им (да, это говно, но я сейчас не об этом, а о декларируемом жанре) упд. ну и навскидку про вымирающий жанр рпг. суберпунк. Wasteland 3. Code Vein (к слову от вышеупомянутого намко). Biomutant (к слову - THQ и, как следствие, deep silver) The Surge 2, странная для меня GreedFall, поэтому хз как к ней относиться. вампирский маскарад опять же. The Waylanders, System Shock ремастер, Werewolf: The Apocalypse во вселенной маскарада (правда хз что с ним щас). как я мог забыть, обещанный спин офф от ларианов. тес 6, старфилд, не анонсированный проект проджектов и обещанное ими продолжение ведьмака я специально не ставлю в пример, поскольку черт их знает, что там будет? да и они уже стоят в посте выше в списке персона нон грата. если кроме тех что я слышал покопаться в инете, то можно еще десяток проектов выделить. часть из них окажется трешем. часть еще не анонсировали (анонс может быть вообще за пол года до релиза). но нет. эрпыгэ умирает! или просто вы жанром интересуетесь только в виде - первые 5 новостей в фиде?
  2. какие материалы есть на пистолете? просто перечисление, одним словом. например - дерево, резина, кожа и тому подобное (материал)
    1. Показать предыдущие комментарии  8 ещё
    2. Arkadros

      Arkadros

      Аналоги дерева: толстая фанера - дельта-древесина; стеклопластики на основе фенол-формальдегидной смолы.
    3. Truewolf

      Truewolf

      а из чего делаются щечки? по крайней мере у советских стволов. балекитовые пластинки? или из чего то еще?
    4. Truewolf

      Truewolf

      Ewlar, кстати, добавить следы от зубов (или губной помады) на стволе будет весьма иронично - привет, рейп.
  3. Последняя часть серии уроков по созданию лука для игры Skyrim. В ней разбирается процесс экспорта модели в Nif, редактирование Nif файла, а так же создание в Skyrim Creation Kit полностью законченного плагина с луком. Cоздание модели лука для игры Skyrim Часть 1| Часть 2 | Часть 3 | Часть 4 | Часть 5 | Часть 6 | Часть 7 Доброго всем дня. Я рад приветствовать вас в заключительной части моего туториала по созданию лука для игры Skyrim. Это было…долго. За что приношу свои извинения. Но, тем не менее, мы подошли к последней части. Как можно догадаться, она связана с экспортом нашей модели в игру Skyrim. Напомню, у нас уже есть три готовых файла текстурных карт и пока еще не готовая модель лука. Откроем сцену с луком и в главном меню выберем команду Export. Save and type –KF/NIF. Выберите директорию. Можете сохранять сразу в директории скайрима (папка Data/Meshes), а можете создать отдельную папку. Главное, чтобы в пути не было кириллицы. Введите имя файла и нажмите Save. Настройки экспорта приведены ниже. После этого можете закрыть 3Ds MAX. Запустите NifScope и откройте в нем следующие файлы – наш экспортированный лук и оригинальную модель. Я раньше уже использовал файл SteelBow. Его и открою. В NifScope развернем BSFadeNode нашей модели. Далее – NiTriShape. Там у нас будет NiTriShapeData и NiSkinInstance. Первое – наша модель. Второе – настройки скининга нашей модели. Копируем NiTriShapeData. Для этого выделите её и нажмите Ctrl + C. Вставьте его в BSFadeNode оригинального лука (Ctrl + V). Затем в NiTriShape оригинального лука найдите в Block Details строку Data. Смените чисто там на номер нашего вставленного NiTriShapeData. Во вьюпорте отобразится нечто запредельно невразумительное – не обращайте внимания.  После этого удалите оригинальную ветку, которая окажется на месте ранее скопированной. Вернемся к нашему луку и выберем NiSkinInstance. Прежде чем его перенести, сбросьте значение Skeleton Root. Для этого дважды щелкните на 0 и убедитесь, чтобы в графе ничего не было. Щелкните на любом другом месте, чтоб убрать редактирование графы. Вместо 0 появится надпись None. Далее скопируйте эту ветку так же, как шагом выше копировали NiTriShapeData. Для этого смените  число на номер скопированной ветки в поле Skit Instance. После того, как скопируете и вставите, верните в Skeleton Root цифру 0. После всех махинаций вы можете заметить, что ваша модель несколько сдвинута или развернута. Чтобы исправить это, выберите модель во вьюпорте (или ветку NiTriShape), нажмите ПКМ по ней, далее – Transform ->Edit. Во всех полях, кроме Scale должно стоять 0. В Scale – 1. Если стоят другие значения – измените их. После изменений нажмите на Accept. Затем пропишем пути к нашим текстурам. Поместите 3 файла текстур (Mirror, Normal и Diffuse) в Data/Textures. Если нужно, создайте там дополнительную директорию. Например, Data/Textures/YouName/ TestBow или Data/Textures/Weapons/TestBow. Затем в NifScope в ветке NiTriShape выберите BSLightingShaderProperty-> BSShaderTextureSet Разверните сточку Textures. Вместо SteelBow, SteelBow_n и SteelBow_m укажите путь к нашим текстурам. Прописывайте путь в тех же строчках, где находятся оригинальные текстуры. Затем удалите часть пути к файлам ДО папки Textures – папка игры, что резонно, у других пользователей будет располагаться в другом месте. Если оставить всё, как есть, они попросту не увидят тексту. Cubemap оставьте нетронутой. Указывать путь к текстурам вы можете либо редактированием текста (двойной щелчок на тексте и написать/вставить нужное) либо нажатием на иконку цветка (и выбором пути файла). c:\program files (x86)\steam\steamapps\common\skyrim\data\ textures\lordbeowulf\shieldshatter\shieldshatter.dds – это полный путь текстур.  А это - textures\lordbeowulf\shieldshatter\shieldshatter.dds – то, что должно быть. Внимательно проверьте, верно ли вы указали путь к текстурам. Так же обратите внимание. В BSLightingShaderProperty есть строчка Shader Flags 2. Если там указано SLSF2_Vertex_Color, то в NiTriShapeData найдите строчку Has Vertex Colors и смените No на Yes, иначе ваша модель будет залита черным цветом. Если, как в нашем случае, SLSF2_Vertex_Color не подключен, то можете ничего не менять. После всех изменений сохраните модель по пути, аналогичному пути текстур. Например, textures\lordbeowulf\shieldshatter – путь текстур, а путь модели - meshes\lordbeowulf\shieldshatter. На этом вся информация по экспорту лука заканчивается. Далее можно вставлять его в игру. Если вы разбираетесь в конструкторе Скайрима, то дальнейшая информация для вас будет бесполезна, а поэтому спасибо за урок и до новых встреч. Если же вы не разбираетесь с конструктором, то следующая информация может быть для вас полезна. Откроем Skyrim Creation Kit. Скачать его вы можете из Steam. В меню File выберем Data и активируем Skyrim (двойной щелчок по квадрату возле строчки Skyrim). Далее нажмем OK. Сначала создадим статик с нашим луком для модели от первого лица. Путь – WorldObjects – Static – WEAPONS. Выделите WEAPONS и нажмите ПКМ в Editor ID. В контекстном меню выберите New. Введите ID, например, 1stPersonShieldShatter. ShieldShatter, если что, означает щитобой. Название лука в WoW – длинный лук-щитобой. Часть его (названия) я собираюсь перенести в Скайрим. Поэтому и ShieldShatter. Выберите модель, нажав на Edit. В случае с теми же мечами для них нужно делать отдельный файл с 1stPerson моделью. Лук же этого не требует и можно использовать одну модель для всего. Если мы сделали всё верно, следующее окно будет таким. Если что-то неверно, то модель будет либо залита каким-то цветом (фиолетовым, если неверные пути к текстурам или черным, если выключен вертекс колор) либо вместо неё вообще будет восклицательный знак – значит, что модель испорчена и мы где-то напортачили при экспорте. Нажимаем OK. В предыдущем меню остальные параметры оставляем без изменений и нажимаем OK. Далее создадим само оружие. Оно создается в Items-Weapons. Так же ПКМ по Editor ID. В принципе, все настройки можно скатать с дефолтной модели. Взять то, что подходит по характеристикам. Потом несколько добавить/убавить урон/крит шанс/стоимость/вес и прочие игровые характеристики. Так же с дефолтной модели возьмите Keywords. Иначе оружие не получится улучшать и зачаровывать. Откроем даэдрический лук DaedricBow без всяких зачарований (в скриптах я профан, а зачаровать лук на урон электричеством сможет и сам игрок). Итак. Skill – Archery. Equip Type – BothHand. Flags – Playable. ID выберите сами, название тоже. Зачарований нет. Value – стоимость. Укажите, какую бы вам хотелось. Поскольку я предполагаю, что данный лук доживет до файловой базы Тесала, то я не хочу ставить нереальную стоимость. По-моему, 1200 вполне хватит. ID и Name укажете сами. Напомню (или скажу впервые, если вы не читали других частей урока) что ID лучше делать действительно уникальным. Не Bow и не ShieldShatter (кто-то может тоже захочет сделать такой лук и выложить его), а, например LBShieldShatter, LordBeoBow и т.д. Таких же маразматиков, которые ставят части своего ника в ID возможно и хватает, но сколько их них обладают настолько утонченным вкусом, чтобы выбрать такой ник? Я о том же. Для верности можете поставить какое-нибудь число (только все же для каждой своей работы используйте одно и тоже ID для единообразия - если 1418LB, то оно будет везде). Идем дальше. Game Data - это игровые параметры. Вес, урон и т. д. - всё это настраивается тут. Для верности скопируйте их с небольшими правками из того же даэрического лука, дабы не переусердствовать. Все же, тут указываются чистые показатели без влияния навыка или перка. Art and Sound – всё, кроме первого окошка будет аналогично оригиналу, так как тут устанавливается анимация и звуки. Третья вкладка заполняется аналогично дефолтной модели. Keywords скопируйте из дефолтной модели. Нажмите ПКМ по Keywords, далее – Copy Stack. Теперь вставляем его в Keywords нашего лука. У нас есть три KeyWords – тип оружия, тип материала и тип вещи. Если вы хотите, чтобы ваш предмет НЕ зачаровывался, то пропишите MagicDisallowEnchanting (ПКМ-add). Это заблокирует возможность зачарования и запретит изучение имеющегося на предмете зачарования (если оно уникальное, например). Если вы не хотите этого(я – нет), то оставьте три Keywords. Теперь наш лук полностью готов к работе. Но рано расслабляться. Если сейчас всё оставить так как есть, нашего лука так же не будет в игре. Можно, конечно, забросать мусором какую-нибудь ячейку, но это делать как-то не красиво. Поэтому создадим рецепт нашего лука, чтоб его можно было крафтить.  Делается это в Items- Constructible Object. Все аналогично. В Editor ID создали новый предмет, щелкнув ПКМ и выбрав New. ID –понятно. Created Object – выберите из списка ID нашего лука. Created Object Count – 1 (сколько копий будет создаваться при изготовлении одного рецепта). WorkBench Keyword – CraftingSmithingForge (инструмент – кузница) . Required Item List – список предметов, необходимых для крафта. Для добавления нажмите ПКМ – New. Я предлагаю поставить для начала три LeatherStrips (полоски кожи). Count – количество. Ставим 3. Затем – четыре IngotSteel(стальной слиток) и два Firewood (полено). Match Conditions скопируйте из настроек другого объекта (выбрать объект с подписью recipe, а не temper – это сам рецепт). В Function Info смените перк на SteelSmeething (перк, необходимый для крафта – в данном случае ковка стали). Для этого щелкните на строчку с перком. Далее на панель с названием перка. Выберите из списка нужный. Не меняйте других настроек. В итоге данное окно должно быть следующего вида: Теперь можете закрыть это окно. И тут же создайте новое. На этот раз создадим рецепт для улучшения нашего лука. Настройки те же за исключением названия (вместо Recipe поставьте Temper), WorkBench Keyword – CraftingSmithingsharpeningwheel (точильное колесо), списка реагентов (поставьте два стальных слитка и всё) и окна Match Conditions. Скопируйте Match Conditions из другого объекта Temper.  Нажмите OK, работа с конструктором закончена. Нажмите File, Save. Введите название *esp файла и сохраните. Затем вы можете изменить описание файла. Для этого в меню File Выберите Data, затем ваш только что сохраненный плагин и укажите Created By и Summary. Только не надо нажимать Ok, если не хотите ждать прогрузки всех файлов. Нажмите Cancel. Конструктор запомнит ваши изменения. После работы можете закрыть конструктор и открыть игру. Заходим в игру. Смотрим. Видим, что модель ужасно засвечена. Это связано…понятия не имею с чем. Умельцы говорят, что с шейдерами. Как это исправить игровыми средствами (настройки ниф файла и т.д.) я не знаю. Если кто-то знает, оставьте, пожалуйста, информацию в комментариях или скиньте её мне в личку. Несмотря на мое незнание обхода этого косяка, есть способ побороть его. Для этого откроем в фотошопе Diffuse (перед изменениями обязательно сделайте копию оригинала, чтобы в случае чего открыть его, а не пытаться восстановить из уже измененного). Далее – Image->Adjustments->Brightness/Contrast. Измените параметр яркости. Я решил остановиться на -25% Сохраните изменения и проверьте модель в игре снова. Модель стала такой, какой задумывалась. И всё отлично улучшается. И даже зачаровывается! Да и просто…существует. Анимация проигрывается, лук висит там, где надо, всё крафтится, зачаровывается, а значит, что работа сделана. Теперь осталось залить модель на Тесал, Нексус, Стим или еще куда-нибудь. Но я думаю, вы сами разберетесь, как это сделать. А моя задача по написанию туториала закончена. Надеюсь, смог быть вам полезен, удачи и до новых встреч!  PS. Вы можете скачать итог работы в виде плагина отсюда.  Lord Beowulf, для TesAll.ru
  4. Шестая часть туториала по созданию лука для игры Skyrim. В данной части рассматривается развесовка модели (скининг) Cоздание модели лука для игры Skyrim Часть 1 | Часть 2 | Часть 3 | Часть 4 | Часть 5 | Часть 6 | Часть 7 Приветствую вас. В этой части туториала я хочу остановиться на достаточно сложном моменте – скелетная привязка модели. Сложный он прежде всего из за своей нудности. Но обо всем по порядку. Для начала откроем сцену с луком в 3Ds MAX. Далее в главном меню выберем Import и загрузим оригинальную модель лука. Я предпочитаю брать простейшие модели. В данном случае – Steelbow. Настройки импорта не так уж важны за исключением двух пунктов - Skin modifier и Import Skeleton Загрузится модель лука. Увы, она несколько меньше нашей. Поэтому отмасштабируем нашу модель лука под оригинал. Три главных момента – точки на месте крепления тетивы, её центра и центр рукояти должны быть приблизительно на одном месте, так как анимация использует относительно одинаковые по пропорциям модели. К сожалению, точки сгиба тетивы оригинальной и нашей не сходятся. Поэтому нужно пододвинуть нашу точку. Это обязательно. Поскольку изменения небольшие, то растяжка развертки не будет заметна. Теперь рассмотрим внимательней то, что мы импортировали. Для этого пока что скройте наш лук. То, что вы видите выше – собственно, скелет модели.  Анимация в игре – влияние записанной анимации именно на скелет, а не на саму модель, а скелет уже связан с моделью. Скелет напоминает очертание модели и представляет собой набор контрольных точек-линий (костей).  Все вертексы модели будут распределены на этих костях путем присвоения веса каждой вершине. Вес – сила влияния кости на данную вершину. 1 – 100% влияние. 0, соответственно, 0% влияние. Разброс веса идет в десятичных дробях. Одна вершина может быть привязана к нескольким костям, что и позволяет плавно деформировать модель при анимации. Как было сказано выше, единица – 100% влияния. Исходя из этого, можно понять, что лимит веса – 1. Больше суммарный вес быть НЕ МОЖЕТ. Теперь разберем непосредственно скелет лука. Он состоит из 6 костей. Bow_StringBone1/2 – тетива. Bow_LoBone1/2 – одна сторона лука.  Bow_UpBone1/2 – другая сторона лука. Седьмая кость - SteelBow.nif, собственно, сам лук. И последняя кость - Bow_MidBone – центральная часть лука, рукоять.  Её заметить весьма проблематично, так как сама точка кости находится в точке Bow_UpBone2, а кость соединяет   Bow_MidBone и SteelBow.nif (костью, по крайней мере нужной для развесовки, не является) Красный - Bow_LoBone1 Оранжевый - Bow_LoBone2 Желтый - Bow_MidBone Зеленый - Bow_StringBone1/2 Синий - Bow_UpBone1 Коричневый - Bow_UpBone2 Черный - SteelBow.nif Теперь выберем стандартный лук и перейдем во вкладку модификаторов. Edit Envelopes – Режим редактирования (и просмотра) Когда он включен – вы можете наблюдать резвесовку, выделяя нужную кость, выделять вершины (поставить галочку возле Vertices) и совершать прочие непотребства. Когда вы включите этот инструмент и выделите кости, то увидите следующее. Это цветовое обозначение веса вершины. Серый – нет веса (0), синий – малый вес, красный – максимальный вес (1). Остальной вес отрисовывается в градации от синего до  красного. Что бы придать вес вершине, её необходимо сначала выбрать. Активировав Edit Envelopes, это можно будет сделать. Выделение происходит либо вручную (как обычно рамкой выделения) либо с помощью инструментов Ring, Loop, Grow, Shrink. Аналогичные инструменты есть везде, где есть вершины или их аналоги, поэтому останавливаться на них я не буду. Выделенные вершины очерчиваются  белой рамкой. Изменяется вес на следующей панели. Иконка с гаечным ключом вызывает меню Weight Tool. Первые четыре кнопки относятся к выделению. Вторые – автоматические весы – 0, 0.1, 0.25, 0.5, 0.75, 0.9 и 1. Set Weight и Scale Weight отвечают за более тонкую настройку веса выделенных вершин. Set Weight устанавливает абсолютный вес на значение, указанное в поле ввода. По умолчанию - 0,5. бегунки внутри изменяют вес с шагом 0,05, +/- изменяет с шагом 0,05. Scale Weight - это множитель, умножает вес вертекса на число в поле ввода, по умолчанию - 0,95, бегунки работают с шагом 0,05, а +/- увеличивает/уменьшает вес на 5% Нижнее окно – список костей, у которых есть влияние на выбранные вершины. Перед названием указывается вес вершин на эти кости. Вернемся в предыдущий свиток. Там осталось еще два инструмента – Weight Table и Paint Weight. Paint Weight – придание веса вершинам с помощью кисти. Настройка этой кисти производится в меню, которое вызывается возле Paint Weight, если нажать на … И Последнее – Weight table. Сводная таблица всех костей, вершин и их взаимодействий. После окончания работы необходимо просмотреть эту таблицу – правильно ли всё сделано. Да и во время работы это полезный инструмент для правки веса. Если вы пролистаете таблицу назад, то обнаружите там 1726 наименований – вершин. В моем луке вершин более трех тысяч. В модели персонажа, например Алдуина, вершин еще больше. Разнообразие занятия можно себе представить. Но деваться некуда, это важный этап работы. Вы можете подсмотреть общее расположение веса вершин на стандартной модели – оно будет подобное. Но есть существенное различие – оно связано с иной структурой нашего лука (другое положение тетивы, добавленные лезвия и т.д.) поэтому в некоторых местах сделать аналогичную развесовку не получится. Пример – тетива. Если вы сделаете так, как на оригинальном луке – она будет висеть в воздухе. Поэтому мы будем менять расположение развесовки под свои нужды. Поскольку стандартная анимация этого не предусматривает, заранее сказать, как будет правильно нельзя. Поэтому придется пробовать. Чтобы свести затраченное на проверку наших проб время, я предлагаю сделать следующим образом.  Измените положение скелета в нем так, чтобы он приобрел форму лука при максимальном натяжении. Для этого нужно повернуть вершины (все, кроме MidBone). Перемещать их никуда не нужно. Разворачивайте (Rotate) их и запоминайте ту величину, на которую развернули, дабы  свободно затем вернуть всё на место. Я развернул следующим образом - Bow_LoBone1 и Bow_UpBone1 на 15°. Bow_LoBone2 и Bow_UpBone2 на 5°. Bow_StringBone1 и Bow_StringBone2 на 40°. Так же для точности можно импортировать в макс модель стрелы, подставить её к луку и, исходя из её длины, поправить расположение костей. Запишите данные и верните всё в изначальное состояние. В идеале всё это не нужно. Для проверки качества развесовки загружается нужная анимация, она проигрывается, если развесовка плохая – это видно. Если хорошая – это тоже видно. Исправили, повторили. С моделями скайрима аналогично. Но открыть анимацию натягивания лука мне не удалось. При этом та же анимация арбалета без всяких махинаций проигрывается что в NifScope, что при экспорте в 3Ds MAX. Я предполагаю, что эта анимация находится в файле BowProject.hkx, но экспортировать в KF я его, к сожалению, не смог. А перспектива определять на глаз каждую вершину в игре, затем возвращаться в макс, снова запускать игру и т.д. мне не очень нравится. Поэтому устроим себе минуту маразма для последующего пропуска десятка запусков игры. Прежде чем начать заниматься развесовкой, проверьте всю модель – верны ли формы, нет ли лишних деталей, которые следует удалить. Не осталось ли невидимых полигонов, многоугольников и прочих косяков. Если надобность править геометрию возникнет после начала работы со скинингом, то придется переделывать вес. Итак, примемся за дело. Удалите дефолтную модель лука, скелет оставьте. Выберите нашу модель лука и примените к ней модификатор Skin. В поле Bones нажмите add и добавьте туда кости скелета лука. Не добавьте ненароком SteelBow.nif Сначала разберемся с костью Bow_MidBone. Сразу же хочется сказать. Нам будут встречаться места, где в Weight Tool нет кости, которая нужна для этих вершин. В таком случае в списке костей модификатора просто выберите нужную и работайте с ней. Так же будут ситуации, где вершины должны быть развешаны  на нескольких костях, но вес назначен на других (нескольких). Перед тем, как назначать вес, сбросьте его со всех лишних костей, а затем продолжайте работу. Итак, выберите вершины, показанные ниже и присвойте им вес – 1 (предварительно выделив кость Bow_MidBone) Вес – 0.9: Вес – 0.8: Вес – 0.7: Вес – 0.6: Вес – 0.5: Вес – 0.2: Вес – 0.1: Цветовое обозначение вершин кости будет следующим. Теперь развесим вершины на Bow_UpBone1 (и Bow_LoBone1 – значения одинаковые, так как это симметричные элементы) Вес – 0.1: Вес – 0.2: Вес – 0.3: Вес – 0.4: На этом моменте у меня оказалось, что вес распределен еще на одной кости, кроме Mid Bone и UpBone1. Сначала сбросьте вес с лишней кости, а затем назначайте на нужную. Иначе вес в равных пропорциях отнимется от всех назначенных костей и добавится на новую. В итоге собьется настройка на нужных костях – в данном случае Mid Bone. Следующий вес – 0.5: Вес – 0.6: Вес – 0.4: Вес – 0.3: Вес – 0.2: Вот цветовое обозначение развесовки: Теперь разберемся с Bow_UpBone2 и Bow_LoBone2 Вес – 1: Не выделите случайно вершины тетивы – они будут развешиваться отдельно. Вес – 0.8: Вес - 0.7: Вес – 0.5 (Обратите внимание, эти вершины развешаны на трех костях): Вес – 0.2(Точно так же, как на скриншоте выше – вершины на трех костях): Цветовое обозначение. Попробуйте сейчас развернуть кости, как мы сделали в начале этого урока. Получилось следующее. Тетива такая, поскольку мы не настраивали привязку. А вот косяки с креплениями для тетивы исправьте – мы зацепили( или наоборот, не захватили) нужные вершины. Затем выберем вершины излома тетивы. Развесим их следующим образом – 0.5 на Bow_StringBone1 и 0.5 на Bow_StringBone2 Она сразу же изменила свое местоположение. Что касается вершин петли, то тут необходимо одно – нудный, последовательный подбор величин для каждого витка вершин. Выбираем один – придаем определенную величину. Не подходит – меняем величину (вплоть до тысячных в десятичной дроби) Петля развешана на двух  костях – тетивы и Bow_LoBone2/ Bow_UpBone2. Сразу же могу сказать, что как минимум половина веса будет приходиться именно на Bow_LoBone2/ Bow_UpBone2. Работа будет закончена тогда, когда в таком положении тетива будет выглядеть прямой линией. Получается следующим образом. По цветовому обозначению вы можете увидеть, что основной вес сосредоточен на кости лука, а не тетивы (как сделано на оригинальных моделях). Данный способ развесовки тетивы не идеален (и на мой взгляд он достаточно грязный, так как сохранить форму цилиндра на тетиве не удалось), но его применение оправдано тем, что иначе тетиву с таким креплением, как у нас не сделать. Как, в общем то, и любую другую тетиву. Просто в зависимости от модели это может быть чревато большими или меньшими проблемами, типа скошенного в нашем случае цилиндра. А в некоторых случаях проблемы могут отсутствовать вообще - посмотрите эльфийский лук в моде "Луки третей эры". Там тетива вообще является частью одного элемента модели и, как итог у неё этих проблемных мест попросту нет. Если вам он (цилиндр на тетиве) в таком виде не нравится – можете удалить его. Но, к радости, заметен он при стрельбе не будет. Он является мало-мальски заметным украшением только если лук висит за спиной у персонажа, когда никакой деформации не идет. На этом урок подходит к концу, нам осталось лишь экспортировать лук в игру, чем мы и займемся в следующей части урока. Верните положение костей в исходное (разверните на величину, обратную той, на которую вы разворачивали кости в начале) и сохраните сцену. Спасибо за внимание, надеюсь, смог быть вам полезен.   Lord Beowulf, для TesAll.ru
  5. Пятая часть серии уроков по созданию дальнобойного оружия (на примере лука) для игры Skyrim. В данной части разбирается текстурирование лука. Нам понадобятся - Photoshop, Quixel SUILE. Cоздание модели лука для игры Skyrim Часть 1 | Часть 2 | Часть 3 | Часть 4 | Часть 5 | Часть 6 | Часть 7  Я рад приветствовать вас в пятой части цикла моих уроков по созданию лука для игры TES V Skyrim. Изначально я предполагал рассмотреть запекание текстурных карт и создание Diffuse Map как одно целое. Но накопившийся объем информации натолкнул меня на мысль разделить этот блок на два урока. Что собой представляет Diffuse Map? Это растровое изображение, несущее в себе данные о цвете модели. То есть, то, что мы привыкли как раз и называть “текстурой”. В играх серии TES Diffuse Map так же несет в себе и сведения о прозрачности объекта – если есть альфа канал. Но об этом я рассказывал в предыдущей части. Хочу сказать сразу– текстурировать мы будем не с помощью фотошопа (по крайней мере, не совсем с его помощью), а отдельного плагина для него – Quixel SUITE. Почитать о программе более подробно вы можете в соответствующей теме. Там же вы сможете найти ссылки на последние патчи и сайт-разработчик. И, естественно, задать свои вопросы по данному плагину, поделиться впечатлениями, наблюдениями и примерами деятельности (не итоговые работы – для этого все же есть галерея работ). Поскольку запуститься эта зараза у меня смогла только на CC 2015, то работать я буду в нём. По сути, он обладает аналогичным функционалом, и не должен вызвать каких-либо неудобств. Я не буду акцентировать внимание на каждой возможности Квикселя, так как в теме, кроме описания программы, есть полезные ссылки для изучения принципов работы. В данном же уроке мы сосредоточимся на определенной цели – создание Diffuse Map для модели нашего лука. Прежде, чем приняться за текстуру, я бы хотел кое что добавить в карту нормалей с помощью Квикселя (плагин NDO). Дело в том, что на мой взгляд рога выглядят слишком пластмассовыми, слишком неживыми. На них нет сколов или неровностей – это просто ровная загогулина. Почему бы не добавить туда рельефа, как мы делали с лезвиями? На этот раз я не буду добавлять его в 3Ds MAX (во первых, неплохо было бы показать принципы работы с нормалкой в NDO, а во вторых, мой компьютер очередного увеличения веса модели не выдержит) Запустим Квиксель (от имени администратора) и загрузим три файла – карту нормалей, ID Map и эту текстуру. Если вы не узнали - это Celluar, с помощью которой мы делали рельеф на лезвии. Скопируем это изображение в виде отдельного слоя на ID Map. Затем выберем инструмент выделения и, нажав ПКМ на изображении, выберем Free Transform. Передвигая рамки изображения, расположите его на одном из рогов (в отличие от первоначального варианта – квадрата – результатом наших изменений  станет прямоугольник). Скопируйте еще раз Celluar отдельным слоем на ID Map и проделайте ту же процедуру с другими элементами рогов, не забыв про основание. Теперь вернитесь на слой с ID Map, с помощью инструмента волшебная палочка выберите один из элементов рога, далее – ПКМ по выделению и Select Inverse. Перейдите на слой с Celluar, который находится над выделением и нажмите Delete – изображение слоя за контуром выделения удалится. И у нас останется нужное изображение строго по развертке. Проделайте эту процедуру со всеми слоями. Объедините слои с картой Celluar и перенесите их на карту нормалей. Это можно сделать следующим образом. Нажмите ПКМ на слое. Далее – Duplicate Layer. В появившемся меню установите любое название слоя и выберите документ из списка (карту нормалей). Нажмите OK. Слой скопируется в нужный файл. Теперь выберите в меню Quixel SUITE плагин NDO (синяя иконка) и щелкните по появившейся кнопке. По истечении некоторого времени плагин выдаст следующее. Неплохо, но слишком рельефно. Нужно несколько сократить глубину. Size – 1 Depth – 600 Contrast – 50 Opacity – 100 Softness – 0 Это мои настройки. Вы можете изменить их, исходя из ваших соображений.  Поэкспериментируйте. Если что, всегда сможете исправить. Когда все будет готово, выберите папку слоев NORMAL и выполните сведение группы (merge group), нажав пкм. Затем поставьте в типах смешения Overlay у получившегося слоя NORMAL. Как можно заметить, смешение данного типа позволило нам в начальное изображение добавить элементы второго. Получилось неплохо. Но, к сожалению, есть одна проблема. Проблема называется швами. Наша фактура не будет заметна на стыке половинок рогов из за естественного шва. Но вот стык с основанием будет выделяться очень сильно. Чтобы этого избежать мы возьмем инструмент ластик с 100% мягкости и пройдемся по краям основания и по стороне  рогов, которая примыкает к основанию. Мягкий ластик даст нам эффект “затухания” фактуры, которая на данных местах обоснована – угол, натирающийся об поверхность. Итог – возле самого угла все неровности сглажены. Чем от него дальше – тем фактура становится более выявленной. Можно пройтись  ластиком по всему рогу, неравномерно затирая фактуру, добавив инструменту прозрачности. Но я оставлю всё как есть. После того, как подретушируем эти места, сохраним карту нормалей и закроем её – больше мы к ней возвращаться не будем. Теперь вновь откроем нашу модель лука в 3Ds MAX и экспортируем его в OBJ формат (для  вьювера Квикселя, чтобы мы сразу видели результат работы). Настройки экспорта показаны на скриншоте ниже. Faces – Triangles – Обязательно. Если оставить четырехугольники, плагин их попросту не прочитает. Texture coordinates, Normals, Smoothing groups – так же обязательно. Либо экспорт будет со сброшенными параметрами. Остальное можете оставить без изменений. Write log можно убрать, дабы не нагромождать директорию лишними файлами. После этого можете закрыть 3Ds MAX для снижения нагрузки на компьютер и включить Квиксель (сначала осуществляется запуск квикселя с иконки с правами администратора,  он загружает следом за собой фотошоп, к которому приписан). Нажмите на иконку DDO. В Base Creator укажите путь к модели в формате OBJ, к ID Map, Ambient Occlusion и карте нормалей.  Напротив строки Options щелкните по стрелке Expand. Далее – Output Maps. Оставьте только Albedo, Specular, Gloss, Normal и Ambient Occlusion. Когда настройка будет закончена, нажимаем на Create base. Когда загрузка закончится, будет звуковой сигнал и вылезет окошко, подтверждающее окончание загрузки. Что собой представляет плагин DDO – составная часть Квикселя? По сути, это обширный набор  материалов, которые генерируются и накладываются, учитывая данные карт, которые мы загрузили в начале. В данном случае – амбиента и  карты нормалей. Амбиент будет идти простым наложением и накладываться на текстуру. Карта нормалей же играет более значимую роль. По сути, по её рельефу отрисовываются маски, с помощью которых идет смешение слоев и рельеф переходит в узор на диффузе. DDO представляет собой автоматизированный процесс создания этих самых масок. В чем суть масок в фотошопе? Слой с маской накладывается на тот, который лежит ниже, исходя из данных маски. Белый цвет – непрозрачность, черный – прозрачность. Затенения, потертости делаются с помощью воздействия на маски, а не на сам слой. Несмотря на то, что плагин многое генерирует самостоятельно, править и рисовать нам придется, поэтому наборы кисточек необходимы. Благо, их полно в сети. Ищите по запросам grunge, scratch, cracks и т.д. Вообще, заведите себе привычку отыскивать и сохранять паттерны, материалы, кисти, которые могут пригодиться для работы. Использовать только стандартный набор, если можно скачать кисти на любой вкус – бред. Кроме DDO включите плагин 3DO, чтобы видеть нашу модель со всеми картами. Теперь добавим первый материал. Начнем, пожалуй, с дерева. В панели DDO нажмите на ADD Smart Material. Откроется окно материалов Открываем вкладку Wood и выбираем нужный материал. Далее весь процесс текстурирования – только мое видение того, как должно получиться. Я показываю так, как сделал я. Вы сами можете проявить фантазию, поработать кистями, изменить материалы и получить другой результат. Выберем материал Chipped varnished wood (двойной щелчок по нему). После загрузки карт мы получим залитую одним материалом текстуру. Используем нашу ID Map. Для этого щелкнем по  серому квадратику возле материала и выберем цвет, который мы придали деревянным элементам (у меня  - красный). Теперь отредактируем материал. Для этого нажмем на иконку с  папкой возле материала. Откроется список слоев, материалов либо смарт материалов, из который состоит материал дерева (по факту, это смарт материал, который содержит в себе вышеперечисленное) Чтобы изменить цвет материала, нажмите на одноцветный квадрат возле нужного материала. Смарт материал Chipped varnished wood состоит из материала древесины, материала “выраженных краев”, то есть той самой геометрии, слоя с пятнами и слоя с  загрязнением. Можно изменить любой из этих материалов и придать им нужный цвет. Varnished Wood сделаем менее красным и добавим чуть серого. Я выбрал цвет  R-80 G-63 B-57 (все следующие изменения цвета я буду говорить в цифровом шифре для RGB. Вставляйте эти данные в поля, приведенные на скриншоте ниже) Sublte Dull Spots – 211, 192,163 Dirt – 100,89,72 По цвету такое дерево мне нравится больше. Но все равно еще не то, что надо – нет засветления на углах. Для этого сделаем активным  слой с Edge Wear и в списке слоев в фотошопе выделим его маску. С помощью кисточки с трещинами сделаем по граням засветления. Делайте их неровными и как-бы рваными. Естественно, такого не надо делать на швах. Так же старайтесь, чтобы засветления, подходя к швам, были примерно одного размера, дабы не  выделяться на шве. Если вы считаете, что грязь мешает изображению, выберите маску слоя с грязью и  ластиком аккуратно потрите её возле граней. Сделайте тоже самое с остальными элементами. Если ваши изменения не отображаются во вьювере, нажмите кнопку обновления. Так же можно добавить потертостей на самом дереве, например на рукоятке. Получилось лучше, но слишком контрастно. Изменим цвет базового материала. Так мне нравится больше. Цвет - 115,107,91. Когда с рукоятью будет покончено, вернемся назад в списке материалов (иначе новый будет создан внутри этого). Для перемещения между уровнями редактирования используйте стрелочки над списком материалов. Добавьте материал кости (Bone). Он находится в разделе Misc.  Назначим материал на рога (в моем случае – оранжевый цвет на ID Map). Развернем смарт материал и изменим цвет материала кость – 195,178,129. Discoloration – 24,18,6. Porous Holes – 108, 71, 31. Следующее, чем мы займемся, это лезвия. Прежде всего, хочу сказать. Выбирая материал для текстуры, обращайте внимание прежде всего на фактуру, а не цвет, так как второе изменить можно. Первое же является ключевым. Примером этих слов может служить то, как я затекстурировал лезвия. В группе Metal выберите…Antique Copper. После использования ID Map получится следующее Интересный вид. Интересная текстура на лезвии, где идут сколы металла. Но не подходящий цвет. Исправим это. Copper – 83, 83, 83. Tarnish – 70, 70, 70. Bleach – 148, 148, 148. Несмотря на то, что текстура изменила цвет, красноватый отлив остался. Перейдите во вкладку Specular и аналогичные данные поставьте для материалов там. Дело в том, что в случае с медью спекуляр является не черно-белой картой, а цветной. Что влияет на отображение. Отлично. Но на текстуре отсутствуют затертые края, которые должны быть на металле. С помощью гранжевых кисточек добавим эти затертости.  Добавлять их нужно на маске слоя Bleach. Так лук выглядит поживее. Теперь добавим текстуру металла на фурнитуру (зажимы для тетивы, крепления и т.д.) и текстуру на тетиву. Для тетивы я использовал обычную текстуру кожи. Почему бы и нет, в конце концов? Сразу же хочу сказать – если вы расположили неверно развертку тетивы, то направление витков на модели сейчас будет идти в разные стороны, что, естественно, не есть хорошо. Но сейчас не нужно на это обращать внимание – это решается зеркальным отражением элемента развертки в 3Ds MAX на модели. Осталось затекстурировать только одно – плечи лука.  В оригинале на плечах две текстуры. Одна – чистый металл на бортах. Вторая – краска на центральной части. Попробуем сделать точно так же. Сначала сделаем общую текстуру металла с помощью материала меди. Можете разнообразить металл гранжевыми кисточками с царапинами, добавив их в маске Bleach. Теперь сделаем краску. Для него используем материал Military Metal 01 в группе Military. Наложите его на плечи и удалите часть материала, которая находится на  вертикальной плоскости плечей и с внешней стороны  кромок. Должно получиться вот так. При работе используйте кисть со 100% мягкостью, чтобы края были плавными. Затем поставьте прозрачность материала 75% Итоговая текстура. К ней, без сомнения, можно добавить еще деталей – трещины, потертости с помощью редактирования масок. Но, по моему, для такого ненавистника текстур, как я, вышло вполне неплохо. Как вы считаете? Хотя нет, я, пожалуй, не хочу знать ответа. После того, как вы сочтете работу готовой, сохраните изображения (иконка дискеты в панели DDO сохраняет все карты сразу) Не выполняйте сведения изображения! Вернее, выполнять то его вы можете, но не сохраняйте – лучше всегда оставлять исходники. Либо сохраните отдельным файлом. Перед конвертацией в DDS нужно сделать 2 вещи. Во первых, накинуть на текстуру наш амбиент. В квикселе он применялся отдельной картой. Нам же надо сделать его на диффузке. Делать мы это будем следующим образом. Откроем Diffuse Map и Амбиент. Выполним сведение  диффузки и на всякий случай сохраним отдельным файлом. Амбиент можно наложить на текстуру с помощью стилей смешения, но это выбелит саму текстуру, что нам не нужно. Поэтому сделаем иначе. Применим к изображению Hue/Saturation. Для этого в меню Layers выберите Adjustment Layers -> Hue/Saturation. Либо под слоями нажмите на кнопку Create new fill or Adjustment Layer и там выберите Hue/Saturation.  Настройки - Lightnes -60, Saturation +20. Далее перейдите к карте амбиента и инвертируйте её. Выберите инструмент выделения и выделите все изображение. Скопируйте его (Ctrl + C). Затем вернитесь к диффуз и с зажатым Alt щелкните по маске слоя Hue/Saturation. Откроется его маска. Вставьте амбиент (Ctrl + V). Получилось следующее. Теперь сделаем еще одну вещь. Выполните сведение изображения и откройте карту нормалей. Скопируйте зеленый канал (Green). Он отвечает за высоту. Создайте новый слой в файле с Diffuse Map и скопируйте на него канал. Стиль смешения – Soft Light или Overlay. Добавление зеленого канала с карты нормалей даст достаточно интересный эффект Diffuse Map. Работа над текстурой закончена. Сведите все слои в Diffuse Map. Если считает нужным, то уменьшите размер изображения (Image -> Image Size).  После этого выберите сохранить как. Введите имя файла. Советую придумать шифр, если вы собираетесь использовать модель в модострое, а не называть лаконично Bow – таких же умников достаточно и без вас. Если имена и директории совпадут, то файлы заменятся один из модов таких умников будет неликвидным. Например, я использую первые две заглавные буквы своего ника – LB_Bow, например. Шанс нарваться на такого же умника в разы меньше. Формат файла, ясное дело, DDS. В выпадающем меню ставим DXT 1 no alpha – потому что у нас нет альфа канала на карте. Если диффузка не подразумевает канала с прозрачностью, то ей всегда ставится DXT 1. Остальное без изменений. Откроем карту нормалей и Specular Map. Specular Map используется, как я говорил в предыдущем уроке, в двух картах – собственно, спекуляр в виде альфа канала карты нормалей и Mirror Map. Выполним сведение спекуляра и сохраним его как Mirror Map. Если хотите, перед этим сделайте спекуляр или его части темнее или светлее. Напомню – темнее – меньше блеска и глянца. Светлее – больше. Сохраняем Mirror Map аналогично Diffuse Map, только к имени файла добавляем _m. Настройки те же – DXT 1. Теперь откроем карту нормалей и создадим там новый канал. В списке появился Alpha 1. Выделите Mirror Map и перенесите её в альфа-канал карты нормалей. Сохраните файл, используя суффикс _n. На этот раз выставите DXT5 – interpolated alpha. На этом работа с картами подошла к концу. В результате у нас есть необходимые для игры три карты нужного формата. Осталось только сделать скелетную привязку модели и экспортировать её в игру, чем мы и займемся в следующем уроке. За сим вынужден откланяться, надеюсь мой урок был для вас полезен. Удачи и до новых встреч! Lord Beowulf, для TesAll.ru
  6. Туториал от Filosof, который продемонстрирует метод моделирования низкополигонального тела человека. Будет полезен новичкам, осваивающим 3Ds MAX. Является логическим продолжения урока этого же автора по модификатору EditPoly. Подготовительные работы Итак, начнем с того, что на прошлом уроке "Использование модификатора EditPoly" мы научились делать некие подобия людишек, типа вот этого: Первое, что мы сделаем, это заморозим его, чтобы не сдвинуть случайно с места. Для этого выделим наше чудо, жмем на нем правой кнопкой и выбираем меню "Propertiеs..." Откроется следующее окно: Ставим галочки на Freeze и SeeThrough (Видеть сквозь) и жмем ОК. Тело стало прозрачным и "замерзло", выделить его мы не можем, а именно это нам и надо. Теперь приступим к созданию виртуальной студии. Начнем с того, что нарисуем box, вот так: Затем сделаем его копию, для этого жмем правой кнопкой мыши на боксе и выбираем меню Clone: Откроется окно: Выбираем Copy и жмем ОК, далее выбираем кнопку Scale: Разворачиваем нашу копию вот так: Нанесение текстур для студии После этого мы будем наносить текстуры для студии. Жмем на клавиатуре клавишу M (в русской раскладке - "Ь"), при этом откроется следующее окно: Жмем сюда: В открывшемся окне выбираем Bitmap, жмем на ней двойным щелчком левой кнопки мыши (ЛКМ), откроется окно выбора: Вот наши рисунки тела человека: Жмем Открыть, окно стало таким: Теперь зажмем сферу с человечком ЛКМ и перетащим на один из боксов, бокс станет серым, нажмем вот эту кнопку: На боксе появится рисунок: Теперь перейдем в окно сбоку, нажмем F3, у нас появится наш бокс с рисунком, но он будет слишком суженным, поэтому необходимо его растянуть (Бокс), чтобы рисунок принял нормальный вид, т.е. примерно такой: Теперь делаем то же самое, но для другого бокса, открываем окно материалов, открываем текстурную карту, ищем изображение с видом спереди, наносим ее на другой бокс, делаем видимой, растягиваем, чтобы получилось вот так: Теперь выделим оба наших бокса, нажмем правую кнопку мыши (ПКМ) и войдем в меню Properties: Поставим галочку Freeze, и уберем галочку Show Frozen in Gray (отображать все видимое серым), жмем ОК. Теперь наша студия готова и можно разморозить наше тело, для этого жмем ПКМ и выбираем Unfreeze All, но косяк - он нам разморозил все. Нам это не надо. Выделяем опять наши боксы, жмем ПКМ и выбираем Freeze Selection (заморозить выделенное). Все, теперь можно приступить к моделированию! Выделяем наше тело, конвертируем в EditPoly и переходим на уровень редактирования вершин: ...Чуть не забыл, давайте настроим драйвер, чтобы рисунок отображался лучше. В меню Customize жмем Preferences: На вкладке Viewports нажмем кнопочку Configure Driver..., при этом откроется окно: Выбираем 1024 и 512, как у меня на рисунке, далее жмем ОК! Все, с конфигурацией разобрались.   Редактирование вершин Идем далее... Мы вышли на уровень редактирования вершин, вид спереди, смотрим что у нас есть: Голова здоровая, шея длинная, руки тонкие, тело широкое, ноги слишком раздвинуты и короткие. Что ж, будем двигать вершины. Кстати, поскольку человек у нас симметричен, то одну часть можно удалить! Чтобы уменьшить голову, в окне сбоку выделите вершины головы, затем используйте масштабирование, то же самое и с остальными частями тела (чтобы в окне перспективы отображались ребра, нажмите F4). После небольших преобразований у меня вышло вот что: Теперь, чтобы было проще, мы будем делать по частям. Для этого мы скроем не нужные нам полигоны и для начала начнем с головы. Скрываем ненужные полигоны Выделяем все полигоны головы, ищем кнопочку Hide Selected (Скрыть выделенное) и нажмем на нее. Полигоны головы скрылись, теперь проделываем то же самое для рук, для ног и для задней части туловища, т.е., у вас должно получиться так: Редактирование каркаса тела Теперь перейдем в вид спереди и начнем регулировать каркас тела. Для начала подгоним размер корпуса под то, что мы хотим: Так..., уже неплохо, но мы видим, что один полигон с левой стороны выступает как крыло и от него надо избавиться. Для этого мы делаем разрез, как на рисунке выше. Затем мы будем избавляться от всех треугольных полигонов. Но для начала подвинем наше крыло и уберем вот это ребро: Чтобы удалить ребро, перейдем на уровень редактирования ребер, выделим нужное нам ребро и нажмем кнопку Remove: После чего ребро удалилось, но полигон наш стал вообще пятиугольным, сделаем дополнительный разрез и выровняем все возможные вершины: После этого, используя процедуры разреза и перемещения вершин, доведем тело до такого вида: Что мы видим? Мы видим, что у нас в районе живота появилась дыра - там не хватает полигона. Давайте добавим его туда. Перейдем на уровень редактирования полигонов, найдем кнопку Create и будем рисовать полигон. Жмем на вершину номер один один раз левой кнопкой, от нее пошла пунктирная линия, затем соединяем ее с точкой 2 и с точкой 3, после чего жмем еще раз на точку 1 и у нас получится полигон: Теперь сделаем несколько дополнительных разрезов, подвигаем вершины и удалим ненужные ребра (зеленым цветом): Отлично, посмотрим, что же у нас получилось... А получилось у нас туловище, состоящее из сплошных 4-хугольных полигонов. Уже неплохо, но что это? У нас одна вершина висит просто на ребре без дела, давайте удалим ее: Удаляется она так же, как и ребро, - при помощи кнопки Remove (никогда не используйте кнопку Delete, чтобы удалить ребро или вершину!). Теперь сделаем еще пару разрезов, чтобы придать корпусу более приличную форму: Трансформация в виде сбоку Теперь проводим трансформацию в виде сбоку. Подвигаем вершины, чтобы вышло так: Теперь мы сделаем видимыми все полигоны, которые скрыли, для этого жмем кнопку Unhide All, перейдя предварительно на уровень редактирования полигонов: Редактирование спины модели Теперь перейдем к редактированию спины нашей модели. Для этого скроем все полигоны, кроме спинных полигонов, должно получиться вот так: Почему я не скрыл часть полигонов спереди? - спросите вы. А это для того, чтобы совместить количество разрезов с передней частью. Еще вы спросите, как я перешел в окошко Right из Left. Все очень просто - надо нажать клавишу V при этом откроется меню: Здесь можно выбрать любое нужное нам окно. Мне понадобились окна Right, Front, Top, Perspective. Что нужно вам, смотрите сами. Итак, после выбора необходимых нам окон пора бы приступить к редактированию. Для начала мы переключимся в режим редактирования вершин и посмотрим, нет ли у нас ненужных вершин. У меня они есть, вот они: Выделим и скроем их кнопкой HideSelected. Так, с вершинами разобрались, теперь давайте разрежем полигоны вот так: Начнем избавляться от треугольных полигонов. Делаем разрезы (красным цветом) и удалим ненужное ребро (зеленым цветом): Удаляем все той же кнопкой Remove. Теперь сделаем разрез как на рисунке и удалим следующее ребро: Теперь добавим разрезы: Теперь подвигаем немного вершины. Я обнаружил небольшую ошибку у себя - у меня в районе подмышек получилась лишняя вершина: Нам необходимо будет соединить зеленую и красную вершину. Для этого выделим их обе и нажмем кнопку Collapse: После этого вершины сольются в одну. Теперь продолжаем двигать точки до очередной проблемы. В этом месте нам необходимо сделать разрезы и убрать грани: Теперь мы выравняем вершины и сделаем разрезы вот так: После небольших преобразований (передвижения вершин) у меня получилось следующее: Теперь сделаем видимыми опять все полигоны и посмотрим результат: Проверка количества полигонов Так, для начала уже не плохо! Давайте посмотрим, на сколько полигонов наш человек весит. Для этого в меню File найдем и нажмем пункт Summary Info: Откроется окно: Здесь нас интересуют только значения Vertices и Faces - это количество вершин и количество полигонов в сцене, включая полигоны нашей студии. Чуть ниже приведен список объектов сцены: Name: Box01, Box02, Box03. Напротив каждого из боксов стоит количество вершин и полигонов. Первый бокс - это у меня моделька человека, 2 других - это боксы виртуальной студии, на которую мы накладывали текстуры. Итак, мы проработали тело человека. Давайте спустимся пониже и начнем мучить ноги. Редактирование ног Выделим все полигоны, кроме ног, и скроем их все той же кнопкой HideSelected. Оставим только вот эти: Теперь перейдем в окно сверху и посмотрим, не осталось ли у нас каких-нибудь ненужных вершин: Так, опять у нас вершины лишние, скрываем их тоже, и переходим в окно спереди. Ужас, что у нас здесь творится! Но все же приступим... Для начала придадим модели нужную форму во всех окнах, а потом будем резать. Итак, во всех окнах у меня вышло так: Теперь сделаем парочку разрезов в окне спереди и опять будем придавать объекту форму: Чтобы редактировать чуть побыстрее, мы используем небольшую хитрость, избежав тем самым передвижения вершин. Выделим ряд вершин, как на рисунке выше, и выберем инструмент "Масштабирование", затем отмасштабируем так: И так со всеми рядами вершин. У меня после редактирования вершин вышло вот что: В принципе, не плохо. Теперь перейдем к задней части ноги. Проявим все скрытые полигоны и оставим только заднюю часть ноги: Начинаем делать разрезы от передней части ноги, но сильно не торопитесь. Сделаем для начала разрез как на рисунке и удалим ненужные ребра: Потом я сделал вот такие разрезы: Не забывайте выравнивать все вершины во всех окнах проекций. После выравнивания у меня вышло вот что: Довольно неплохая нога. Весь человечек пока выглядит так: Редактирование рук Теперь мы начнем редактировать руки. Все это время я оставлял только часть чего-либо, так, чтобы можно было редактировать, не опасаясь того, что можно случайно сдвинуть вершины с противоположной стороны. Сейчас ситуация немного другая - у нас есть целая рука и если мы, допустим, выделим несколько вершин в верхней части руки, то все вершины, попавшие в область выделения, снизу тоже выделятся. В итоге, редактируя модель сверху, мы ее ломаем снизу. Как этого избежать? Да просто надо поставить галочку Ignore Backfacing (Игнорировать противоположные полигоны): Скроем все полигоны, кроме полигонов руки: Сделаем вид сбоку и начнем двигать вершины: После выравнивания вершин перейдем к виду сверху и скроем часть кисти руки: Мне очень не нравится то, что очень много Edges сходятся в одну точку. Давайте удалим их и сделаем новые разрезы. Получится примерно так: Теперь займемся ладонью. Чтобы было легче, скроем все ненужное, оставим только ладонь. Для начала мы сузим место перехода от руки к ладони и подправим вершины: [ В окне сбоку мы немного сожмем кисть руки: В окне сбоку у нас рисунок может и не совпадать, так что делать пока придется на глаз. Я выравнял вершины в окне сверху, немного дал длину пальцам и в итоге вот что у меня получилось: Редактируя руку сверху, я не заметил, что творилось снизу, но когда глянул - обомлел. Пришлось опять вершины двигать, получилось также, как и сверху, только в зеркальном отображении. Редактирование ступней Так, теперь, когда мы придали руке более-менее сносный вид, можно приступить к ноге. Оставим все, кроме ступни: Хочу сразу заметить, что дно ступни очень даже хорошо отредактировано: Поэтому мы сдвинем немного вовнутрь три верхних вершины ступни и на этом закончим с основанием стопы. В окне сверху у меня почему-то не хватило некоторых ребер, поэтому я сделал разрезы: Теперь УБЕРЕМ 2 ребра и построим разрез: Теперь сделаем разрез так: Выравняем вершины во всех окнах проекций, при этом не забываем ставить галочку Ignore Backfacing, чтобы не сдвинуть вершины с другой стороны ступни: Следующий разрез мы сделаем при помощи плоскости, хотя кому как удобнее. Нажимаем кнопочку Slice Plane: Вокруг обьекта появится плоскость, повернем ее вот так: Затем давим на кнопочку Slice и отжимаем кнопочку SlicePlane. На месте, где плоскость пересекала стопу, у нас остались разрезы: После выравнивания сбоку сделаем еще один разрез: Немного посидев, подумав, я удалил левую часть, чтобы было удобнее редактировать и чтобы научить вас прикручивать отдельные детали друг к другу. После редактирования, сбоку у меня получилось: Делаем еще разрезы 2 и редактируем их: Ступня приобрела более менее нормальную форму, теперь делаем разрезы тут: Теперь мы сместим вершины вот так: Я немного развернул ногу в сторону, чтобы вышло так: Потом я нарисовал один цилиндр (HeightSegment = 1, Cap Segment = 1, Sides = 7), разместил его на месте, где предположительно должен быть палец, затем применил к нему MeschSmoth (Modifiers -> SubdivisionSurfaces -> MeschSmoth). У меня получился округлый цилиндр, с количеством полигонов 42; у кого-то может будет чуть больше. Я клонировал этот цилиндр еще 4 раза, чтобы получилось 5 пальцев, затем конвертировал их в EditPoly, и вот что у меня получилось: Тем, кому лень делать так, могут создать капсулы, так будет даже правильнее (и только я не ищу легких путей :-) ). Затем я взял мизинец и прикрутил его к нашей ноге. Это можно сделать так: выделяем нашу ногу, ищем кнопку Attach: Нажимаем на ее, наводим нашу мышь на мизинец и готово - мизинец прикручен (так же надо будет приделывать и остальные пальцы). Далее переходим к вершинам. Удалим вот эту вершину: Теперь выделим вот эти 2 вершины и нажмем на кнопку Collapse (объединить): Затем повторим то же самое для вот этих вершин: и для этих: В итоге у меня получилось вот что:  
  7. Supreme Overlord Malekith, не надо гнать на аутсорс. метро тоже часть визуала аутсорс делал, и к визуалу там не придерешься.
  8. Статья «Экспорт оружия в Skyrim» специально для TESALL.RU Доброго дня всем форумчанам. При создании модов к Skyrim я в свое время столкнулся с проблемой - если экспорт своих моделей был проблемным в Oblivion, то со Скайримом же дела обстоят еще более печально. Думаю, не у меня одного возникли такие проблемы и поэтому я решил написать несколько уроков по экспорту различного рода предметов в Skyrim. Сегодня я покажу, как в игру поместить полностью работоспособную модель своего оружия. Для этого нам понадобится: 3Ds Max с nif плагином ( пока что публиковать уроки я буду только для этого редактора) Nifscope модель оружия ( поскольку я не вижу смысла показывать сам процесс моделирования в данной теме, я буду использовать уже готовую свою модель. В моем случае это меч) так же нам понадобится набор текстур для нашей модели "болванка" - стандартное оружие из скайрима. я использую файл glasssword и 1stpersonglasssword (настоятельно рекомендую так же использовать 1stperson файл во избежание косяков с моделью в игре) Итак, открываем нашу модель. В зависимости от модели, там должно быть от 3 до 4 объектов. 3 обязательных - собственно, сам меч и две копии лезвия для эффектов крови. обзовите копии EdgeBlood и EdgeBlood01. Четвертый объект - ножны. Если они у вас присутствуют, назовите их Scb. Соберите все элементы в 1 целое ( середина рукояти меча должна находиться в центре координат. Где находится середина, там рука персонажа и будет держать оружие) и экспортируйте в файл .nif Работа в 3D Max закончена, программу можно закрыть. Теперь откройте в Nifscope вашу модель и вышеупомянутую болванку. Прежде всего необходимо сделать конвертацию стака NiNode. для этого нажмите по нему ПКМ, появится контекстное меню. Выберите Block -> Convert. Появится очередное меню. Выбираем Bethesda -> BSFadeNode Что мы делаем далее. Выбираем NiTriShapeData модели своего меча, копируем её (ПКМ, далее Block-> Copy Branch) И вставляем в нашу болванку (ПКМ по BSFadeNode Block -> Paste Branch) Небольшая ремарка насчет болванки - если в ней элементов больше, чем у вашей модели (например в стеклянном мече рукоять идет отдельным NiTriShape) удалите их (ПКМ на нужном NiTriShape Block -> Remove branch) После всех этих махинаций нам нужен NiTriShape модели меча. ищем в block detalis строчку Data. в третьей графе (value) будет указан номер - это номер ветки NiTriShapeData меча (то есть непосредственно самой модели). заменяем этот номер на номер нашего NiTriShapeData, который вы копировали ранее (меняем на тот номер, который стоит перед названием стака) Как только мы его заменим, дефолтная модель сменится на нашу. Она может изменить свое положение по осям. Если это случилось, щелкните ПКМ по NiTriShape выберите Transform -> Edit и сбросьте все значения на 0. после этого модель заняла нужное положение. NiTriShapeData, который будет находиться внизу списка ( от ванильной модели) можно удалить ( Block -> remove branch). Теперь необходимо назначить нашему мечу текстуры. для этого киньте свои текстуры в папку textures и замените пути на аналогичные в BSShaderTextureSet меча. Проделайте аналогичную работу с остальными объектами (ножны, если есть и EdgeBlood) Не забывайте после каждой замены заходить в Transform -> Edit и сбрасывать координаты на 0. Далее открываем файл 1stpersonsteelsword и делаем то же самое. опять же, не забудьте сбросить на 0 координаты всех 3(4) элементов и прописать пути к текстурам. После всех этих махинаций nifscope перестает быть нам интересен. сохраните свои модели (sword и 1stpersonsword в папку meshes, которая находится в корневой папке игры) и запустите creation cit Уроков по конструктору в достатке, поэтому подробно останавливаться на создании нового предмета я не стану. В кратце - вам нужно создать новое наименование в Static (1st person модель) и создать собственно предмет с его характеристиками в разделе Items -> Weapon Сохраните свой esp файл, загрузите игру и любуйтесь на свою работу! Теперь поговорим про баги и косяки(куда же без них). В игре модель может отливать каким либо цветом (от одного цвета типа зеленого до всех цветов радуги). Что бы этого не происходило, старайтесь в качестве болванки использовать предмет, наиболее подходящий по гамме к вашему (например стимпанковское оружие - двемерские болванки). Если вы этого не сделали, то в стаке BSLightingShaderProperty поставьте те же настройки, что и у цветового аналога ( параметры Glossiness Specular Color Specular Strength Lighting Effect 1 Lighting Effect 2 Environment Map Scale). Модель в игре отображается в черном цвете. неверный/чужой нормал мап. Модель в инвентаре отображается по оси Z (для меча это значит, что без поворота предмета в инвентаре видна только гарда) 1stperson модель является копией модели обычной, что может привести к подобному. Пожалуй, на этом все.   
  9. Создаем коллизии для статиков в Skyrim LE  Для начала следует обозначить пару моментов. Во первых, у вас в сцене должен быть 1 объект и соответственно 1 NiTriShape в NifSkope. Для объектов с большим количеством NiTriShape, данный способ не подходит. Во вторых, не советую начинать с импорта модели через Obj формат, как это показано в оригинале. В этом случае, у вас могут сбиться параметры сглаживания и выйдет не совсем то, чего вы ожидали. Итак, начнем. Запускаем сцену с вашей моделью в 3Ds Max. У меня пусть будет стол. В начале следует его поставить в начало осей координат. для этого выбираем инструмент Move и значение осей X и Y сбрасываем на 0. Ось Z необходимо отредактировать самим, иначе начало осей координат будет находиться посередине модели. После этого можем экспортировать модель в Nif формат. Настойки экспорта: Далее нам понадобится Nif, содержащий информацию о коллизии и текстурах. Можете взять его отсюда [attachment=14702:CollisionMesh.rar] Открываем нашу модель и выделяем ветку NiTriShape. Нажимаем ПКМ по ней, далее Block -> Copy Branch. Затем открываем файл из архива, выделяем BSFadeNode, нажимаем ПКМ, Block -> Paste Branch. Свой nif файл можете после этого закрыть, далее пойдут работы только с CollisionMesh.nif Прежде чем продолжить, отредактируйте твою ветку NiTriShape. удалите из неё NiMaterialProperty и BSLightingShaderProperty. Для этого выделите эти ветки и нажмите на Block -> Remove Branch. В итоге в вашем NiTriShape должно остаться только NiTriShapeData. Далее выделите NiTriShape, промотайте Block Detalis в самый низ и найдите вкладку Property или BSProperty. Разверните её и вместо None в первой вкладке напишите номер дефолтной ветки BSLightingShaderProperty, которая была сразу в файле. Это действие перенесет правильно настроенную ветку с текстурами к вашей модели. Далее пройдите во вкладку BSShaderTextureSet и пропишите пути к текстурам. Прописывается путь к непосредственно текстуре и нормал мапу - текстура_n. Путь к текстуре должен выглядеть так - textures\[папка вашего мода, если есть]\texture.dds. Удалите лишние строчки. У меня получилось вот так. Далее перейдем непосредственно к Коллизии. Сохраните свою модель в папку с моделями скайрима. Data\Meshes\[ваша папка]. После этого нажмите ПКМ по модели и выберите Transform -> Scale Verticles. Установите значение на 0.1 и нажмите Scale. Затем нажмите снова ПКМ по модели и выберите Havok -> Create Convex Shape. Так же установите значение на 0.1. Это действие создаст ветвь 9 bhkCollisionObject во вкладке 0 BSFadeNode. скопируйте вашу Коллизию, щелкнув по 9 bhkCollisionObject ПКМ и выбрав Block -> Copy Branch. После этого загрузите сохраненный перед созданием коллизии Nif файл. Удалите из вкладки BSFadeNode bhkCollisionObject Теперь нажмите на BSFadeNode ПКМ -> Block -> Paste Branch. Далее выберите в окне Block Detalis BSFadeNode найдите строчку Collision Object и вместо None вбейте туда номер строчки вашего колизиона. Далее кликните ПКМ по модели, выберите flags, в выпадающем меню выберите Continue и нажмите Accept. Сохраните файл. Во вкладке bhkCollisionObject будет bhkConvexVerticlesShape. Это и есть ваш коллизион. Далее зайдите в конструктор, создайте там новый объект, поместите в игру и зайдите проверить, работает ли коллизия. Как видите, мой бомжеватый норд вполне вальяжно устроился на столике, значит коллизия в порядке. В данном уроке мы рассмотрели, как экспортировать в игру статические объекты с адекватным отображением что текстур, что коллизий. На этом урок подошел к концу. Удачи в творчестве, до встречи. PS. Данный процесс создания коллизии для Скайрима несколько грязный и ограниченный, но пока что другого и менее геморного варианта не нашел. впоследствии выложу статью по внедрению своего оружия в игру, уже собственного производства. И буду искать варианты по созданию коллизий для статиков с меньшими ограничениями.
  10. мы следим за тобой, ничтожество.
    1. Drazgar

      Drazgar

      Stop right there you criminal scum! You violated my mother!
    2. Мистер Лис

      Мистер Лис

      Спасибо, что бы я без вас делал)
    3. Ewlar

      Ewlar

      Лис +1 )))
  11. Gorv, я щитаю, что подобные статьи, даже твои, можно оставить как история наполнения сайта. ему чай 10 лет. всё же он не всегда являлся сайтом со СТРАННОЙ любовью администрации к мозаичному дизайну и удалению аттачментов.
  12. Dimonoider, согласен. надо или не надо было делать так или этак - это софистика. это работало и это делалось, еп. и это было до того как появился хост. например первую половину тутора лука я писал, когда у меня кнопки хост не было. плюс каких либо правил типа юзайте то а не юзайте это тоже не было. ну серьезно, можно их хотя бы как-то прикрепить к статьям? половины статей в природе не существует. по 3д часть старья я выносил мозг Даше, чтобы она наконец порылась у себя на компе и отправила мне. я понимаю та же серия по луку достаточно херовая и мне за неё стыдно - но сейчас её можно просто удалять. потому что половину в хост я не заливал первую. можно ведь было в таком случае резервную копию сделать или оповестить, чтобы перевесили, в самом деле. упд. опять же да, 50% статей, включая мои собственные, по 3д можно смело бросать в помойку - они нахрен не сдались в контексте уроков от юдеми, плюралсайт или сж туторс. но хотя бы для ради истории сайта их можно было оставить. мол, смотрите какие тут лузеры обитали. а без телодвижений со стороны админов их восстановить не получится (у меня доступа к бэгапам нет)
  13. Cool_Wolf, ты думаешь он начнет работать? в статьи не заходят не поэтому. во время мтеса или тесал 1.0 это вообще всё было с кучей флуда на форуме и оно пользовалось популярностью. туда не заходят, потому что комьюнити обленилось. лор? не смешите меня - что либо знать, кроме даготурнепредавал# (или когда этот хэштег ставится) - никому и не надо. разработка? тем более. кроме Нексера и Хараидона (за правильность не берусь - я даже не пытался прочитать верно его ник) по 3д поговорить не с кем. думаю, скриптерам и тем более левел дизайнерам - аналогично.
  14. слушай, для меня эти теги все - бесполезная мишура. понаставят своих тегов и долбят друг другу статьи.
  15. Karatel Indoril, угу. она была. но ушла. со старой материнкой. а мне эта надпись особо не мешает.
  16. хост снова отрубили? я так не играю.
  17. а так же ряд вложений и прикрепленных изображений. включая те, которые я или восстанавливал из румора или сам писал =/ 1 добрый немецкий парень говорил мне, что хост это не какая то файлопомойка и оттуда никакие изображения не денутся. прошло 4 года =/ если кто-то заикнется про то, что понедельники бывают хорошими - дам в табло. и где кнопка изменить? плюс часть статей (уверен не 1 я так делал) пилились не через хост, а скрепками к статье. святое правило программиста - не ломай, что работает =/
  18. Karatel Indoril, imgur.com/a/jSmXUSh всё гениальное просто
  19. Karatel Indoril, а эпики сделали ряд успешных проектов, 1 из сильнейших движков и решили подвинуть ожиревшего. так что желаю этим маститым процветания и развития. хейтеры всё равно будут всегда. не важно какая причина - туманная "вечная" эксклюзивность, которая не подтверждается ничем или целый 1 новый ярлык на рабочем столе.
  20. Karatel Indoril, разработчику и издателю (да, в данном контексте я их объединяю, так как выгода автоматом расходится на всех) это выгодней. и для разработчиков эпики дают больше профита. ЕДИНСТВЕННО что мне не понравилось во всей ситуации - это игра на кикстартер. всё же сборы влекут определенную ответственность. смена платформы, модели распространения и эксклюзивность выходит за пределы. в остальном же... игровой сервис от маститых разработчиков, которые предлагают свое неплохое решение в виде движка и дают определенные бонусы разрабам стоит у меня определенно выше, чем детище ожиревшего от лени Гейба.
  21. Karatel Indoril, так а в чем тогда тут хамское отношение? что владелец магазина, дает определенный гешефт тем, кто пользуется их магазином и в качестве условия ставит годовую эксклюзивность? напомню - эксклюзивы сони или микрософт таковыми являлись при издании пожизненно и изменялись только потом и очень редко (исключение микрософт - они отказались от этого) туше, признаю свою вину - был не прав в суждении, раз так.
  22. Karatel Indoril, давай будем разграничивать принципы и желание халявы. покупать её не стал бы в любом случае, а воровал с торрентов. потому что аргументация в стиле - они навсегда заставляют разработчиков сидеть в их магазине (оставим в стороне выгоду от этого для разработчиков) - но вообще то не навсегда, а по соглашению ровно год - ЯНИВЕРЮПРОДАЖНЫМКОПЕТАЛИЗДАМ!111 - не подразумевает объективную позицию в плане покупать/не покупать за идею, а поиски поводов. анрил. гирс оф вар. буллетшторм. форнайт. движок УЕ. вообще ничего не могут.
  23. Karatel Indoril, как не читали? это официальное заявление и условие для ВСЕХ разработчиков. официально выложенное. следовательно, всё что выше этого условия - дополнительное соглашение и желание уже лично разраба (потому что общее для всех соглашение без консенсуса достигаться не может) исключение - франшизы которые принадлежат личного эпикам типа того же детройта. это факты. и выводы на их основе. а это слышу звон, не знаю где он.
×
×
  • Создать...