Zaloguj się lub zarejestruj. 27 Kwiecień 2024, godz.08:22

Autor Wątek: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))  (Przeczytany 33312 razy)

Offline marek

  • Specjalista
  • ****
  • Wiadomości: 335
  • Reputacja na forum: +149/-1
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #30 dnia: 29 Listopad 2007, godz.14:11 »
Dziękuję za pomoc jak umieszczę na serwerze dam znać na p.w. Dostępny będzie około 20-22, ;D
marek

Offline kruk

  • Forum Ekspert
  • *****
  • Wiadomości: 634
  • Reputacja na forum: +113/-0
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #31 dnia: 29 Listopad 2007, godz.22:47 »
[...]Tylko, że śruba wykonana jego sposobem jak na mój silnik za dużo ważą. Przeprowadziłem kilka prób i śruby wykonane moim sposobem są około 200kB lżejsze. Powiecie, że to nie dużo, ale przy ilości 75 sztuk można zaoszczędzić 15000kB, a to już dużo. marek

hej Marku
przeniosłem sie z odpowiedzią do twojego tematu by nie było zamieszania na forum  ;)
próbowałeś może wynosić elementy składowe poza plik z projektem?

chodzi mi o to, że eksportujesz na zewnątrz gotową już śrubę i zapisujesz w osobnym pliku a następnie ten plik linkujesz do pliku z projektem i wstawiasz do niego w formie, na przykład, bloku. później sobie co najwyżej kopiujesz ten blok.
w takim rozwiązaniu waga głównego pliku nie rośnie tak drastycznie wraz z każdym powtórzeniem obiektu (w twoim przypadku śrubki) i za każdym razem gdy plik główny jest odpalany to on sobie dociaga informacje ze zlinkowanych plików...

mam nadzieję, że nie namieszałem w swoich próbach wyjaśnień ;)  poza tym sam dopiero niedawno zapoznany zostałem z tym mechanizmem i nie pozanałem się z jego wszystkimi wadami i zaletami :)


pozdrawiam
« Ostatnia zmiana: 29 Listopad 2007, godz.22:49 wysłana przez kruk »

Offline marek

  • Specjalista
  • ****
  • Wiadomości: 335
  • Reputacja na forum: +149/-1
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #32 dnia: 30 Listopad 2007, godz.14:15 »
Kruku dziękuję za radę ciekawy sposób na zmniejszenie wielkości pliku. ;D ;D ;D
Nie wiem tylko czy to coś pomorze gdyż komunikat o braku pamięci pojawia się przy generowaniu renderu.
Spróbuje dzisiaj przygotować plik według Twojego przepisu i dam znać o rezultatach.
Pozdrawiam
marek

Offline kruk

  • Forum Ekspert
  • *****
  • Wiadomości: 634
  • Reputacja na forum: +113/-0
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #33 dnia: 30 Listopad 2007, godz.14:40 »
sam jestem ciekaw jak się to będzie miało do sprawy renderu ;)
ale co do zagadnienia wagi pliku to powiem szczerze, że bardzo mocno bonusuje przy wielorkotnym powtarzaniu elementów, albo w sytuacji takiej jak twoja - samolot składający się z osobnych części.

powodzenia i liczę na opinie ;)

Offline Jarek

  • Doświadczony użytkownik
  • **
  • Wiadomości: 72
  • Reputacja na forum: +147/-0
    • RhinoScripted Tools
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #34 dnia: 30 Listopad 2007, godz.16:52 »
Czesc Marek,

Mozesz sprobowac jeszcze paru sztuczek, zeby model byl lzejszy:
Z mojego doswiadczenia wielkosc pliku ani nawet stopien skomplikowania powiezchni nie ma tak duzego wplywu na szybkosc/ciezkosc modelu.
Najbardziej pamieciozerna jest siatka - "mesh", ktora Rhino generuje zeby wyswietlic Twoj model.

Sprobuj najpierw poeksperymentowac z ustawieniami globalnymi dla calego modelu. Prawdopodobnie pomogloby tez ustawienie indywidualnych parametrow "Render Mesh Settings" we wlasciwosciach niektorych obiektow.
( np w widoku bardziej ogolnym prawdopodobnie nie potrzebujesz, zeby sruby byly bardzo dokladnie wyswietlane ).

