Program do generowania drzew 3D - dyskusja

Zaglądnij tutaj, jeśli masz pytania lub uwagi dotyczące różnorodnych aspektów tworzenia misji w edytorach DromEd i T3Ed, jak też związanego z nimi oprogramowania i sprzętu.

Moderator: peter_spy

Awatar użytkownika
Juliusz
Złodziej
Posty: 2774
Rejestracja: 04 stycznia 2004, 11:28
Lokalizacja: Dublin
Kontakt:

Re: Program do generowania drzew 3D - dyskusja

Post autor: Juliusz »

@Oskar - ciekawe. Kiedyś bardziej siedziałem w tematyce fraktali, szukałem nawet programu do tworzenia animowanych IFS'ów, ale żaden nie spełniał do końca moich oczekiwań...

A może byłbyś chętny na napisanie czegoś podobnego, tylko w 3D, tzn. program do generowania takich drzewek jako modeli trójwymiarowych, z możliwością zapisania w jakimś standardowym formacie (3ds, lwo itp.). Do tego dodać trochę zakłóceń, przypadku i kto wie - może by rezultaty były całkiem realistyczne?
Awatar użytkownika
_OskaR
Poganin
Posty: 736
Rejestracja: 26 stycznia 2005, 16:07

Re: Program do generowania drzew 3D - dyskusja

Post autor: _OskaR »

Jak dla mnie, to tylko full 3D. Na pewno będę próbował tworzyć jakieś drzewka w OpenGL, bo 2 prostokąty + tekstury RGBA wyglądają trochę ubogo- choć grafa wyszła mi lepsza, niż w NFS 3/4, gdzie takich drzewek było pełno. Teoretycznie, skoro w wielu grach, animacje roślinności wyglądają u mnie płynnie, to niby dałoby się coś takiego napisać samemu, ale w praktyce okazuje się, że nie jest tak lekko. Stworzenie 1 drzewa byłoby powiedzmy proste, ale gorzej z płynną animacją całego lasu. Niemniej krajobrazy zawsze mnie interesowały i jak znajdę czas, to coś naskrobię. Muszę jeszcze wykombinować sposób na porządne cienie- wielokrotne renderowanie sceny niestety spowalnia działanie gierki, a o dobry tutorial trochę ciężko- musiałem wymyślać własne rozwiązania.
Awatar użytkownika
Marzec
Arcykapłan
Posty: 1494
Rejestracja: 22 listopada 2006, 11:13
Lokalizacja: Kraków
Kontakt:

Re: Program do generowania drzew 3D - dyskusja

Post autor: Marzec »

Nie zależy mi na reklamie, ale na pomocy :) W ramach praktyki algorytmiki mogę wykonać jakiś pomocny programik obliczeniowy, także z obrazowaniem graficznym, jednak nie 3d. Chociaż tak naprawdę dałoby się, jednak nie mógłbym z tego potem zrobić uniwersalnego modelu do zapisania np. w 3ds.

W każdym razie walić, jeśli tylko będę mógł to zrobię coś co usprawni waszą pracę w edytorach :)


PS. Czasami okazuje się, że jednak zrobić się da wszystko. Np. znajdziemy jakiś program do tworzenia obiektów 3d i zapisywania ich w 3ds. Załóżmy, że ma on też jakąś konsolę do której możemy wpisać kod poleceń stworzenia nowego obiektu. Zawsze pod taki program można napisać następny, np. tworzący fraktal i potem z tego odpowiedni kod ;)
www.thiefguild.com - Gildia Złodzieja
Awatar użytkownika
Juliusz
Złodziej
Posty: 2774
Rejestracja: 04 stycznia 2004, 11:28
Lokalizacja: Dublin
Kontakt:

Re: Program do generowania drzew 3D - dyskusja

Post autor: Juliusz »

Nie zależy mi na reklamie, ale na pomocy :) W ramach praktyki algorytmiki mogę wykonać jakiś pomocny programik obliczeniowy, także z obrazowaniem graficznym, jednak nie 3d. Chociaż tak naprawdę dałoby się, jednak nie mógłbym z tego potem zrobić uniwersalnego modelu do zapisania np. w 3ds.

