JonJoan Napisano 12 Wrzesień Napisano 12 Wrzesień (edytowane) Jeszcze raz witam. Zakładam taki bardziej obszerny temat. Bo problemów pewnie będę miał więcej niż jeden. A i może kto skorzysta i nauczy się geo node blendera. Otóż zadaniem mym jest stworzenie budynecku opartego na geometry node w blenderze. Tak by można było robić ekspresowo różne wariacje podobnych budynków. Idzie mi całkiem nieźle ale pojawił się pierwszy problem którego nie wiem jak rozwiązać. Otóż budynek jest skalowalny, wraz z nim oczywiście też dach. Na dachu są dodatkowe elementy randomowe- jak kominy, anteny, itd. Dach skaluje się w takich samych proporcjach co główne "body" budynku- co jest dobre. Niestety kominy (które są rozsiane/przypisane do dachu) też. Co już oczywiście nie jest pożądane. Robią się kobylaste i rozciągnięte (kiedy skaluję po jednej osi). Jak temu zaradzić. Żeby kominy i cały stuff na dachu się nie skalował? struktóra nodów dachu i elementów na dachu: Edytowane 12 Wrzesień przez JonJoan 1
JonJoan Napisano 12 Wrzesień Autor Napisano 12 Wrzesień Daję jeszcze link do Blend file:https://drive.google.com/file/d/1wuxlB4hTLOKV42k6zDHlazl3J7ECoKnx/view?usp=drive_link
kengi Napisano 12 Wrzesień Napisano 12 Wrzesień Jak możesz pomnożyć skalę, to możesz ją też podzielić o tą samą wartość, wystarczy arytmetyka... podepnij to pod skalę kominów itp. powinno starczyć. Ew. to skalowanie podepnij przed sianiem kominów. W blend się nie wgłębiałem. Ale tak na sucho bym kombinował. 1
JonJoan Napisano 12 Wrzesień Autor Napisano 12 Wrzesień kombinowałem w ten sposób. Ale główna zagwozdka to wielkość tej skali. Ja dałem zbyt wysoką, i przy niskiej ilosci modułów kominy się "trochę" skurczyły i zdeformowały.
kengi Napisano 12 Wrzesień Napisano 12 Wrzesień Ale wielkość tej skali to powinien być ten sam parametr zarówno dla powiększania dachu jak i anulowania tego dla instancji kominów itd. Możesz to podpiąć driverem też.
kengi Napisano 12 Wrzesień Napisano 12 Wrzesień W inpucie Vectora zrobiłem, że driverem jest skala obiektu geonodes (Prawy na inpucie "copy as new driver" -> node tree "Paste Driver"), więc niezależnie co tam w skali się zadzieje wielkość komina zostaje taka sama... jeżeli o to chodziło. 1
JonJoan Napisano 12 Wrzesień Autor Napisano 12 Wrzesień To nie takie proste. W zasadzie to można zwiększyć tylko "body" (main part) budynku. I to też nie jest do końca zwiększanie rozmiaru, lecz bardziej dodawanie segmentów. Zwiększanie jest podpięte pod te dodawanie. Żeby np. segmenty nie były ściśnięte. Dachem nie można sterować, tylko jest on takim "dzieckiem" części głównej. Dodając segmenty do części głównej skaluję ją. Potem z automatu skaluje się dach dach i niestety też kominy. Próbowałem odwrócić ten proces jaki jest przy skalowaniu głównej części budynku (poprzez nody "substract" i "divide") ale z nieciekawymi rezultatami. Sprawdzę czym są te drivery Ooo! widzę że międzyczasie odpowiedź była. Dzięki.
kengi Napisano 12 Wrzesień Napisano 12 Wrzesień Dla jasności Stąd kopiujesz: A tu wklejasz (node vector), dla każdej osi osobno: 1
JonJoan Napisano 12 Wrzesień Autor Napisano 12 Wrzesień Ok. zaraz sprawdzę. Ten fioletowy nod "divide"-jak się nazywa? Sorry że takie pytania zadaję ale 3 tydzień dopiero u mnie z geo nodami.
kengi Napisano 12 Wrzesień Napisano 12 Wrzesień (edytowane) Vector Math. Edytowane 12 Wrzesień przez kengi źle zorumiałem pytanie 1
JonJoan Napisano 12 Wrzesień Autor Napisano 12 Wrzesień Jeszcze jedno. Skąd pochodzi ta wartosć? (niebieskie kołko) Z jakiego obiektu? Wszystki obiekty tego budynku mają u mnie skalę 1. Z głownego pewnie. Umnie wszystkie parametry skali głównego obiektu maja wartoć 1,1,1. Chyba nie ma sensu tego nawet kopiowac...
kengi Napisano 12 Wrzesień Napisano 12 Wrzesień Tak, to jest obiekt główny. Założyłem, że to jest wartość, którą chcesz sterować skale całego obiektu. Jeżeli sterujesz ją czym innym, to właśnie ów "inne" powinno być driverem dla wartości node'a Vector. Teraz widzę, że masz tam sides, frontBack i height. No to to powinno być twoim driverem (ale w tym przypadku wystarczy to wpiąć do node'a vector. Ew. musisz sobie znormalizować wartości, dla tego kiedy według ciebie wielkość komina jest standardowa.
JonJoan Napisano 12 Wrzesień Autor Napisano 12 Wrzesień Tak. "sides", "FrontBack" i "High" odpowiadają za skalowanie- poprzez dodawanie segmentów. Na niebiesko zaznaczyłem nody za to odpowiedzialne. Dodają i skalują segmenty głownej częsci domu. Teraz pytanie: Jak podłączyć vector math node do tych moich zaznaczonych na niebiesko? Ja to zrobiłem w ten sposób i nie uzyskałem dobrego efektu...
kengi Napisano 12 Wrzesień Napisano 12 Wrzesień Raczej bym dzielił przez segmenty niż przez 4. Jedyne z czym możesz mieć problem, że ilość segmentów nie odpowiada wielkości skalowania dokładnie. Wtedy musiałbyś wziąć na to poprawkę. Albo skorzystać z bounding boxa. Ale jest jeszcze jedno rozwiązanie, teraz patrzę na twojego .blend jak wpinasz dach do instancji to zrób "realize instance" wcześniej, wtedy nie powinien przenieść ci skali dachu. Tylko skorzysta z tego do dystrybucji punktów. 1
JonJoan Napisano 16 Wrzesień Autor Napisano 16 Wrzesień Ok. Mam następny problem. A mianowicie muszę zrobić pomieszczenia wewnątrz domu. One muszą się skalować wraz z głównym domem a niestety matryca całego obiektu jest tak skonstruowana że elementy domu są osadzone na "vertexach" cube'a. Jak wiadomo- taki cube nie ma vertexów w środku, i dlatego jak się go zeskakuje- cały element jest pusty w środku. Jak na obrazku tutaj: Jak można ten problem przezwyciężyć. Tak by poszczególne piętra były w środku pełne? Poniżej link do świeżego pliku blend: https://drive.google.com/file/d/1n-JFSxxrOcPxPHf6Dalliv9hlkhIvdSB/view?usp=sharing
kengi Napisano 16 Wrzesień Napisano 16 Wrzesień (edytowane) Może zamiast cube, zrób sobie volume i tam zasiej punkty po prostu? Możesz skorzystać z node'a "mesh to volume" też: Potem Distribute Points in Volume na grid. Edytowane 16 Wrzesień przez kengi 1
JonJoan Napisano 16 Wrzesień Autor Napisano 16 Wrzesień Wybrałem tą drugą opcje. Wszystko ok, ale skalując po "Y" (w panelu modyfiers) matryca odpowiadająca za pokoje ma o jeden 'cube" mniej niż główny dom. Pewnie trzeba to skorygować jakim math nodem? Tylko nie wiem gdzie podpiąć. Przesuwam rożne wartości, i szerokość matrycy pokojów się nie zmienia. Moje nody: Nie działa też korekcja rotacji. Wszstkie scianki z kwadratem w srodku są skierowane tylko w jedną stronę. Link do aktualnego blend:https://drive.google.com/file/d/1UMwNlKCplpwMzjXug4hE104ESVk2BBMS/view?usp=sharing
JonJoan Napisano 24 Wrzesień Autor Napisano 24 Wrzesień (edytowane) Hm. Zaprawdę nie wiem czemu Przesuwanie obiektów instance on points, wzdłuż lokalnej osi, raz działa a raz nie. Meble ładnie przesuwają się wzdłóż lokalnej osi, Drzwi już nie. 0001-0748.mp4 Może ktoś pomoże? Tu jest zrzut z widoku nodów odnoszących się do drzwi w ścianach, które chcę randomowo przesówać w zdłóż ściany: Tutaj świerzy plik blend: https://drive.google.com/file/d/1fQqAhuCDc484IDBaAWnUpR_uuhQt4JEC/view?usp=sharing Dzięki z góry! Edytowane 24 Wrzesień przez JonJoan
JonJoan Napisano 30 Wrzesień Autor Napisano 30 Wrzesień (edytowane) Jakos człowiek musi sobie radzić. Idę do przodu. Ale kolejny problem jest z explozja budynku. Szef jest zadowolony z wizualnego efektu. Problem jednak w tym że jest ona zrobiona na bazie blenderowego rigid body i każdy pojedynczy debris to osobny obiekt. Żeby osiągnąć taki efekt: 2024-09-30 10-08-40.mp4 musiałem stworzyć jakieś 480 odrębnych odłamków. Gdy tylko je merguję- efekt jest straszny. Pytanie do znawców tematu: jak połączyć debrisy w jeden obiekt by nie stracić efektu animacji? A może zna ktoś jakieś inne ciekawe sposoby tworzenia fajnych eksplozji tak by można było bez problemowo eksportować ją do unity? Edytowane 30 Wrzesień przez JonJoan
JonJoan Napisano 30 Wrzesień Autor Napisano 30 Wrzesień Da się w sumie zrobić eksplozję w jednym kawałku (obiekcie) używając quick explosion. Ale eksplozja jest brzydsza i debrisy nie odbijają się od collidera (podłogi). 2024-09-30 11-00-30.mp4
JonJoan Napisano 17 Październik Autor Napisano 17 Październik Kolejne szybkie pytanko. Czy można extrudować cianę cuba wielekrotnie? Używając tylko jednego noda extrude? To nie jest żaden fetysz z mojej strony. jeżeli będę chciał teraz extrudować scianę kilkakrotnie to będę musiał użyć kilku oddzielnych nodów. Do każdego z nich podłączyć osobny socket "output" i zrobi się bałagan.
kengi Napisano 17 Październik Napisano 17 Październik Nie bardzo, możesz użyc opcji simulate (strefa), ale wtedy polegasz na klatkach jako "iteratorze"... inaczej nic mi nie przychodzi do głowy. Możesz to co prawda obejść tworząc np. grupę nodów extrude, z założonym maxem iteracji (jeżeli tego nie jest za dużo) i switchami oraz np. inputem z grupy iterować ile z nich jest aktywne. Prawilnie chyba musiałoby być coś takiego jak for loop w houdinim. Albo inaczej skonstruowany node extrude. 1
JonJoan Napisano 23 Październik Autor Napisano 23 Październik (edytowane) Hello. Da się wyznaczyć ID częsci obiektu z przedziału liczbowego? Teraz mam pojedyńczą liczbę a chciałbym żeby to było kiilka ID. Np. od ID 15 do 18. Jest jakis nod co odpowiada za przedziały liczbowe? Przydałoby mi się co takiego do łatania domu... Edytowane 23 Październik przez JonJoan
kengi Napisano 23 Październik Napisano 23 Październik (edytowane) A matematyka na liczbach nie wystarczy? Masz tam Greater i Less Than... Jeden po drugim i masz przedział. Edit: Możesz to sobie potem zapisać do atrybutu, coś jak tutaj: Edytowane 23 Październik przez kengi 1
kengi Napisano 25 Październik Napisano 25 Październik (edytowane) On 10/17/2024 at 1:05 PM, kengi said: Nie bardzo, możesz użyc opcji simulate (strefa), ale wtedy polegasz na klatkach jako "iteratorze"... inaczej nic mi nie przychodzi do głowy. Możesz to co prawda obejść tworząc np. grupę nodów extrude, z założonym maxem iteracji (jeżeli tego nie jest za dużo) i switchami oraz np. inputem z grupy iterować ile z nich jest aktywne. Prawilnie chyba musiałoby być coś takiego jak for loop w houdinim. Albo inaczej skonstruowany node extrude. Powyższe nie do końca aktualne... właśnie się dowiedziałem, że masz coś takiego jak Repeat Zones w blenderze... A od nowszej wersji będzie też For Each Element: Edytowane 25 Październik przez kengi 1
JonJoan Napisano 16 Listopad Autor Napisano 16 Listopad Hello! Męczę pewną kwestię od dłuższego czasu. On się ciągle przewija- a możliwe że rozwiązanie jest proste. Chodzi o zaznaczenie tej części ściany (dwa niebiekie zanaczenia), która przylega do narożnika- ale tylko po jednej osi. W tym przypadku osi "Z". Chcę żeby właśnie ta część ściany była odcedzona. Niezależnie od skali i gęstości obiektu. Da się? Quote Powyższe nie do końca aktualne... właśnie się dowiedziałem, że masz coś takiego jak Repeat Zones w blenderze... Tak. Dowiedziałem się. B. ciekawa opcja. Sprawdzę tą drugą jeszcze.
JonJoan Napisano 16 Listopad Autor Napisano 16 Listopad Hello Again. Kolejny problem się pojawił. Chciałem zmienić samplowanie krzywej. By można było zamieścić więcej punktów. Broblem z tym że krywa (kwadrat) zniekształciła się na rogach. Tutaj krzywe z wyłączonym resample: Co zrobić żeby po zastosowaniu ressample krzywa zachowała krztałt kwadratu?
kengi Napisano 16 Listopad Napisano 16 Listopad Chyba w takim przypadku lepiej dać Subdivide Curve. 16 hours ago, JonJoan said: Chcę żeby właśnie ta część ściany była odcedzona. Niezależnie od skali i gęstości obiektu. Da się? Tutaj ci konkretnie nie powiem, ale obejrzyj sobie to i będziesz wiedział na pewno 🙂 1
JonJoan Napisano 16 Listopad Autor Napisano 16 Listopad Quote Chyba w takim przypadku lepiej dać Subdivide Curve. Dosyć ciekawe rozwiązanie, ale ressample lepsze. Subdivide podwaja mi liczbę okien: Quote Tutaj ci konkretnie nie powiem, ale obejrzyj sobie to i będziesz wiedział na pewno 🙂 Jasne. Biorę się za oglądanie. Thnx.
kengi Napisano 16 Listopad Napisano 16 Listopad (edytowane) 40 minutes ago, JonJoan said: Dosyć ciekawe rozwiązanie, ale ressample lepsze. Subdivide podwaja mi liczbę okien Teraz widzę, że ty tam dajesz Instance on Points a wcześniej zamieniasz curve na mesh i mesh na points... to niepotrzebne, możesz tam wpiąć krzywą od razu, ten node tak korzysta tylko z punktów. Tak samo można od razu mesh wpiąć nie trzeba zamieniać na points. Resample w tym przypadku nie tyle ci zniekształca na rogach krzywą, tylko resampluje ci tak, że akurat dla tego rozstawu odległości od punktów nie daje nowego punktu w tym samym miejscu co oryginalna krzywa w narożniku. Możesz też połączyć kilka krzywych jedną oryginalną przed resample, a potem dodać resample, wtedy powinieneś mieć dodatkowe punkty i mieć zachowane punkty z oryginału. Ale nie do końca rozumiem po co ci zachowanie kształtu skoro ty i tak tylko wykorzystujesz punkty do zasiania okien? Oryginalna krzywa 4 punkty: Krzywa po resample, ale tak, że akurat punkty trafiają w narożniki, więc się nic nie zniekształca: A tutaj krzywa z innym rozstawem resample, punkty leżą na krzywej, ale nie na narożnikach, dlatego jak patrzysz na krzywą (obrys na niebiesko ), a nie na punkty to niby się coś rozjeżdża. Ale wszystkie leżą na krzywej oryginalnej (żółta): A tu masz połączone punkty z obu krzywych via join geometry zwykłe (możesz mieć w takim wypadku podwójne punkty blisko siebie, ale to możesz użyć merge by distans [chociaż w tym wypadku wcześniej musisz użyć curve to mesh, bo to działa tylko na meshach] i wywalić te które są za blisko): Nie wiem co chcesz dokładnie osiągnąć, ale jak używasz Instance on Points to i tak brane pod uwagę są jedynie punkty i ta krzywa w sensie jej linia nie ma znaczenia. Edytowane 16 Listopad przez kengi 1
JonJoan Napisano 17 Listopad Autor Napisano 17 Listopad Wielkie dzieki za tutorial na temat selekcji. Rozwiazał problem lokalizacji modułów na narożnikach. Wszystko ładnie działa, jest responsywne- i co najważniejsze, narożniki sie nie przesuwają. Test-1.m4v Quote Teraz widzę, że ty tam dajesz Instance on Points a wcześniej zamieniasz curve na mesh i mesh na points... to niepotrzebne, możesz tam wpiąć krzywą od razu, ten node tak korzysta tylko z punktów. Tak samo można od razu mesh wpiąć nie trzeba zamieniać na points. To na bazie tutoriala było robione. Gdzie Hindus zorganizował rozmieszczanie okien w taki właśnie sosób. Zrobię jak zasugerowałeś i miejmy nadzieję że bedzie korrect. Dzięki za twoje dotychczasowe tipy- póki co. 1
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się