Inna ( skrajna ) metoda, ktorej mozesz sprobowac jest konwersja niektorych elementow z NURBS do Mesh. ( Oczywiscie zachowac gdzies oryginaly NURBS! ). Z Meshem w Rhino da sie zrobic mniej niz z NURBS, ale szybkosc wyswietlania jest ZNACZNIE wieksza.
Dla eksperymentu, sprobuj "_ExtractRenderMesh" ( angielskie komendy z "_" przez powinny dzialac ), a nastepnie "_Join" utworzone Meshe w jeden obiekt. W tym przypadku, szczegolnie przy duzej liczbie obiektow "przetworzonych" w ten sposob wzrost szybkosci jest ogromny, a rendering i tak uzywa wlasnie obiektow Mesh stworzonych na bazie Twoich powierzchni.

Sorki za brak polskich znakow i angielskie komendy - napisz jak cos jest niejasne albo potrzebuje rozwiniecia.

Offline satrab

  • Forum Ekspert
  • *****
  • Wiadomości: 635
  • Reputacja na forum: +138/-0
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #35 dnia: 30 Listopad 2007, godz.17:30 »
Jarek bardzo sensownie mówi, widać, że ktoś ma duże doświadczenie  8) (ps. w pierwszej chwili nie skojarzyłem, że to "nasz człowiek od animacji  ;D)

Używanie bloków wydaje się także jakąś alternatywą, w sumie dopiero teraz dowidziałem się, że coś takiego jest.

Co do redneru to jednym z wyjść jest używanie (jeśli istnieje taka możliwość) czegoś co się nazywa "instances", w skrócie to takie co by sprawiło, że wszystkie 100 takich samych śrubek by zajmowało tyle pamięci co jedna  8)

Problem natomiast jest dostępność takiej technologi bezpośrednio dla Rhino.
Na rynku zadebiutowała wersja 1.6 Maxwell'a, i sam render obsługuje "instancje"  ;) natomiast jeszcze nie wiem jak to jest w pluginie Rhino, i jak się to ma do używania bloków...
« Ostatnia zmiana: 30 Listopad 2007, godz.17:46 wysłana przez satrab »

Offline satrab

  • Forum Ekspert
  • *****
  • Wiadomości: 635
  • Reputacja na forum: +138/-0
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #36 dnia: 30 Listopad 2007, godz.17:36 »
Sorry, za taki niemrawy redner, ale teraz nie mam czasu na zabawę z materiałami... a szkoda  :P

Cały silnik w momencie otwarcia pliku zajmuje u mnie ok 300mb
W czasie takiego "byle było" redneru ok 700MB, natomiast 2 silniki zajmowały w czasie renderu  ok 1,5GB pamięci  ;D
« Ostatnia zmiana: 30 Listopad 2007, godz.17:48 wysłana przez satrab »

Offline marek

  • Specjalista
  • ****
  • Wiadomości: 335
  • Reputacja na forum: +149/-1
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #37 dnia: 30 Listopad 2007, godz.17:58 »
Ładnie to wygląda, ale spróbuj rozmnożyć cylindry za pomocą polecenia Szyk Biegunowy i dopiero zobaczymy jak Twój komputer zareaguje w czasie renderu. ;D
pozdrawiam
marek

Offline satrab

  • Forum Ekspert
  • *****
  • Wiadomości: 635
  • Reputacja na forum: +138/-0
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #38 dnia: 30 Listopad 2007, godz.18:02 »
Ale ze mnie kretyn, zapomniałem że przecież to nie tak wygląda  :)  zaraz zobaczę..

Oj ponad 700 mb  pamięci sam model...  nie pozwala na render  :'(

Jednak trzeba będzie coś pokombinować przed renderowaniem...
« Ostatnia zmiana: 30 Listopad 2007, godz.18:17 wysłana przez satrab »

Offline marek

  • Specjalista
  • ****
  • Wiadomości: 335
  • Reputacja na forum: +149/-1
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #39 dnia: 30 Listopad 2007, godz.18:15 »
To się narobiło a może by tak trochę lodu na procesor. :'(
marek