W każdym razie walić, jeśli tylko będę mógł to zrobię coś co usprawni waszą pracę w edytorach
Ja myślałbym o programie, który w kwestii detalu, realistyczności oraz kontroli nad kształtem, dawałby rezultaty podobne do załączonych powyżej przykładów, tj. Ivy Generator albo ONYXtrees. (ten drugi jest dość skomplikowany...).

Musiałby on wyświetlać dany model, więc albo własny renderer byłby wymagany (byłby pewnie wolny i nie wiem jak trudny do napisania) albo wyświetlanie poprzez DirectXa (lub OpenGLa). Do tego program powinien generować współrzędne mapowania UV (do tekstur), ale to chyba nie takie straszne, jak brzmi.

Natomiast kwestia eksportu do jakiegoś standardowego formatu - myślę, że to nie jest wielki problem. Kompatybilność to dzisiaj raczej standard, a nie luksus. Jestem przekonany, że w sieci są dostępne dokumentacje różnych formatów.

Jeśli chciałbyś się podjąć czegoś takiego (i dysponowałbyś wolnym czasem...), to ja chętnie byłbym testerem.
Awatar użytkownika
Marzec
Arcykapłan
Posty: 1494
Rejestracja: 22 listopada 2006, 11:13
Lokalizacja: Kraków
Kontakt:

Re: Program do generowania drzew 3D - dyskusja

Post autor: Marzec »

Wiesz co, przeraziłeś mnie... Napisałem, że obrazowanie graficzne jakichś obliczeń mogę zrobić tylko w 2D, ale po namyśle 3D też dałoby radę. Nie jestem więc pewien czy umiałbym zrobić ci program wyświetlający obiekty zapisane w plikach. Chociaż... już takie kiedyś robiłem :-D Ale na *.obj. Największym tutaj problemem byłoby potem zapisanie obiektu do pliku.

Czasami są jakieś obliczenia które musimy wykonać, a zwykły kalkulator mało w tym pomaga.

Najważniejsze jest dla mnie pytanie czy edytory w których się bawicie mają jakieś konsole do wpisywania poleceń?? DromEd taki np. ma. Nie wiem czy tak jest w przypadku DromEda, ale może ktoś stworzył polecenia dla ustawiania obiektów? Np funkcję tego typu: "postaw_obiekt(pozycja_x,pozycja_y,pozycja_z,obrót_x itp itd...)"

W takim wypadku mógłbym zrobić program tworzący obiekt, a potem tworzący z niego kod do wklejenia w edytorze. Wiadomo, że kilkadziesiąt połaczonych obiektów wymaga od komputera więcej niż jeden obiekt, ale niektóre silniki posiadają coś takiego jak łączenie w jeden "obiekt fizyczny" czy jak to się tam zwie... Impossible is nothing :P
www.thiefguild.com - Gildia Złodzieja
Awatar użytkownika
Juliusz
Złodziej
Posty: 2774
Rejestracja: 04 stycznia 2004, 11:28
Lokalizacja: Dublin
Kontakt:

Re: Program do generowania drzew 3D - dyskusja

Post autor: Juliusz »

Wiesz co, przeraziłeś mnie...
Czemu Cię przeraziłem - do niczego się jeszcze nie zobowiązałeś. :)

Wiem, że to czego mi potrzeba, to nie jest do zrobienia w jeden deszczowy wieczór. Szukam zatem pasjonatów, którzy sami czują motywację do napisania jakiegoś porządnego programu w tych klimatach. (tak - wiem co to naiwność... ;) )

