Source Filmmaker

Source Filmmaker

Not enough ratings
Гайд По Пользованию SFM`ом
By CAWITAR
Данное руководство было создано с целью научить новоприбывших любителей 3д приколов создавать свои, так называемые приколы при помощи этого устарелого куска кода. В руководстве будут затронуты все те аспекты, что я смог постичь за свои 370+ часов, даже не смотря на то, что данная цифра ничего не значит. Начнём с самых основ.
   
Award
Favorite
Favorited
Unfavorite
Запуск SFM`а, создание сессии и кратко про первую модель и камеру
Для начала, нам нужно скачать данный продукт, что рекомендуется делать на диск с выделением 50+ гб свободной памяти только для данной шарманки. Перед запуском я бы посоветовал зайти в свойства SFM`а (ПКМ по иконке smf`а в левой строке библиотеки, свойства, параметры запуска) и вставить туда данную команду -w 1920 -h 1080, чтобы программа, режим партиклов и игровой процесс на кнопку F11 открывалась в нормальном разрешении. После установки запускаем кусок старого софта и перед нами открывается данный вид

Это, так называемое меню для создания сессий, где мы можем:
  • дать имя нашей сессии (SFM воспринимает ТОЛЬКО АНГЛИЙСКИЙ ЯЗЫК, ЧТО ТАКЖЕ КАСАЕТСЯ И ГОРЯЧИХ КЛАВИШ)
  • выбрать её расположение в файлах на компьютере (лучше создайте отдельную папку)
  • выбрать количество кадров для создания анимации
  • открыть уже созданную сессию в папке
  • открыть скаченную сессию
Даём название нашей сессии, выбираем ей расположение в файлах и нажимаем кнопку Create. Окно пропадает и мы видим чёрный экран и надпись "NO MAP LOADED!". Выходит, что нам нужно загрузить карту.

Нажимаем правой кнопкой по чёрному экрану и у нас появляется данная строка, к которой мы позже ещё вернёмся, т.к. сейчас нам нужна только одна кнопка "Load Map...".

Нажимаем на неё и у нас появляется окно выбора карт.



Тут, мы можем, нажав на кнопку "Mod Filter" открыть раздел с сортировкой по файлам.


Допустим, я хочу выбрать карту из TF2. Нажимаю на "tf", чтобы отсортировать карты из игры и выбираю условный upward, после чего нажимаю на "open". Начинается загрузка карты. Я крайне не рекомендую нажимать какие-либо кнопки во время этого процесса, т.к. это чревато вылетом.

Вот "мы" и появились на карте. НО, тут я сделаю небольшое отступление, т.к. upward уже имеет встроенное освещение, а это значит, что картинка будет видна нам сразу. Многие карты не имеют готового освещения, поэтому при загрузке вашей карты у вас просто может быть чёрный экран. Как это исправить? ПКМ по этому чёрному экрану, Enable Lighting.

