Поиск по этому блогу

пятница, 5 октября 2012 г.

Создание реалистичной травы в Блендере

реалистичная трава в блендере
В этом уроке будет использоваться рендер Cycles, но вы можете взять и использовать технику в Blender Internal, но тогда Вы не сможете точно следовать по шагам при создании материалов. Лично я Cycles нашел простым и более быстрым для достижения реалистичного результата.

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

Часть 1: Введение в траву 

Хотя эта часть может и не быть необходимой, я бы ее Вам посоветовал, если хотите, чтобы ваша трава трава выглядела естественно (реалистично).Лучший способ узнать что-то - это наблюдение, этим мы и собираемся заняться! Если есть возможность, сделайте небольшой перерыв прямо сейчас, и выйдите на улицу. Потратьте несколько минут и понаблюдайте за травой. Выберите несколько различных типов травинок и внимательно посмотрите на них. Это может показаться глупым, но вы должны знать, как выглядит настоящая трава для того, чтобы попытаться представить и визуализировать ее в 3D. 

Часть 2: Настройка сцены 

Так, теперь вы знаете, как трава выглядит в реальной жизни, давайте попробуем сделать ее в Блендер. Теперь, если Вы посмотрите ниже на одну из фотографий травы в Блендер, всплывет примерно такая сцена: 


(Рис. 2-1. Один из моих печальных, более ранние попыток создания трава) 

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


(Рис. 2-2) 

Если вы не являетесь подписчиком и не может загрузить сцену из исходных файлов, не волнуйтесь! Я покажу вам здесь некоторые базовые вещи, но творчество остается за вами.
Вы видите, что моя сцена освещена только одним солнечным светом (Sun Lamp) (рис. 2-3), которая находится под углом. Для настройки Окружения, я никогда бы не расположил солнце непосредственно на передней, задней или с обеих сторон, если это конечно не необходимо. Это было бы неестественно, поэтому, расположим его на какой-нибудь угол. Я также окрасил его слегка желтым цветом, потому, что солнце примерно такого цвета цвета. Довольно просто!



 (Рис. 2-3) 



(Рис. 2-4) 

Для текстуры фона я использовал изображение которое можно получить по этой ссылке heiwa4126, которое правда, используется по ограниченной лицензии Creative Commons. Я использую его в качестве текстуры окружения, потому, что это дает некоторые интересные цветные отражения. 



 (Рис. 2-5) 

Еще одна последняя вещь, которую я хочу добавить, если Вы не используете мой готовый файл, чтобы сделать поле более естественным, это добавление нескольких холмов или впадин, потому что, природа никогда не бывает 100% плоской. Для поверхности земли, вы можете делать все, что считаете нужным. 

Часть 3: Создание Объекта 

Хорошо, теперь давайте на самом деле сделаем несколько травинок! Во-первых, перейдите на слой, в который вы знаете, что не будете нуждаться. Я обычно просто использовать последний. Затем добавьте плоскость (Plane) и поверните (Rotate) ее на 90 градусов по оси X в режиме объекта (Object Mode).  
Мы делаем это в Режиме Объекта для изменения локальных координат так, чтобы когда мы создадим систему частиц (Particle System), трава была направлена ??вверх.
Затем перейдите в режим редактирования (Edit Mode) выделите верхний край, выдавливайте (Extrude) и уменьшайте его. Сделайте это примерно 3 раза и использовав Alt + M соедините верхний край в одну точку. Убедитесь, что начало координат находится у основания травинки. Масштабируйте основание вдоль оси X, чтобы сделать его тоньше. Затем переместите грани по осям X и Y, пока вы не получите примерно такой же результат, как на рисунке 3-1: 



(Рис. 3-1, Вид спереди и сбоку)

Прежде, чем мы продублируем больше травы, мы должны сделать пару вещей, чтобы потом проще было в долгосрочной перспективе. Во-первых, установить для травы сглаживающие тени. Переименуйте их в "травинка" (grass blade), и если вы хотите сохраните Ваши объекты. Присвойте траве материал, а также создать группу для него (как показано на рисунке 3-2). Мы займемся материалами позже, но это в последствии сэкономит время и избавит Вас от необходимости добавлять материал на все травинки по одному. Если вы хотите, вы можете добавить Subsurf модификатор, для улучшений, но это не является необходимым, если вы не делаете крупный план.




 (Рис. 3-2)

