Гайд По Пользованию SFM`ом

Source Filmmaker4 · 125 ratings2.8k views371 favorites34 min readRussianby CAWITARUpdated Jul 12View on Steam ↗

Запуск SFM`а, создание сессии и кратко про первую модель и камеру

Для начала, нам нужно скачать данный продукт, что рекомендуется делать на диск с выделением 50+ гб свободной памяти только для данной шарманки. Перед запуском я бы посоветовал зайти в свойства SFM`а (ПКМ по иконке smf`а в левой строке библиотеки, свойства, параметры запуска) и вставить туда данную команду -sfm_resolution 1080 -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 (в моём случае от пистолета)

Позинг пальцев, волос, хвостов

Короче, это резкий врыв прям во время работы над одним из своих постеров. Т.к. позинг пальцев в кулак - неблагодарное дело, то я пошел в сеть интернет за поиском решения моей проблемы. А нашел я вот что, выделяем кости условного пальца целиком, нажимаем ПКМ по области сферы управления, Rotation Mode, Local(главное не забудьте вернуть обратно на World при обычном позинге).

Теперь перемещаем палец к руке, а он, взамен, магическим образом сворачивается сам🤯.

Такое можно провернуть и сразу со всеми 4-мя основными пальцами, волосами, хвостами разных существ и подобных моделей. Вот, а теперь обратно.

Rig и его применение

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

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

Теперь, перемещая кисть или стопу через "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 - ну, я бы сказал, что это дальность прорисовки теней. Обычно он только мешает
  • shadowSlopeScaleDepthBias - по сути своей - это minDistance для теней. Он почти не заметен и лучше его вообще не трогать
  • farZAtten - настраивает рассеивание света для конца луча. Полезен в тех случаях, когда нужно осветить большой участок карты, но конец луча освещения слишком тусклый
  • nearEdge - данный параметр не даёт ничего, единственное применение ему можно найти с включённым параметром UberLight
  • farEdge - аналогично предыдущему пункту. А вообще nearEdge и farEdge будут дополнительным параметром, что повторяет mixDistance и maxDistance при использовании UberLight соответственно
  • cutOn - является дополнительным ползунком к параметру nearEdge, что регулирует дальность эффекта ещё сильнее
  • cutOff - также является дополнительным ползунком, но уже к параметру farEdge, что регулирует его дальность
  • volumetricIntensity - отвечает за яркость такого значения, как volumetric
  • noiseStrenght - отвечает за насыщенность/густоту значения volumetric, но об этом чуть позже
  • width - ничего не даёт при стандартном свете, но при UberLight позволяет менять ширину луча
  • edgeWidth - определяет затухание света при UberLight по ширине
  • height - меняет длину при UberLight
  • edgeHeight - определяет затухание света при UberLight по длине
  • color_red/green/blue - меняет цвет источника света при перемещении ползунка. Комбинирование двух или трёх ползунков за раз даёт определённый цвет, ну только его нужно подбирать вручную😀.
  • color_alpha - насколько я понял за всё время, этот параметр влияет лишь на степень прозрачности освещения при эффекте "gobo", что по сути своей является освещением с картинкой. Без него он не нужен.
Для дальнейшего показа освещения я перейду на карту pl_upward_ nolight, которую я сделал с помощью инструмента LightDeleter. Вот Ссылка [sfmlab.com] на скачивание, что ведёт на SFMLab, там же находится и инструкция. sfmlab может работать не у всех. Так что открываем его, также, как и ютуб
Если же вам нужно более подробное описание настроек освещения, то могу порекомендовать руководство человека под ником shazi. Оно на английском, но можете просто посмотреть картинки, всё же так будет понятнее.
https://steamcommunity.com/sharedfiles/filedetails/?id=2486515012
Как же включить "uberlight"? ПКМ по источнику света, Show in Element Viewer, Light, uberlight.


Ранее в параметрах освещения я упоминал такое значение, как "Volumetric". Разберём и его. Если прям вкратце, то это освещение с туманом, что даёт интересный эффект. Покажу его на примере своих работ, где он был использован с разными настройками.