Всё, вы выключили освещение, которого по факту и не было. Это так, резкий врыв из будущего, т.к. забыл это упомянуть. Чтобы начать движение в пространстве нам нужно нажать на "Tab" для переключения в режим "Motion Editor" (с зелёной полосой такой будет) Процесс перемещения очень прост, а именно, зажав левую кнопку мыши мы можем осуществлять перемещение по карте на WASD + Z - вверх и X - вниз, а также Shift для ускорения этих действий.
Настало время спавна моделей. Для этого нажимаем правой кнопкой мыши по серому месту в "Animation Set Editor" и выбираем "Create Animation Set for New Model". У нас открывается меню, схожее с тем, что было при выборе карт. Тут мы также можем выбирать место, откуда мы хотим взять модель. Для примера я возьму высокополигонального инженера из мастерской sfm`а. (Также в правом верхнем углу мы можем наблюдать выбранную нами модель. Её можно крутить на зажатую левую кнопку мыши, отдалять на зажатую правую кнопку мыши, перемещать на ЛКМ/ПКМ + shift и менять угол освещения на ЛКМ/ПКМ + ctrl). После выбора модели нажимаем "Open". Перед нами и в окне Animation Set Editor появляется инженер, а также автоматически камера, которую мы пока не можем трогать. Для добавления автоматически созданной камеры нужно нажать ПКМ по Animation Set Editor, затем Create Animation Set(s) for Existing Element(s). После этого у нас появится небольшое окошко, где следует выбрать "camera1", а после нажать "Ok".

Теперь у нас есть в Animation Set Editor, как инженер, так и камера(к слову, камеру можно было заспавнить перед спавном первой модели, в моём случае инженера. Также ПКМ по Animation Set Editor, Create Animation Set for New Camera. Ну, чтобы не возиться со всем вышеперечисленным).
Теперь сразу, чтобы не забыть. ПКМ по Animation Set Editor, и включаем те параметры с
надписью "Show", что изображены на картинке


Позинг и ещё немного
И так, мы имеем камеру и инженера, что же дальше делать? А дальше мы выбираем "Work Camera"/рабочую камеру (это камера, что предназначена для перемещения по карте и работе с окружением. На неё НЕ делают рендер).









Зажимаем ЛКМ по рабочей зоне и перемещаемся немного подальше от инженера.
Мы можем увидеть самого инжа и белый треугольник - это наша камера, а точнее то, что она видит. Для того, чтобы приземлить модель, нам необходимо выбрать её в Animation Set Editor.












На инженере появились кости для управления, но поскольку мы выбрали его модель целиком, то под управление нам дали его полное перемещение. Нажав клавиши "Q", "W", "E", "R" можно переключать режимы управления. Основными будут являться W и R. Нажмем W и получим данную картину(ЕЩЁ РАЗ НАПОМИНАЮ, ЧТО ВСЕ ГОРЯЧИЕ КЛАВИШИ ПРОИЗВОДЯТСЯ ТОЛЬКО НА АНГЛИЙСКОЙ РАСКЛАДКЕ).
Выбираем синюю стрелку и тащим инженера к земле/или выбираем голубой квадрат(свободное перемещение) и с зажатым shift`ом тащим его к земле. Все другие стрелки - оси, по которым также можно перемещать все модели. То же самое делаем и с камерой, но её также можно и перемещать вручную, выбрав её в Animation Set Editor и перетащив на главный экран.











Кстати, некоторые могли заметить, что у меня у левом нижнем углу есть небольшой экран, что дублирует изображение. Так вот, это, по сути своей - второй монитор, что является копией основного экрана. На него также можно переместить камеру для удобного управления, выбрать там рабочую камеру или вообще перенести источник света для аналогичного камере управления. Но об этом позже. Так как же его включить? ЛКМ по кнопке Windows, Secondary Viewport. Перемещаем новое окно на один из квадратиков, подгоняем нужный нам размер и довольствуемся(можно вынести на второй монитор при наличии, НО, если вдруг вы его там оставили, а монитор выключили или вообще убрали, то этот экран останется там. Так что аккуратнее)





















Два раза нажимаем по модели/или просто на плюс и открываем группы костей, что подразделены на группы: лицо, тело, руки, пальцы, ноги, другое и неизвестно.









Уже тут мы можем выбирать нужную нам кость для её передвижения/стоит также отметить, что кости быстрее будет выбирать на главном экране при зажатой клавише ctrl, но при большом количестве моделей бывает сложно попасть на нужную. Допустим я хочу поднять правую руку инженеру, для этого я выбираю ему кость bip_upperArm_R, нажимаю на E и вращаю её по свободной оси для удобств(сфере, что окружена xyz). После этих действий рука инженера начинает провисать, поэтому я выбираю кость плеча правой руки и также поднимаю его, чтобы смотрелось целостно.

Если же вам не понравилось сделанное действие, то его можно отменить на ctrl+z, а на ctrl+shift+z - вернуть действие обратно.
По такому принципу перемещения костей делаем нашему инженеру самую простую позу.

Вот что вышло за пару минут. В данном случае ноги можно не прорабатывать, т.к. их нет в кадре. Выглядит ещё сыро, нужно изменить эмоции. Для этого у инженера заходим в группу face. Тут, в нижем правом углу мы видим появившиеся ползунки с разными параметрами: брови, глаза, нос и т.д.

Над ними также есть ползунок с буквами "L" и "R". Он является параметром для изменения силы костей на лице. Легче привести пример, потянув ползунок вправо до конца и подняв кость брови, увидим, что поднялась только правая бровь. Если же этот параметр выставить по центру правой половины, то поднимутся обе брови, но правая будет выше. Аналогично и с левой стороной. Вот, что вышло.