Теперь мы готовы дать траве некоторое разнообразие. Дублируйте травинки и измените некоторые края, но придерживаясь примерно нашей формы. Создайте 3 разных копии оригинальных травинок, чтобы у Вас получилось что-то похожее на это:



 (Рис. 3-3)

Так как мы уже добавили оригинальный материал и группу, нам не нужно возвращаться в материалы и добавлять каждому из них в отдельности.
Прежде чем мы перейдем к использованию частиц, давайте создадим еще два вида травы. Чтобы сделать это, продублируйте одну группу травинок, переименуйте ее и добавьте в новую группу. Сделайте один тип травы немного более тонким и изогнутым (назовем ее "длинная трава"), а другой худым и высоким (этот тип будет "высокая трава"). Мы должны закончить с тремя различными типами травы, в четырех различных вариациях. Каждый тип должен иметь свою собственную группу и название. Они должны выглядеть примерно так:




 (Рис. 3-4, вид сбоку и спереди)

Часть 4: Использование частиц

С моделирование сетки травы мы закончили и можем переходить к частицам. Вернитесь к первому слою, и создайте на нашей земле (поверхности) новую систему частиц 'hair' типа. Переименуйте название настроек, как и в общих на 'glass', и удостоверьтесь, что стоит флажок на 'advanced'. 

В визуализации параметров системы частиц, выберите группу 'glass', и продублируем ее (Dupli Group). Настройки должны выглядеть как на рисунке 4-1: 




 (Рис. 4-1) 

Следующие настройки с системами частиц (particle systems) у Вас может немного отличаться от того, что делаю я в зависимости от вашего вида сцены. Ниже перечислены параметры, которые я использовал для этого конкретного изображения, но они будут меняться в зависимости от того, какую траву Вы пытаетесь создать. Для большего опыта и понимания, поиграйте с каждой настройкой и решите как лучше будет выглядеть трава в вашей сцене.

Теперь давайте сделаем траву правильного размера. В настройках 'Physics', измените размер до 0,01, а случайный размер (random size) до 0,3.




 (Рис. 4-2)

Трава выглядит сейчас неплохо, но она еще безусловно, нуждается в некоторых изменениях - эта слишком однородна. В настройках скорости (Velocity), поставить random 0,25. Это позволит добиться, чтобы трава не стояла совершенно одинаково вверх. Не устанавливайте слишком высокое значение, хотя она и будет менять размер. 

Установите флажок 'Rotation' и установите 'Phase' и 'Random' значениями до 1. Случайная величина не работает, если фаза (Phase) установлена ??в 0.



 (Рис. 4-3)

В этот момент Вы, возможно, заметили, что у нас возникла проблема: трава растет по пути и в местах, где мы не хотим этого. Чтобы это исправить, нужно добавить группу вершин (vertex group) на землю. Во вкладке 'Object Data', добавить новую группу вершин и назовите ее ... да, вы угадали: 'Glass'. Теперь переключитесь из объектного режима (Object Mode) в режим рисования (Paint Mode).
Помните, что при рисовании, чем плотнее сетка, тем большей точности вы можете достичь. Если вам нужно, разделите землю несколько раз в режиме редактирования.



 (Рис. 4-4)

Теперь мы можем использовать кисть ('Add') (c силой strength=1), и нарисовать зону красным, там где мы не хотим, чтобы была трава. Она может быть неточной, но старайтесь быть осторожными, чтобы не получить проплешины или если Вы не хотите траву в камнях.



 (Рис. 4-5) 

Хорошо, теперь вернемся к объектному режиму. В настройках частиц, внутри панели 'Vertex Groups', выберите 'glass' для плотности. Флажок 'negato', чтобы трава была рядом с путем, а не внутри.




(Рис. 4-6) 

Теперь, трава выглядит здорово, но слишком редко. Чтобы заполнить пространство, естественно, мы должны увеличить частицы ('Emission') до 7000, а также добавить некоторых детей (Children). Помните, что если вы только увеличите частицы вы получите очень густую траву (слипания). Если у вас будет маленькое количество частиц, но много детей, вы получите несколько очень толстых кустов. В большинстве случаев вам понадобится хороший баланс.

В панели 'Children', выберите 'Interpolated'. Это даст более равномерного распределения, чем 'Simple'. 
Выберите для отображения столько, сколько вы считаете, что ваш компьютер сможет обработать. Мой может обрабатывать около 5, но я могу просмотреть и 20 в циклах. Измените 'Render' до 25.