Nie jestem więc pewien czy umiałbym zrobić ci program wyświetlający obiekty zapisane w plikach. Chociaż... już takie kiedyś robiłem :-D Ale na *.obj. Największym tutaj problemem byłoby potem zapisanie obiektu do pliku.
Hmm... jak dla mnie możliwość zapisywania efektu naszych wypocin w jakimkolwiek programie to podstawa. Na pewno byś musiał opracować jakiś własny format pliku, żeby to zapisać. A skoro byś był w stanie zapisać jakikolwiek plik i odczytać go, to czemu by nie zapisać pliku w jakimś standardowym formacie? W końcu to tylko kwestia kolejności cyferek...
Najważniejsze jest dla mnie pytanie czy edytory w których się bawicie mają jakieś konsole do wpisywania poleceń??
Ja pracuję w 3ds maxie. Max ma całkiem potężny język skryptowy - myślę, że dałoby by w nim radę taki program stworzyć. Można tworzyć obiekty 3D za pomocą poleceń, jak i przeprowadzać różne obliczenia, jak w każdym języku programowania. Odpadałaby wówczas kwestia zapisywania obiektu do pliku, bo tym by się zajął już sam Max.
Nie wiem czy tak jest w przypadku DromEda, ale może ktoś stworzył polecenia dla ustawiania obiektów? Np funkcję tego typu: "postaw_obiekt(pozycja_x,pozycja_y,pozycja_z,obrót_x itp itd...)"
Jeśli mnie pamięć nie myli, ktoś stworzył program, czy jak to nazwać do tworzenia map w Dromedzie wykorzystujący jego polecenia. Nie wiem, na ile to jest użyteczne, ale do pewnego stopnia się da.
Był gdzieś kiedyś wątek na TTLG.
Awatar użytkownika
Marzec
Arcykapłan
Posty: 1494
Rejestracja: 22 listopada 2006, 11:13
Lokalizacja: Kraków
Kontakt:

Re: Program do generowania drzew 3D - dyskusja

Post autor: Marzec »

Więc wygląda na to, że programik będziemy mieć następujący:
- Umieszczamy go w folderze 3DS Maxa
- Uruchamiamy, zaznaczamy plik docelowy obiektu, lub obiektów z których składać będzie się "fraktal"
- Ustawiamy opcjonalne opcje :P
- Klikamy generuj
- Kopiujemy kod do 3DS Maxa :)
- Zapisujemy obiekt w 3DS Maxie i gotowe

Jedyne czego potrzebuję to jakiejś dobrej listy poleceń Maxa i jego składni.

PS. Jednak wolałbym Blendera, z którym mam więcej wspólnego :P Myślę że nie powinno być przeciwwskazań, skoro z jego obsługą wiąże się tylko skopiowanie poleceń i zapisanie obiektu do pliku? A poza tym - 3DS Maxa nie mam, nie miałem i mieć nie będę :P
www.thiefguild.com - Gildia Złodzieja
Awatar użytkownika
Juliusz
Złodziej
Posty: 2774
Rejestracja: 04 stycznia 2004, 11:28
Lokalizacja: Dublin
Kontakt:

Re: Program do generowania drzew 3D - dyskusja

Post autor: Juliusz »

Jeśli chodzi o kwestię działania, to nie potrzebowałbyś żadnych operacji na plikach. Po prostu w Maxie pisze się skrypty, czyli nic innego jak proste (albo i skomplikowane) programy, za pomocą których można przeprowadzać wszelkie operacje na modelach w scenie, jak również tworzyć je od podstaw.

Jeśli chodzi o algorytm, to ja bym to widział na przykład tak:
- w oknie dialogowym wpisujesz wzór oraz kilka parametrów roślinki, takich jak np. grubość łodygi (pnia), wielkość liści, model liści (zwykły prostokąt albo wymodelowany wcześniej w scenie) itp. itd.
- następnie program oblicza kształt i strukturę roślinki, czyli gdzie i jak idą gałęzie.
- później tworzy na tej podstawie model 3D, czyli wpierw tworzy łodygę i odnogi - łodyga najgrubsza na dole, najcieńsza na górze, łodygi odchodzące miałyby grubość początkową taką jak łodyga główna w punkcie, z którego wyrastają.
- liście - pozycja na podstawie wzoru - orientacja względem łodygi. nieco losowości w rozmieszczeniu, skali itp.
- do tego przypisanie mapowania UV


i to z grubsza tyle - co kto zrobi z tym modelem, to jego sprawa - nie trzeba zapisywać w żadnych plikach, bo ew. zapisujesz normalną scenę.

Max ma obszerną dokumentację MaxSciptu. Tymniemniej trzeba by w to wejść, żeby móc coś zrobić.




Jeśli byś robił to w Blenderze, to pewnie zasada byłaby podobna. Kwestia poznania poleceń języka skryptowego Blendera.



Dyskusja wydzielona z tematu "Przydatne programy dodatkowe" - Judith
Ostatnio zmieniony 02 sierpnia 2008, 02:05 przez Juliusz, łącznie zmieniany 3 razy.
ODPOWIEDZ