Кто то мог заметить, что с инженера пропала каска. Всё дело в том, что я её убрал, и вот как: ПКМ по инженеру, Set Body Groups, Hat, none. Выполнив идентичное действие, но выбрав "Set Skin" даст нам доступ к выбору окраса инженера, в моём случае - в синюю команду.


Если же у нас стоит несколько моделей, а их кости сливаются друг с другом, то мы можем нажать на стрелку/треугольник у нашей модели, чтобы скрыть её кости. Можно также скрыть кости по группам, при необходимости.

Если же нам нужно спрятать одну/две или более костей, что ещё и находятся в разных группах, то мы выбираем данную кость, нажимаем по ней ПКМ, затем DAG Utilites Menu, move_to_hidden group

Внесу небольшие правки, я не помню, входит ли этот параметр в sfm`е по умолчанию, т.к. я уже на 10 часу накачал себе кучу модов на различные скрипты. Мда...
Upd: Вот ссылка на этот мод из мастерской. Hide Selected Controls script
Чтобы вернуть данную кость нам нужно нажать ПКМ по Animation Set Editor, Show Hidden Controls.

Повторите вышеописанные действия, но вместо move_to_hidden group, выберите move_to_original group.


Ну, а если нам нужно просто спрятать модель, но при этом не удалять её, то нажмём на "глаз" у имени модели

Но представим, что я хочу увеличить инженера или любую другую модель. Для этого нам нужно нажать ПКМ по нашей модели, Utilites, Add Scale Control To Models.

После этого у нас появиться новая "кость"/ползунок rootTransform_scale , что будет отвечать за размер. Зачастую она попадает в группу body, но если её там нет, то поищите во всех костях сразу.
Всё ещё про позинг, т.к. не влезло(
Если же нашей модели нужно добавить предмет или элемент одежды, то:
  • Если модель из TF2, а точнее из папки tf, то при нажатии ПКМ по ней у нас появятся дополнительное значение "Add Team Fortress Item".

    Нажав на неё у нас откроется небольшое окно с выбором шапок и пушек для выбранного нами класса.

    Тут также есть фильтр и поисковик.
    Из минусов же могу выделить то, что не все шапки есть в данном меню из-за прекращения поддержки SFM`а, так что при необходимости вам придётся искать нужную модель в мастерской.
  • Если модель Не из папки tf, то вот наши действия: зажимаем нашу модель и перетаскиваем её на нужную нам шапку или оружие, чтобы после этих действий появился замок. После этого выбираем шапку и тянем за ползунок Default или Zero, шапка сразу встанет на нужное место.

    Но есть небольшая проблема, этот способ не всегда работает. Порой модель просто ломается. Как же тогда быть? Заходим в группы костей нашей шапки и ищем там группу body, а уже в ней в моём случае находим кость bip_head.
Перетаскиваем кость bip_head с инженера на шапку до появления замка и тянем за ползунок Zero (в этот момент должна быть выбрана шапка или её кость bip_head).

Но поскольку данный колпак был рассчитан на ношение с каской, то он просто висит в воздухе. При попытке переместить его на голову у нас ничего не выйдет. Придётся делать следующие телодвижения: ПКМ по шапке, Unlock Transforms.