Шероховатости ('Roughness') помогут дать траве больше вариаций. Равномерность ('uniform'), добавит шум в текстуру испускания и  направления детей. Перейдите в вид сверху и установить это значение очень большим, если вы хотите понять, что я имею в виду. Случайную ('Random') шероховатость используют больше в волосах, но она может быть полезна и здесь, чтобы дать траве немного больше изменений. 

Установите Children и Emission параметры примерно как у меня ниже на рисунке 4-7 (за исключением дисплея, если у вас старый компьютер): 




 (Рис. 4-7) 

Если вы запустите рендер сейчас, то должны получить что-то похожее на мое изображение выше. Помните, трава у нас густая, чтобы не видеть земли, и не используйте слишком высокие значения в шероховатости (roughness) или случайности (random). Теперь, когда вы знаете, как использовать группы вершин и добавлять систему частиц травы, попробуйте добавить длинный и высокий тип групп травы на сцену. Создайте новую систему частиц и группу вершин для каждого вида травы. Преимуществом использования нескольких систем частиц является то, что она дает вам максимальный контроль над тем как трава будет выложена, а также чрезвычайную гибкость по поводу размера, поворота, случайности, и всех других параметров частиц, которые мы рассмотрели до этого. Вы также можете работать с одним слоем, как с помощью слоев в Photoshop, который экономит много времени. 

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




 (Рис. 4-8) 




(Рис. 4-9)

Параметры высокой травы:




 (Рис. 4-10)




(Рис. 4-11) 

После того как все три системы частиц на месте, ваш рендер должен выглядеть примерно так: 



 (Рис. 4-12) 

Часть 5: Добавление материалов

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

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



 (Рис. 5-1)

Чтобы повторить это, пойдем в редакторе нодов с травой и смешаем диффузный (diffuse) (для зеленого цвета), глянцевый (glossy) (для белых бликов) и полупрозрачный (translucent) (для света, проходящего через) узлы.

Самая трудная часть настройка диффузного цвета, чтобы соответствовать сцене, остальное довольно просто. На рисунке 5-2, вы можете увидеть мои настройки узла. Обратите особое внимание на сочетание факторов и шероховатости. Полупрозрачному узлу я дал желтоватый цвет, но будьте осторожны, чтобы не сделать его желтым. (Как правило, не позволяйте маленькой белой точке касаться сторон).



 (Рис. 5-2)

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

Так выглядит намного лучше, но это еще не реалистично. Трава обычно имеет пятна разных цветов. Для этого эффекта, все, что вам надо сделать, это добавить узел сочетания цветов, скопируйте диффузный цвет с палитры цветов, и установите другой цвет на светло серый/зеленый. Затем, используйте шум текстуры ('noise texture') с повышенным контрастом для смешивания двух цветов. Наконец, я использовал координаты текстуры (coordinate texture) c generated, чтобы убедиться, что текстура будет применяться к траве в целом, а не на отдельные куски. Мои настройки узлов показаны на рисунке 5-3:




 (Рис. 5-3) 

Круто! Теперь, когда трава выглядит намного лучше, последнее, что нам нужно сделать, это материал для длинной и высокой травы. Как вы можете видеть на рисунке 5-4, я сделал в принципе то же самое, что и выше, за исключением того, что опустил количество глянцевого нода, потому, что он был слишком мощным на длинной траве. Я также не возился с текстурами, потому что они не заполняли больших участков пространства и поэтому они не требуют так много вариаций. Я использую тот же материал, как для длинной, так и для высокой травы, но вы можете сделать их отдельными - все зависит от сцены.




 (Рис. 5-4)

Если вы делали все так, ваша трава должна выглядеть следующим образом: 




 (Рис. 5-5)

После небольшой простой композиции (тема для другого урока) видим конечный результат: 


  
(Рис. 5-6)

Я надеюсь, что Вы, узнали много из этого урока! Если вы действительно хотите, чтобы получалась хорошая трава, просто тренируйтесь и экспериментируйте  с результатами.
Спасибо за чтение!

Оригинал урока Creating Realistic Grass in Blender

8 комментариев:

  1. Спасибо, заметил, подправил

    ОтветитьУдалить
  2. Супер, спасибо!

    ОтветитьУдалить
  3. Сложно изучать при отсутствии изображений.А мне просто необходим этот урок по траве в Cycles.Прошу вас добавьте изображения.Если не сложно то можете пожалуйста оповестить меня *arezis2014@yandex.ru*

    ОтветитьУдалить
  4. Спасибо, очень познавательно!

    ОтветитьУдалить
  5. С части третьей слово Grass написано с ошибкой.

    ОтветитьУдалить