Offline satrab

  • Forum Ekspert
  • *****
  • Wiadomości: 635
  • Reputacja na forum: +138/-0
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #40 dnia: 30 Listopad 2007, godz.18:33 »
Jeszcze innym wyjściem jest używanie silnika renderującego bezpośrednio z NURBS, np. Air (Sitex Graphics), ale to jak dla mnie już wyższa szkoła jazdy...

ok... ok 500mb w czasie renderu, nie wygląda to idealnie ale "coś" widać, kwestia dalszego eksperymentowania, tzn szukania optymalnego wygląda siatki (żeby za bardzo nie zgubić detali) a ilości dostępnych zasobów w komputerze  ;)

oto i on:

« Ostatnia zmiana: 30 Listopad 2007, godz.19:08 wysłana przez satrab »

Offline marek

  • Specjalista
  • ****
  • Wiadomości: 335
  • Reputacja na forum: +149/-1
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #41 dnia: 30 Listopad 2007, godz.19:18 »
Coraz bardziej podoba mi się silniczek widzę, że praca nie poszła na marne.
Satrab eksperymentuj dalej ja bym osobiście troszkę zmatowił korpus silnika.  ;D ;D ;D
marek

Offline satrab

  • Forum Ekspert
  • *****
  • Wiadomości: 635
  • Reputacja na forum: +138/-0
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #42 dnia: 30 Listopad 2007, godz.19:54 »
Satrab eksperymentuj dalej ja bym osobiście troszkę zmatowił korpus silnika.  ;D ;D ;D
marek

No ja osobiście to bym dużo zmienił, ale póki co, czasu brak, w każdym razie renderować się da, tylko sposobem trzeba  ;D

Offline marek

  • Specjalista
  • ****
  • Wiadomości: 335
  • Reputacja na forum: +149/-1
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #43 dnia: 30 Listopad 2007, godz.20:31 »
Przepraszam Jarku, ale dopiero teraz zobaczyłem twój wpis po prostu moja uwaga skupiła się na renderze silnika, jaki wykonał Satrab. I przegapiłem aż dwa wpisy, Twój i Satraba. Postaram się to w najbliższym czasie nadrobić. Ale rysując silnika chciałem jak najdokładniej odwzorować jego wygląd. Wstyd się przyznać, ale w ogóle nie kojarzę, co to Mesh.  :-[ :-[ :-[
Muszę coś poczytać na ten temat. Do tej pory moja przygoda z rhino bardziej była skierowana w stronę CADu niż renderowania scenek. A z tego, co się dowiedziałem na tym forum dobrze umieć efektownie przedstawiać swoje prace. Dużo pracy jeszcze przede mną. :(
marek

Offline Jarek

  • Doświadczony użytkownik
  • **
  • Wiadomości: 72
  • Reputacja na forum: +147/-0
    • RhinoScripted Tools
Odp: Sopwith Baby część VIII ( Silnik i co się jeszcze zmieści :))
« Odpowiedź #44 dnia: 30 Listopad 2007, godz.22:01 »
Postaram sie to troche lepiej wyjasnic. Generalnie zdecydowana wiekszosc programow 3D ( w tym Rhino ), uzywa modeli zbudowanych z poligonow ( siatek, albo "Mesh" po angielsku ) do pokazania modelu na ekranie, wiec Rhino, zeby wyswietlic czy wyrenderowac Twoj opisany matematycznie model  NURBS musi wygenerowac jego wersje poligonalna. Kazdy nowy plik, ktory tworzysz ma ustawienia domyslne, na bazie ktorych generowana jest siatka. W przypadku, gdy chcesz zoptymalizowac wyswietlanie, albo odwrotnie - uzyskac jeszcze gladsze wyswietlanie dla danej powierzchni lub calego modelu, trzeba cos w tych usawieniach zmienic. Oczywiscie im wiecej poligonow, tym wiecej mocy potrzeba na przetwarzanie takiego modelu.
Mam nadzieje ze zalaczone obrazki pomoga to troche wytlumaczyc - poza tym jest to temat dosc dobrze opisany w plikach pomocy Rhino.
Mam nadzieje ze przy odrobinie dopasowywania bedziesz mogl kontynuowac prace nad silnikiem w calosci.
( oczywiscie uzywanie blokow albo linkowania plikow to kolejne dobre sposoby na odciazenie komputera... )



« Ostatnia zmiana: 30 Listopad 2007, godz.22:04 wysłana przez Jarek »