Теперь мы разблокировали шапку и она больше не будет привязана к инженеру. Опускаем её до нужного нам уровня и снова закрепляем с костью bip_head, но на этот раз не тянем никаких ползунков.
Ну, а если же нам нужно увеличить или уменьшить привязываемый объект, то сначала привязываем его, тянем за Zero у bip_head`а, убираем привязку, добавляем параметр rootTransform_scale и привязываем кость головы инженера к кости rootTransform от нашей шапки.

Теперь колпак крутится вместе с головой, его можно свободно двигать, так ещё менять размер (некоторые модели при изменении размера начинают улетать вверх или ещё куда-нибудь. В таком случае переместите её обратно на нужное место. Или вы могли убрать её слишком далеко от её изначальной кости rootTransform. Сопоставьте их на примерно один уровень, и тогда ничего убегать при изменении размера не будет. Ну, наверное, это sfm😀).

Немного ранее я упомянул про добавление оружия к модели, но лучше будет показать последовательность действий. Ну, можно также, как и с шапкой просто переместить модель на оружие, а можно и привязать кость weapon_bone от инженера к weapon_bone от оружия и протянуть Zero (в моём случае от пистолета)
Rig и его применение
Я уже немного, прям самую малость затронул позинг модели, но там использовался базовый скелет, где каждая кость управляется по отдельности. Настало время немного окунуться в такую полезную и вспомогательную вещь, как Rig.
Что такое Rig? Ну, это по сути своей взаимное перемещение костей при взаимодействии всего с одной.
Как его использовать? Нажимаем ПКМ по нашей модели и наводим на значение Rig, затем у нас появиться значение rig_biped_toe.

Выбираем его и видим, что кости нашей модели изменились.

Теперь, перемещая кисть или стопу через "Move/клавишу W" мы взаимодействуем с рукой или ногой целиком(кости локтей должны быть позади кости кисти, а колени наоборот - впереди стоп). Если же начать перемещение новой появившейся кости rig_pelvis, то ноги будут сразу сгибаться в колени, что удобно при позинге.
Если же вам необходим rig только одной определенной конечности, то вот порядок действий(возьму правую кисть для примера): ПКМ по bip_hand_R, DAG Utilities Menu, create_ik_constraint.

При необходимости rig можно удалить. Для этого нажмите ПКМ по модели, rig, Detach rig, и в этом списке появятся те rig`и, которые вы применили. Просто нажимаем на них и они удаляются(Detach All удаляет сразу все). Но также добавлю, что при удалении rig`а модель может немного сломаться. Да, это sfm.
Если кости поломались, то попробуйте применить параметр Rebuild Control Groups:
ПКМ по модели, Utilities, Rebuild Control Groups.

Это далекооо, не все способы применения rig`а, но какую то базу об его основной функции я рассказал.
Камера и её настройки
Чтож, наверное стоит перейти к такому немало важному параметру, как камера. В начале я рассказал про её создание и выставление. Напомню также, что её можно перетащить на один из экранов и управлять ей на WASD. Камеру также можно поворачивать под углом на зажатую клавишу R
Пойдём по порядку её функций, НО, тут я сделаю небольшое отступление, чтобы напомнить всем тем, чьи работы я видел. ВКЛЮЧАЙТЕ РЕНДЕР, пожалуйста, это не трудно. Вот порядок действий: ПКМ по главному экрану, Render setings..., в открывшемся окне убираем галочку с Motion Blur(он просто не заметен), Depth Of Field ставим на 512 или 1024 для достижения хорошей картинки при рендере (если ПК слабый, то можно поставить параметры и поменьше)


Так, сделаем вид, что этого не было и вернёмся к камере.

  • fieldOfView - обзор камеры, её угол, линза объектива, как угодно. Этот параметр влияет буквально на всю работу. Плохой угол камеры часто запарывает работу новичкам.я не исключение В этой работе я приблизил камеру к инженеру, а саму её убрал к его руке.

    Если же я выкручу FOV на максимум, то я увижу всего инженера и даже больше.

    А если поставить значение на минимум, то в кадре будет одна рубашка.

    Если вы не хотите экспериментировать с FOV`ом, то в sfm`е есть уже готовые форматы линз.
  • focalDistance - параметр, отвечающий за дальность размытия камеры. Обычно его ставят так, чтобы пурпурная "стена" заходило за лицо нашего объекта. Пробуйте разные варианты, подходящие под вашу ситуацию.

  • aperture - этот параметр связан с прошлым. Он отвечает за сам эффект размытия. То есть его силу, по умолчанию она будет выключена.

  • toneMapScale - яркость картинки.

  • bloomScale - эффект блума. Добавляет так называемый блум, свечение ярких объектов.

  • SSAOBias - параметр, отвечающий за "наложение теней". По сути, картинка особо и не меняется, но если выкрутить на максимум, то тени почти пропадут. Так что я бы ставил этот параметр в минус, т.к. при таком значении он даёт более сочные тени.

  • SSAOStrength - отвечает за насыщенность теней. Очень полезная вещь, делает картинку более объёмной.

  • SSAORadius - радиус распространения теней. Потаскайте ползунок и всё поймёте сразу.
Если же вас не устраивает качество размытия на камере, то можно чуть-чуть исправить эту ситуацию. Нажимаем ПКМ по камере, Show in Element Viewer, Camera.

Попадаем в её Element Viewer, находим там depthOfFieldQuality и ставим значение на 7.