Включается данный "туманный свет" нажатием ПКМ по нужному нам источнику света, Enable Volumetric. Готово, теперь можем настроить туман по вышеописанным параметрам освещения.



Два основных доп. параметра разобрали, остался ещё один - "Gobo Light". Что это такое? - Текстура освещения. Ну, это если прям совсем просто. Для его добавления нажимаем ПКМ по источнику освещения, Set Light Gobo Texture.

После нажатия у нас откроется окно выбора текстуры.


Тут путём поиска и страданий ищем любую понравившуюся нам текстуру. Посоветую моды из мастерской, что добавляют понятные и удобные текстуры для личных нужд.
" Gobo Essentials: Redux "- текстуры;
" Customizable gobo strips model " - модель на имитацию решёток, сеток и т.п.

Вот, как выглядит данный эффект с "эффектом" света из окна

Опять освещение (в стиме лимит на 8к символов(

Также стоит упомянуть, что цвет освещения можно посмотреть в Element Viewer, ПКМ по источнику света, Show in Element Viewer, Light(вот бы его ещё можно было прям там настроить...)


Теперь стоит разобрать, как этот свет вообще ставить. Довольно неприятная тема для начинающих, т.к. результат постоянно будет казаться "мёртвым".
Самым базовым будет освещение в 3 источника света: Key Light, Fill Light и Back Light/ ключевой свет, заполняющий свет и задний свет.


  • Key Light - дает "ключевое🥁" освещение на объект. Тени у него всегда включены, по яркости он средний, но при этом у нас остается довольно темная тень, которую нужно как-то осветлить
  • Fill Light - дает это самое освещение тени от key light`a. По яркости тусклее ключевого освещения, тени выключены
  • Back Light - самый модный среди троицы. Делает белую (в основном) окантовку по силуэту персонажа. Тени выключают, а по яркости его ставят на максимум, чтобы прям вот так вот было🤯.(бывает, что задний свет выставляют в количестве 2-х и/или более штук)
Для лучшей демонстрации покажу на примере sfm`a.

Как можно заметить, расположение у меня отличается от вышеприведенной схемы из мировой паутины "Интернет". Дело в том, что основная сторона инженера будет по левую сторону с лица камеры, что делает её более приоритетной.

Прикреплю настройки источников освещения из этого примера.
Key
Fill
Back
Если же вы хотите использовать Back Light, то советую убавлять почти в ноль bloom на камере, т.к. он размывает данный эффект. Лучше будет сделать его размытие в фотошопе при желании.
Также на моей схеме расположения света кто-то мог заметить я надеюсь линии, что отвечают за радиус конкретного источника света(специально фломастерами обвел☝). Чтобы включить эти "линнии" следует нажать ПКМ по нужному нам источнику освещения, а затем включить Enable Light Frustum. После чего переходим из Motion Editor в Сlip Editor и обратно(без этого ничего не покажет)


Получаем вот такой "конус", границы которого можем наглядно двигать. Max и Min Distance отобразил наглядно, чтобы сразу понять их принцип действия.


Предположим, что у вас тоже тёмная карта, а это значит, что её нужно бы осветить. Для этого создаем источник освещения, ставим ему примерно такие параметры, копируем и вставляем через Copy AnimationSet(s)/Paste AnimationSet(s) и размещаем светом вниз.

После этого выделяем и группируем через Group Selected Dags


Думаю, что на этом этапе можно закончить с базовыми знаниями освещения...

Рендер изображения

Чтож, пока у меня есть пару минут свободного времени, расскажу про рендер.
Render — это перевод нашего изображения из 3D в готовую картинку для дальнейшего редактирования. ну, это если своими словами
Чтобы провернуть данное действие следует нажать на: File, Export, Poster...

У нас откроется меню рендера изображения, где мы можем увидеть:
  • Выбор пути для расположения файла (Output File)
  • Формат файла, что мы сразу меняем на PNG (Format)
  • Разрешение файла, что будет по умолчанию стоять на 1920х1080 (Image Size)
  • Выбор рендера (в пикселях) (Image Size)
  • Сохранение пропорций рендера (достаточно будет вписать 1920 и он сразу допишет в соседнее окно 1080) (Constrain Proportions)
  • И, кнопку рендера изображения (Export Poster)

Нажимаем Export Poster и ждем.., ничего при этом не нажимая во время рендера! У нас появится окно, которое будет разбито на прямоугольники, что по мере заполнения будут символизировать готовность изображения. После готовности переходим по пути, куда попала картинка (его можно скопировать из Output File, чтобы долго не искать, а уже после этого закрепить в проводнике для быстрого доступа).
Вот что вышло при рендере в 1920х1080:

Как можно заметить, я забыл выключить у одного из источников света Light Frustum (это те полосы, что отвечали за показ его радиуса). Выключаю их и делаю повторный рендер.

Ну вот так то лучше.
Обычно я делаю изображения в 3840x2160, чтобы итоговое изображение было легче обрабатывать в фотошопе, но поскольку мне нужно только показать итог рендера, то быстрее сделать его в 1920х1080.
Также стоит отметить, что папка render со временем будет открываться дольше, т.к. её вес будет возрастать. (лично у меня она весит уже под 7 Гб, при том что каждое изображение весит под 31 Мб)
При просмотре папки render вы также можете заметить вот такие файлы TGA, что идут вместе с изображением. Честно, я их просто удаляю, т.к. не вижу в них смысла при моих потребностях в обычных работах. В итоговый результат пойдет PNG.

Для удобства можно также группировать изображения по проектам.

Ну, и последнее. Я рендерю изображения на HDD, что довольно долго. Попробуйте провернуть рендер на ваш SSD диск.
Upd: попробовал я рендер на SSD, разницы никакой. Возможно для прироста скорости требуется ещё и sfm на этот SSD переустановить, но этим я уже заниматься не буду.

Партиклы

Предположим, что мы хотим добавить на итоговое изображение какие-либо эффекты для предания какой-либо атмосферы, наверное, у всех разные цели.
Чтобы заспавнить партикл нужно нажать ПКМ по пустой области в Animation Set Editor

У нас открывается начальное меню партиклов, где мы можем выбрать:
  • основной эффект
  • выбор стиля этого эффекта
  • время его начала
  • длительность выбросов
  • время жизни партикла

Чтобы выбрать сам партикл нажимаем на кнопку Browse...
Теперь открывается папка с файлами эффектов, где по умолчанию будет выбрана папка workshop (то есть папка, где будут скачены ваши партиклы из мастерской стима)

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

Теперь этому партиклу можно выбрать стиль, его время появления (можно поставить 0 или -1 секунду, чтобы он появился сразу. Для постеров самый раз будет.), и длительность (обычно я ставлю 20, т.к. работает это у меня через раз).
Теперь у нас появился партикл, но его не видно на самом экране. Для этого нужно зажать верхнюю стрелку на Timeline и перетащить её на любую минусовую секунду, так, чтобы экран стал чёрным. После этого возвращаем стрелку обратно но нулевую секунду и лицезрим наш эффект.


Я зачем-то выбрал партикл горения сигареты с дымом, который почти не заметно... Ладно, предположим, что я сейчас заменю его на другой, но как же посмотреть сам готовый эффект? Чтобы не гадать, как я, следует открыть меню редактирования партиклов.
Для этого нажимаем на Windows, Particle Editor Tool.

Попадаем в вот такое меню, где нажимаем File, Open...

Теперь у нас открывается проводник, где будет пусто, т.к. по умолчанию будет выбрана папка usermod. Возвращаемся до папки game через кнопку со стрелкой Up, а затем находим папку workshop, particles.



Уже в папке particles перед нами появятся нужные нам файлы. Выбираем любой нужный в моём случае файл и у нас вновь открывается окно, но на этот раз уже с самим партиклом и его стилями.

Тут помимо просмотра мы также можем редактировать и сохранять новые версии партиклов(для примера я изменю цвет, чтобы знать, как эффект будет выглядеть).
Захожу в Color Random, затем выбираю color 1 и color 2, нажимаю на прямоугольники с их цветами и меняю.

На изначальном партикле больше бежевого цвета, поэтому у него менялось лишь свечение по центру. Возьму молнию из этого же набора партиклов и изменю цвета уже ей.

Теперь можно заметить, что цвета молнии поменялись.
У меня также в верхнем правом углу есть экран с самой карты в реальном времени. Это нужно для просмотра партиклов от лица камеры(также партиклы обладают большим видом настроек, бывает, что нужно просмотреть их заранее).
Теперь записываем название изначального партикла и его стиля, закрываем его в режиме просмотра(не сохраняем изменения) и возвращаемся на изначальный экран sfm`a):
File, Close. После этого нажимаем на Tool и наконец на Switch to SFM.



Предположим, что я всё-таки взял партикл молнии и хочу его увеличить.
правда вряд-ли он вообще подойдет к этой работе
Для изменения размера партикла (и прочего взаимодействия) нажимаем ПКМ, Instance Particle System.

После этого повторно нажимаем ПКМ по партиклу и видим уже другую надпись, Edit Particle System Definition. Наведя курсор на неё обычно вылезет один параметр настройки, но у этой молнии их 3, эффект электричества, электрический луч и свечение. Выберу луч, т.к. он наиболее заметен. Нажимаю на него. далее по тексту будет жирный шрифт на мини заголовках, чтобы легче было искать конкретный параметр. Надо было делать это с самого начала...

Размер партикла
После этого попадаем в уже знакомое меню. Находим Radius Random, пролистываем его значения вниз до radius_max и radius_min. Выставляем максимально и минимально желаемые размеры партикла, то есть меняем ему таким образом размер.

Цвет партикла
Рядом с Radius Random можем заметить и Color Random. При желании изменим цвет ещё раз.

Прозрачность партикла
Если же нам нужно изменить прозрачность партикла, то заходим в Alpha Random, находим alpha_max и alpha_min. Выставляем свои значения и пытаемся увидеть разницу (максимальное значение тут будет 255, а минимально 100. Цифры "больше" или "меньше" он сбрасывает).

Гравитация партикла
А если партиклу нужно изменить гравитацию, то заходим в Movment Basic, ищем gravity. Тут гравитация будет работать по осям XYZ, то есть первые 2 параметра будут отвечать за перемещение вправо, влево, вперед и назад, а последний за вверх и вниз.

Количество партикла
Если же партикл появляется в слишком малом количестве, то заходим в emit_continuosly, находим emission_rate, ставим побольше и любуемся.

Вот базовые настройки партиклов для самых базовых целей почти подошли к концу, осталось чуть-чуть.
Скорость партикла
Та молния, что я создал слишком быстрая, поймать кадр для изображения трудно, а gif выйдет слишком "неуместной". Поэтому нажимаем ПКМ по партиклу, Edit Particle System Start/Stop/End Times.

У нас открывается меню с настройкой, где можно снова изменить время начала, длительность партикла и "длительность выброса". Но нам в данный момент нужен только параметр Time Scale, ставим его на 0.1-0.3 и получаем более плавный и приятный для глаза эффект. Также его можно и ускорить, но почти все/ВСЕ партиклы и так быстрые.

Ещё немного информации
При нажатии ПКМ по партиклу также можно заметить кнопку Freeze Particle System, что исходя из названия должна замораживать партикл на определенной секунде, но у неё есть только одна точка заморозки. То есть при повторном нажатии на новой секунде старая остановка пропадёт.

Обработка в Photoshop`е

Знаете, вот я вообще не знаю, что тут можно описать. Просто все зависит от способа рендера. Постараюсь разобрать хотя бы два варианта: простой и чуть посложнее.
Простой вариант
Тут речь будет идти про обработку изображения только с одним рендером. Возьму одну из старых работ для примера.

Вот картинка с пулеметчиком, при обычном рендере результат получается бледным и ненасыщенным. Конечно, можно просто покрутить ползунки яркости/насыщенности и всё, но таки дела не делаются. Обратим внимание на основные проблемные места на модели, а именно: резкие углы и мыльные текстуры.
Пойдем по порядку.
Пластика/сглаживание углов
В верхнем меню заходим в в параметр "Фильтр", Пластика.

Попадаем в меню пластики, выбираем инструмент "Деформация (Клавиша W)". Приближаем изображения при помощи инструмента "Масштаб (Клавиша Z или зажатый Ctrl+ЛКМ/ Ctrl+Alt+ЛКМ отдаляет изображение)".

Меняем размер кисти на ALT+ПКМ+движение мыши. Понемногу пробуем двигать углы "внутрь", отменяем действия на CTRL+Z/ CTRL+ALT+Z.

Добиваемся приличного результата, некоторые кривые края можно будет дополнительно поправить кистью или штампом.
Вот результат:

Мыло на одежде
Просто от этого можно избавиться путем применения "Штампа" и "Пальца". Выбираем инструмент "Штамп (Клавиша S)", зажимаем ALT рядом с поверхность, которую мы собираемся копировать, а после аккуратно ведем мышь в направлении мыльного участка.

При необходимости уменьшаем интенсивность штампа и его жесткость. Задача тут стоит только в том, чтобы слегка сгладить "треугольники", что выступают с одного цвета на другой. После этого выбираем инструмент "Палец", ставим ему интенсивность где-то на 10 или ниже и начинаем сглаживать стыки.

Получаем более мягкие текстуры и гладкие края

НЕТ, СЕРЬЁЗНО, Я ПИШУ ГАЙД ПО ИСПОЛЬЗОВАНИЮ ФОТОШОПА. КАКОЙ ЖЕ ЭТО БРЕД.
Давайте так, правим всякие косяки при помощи штампа, кисти, резкости, пальца, осветлителей и затемнителей и переходим к цветокоррекции. Чисто из любопытства можно попробовать вариант с функциями "Автотон", "Автоконтраст" и "Автоматическая цветовая коррекция". Может это отчасти направит вас на желаемое освещение для работы (не факт).

Если есть желание потыкать настройки самому, то переходим в "Коррекция" и уже там выбираем основные параметры - "Яркость/Контрастность", "Кривые", "Цветовой баланс" и т.д.

Немного потыкав вышел вот такой результат

Также можно залить новый пустой слой любым цветом и выбрать ему параметр "Шум". Такое действие придаст некую "потертость" в сочетании с "Непрозрачностью" или "Параметрами наложения".

Пробуйте то, что понравиться конкретно вам.

Более сложный вариант
Данный способ подразумевает более жесткие тени, хотя можете попробовать и с мягкими. Для него нам потребуется сделать сразу несколько рендеров, в основном для персонажа, что будет основным в работе. Выставляем свет, белый фон (3-й скин) и рендерим персонажа на нём. После этого выключаем весь свет таким образом, чтобы на белом фоне остался только чёрный силуэт. Затем прописываем в консоли команду mat_fullbright 2(после рендера меняем цифру "2" на "0"),

а после копируем Key Light и выставляем ему самую максимальную яркость; либо ставим её на оригинальном источнике освещения, а после рендера отменяем на Ctrl+Z(нужно сделать рендер только Key Light с сильным пересветом).
Вот примеры на моих рендерах:
Основной рендер на белом фоне
65
Маска для удаления белого фона
40
Тени для обработки
19
При желании можно ещё сдлать белую обводку для отделения персонажа от фона. Для этого нажимаем ПКМ по основному экрану, Render Settings. В открывшемся окне меняем Ambient Occlusion Mode на Outline Only(ставим галочку под этим параметром если её нет)


Теперь закидываем всё в Photoshop. Распределяем слои в таком порядке: задний фон, персонаж, маска(её потом удалим), тени, обводка(при наличии).

Теперь создаем маску на основном слое персонажа (нажимаем на японский влаг). не обращаем на мои доп. слои

Выбираем слой маски(тот что черный силуэт), нажимаем Ctrl+A, а после Ctrl+C. Нажимаем с зажатым Alt`ом по белому прямоугольнику(маске у основного слоя) и вставляем скопированную маску на Ctrl+V. После этого инвертируем эту маску на Ctrl+I. Дальше просто нажимаем ЛКМ по любому слою и выходим из маски.
Слой с персонажем теперь имеет прозрачный фон. На слой Back ставим режим "Разделить", на Shadows - Умножение. Меняем им Непрозрачность по необходимости и обрабатываем всё так, чтобы было красиво.

В итоге всех этих слоёв выходит вот это:

Редактирование текстур модели [доп. материалы]

Представим такую ситуацию, нужно добавить условный партикл крови на модель, но он выглядит плоско. Остается только редактировать тексту.
Для этого скачиваем программу VTF: Вот ссылка конкретно на сайт Valve . А уже там, в правом углу находим ссылку на сайт с программой. Вот она кстати [nemstools.github.io].

Скачиваем её одним из способов.

Если же вы не хотите скачивать какую-то программу через Web Archive, то есть обновленная версия VTF - VTFEdit Reloaded. Она доступна на github`е Вот она [github.com]


Программу скачали, что дальше? А дальше нам нужно найти нужную текстуру для замены. Предположим, я взял молот из пака моделей от ChoEv. Создаем на сцене модель и нажимаем ПКМ, Show Game Model In Explorer.

Попадаем в папку с самой моделью, но не её текстурой.

На данный момент нам нужно найти папку с текстурой, которую мы экспортируем для дальнейшего редактирования. И тут есть пару исходов, а именно:
  • Автор модели нормально разложил саму модель и текстуру в идентичные по названию папки, чтобы легче было ориентироваться
  • Автор модели назвал папки с моделями и текстурами по разному, а это значит, что придется искать конкретную папку в поиске🤗
Для удобства поиска откроем ещё одну папку в sfm(то есть снова нажимаем ПКМ, Show Game Model In Explorer).
Стоит немного пояснить за расположение файлов, чтобы понять цель нашего поиска. Есть две основные папки - models и materials. В папке models находятся ТОЛКО модели, оболочка персонажа, его меш. А в папке materials находятся и сами материалы И ДОПОЛНИТЕЛЬНАЯ ПАПКА MODELS.
А теперь берем эти знания и вспоминаем, откуда же мы качали модель. Если с мастерской steam, то заходим в папку workshop, а если добавляли модель сами - в usermod (при учете, что модель может еще быть взята из папки tf и других уже сразу установленных). Весь основной путь должен идти от папки game. Если модель из мастерской стима, то идем по пути: Ваш диск:\SteamLibrary\steamapps\common\SourceFilmmaker\game\workshop\materials. И вот тут внимательно смотрим, есть ли папка с названием ChoEv(в моём случае) в materials или нужно заходить дальше в models.

Папка оказалась просто в materials. Если же её там не было, то находим models и уже там продолжаем поиски.

Теперь переходим туда до тех пор, пока не найдём файлы формата VTF.

Нажимаем по ним ПКМ и открываем через VTFEdit.
Но тут я ещё обращу внимание на одну вещь, молот имеет 6 скинов (текстур) под разные команды и раскраски наемников. В моём случае я буду менять текстуру для синего молота(под словом "менять" я имею ввиду создать новую, старая никуда не пропадет, мы просто пропишем новый путь). А также я рекомендую запомнить параметры Flags в этой левой таблице.

Нажимаем File, Export и экспортируем файл в нужное нам место. Также можно выбрать и его формат: TGA, PNG, JPEG (лучше выбрать png, чтобы сразу видеть изображение).

Теперь имея нужную нам текстуру можно приступить к её редактированию. Заходим в Photoshop и закидываем файл.

Предположим, что я также добавлю эффекты крови и каких-нибудь потертостей. Для этого в сети интернет ищем png картинки (на будущее можно создать отдельную папку для текстур). Также подмечу, что модель, текстуру которой я буду менять использует стилистику TF2, а значит мне в приоритете будет использовать те текстуры крови, что не содержат блики, отражения и прочее (просто примечание).

Копирую текстуру и вставляю её в Photoshop.

Можно заметить, что белый фон никуда не ушел (т.к. кто-то подсунул jpeg под видом png). Тогда в меню со слоями нажимаем ПКМ прям по квадрату с текстурой крови и выбираем Параметры наложения.

Открывается окно "Стиль слоя". Тут мы сразу попадем в параметры наложения; в данный момент нам необходимо два значения: Данный слой и Подлежащий слой. Поскольку фон у крови будет белым, то в первую очередь ЗАЖИМАЕМ ALT И ДВИГАЕМ ПОЛОВИНКУ от белого ползунка из Данного слоя.

Произошло чудо, белый фон почти пропал, осталось лишь немного подвигать белый(и остальные) ползунок/и, чтобы текстура стала четкой, но не слишком угловатой.

Теперь кровь выглядит "естественно". По аналогии добавляю и текстуру царапин на металле.

Теперь сохраняем текстуру в PNG или TGA, а после открываем VTFEdit. Нажимаем File, Import, выбираем наш файл.

Также вылезет вот такое окно, оставляем такие же настройки, что были по умолчанию.

После этого нам нужно создать нашу собственную папку с материалами в папке sfm`а (избегаем названий на русском). Путь должен быть вот такой: ВАШ ДИСК:\SteamLibrary\steamapps\common\SourceFilmmaker\game\usermod\materials\НАЗВАНИЕ ПАПКИ

Возвращаемся в VTFEdit. Теперь в разделе Flags выбираем те же параметры, что были в первоначальной версии текстуры. Нажимаем File, Save As и выбираем путь до нашей ново-созданной папки для материалов (при наименовании файла пробелы лучше заменить нижним прочерком "_").

Теперь можно заходить в sfm. Нажимаем ПКМ по модели, Add Override Materials, а после снова нажимаем ПКМ, затем Show in Element Viewer, Model.

Попадаем в Element Viewer, тут ищем параметр materials, открываем его, затем нужный скин, который будем заменять, thunder_hammer_blu, Add Attribute, string.

Открывается окно, где нужно вписать $basetexture

Раскрываем на "+" нужный нам материал, а в появившемся окне $basetexture прописываем путь от нашей папки, до новой текстуры.

Теперь смотрим результат:

Надеюсь, что смог хоть как-то это объяснить. Вообще это делается за 5 минут.

Ошибка прозрачности модели [доп. материалы]

Предположим, что нужная нам модель или её кусок стал прозрачным, хотя изначально таким не являлся.

Для решения нажимаем ПКМ по модели, Add Override Materials,

после этого ещё раз нажимаем ПКМ по модели, Show in Element Viewer, Model.

Нас перекинет в окно Element Viewer, находим там группу materials, открываем её.

Тут будут все текстуры, с которыми мы можем взаимодействовать(в моём случае - борода на солдата). Нажимаю ПКМ на текстуру, что тут называется beard, Add Attribute, выбираю bool,

а уже после этого в открывшемся окне вписываю команду $AmbientOcclusion.

Готово.

По сути своей, данное действие просто отключает AmbientOcclusion у какой-либо части модели, но так эту проблему намного легче решить, чем лезть в Crowbar и делать перекомпилирование файлов(так ещё и не всегда работает).

----ЗАКРЫТО НА РЕМОНТ----

Чтож, вот тут руководство пока что заканчивается, т.к. я уж очень хочу его выложить. Оно будет дописываться до тех пор, пока я расскажу всё то, что узнал за свои 370 часов. Следующим по списку будет освещение и его функции(там их очень много). Также нужно затронуть тему партиклов, рендера, мастерской стима, портирования моделей с gmod`а, скачивание сторонних файлов и ещё всякого по мелочи. + исправить старые изображения, т.к. некоторые некорректно отображаются с телефона
На данный момент у меня не так много времени, но я надеюсь, что всё, что я уже успел затронуть в деталях поможет вам в упрощении своих работ.

This guide was created by its original author on the Steam Community. Are you the author and want it removed? Request removal.