Blog (18)
Komentarze (138)
Recenzje (0)

Grafika 3D: Blender, cz. XV – choinka

@skala67Grafika 3D: Blender, cz. XV – choinka23.12.2016 17:33

Przy okazji zimy i Świąt Bożego Narodzenia warto ubrać choinkę, a nóż, widelec coś pod nią znajdziemy - nową kartę graficzną do renderowania w Cycles lub przydatną do gier, a może garść kości pamięci, a może SSD - pomarzyć można. Choinka jest tak naprawdę pretekstem do poznania generatora drzew w Blenderze.

Sadzimy drzewko

Drzewo możemy co prawda sami stworzyć, ale jeżeli są to standardowe drzewa, to wygodniej i szybciej wykorzystać dodatek (addons) Sapling Tree Generator zawarty w Blenderze. Dodatek ten jest standardowo wyłączony, zatem należy go włączyć. Przejdziemy do ustawień użytkownika File -> User Preferences ([Ctrl]+[Alt]+[U]), zakładka Add-ons. W wyszukiwarce dodatków wpisujemy "tree" i włączamy dodatek Sapling Tree Generator.

User Preferences -> Add-ons
User Preferences -> Add-ons

Za jego pomocą możemy generować różne gatunki drzew - od palm poprzez buki, dęby, brzozy, aż do iglaków. Dodając ozdoby uzyskamy choinkę. Dodatek ten oparty jest o krzywe (Curves), zatem wstawienie drzewka odbywa się poprzez wstawianie krzywych. [Shift]+[A] ->Curve ->Sapling Tree Gen.

Wstawianie drzewa przy użyciu Sapling Tree Generator
Wstawianie drzewa przy użyciu Sapling Tree Generator

Po wstawieniu drzewa po lewej stronie w Tweek Panelu pojawia się szereg pól i suwaków do modyfikacji naszego drzewa. Cała praca sprowadza się do odpowiedniego ustawienia owych kontrolek.

Ustawy dodatku Sapling Tree Gen w Tweek Panelu
Ustawy dodatku Sapling Tree Gen w Tweek Panelu

UWAGA: tak jak wszystkie ustawy w Tweek Panelu, które pojawiają się zaraz po wstawieniu dowolnego prymitywa, znikają bezpowrotnie po dokonaniu innej dowolnej transformacji (np. Grab, Skale lub Rotate) na naszym obiekcie. Zatem uważajmy, aby niechcący nie dokonać niepotrzebnej transformacji i utracić możliwość dalszej edycji drzewa za pomocą dodatku.

Edycja drzewa

Dodatek podzielony jest na kilka działów:

  • Geometry - ogólny kształt drzewa;
  • Branch Radius - grubość poszczególnych elementów drzewa: pnia, konarów, gałęzi, gałązek;
  • Branch Splitting - podział i gęstość elementów drzewa;
  • Branch Growth - wzrost/kształt elementów drzewa;
  • Pruning - przycięcie, przystrzyżenie drzewa;
  • Leaves - liście;
  • Armature - armatura - system kości - wykorzystywana w animacji;
  • Animation - animacja.
Główne częśći Sapling Tree Gen
Główne częśći Sapling Tree Gen

Geometria - ogólny kształt drzewa

Przede wszystkim możemy włączyć widoczność grubości elementów drzewa - Bevel i analogicznie jak z krzywymi ustawić gładkość w poprzek (Bevel resolution) oraz wzdłuż krzywej. (Curve resolution).

Gładkość pnia, konarów, gałęzi...
Gładkość pnia, konarów, gałęzi...

Parametr decydujący o wyglądzie drzewa to Shape (kształt). Określa on czy korona drzewa się zwęża, rozszerza, ma kształt kuli itd. Do dyspozycji kilka predefiniowanych kształtów:

  • Conical - stożkowy;
  • Inverse conical - odwrócony stożkowy;
  • Sperical - kulisty;
  • Hemisferical - półkulisty;
  • Cylindrical - cylindryczny;
  • Taper Cylindrical - zwężający cylindryczny;
  • vInverse Taper Cylindrical - odwrócony zwężający cylindryczny;
  • Flame - w kształcie płomienia;
  • Tend Flame - o charakterze płomienia;
  • lub Custom Shape - własny, który możemy dostroić za pomocą kolejnych suwaków Custom Shape.

Dla naszej choinki wybierzemy Conical w opcji Shape.

Różne kształty korony drzewa
Różne kształty korony drzewa

W Secondary Branches Shape - analogicznie jw. możemy ustawić kształt dla konarów wraz z gałęziami i gałązkami.

Różne kształty rozłożystości gałęzi
Różne kształty rozłożystości gałęzi

Branch Distribution - określamy też rozłożenie - wzdłuż pnia (wyżej/niżej) - zagęszczenia konarów oraz liczbę wiązek konarów - grup gałęzi wyrastających obok siebie z pnia - Branch Rings. Samą liczbę gałęzi ustala się w Branch Splitting - o tym nieco niżej. Dla choinki proponuję 1.5 dla rozłożenia i 10 dla wiązek.

Rozłożenie gałęzi
Rozłożenie gałęzi

Random seed - losowy rozsiew przyda się gdybyśmy tworzyli las i nie chcieli, aby wszystkie drzewa były identyczne, ale wymagalibyśmy, aby były tego samego typu. Aby umożliwić zmianę rozmiaru drzewa bez używania modyfikatora (i wychodzenia z Tweek Panela) mamy do dyspozycji suwaki Scale

Zmiana rozmiarów drzewa
Zmiana rozmiarów drzewa

Gdy napracujemy się w ustawianiu naszego drzewka, to warto je zapisać Export Preset, aby można później wykorzystać. Blender ma też kilka gotowych drzewek już zapisanych.

Zapis ustawień i ich wybór
Zapis ustawień i ich wybór

Branch Radius - grubość i kształt pnia oraz gałęzi

Ogólną grubość pnia i gałęzi ustawiamy za pomocą parametru Radius (promień), natomiast stożkowatość możemy zdefiniować określając na kilka sposobów:

  • Branches Radius Ratio - współczynnik promienia gałęzi;
  • Minimum Radius - minimalny promień;
  • Close Tip - ostre zakończenie gałęzi;
  • Root Flare - rozszerzanie pnia przy korzeniu;
  • Taper - stożkowanie.

Choinki mają pień lekko stożkowaty, natomiast gałęzie prawie równoległe - i tak postaramy się to zrobić, ustawiając minimalny promień na 0.1 :

Ustalanie grubości i stożkowatości
Ustalanie grubości i stożkowatości

Gdybyśmy chcieli być bardziej dokładni, to możemy ustawiać parametry dla poszczególnych elementów drzewa, którym przypisano poziomy: 1. Poziom (Level) - Pień (base) lub gałęzie utworzone z podziału pnia; 2. Poziom - konary - gałęzie wyrastające bezpośrednio z pnia; 3. Poziom - gałęzie wyrastające z konarów; 4. Poziom - gałązki wyrastające z gałęzi poziomu trzeciego. Czwarty poziom jest poziomem maksymalnym i raczej wystarczającym.

Grubość i stożkowanie dla pnia, konarów, gałęzi i gałązek
Grubość i stożkowanie dla pnia, konarów, gałęzi i gałązek

Branch Splitting - gęstość i podział gałęzi

Ustalenie liczności i rozłożenia gałęzi umożliwia dokładniejszą kontrolę nad typem drzewa.

  • Levels - poziomy definiują szczegółowość drzewa od tylko pnia (poziom 1) aż do gałązek (poziom4).
  • Base split - określa na ile części rozdziela się pień - dla choinki oczywiście 1.
  • Trunk height - pozwoli ustalić od jakiej wysokości rozpoczynają się gałęzie - dla choinki będzie to prawie od ziemi czyli poniżej 0.1.
  • Secodary Base Size - definiuje rozłożystość gałęzi przy pniu.
  • Split Hight - określa czy podziały mają miejsce już od dołu, czy dotyczą bardziej wierzchołka drzewa.
Podziały gałęzi/pnia i ich miejsca
Podziały gałęzi/pnia i ich miejsca

Kolejne kontrolki pozwolą nam ustawić szczegółowość i położenie gałęzi na poszczególnych poziomach, ale uważajcie z liczbami, gdyż jeśli wstawicie za dużą, to Blender, a właściwie wasz komputer może dostać zadyszki.

  • Branches - liczba gałęzi dla każdego poziomu. Chciałbym, aby choinka miała wiele konarów (36), mniej gałęzi (6), a jeszcze mniej gałązek (4). Oczywiście każdy może spojrzeć na swoją prawdziwą (żywą lub sztuczną) choinkę, policzyć i wstawić własne wartości. Ja jeszcze nie ubrałem, więc lecę z głowy.
  • Segment Splits - liczba podziałów każdej gałęzi dla danego poziomu. Założyłem, że mój iglak nie ma gałęzi co rozdzielają się, tylko wyrastają mu gałązki niższego poziomu
  • Split Angle - kąt pod jakim rozdzielają się gałęzie tego samego poziomu. Działa, gdy ustawimy jakieś podziały w Segment Split. Dla choinki nie ma podziałów, zatem ten parametr nie ma wpływu.
  • Split Angle Variation - odchylenie od zadanego kąta - wprowadza pewną zmienność, co czyni drzewa bardziej naturalnymi.
  • Rotate Angle - kąt, pod jakim gałęzie układają się wokół gałęzi wyższego poziomu
  • Rotate Angle Variation - odchylenie od zadanego kąta - wprowadza pewną zmienność, co czyni drzewa bardziej naturalnymi.
  • Outward Atraction - określa wpływ na końcówki gałęzi.
  • Curve Resolution - rozdzielczość krzywej, czyli ile węzłów bierze się do określenia jej gładkości. Choinka ma dość proste gałęzie, zatem tu mogą być małe wartości 3-6.
  • Branching Mode - tryb ustawienia gałęzi określi, czy mają być zgodne z zadanymi kontami (Rotate), losowe (Random), czy może takie przed zmianami, a ustawione w presecie (Oryginal)
Ustaleni liczby gałęzi, ich podziałów i kątów między nimi
Ustaleni liczby gałęzi, ich podziałów i kątów między nimi

Branch Growth - długość i kształt gałęzi

To kolejna część narzędzia do generowania drzew. Z jego pomocą w tym miejscu ustalimy długość gałęzi, ich wzajemne ułożenie, a także trochę zapanujemy nad ich zakrzywieniem.

  • Lenght - długość gałęzi dla każdego poziomu;
  • Lenght Variation - odchylenie od zadanego, aby wprowadzić trochę losowości
  • Down Angle - kąt pod jakim ułożone są względem gałęzi wyższego poziomu;
  • Down Angle Variation - odchylenie od zadanego kąta;
  • Curvature - zakrzywienie gałęzi;
  • Curvature Variation - odchylenie od zadanego zakrzywienia gałęzi;
  • Back Curvature - zakrzywienie końcówki gałęzi w drugą stronę;
  • Back Curvature Variation - odchylenie od zadanego zakrzywienia gałęzi w drugą stronę;
Długość, ułożenie i zakrzywienie gałęzi. Przykład dla konarów
Długość, ułożenie i zakrzywienie gałęzi. Przykład dla konarów

Dla choinki, długości gałęzi ustalam tak, aby ich rozmiary względem poziomów wyższych zbliżone były do złotej reguły - ok. 0.6. Ponadto ustawiam gałęzie tak, aby były skierowane lekko w dół i jednocześnie lekko wyginały się ku górze.

Ustalenie długości, kątów i wygięcia dla gałęzi choinki
Ustalenie długości, kątów i wygięcia dla gałęzi choinki

Pruning - przycięcie korony drzewa

Gdybyśmy mieli ochotę, to możemy jeszcze koronę naszego drzewka przystrzyc za pomocą obwiedni, którą możemy sterować. Choinki raczej nie będę strzygł.

Przycinanie korony drzewa
Przycinanie korony drzewa

Leaves - liście

Dopiero liście czynią drzewo - można by rzec. Zatem pomajstrujmy przy nich - nie chcemy mieć drzewa bez liści - wystarczy, że zimą te prawdziwe są bez nich.

[list] [item]Show Leaves - włączenie widoczności listowia[/item][item]Leaf Shape - kształt liści. Do wyboru mamy liście sześciokątne (Hexagonal, prostokątne (Rectangular) lub liściem możemy uczynić inny obiekt z Blendera (Leaf Object)[/item][item]Leaves - liczba liści przypadająca na gałąź - proszę uważać, aby nie przesadzić i zbytnio obciążyć komputer[/item][item]Leaf Distribution - rozłożenie grup liści w różne kształty:

  • Conical - stożkowy;
  • Inverse conical - odwrócony stożkowy;
  • Sperical - kulisty;
  • Hemisferical - półkulisty;
  • Cylindrical - cylindryczny;
  • Taper Cylindrical - zwężający cylindryczny;
  • vInverse Taper Cylindrical - odwrócony zwężający cylindryczny;
  • Flame - w kształcie płomienia;
  • Tend Flame - o charakterze płomienia.

[/item][item]Leaf Down Angle - kąt pochylenia liści względem pionu;[/item][item]Leaf Down Angle Variation - odchylenie kąta ułożenia liści względem pionu;[/item][item]Leaf Rotate Angle - kąt skręcenia liścia wokół gałązki;[/item][item]Leaf Rotate Angle Variation - odchylenie kąta skręcenia liścia wokół gałązki;[/item][item]Leaf Skale - rozmiar liści;[/item][item]Leaf Skale X - zmiana proporcji - długość względem szerokości;[/item][item]Leaf Scale Taper - zmiana długości liści w kierunku końca gałęzi;[/item][item]Leaf Skale Variation - odchylenie rozmiaru liści;[/item][item]Leaf Angle - kąt ułożenia liści względem pionu;[/item][item]Horizontal Leaves - zwrócenie liści ku górze.[/item][/list]

Kontrolki do sterowania liśćmi
Kontrolki do sterowania liśćmi

Dla choinki wybierzemy liście prostokątne o dużym wydłużeniu, aby przypominały igły Leaf Skale X = 0.01. Liczbę igieł przyjmiemy jako kilkaset np. 500.

Ustawienia liści dla choinki
Ustawienia liści dla choinki

Kolory igieł, pnia, nieba

Zostało nam dobranie materiałów. Dla igieł wybiorę matową zieleń, a dla pnia i gałęzi matowy brąz. Jak pracować z materiałami zawiera jeden z poprzednich wpisów: Grafika-3D-Blender-cz.-IX-materialy

[1/2] Materiał dla pnia i gałęzi
[2/2] Materiał dla igieł

Wstawię śnieżne podłoże - pofałdowany - w trybie edycyjnym przy użyciu Proportional Mode -> Random i podzielony (Subdivide) prostokąt (Rectangle) z białym materiałem.

[1/2] Wstawianie terenu
[2/2] Powiększenie, podzielenie i pofałdowanie terenu

Aby było nieco radośniej wstawię File -> Append bałwanka zrobionego onegdaj Grafika 3D: Blender, cz. III – tryb obiektowy, ćwiczenie „Bałwanek”

Dodanie bałwanka
Dodanie bałwanka

Utworzymy parę błyszczących bombek w różnych kolorach.

Dodam parę gwiazdek - to powyginane w trybie edycyjnym koło (Circle) z przypisanym materiałem typu Halo.

[1/2] Wstawienie okręgu
[2/2] Zdeformowanie okręgu i nadanie materiału Halo

Jako kolor nieba ustawiam ciemny błękit z gradientem.

Ustawy dla nieba w zakładce World
Ustawy dla nieba w zakładce World

Na koniec dodam kometę i napis Wesołych Świąt z materiałem w jasnym żółtym kolorze i włączonym Emitem na w zakładce Shading.

Wstawienie napisu Wesołych Świąt
Wstawienie napisu Wesołych Świąt

Zapraszam do tworzenia własnych choinek i chwalenia się nimi. Tym samym pozdrawiam czytelników Dobrych Programów życząc Wesołych Świąt i szczęśliwego Nowego Roku.

Render - co by tu poprawić?
Render - co by tu poprawić?

Dla tych, co mają niedosyt wiedzy, tradycyjnie polecam:

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.