Тут можем также заметить такой параметр, как SSAOTint. Он по сути своей меняет цвет теней на конкретной камере. Может вам будет полезно.

Тени приобрели голубоватый оттенок.

Также в начале стоило бы упомянуть, что можно привязать рабочую камеру "Work Camera" к какой либо кости. Для этого выбираем любую кость и нажимаем кнопку Auto Aim. Теперь рабочая камера будет постоянно следовать за нужной нам костью.

В целом, это самые базовые знания по камере, на раннем этапе хватит и этого.
А, и ещё кое что, можно создавать несколько камер, которые переключаются по нажатию на эту маленькую стрелочку.
Вообще для этого есть мод в мастерской, но у меня он работает через раз. Инструкция по работу с ним есть в описании мода. Switch Camera Shortcut Script
Освещение
Чтож, видимо пришло его время. Освещение. Страшный, ужасный и кривой фонарь, что вызывает боль у всех новичков в sfm`е. Начнём с его создания: ПКМ по серой области, Create Animation Set for New Light. Не забываем также включить освещение: ПКМ по главному экрану(Viewport`у), Enable Lighting(чтобы была галочка). Оно было включено у меня на протяжении всей работы, т.к. с ним было легче показывать свойства камеры, + это Upward, оно тут по умолчанию

Кстати, тут небольшой врыв в повествование. Если вам хочется более удобного меня спавна моделей, света, камер и партиклов, то качайте этот мод Extended Animation Set Editor Buttons .

У нас появился источник света, что по началу направлен прям на модель.

Мы можем перетаскивать свет по XYZ, но намного легче будет зажать light1 и перетащить его на один из наших Viewport`ов.

Выбираем light1 и отлетаем от инженера. А теперь и про настройки самого света, но сразу скажу, что я не буду разбирать все его аспекты, т.к. даже люди с 1.5к+ часами не знают всего того, что Valve там наделали.

  • intensity - интенсивность света, что грубо говоря - его яркость
  • ambientIntensity - никто не знает, что это такое
  • horizontalFOV- угол обзора освещения по горизонтали
  • verticalFOV - угол обзора освещения по вертикали
  • radius - крутой мужик, помогает рассеивать свет по моделям, что делает их приятнее. Сразу скажу, что радиус немного приглушает свет из-за рассеивания.
  • shadowFilterSize - отвечает за качество падающих теней. Обычно этот параметр убирают в минус, чтобы сделать отчётливую тень. Если прям топорно, то это размытие теней
  • shadowAtten - насыщенность теней. Делает их более чёрными.
  • minDistance - этот ползунок отвечает за перемещение начальной точки освещения, а точнее за то, насколько далеко от модели света будет исходить он с самого начала
  • maxDistance - отвечает за то, насколько далеко будет уходить финальная точка освещения
  • constantAttenuation - делает крайне резкое и яркое освещение, что выжигает глаза. Я не знаю где его можно применить
  • linearAttenuation - по сути своей, это прошлый параметр с очень ярким освещением, но оно происходит плавнее, так что его можно добавить при необходимости немного подтянуть яркость
  • quadraticAttenuation - крутой мужик, что немного гасит или повышает яркость света. Полезен при необходимости уменьшить интенсивность в том случае, когда сдвиг ползунка intensity на один пиксель полностью его выключит, а нужно сделать освещение более тусклым
  • shadowDepthBias - ну, я бы сказал, что это дальность прорисовки теней. Обычно он только мешает

Если же вам нужно более подробное описание настроек освещения, то могу порекомендовать руководство человека под ником shazi. Оно на английском, но можете просто посмотреть картинки, всё же так будет понятнее.
https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=2486515012
----ЗАКРЫТО НА РЕМОНТ----
Чтож, вот тут руководство пока что заканчивается, т.к. я уж очень хочу его выложить. Оно будет дописываться до тех пор, пока я расскажу всё то, что узнал за свои 370 часов. Следующим по списку будет освещение и его функции(там их очень много). Также нужно затронуть тему партиклов, рендера, мастерской стима, портирования моделей с gmod`а, скачивание сторонних файлов и ещё всякого по мелочи.
На данный момент у меня не так много времени, но я надеюсь, что всё, что я уже успел затронуть в деталях поможет вам в упрощении своих работ.
1 Comments
Darkholme 14 Sep @ 9:10am 
ambatukam:steamhappy::steamhappy: