Aurinkokunnan mallinnus Blenderillä tai Maxilla 1:1 koossa?

Aloittaja jtbo, 18.07.2010, 06:10:23

« edellinen - seuraava »

jtbo

Niin tälläinen kahjo ajatus tuli mieleen, onkohan tullu muille?

Jos tekisi kaikki kappaleet 1:1 koossa, niin että voisi periaatteessa luoda maanpinnalle sukkulanlaukaisualustankin, niin tuollainenhan toimisi kätevänä alustana erilaisten animaatioiden tekoon.

Sitä vain tässä ihmettelen, että noinkohan softissa riittää kapasiteetti ja nykykoneissa puhti tuollaisiin mittasuhteisiin?

Joskus Maxilla tuli väännettyä karttaruudusta korkeuserotkin näppärästi jollain toiminnolla, vaan enää en oikein muista mikä se oli, kai tuo palautuisi mieleen, sai aika helposti nättejäkin maisemia tehtyä, jotain sellaista voisi tietty ajatella kuun sekä maan vuoriin jne. eli tuokaan ei välttämättä ole kovin iso ongelma, mutta ei huvittaisi alkaa moiseen jos se ei ole teknisesti vieläkään mahdollista.

Mitään muuta hyötyähän moisesta ei liene olisi kuin omien animaatioiden tekoon ja olisihan se taas harjoitusta 3d värkkäyksestä, joka itsessään on jo ihan pätevää harrastelua ja opiskelua vastaantulevien ongelmien ratkaisun muodossa.

Voi olla tietty turhan kunnianhimoinen yhä nykytekniikalla ellei sitten 'oikaise' jossain kohtaa, voi käydä samoin kun hirsimökkiä yritin värkätä Maxilla ja kun piti jokainen sarana ja ruuvikin tehdä, niin hommahan kaatui omaan mahdottomuuteensa, ei kyennyt kone eikä softa pyörittämään moista ja päähän ei anna periksi sille, että tekisi samalta näyttävän muttei aivan jokaista piirtoa myöten autenttista joka nippelistä, polygoneita siis tulee aika sairaasti.

naavis

Projektin vaikeus riippuu aika paljolti tarkkuudesta johon pyrit. Jos haluat laukaisualustan tarkkuudella tehdä koko aurinkokunnan, voi mennä aika vaikeaksi. :wink: Alkaa pelkkää maapalloakin mallintaessa tulla polygoneja useampia miljoonia vaikka polygonin sivun pituus olisi kilometrin luokkaa. Noin teoriassa polygonien määrä aina nelinkertaistuu kun sivujen pituus puolittuu. Geneerinen 3D-mallinnusohjelma on tuskin mitenkään järkevä alusta tällaiselle projektille. Jos ohjelmoida osaa, saattaa päästäkin jo pidemmälle. Monenlaisia "aurinkokuntasimulaattoreita" on jo olemassakin. Kannattaa esimerkiksi katsastaa Orbiter ja Celestia.

Mikko

Tein tuollaisen planeetta/avaruus -simulaattorin Pythonilla ja VisualPython lisäosalla. Molemmat ovat vapaasti internetistä saatavilla.

Simulaattori perustuu newtonin mekaniikkaan, eli kun tiedetään kappaleiden massat ja alkunopeudet, voidaan laskea niiden paikka lyhyen aikavälin jälkeen. Simulaation tarkkuus riippuu tietysti aikavälin pituudesta. Lyhyemmällä aikavälillä saadaan parempi tarkkuus jne. Ohjelmaan pystyy syöttämään erilaisia kappaleita kuten, jolloin esim aurinkokuntaan saapuva 15 kertaa auringon massainen musta-aukko saa mielenkiintoista jälkeä aikaan.  :cheesy:
VPython on OpenGL:ään perustiva ohjelmointikirjasto, joten simulaattorikin on kolmiulotteinen. Sopivia planeettatextuureita löytyy netistä tai voi käyttää omia. Auringon tekstuurin simulaattori lataa (latasi ainakin viimeksi) suoraan nasan sivuilta, jolloin aurinko pyörii ja leimahtelee. Animaation nauhoitusta en kokeillut, mutta varmastikkaan yhtä hienoa jälkeä tuolla ei saa kuin Maxin viimeisen päälle renderöidystä animaatiosta.

Mittasuhteet eivät tietokoneella tuota ongelmia - koneelle ne ovat vain numeroita, mutta 1:1 aurinkokunta tietokoneruudulla on aika vaikea hahmottaa. Kun auringon ja maan sovittaa näytölle - on maa niin pieni, että sitä tuskin näkee.

jtbo

Kovin latteita on nämä nykyiset tähtikartanomaiset noin niinkuin visuaalisesti, nimenomaan silloin kun mennään lähelle, esimerkiksi jos tahtoisi esittää sukkulan tai minkä tahansa muun asian matkaa ilmakehän läpi, tuo visuaalinen puoli on sellainen, että pitäisi tehdä itse, samoin vuoristot yms. ei oikein pelkästä tekstuurista erotu, tuohonhan on olemassa dataa jolla saadaan maanpinnan muodot mukaan, joten se nyt ei ole niin kovin iso ongelma, hyvät tekstuurit sitäkin haastavampia.

Google earthissahan olisi muuten ihan kivasti kaikkea, mutta siinä ei voi tehdä animaatioita joissa olisi omia kappaleita, tietenkin voi editoida videota ja tehdä vain osan vaikkapa Maxilla, joka olisi ikäänkun overlay videossa, mutta kun ei tahdo, hulluhan sitä helpoimman tien etsii  :grin:

1:1 koko olisi siinämielessä hyvä, että äärettömän suuret etäisyydet tulisi paremmin esille, joka toki Celestiassakin on hyvää, aurinko ei juuri kasva vielä kun maata on liki mahdoton erottaa.

Satelliittien sekä avaruusromun laittaminen kiertoradalle toki kiinnostaisi myös, sitä kun vaikuttaa olevan niin paljon ettei sekaan mahdu, mutta silti käytännössä sitä on vaikea erottaa siellä ylhäällä, näin ainakin olen ymmärtänyt.

Tarkkuutta tietysti pitäisi olla niin, että pienetkin yksityiskohdat olisi mahdollisia, polygonit menisivät helposti siis miljooniin, ehkä miljardeihin?

Onkohan muista aurinkokunnan planeetoista korkeusdataa jaossa?

Yksi ikuisuusprojektihan tuokin olisi, jota voi työstää aina sillointällöin.
Jahas, katuvalot syttyivät, kun sisällä valot välähti ja kaiuttimet piti ääntä :rolleyes:

Niin mitenkään erinomainen en ole 3d ohjelmien käytössä, ohjelmointia en mielellään tunnusta osaavani vaikka olen ohjelman tai pari tehnytkin VB:llä sekä Visual C#:lla, joten aika opiskeluahan se tietty on, vaan siksipä moinen kiinnostaa.

Maxissa alkuunpääsyssä on jo ongelmaa, pallossa voi olla vain 200 segmenttiä, joka tietenkin tarkoittaa sitä, että pienin polygoneilla tehty maastonmuoto on aika hurjan laaja, 30 metriä on datan tarkkuus, joten vähintään siihen pitäisi päästä mieluusti reilusti tarkemmaksi, koska sitä paremmin maasto taipuu oikein, vaan sitten jos yritän tuosta pilkkoa pienempiin, niin hyvin äkkiä loppuu muisti kesken, prossustakin loppuu ruuti. Tietenkin voisin tehdä bump mappingia käyttäen korkeuseroja, mutta ei se vaan toimi maanpinnantasalla lainkaan, joten ilmeisesti ei onnistu ihan vaan tekemällä riittävän tarkka pallo ja korkeusdataan se sovittaen, joka olisi kyllä se helpoin tapa saada korkeudet oikein.

Samoin jos meinaisi ihan metsiä tehdä, niin siinä polygoneja tulee, kun yksi puu harvoin alle 200 jää, on se vaan helppoa kun on näitä suuruudenhulluja suunnitelmia :rotfl:

Lauri Kangas

Lainaus käyttäjältä: Mikko - 22.07.2010, 22:10:52
Simulaattori perustuu newtonin mekaniikkaan, eli kun tiedetään kappaleiden massat ja alkunopeudet, voidaan laskea niiden paikka lyhyen aikavälin jälkeen. Simulaation tarkkuus riippuu tietysti aikavälin pituudesta. Lyhyemmällä aikavälillä saadaan parempi tarkkuus jne. Ohjelmaan pystyy syöttämään erilaisia kappaleita kuten, jolloin esim aurinkokuntaan saapuva 15 kertaa auringon massainen musta-aukko saa mielenkiintoista jälkeä aikaan.  :cheesy:

Tuollaisia gravitaatiosimulaattoreita on hauska koodailla. Jos joku haluaa räveltää omiaan niin mallia voi ottaa tällaisesta jonka tein jollekin ohjelmointikurssille fuksivuoden jälkeen: http://users.tkk.fi/~lkkangas/doc/ Taitaa olla turha toivo että enää jaksaisi tehdä tuohon jonkun animaattorin. :/

jussi_k_kojootti


Tässä saitti, jossa POV-Raylla on renderöity upeita näkymiä Maasta 1km resoluutiolla.   Linkeistä löytyy dokumentteja ja käytännön esimerkkejä.

Aurinkokunnan, tai edes aurinkokunnan objektien, mallinnus 1:1 suhteessa niin että pienin mallinnettava etäisyys on 1 metri ei taida käytännössä olla nykyisillä (64-bittisilläkään) PC:illä ja "tavallisilla" mallinnusohjelmilla mahdollista.  Yhden rajoituksen asettaa koneisiin normaalisti asennettavissa olevan muistin määrä, toisen lukujen esitystarkkuus.  Lisäksi mallinnusohjelmissa tuppaa (tai ainakin tuppasi) olemaan optimointisyistä rajoituksia mallin maksimikoolle/-resoluutiolle.

Jo Jupiterin ja Auringon esittäminen samassa mallissa 1m tarkkuudella vaatii >32bittisen, käytännössä siis 64bittisen, ohjelmiston -- vaikka tyytyisit esittämään Jupiterin "vain" ruskeana ja Auringon keltaisena, täysin tasaisina palloina (JA vaikka tekisit tämän esim. POV-Raylla, jossa täydellisen pallon piirtämiseen ei tarvita yhtä polygonia enempää muistia).  Miksi?  Koska Jupiterin etäisyys auringosta Rj = 778 412 010 km = 7.78*10¹¹m.  Suurin etäisyys jonka 32bittisillä luvuilla voi esittää (1m resoluutiolla) on 2³² = 4.29*10⁹.  (Jupiterin ja Auringon voisi esittää palloina samassa mallissa 1m resoluutiolla, kun lukutarkkuus on vähintään 40 bittiä).
jussi kantola / oulun arktos
CG-5 GOTO + KWIQ-guiding + SW80ED  // 10" dobson // canon eos 450d mod & 400d / ASI 120MM
http://astrobin.com/users/jussi_k_kojootti/
http://oulunarktos.fi/

jtbo

#6
Lainaus käyttäjältä: ketarax - 23.07.2010, 15:08:01
Tässä saitti, jossa POV-Raylla on renderöity upeita näkymiä Maasta 1km resoluutiolla.   Linkeistä löytyy dokumentteja ja käytännön esimerkkejä.

Aurinkokunnan, tai edes aurinkokunnan objektien, mallinnus 1:1 suhteessa niin että pienin mallinnettava etäisyys on 1 metri ei taida käytännössä olla nykyisillä (64-bittisilläkään) PC:illä ja "tavallisilla" mallinnusohjelmilla mahdollista.  Yhden rajoituksen asettaa koneisiin normaalisti asennettavissa olevan muistin määrä, toisen lukujen esitystarkkuus.  Lisäksi mallinnusohjelmissa tuppaa (tai ainakin tuppasi) olemaan optimointisyistä rajoituksia mallin maksimikoolle/-resoluutiolle.

Jo Jupiterin ja Auringon esittäminen samassa mallissa 1m tarkkuudella vaatii >32bittisen, käytännössä siis 64bittisen, ohjelmiston -- vaikka tyytyisit esittämään Jupiterin "vain" ruskeana ja Auringon keltaisena, täysin tasaisina palloina (JA vaikka tekisit tämän esim. POV-Raylla, jossa täydellisen pallon piirtämiseen ei tarvita yhtä polygonia enempää muistia).  Miksi?  Koska Jupiterin etäisyys auringosta Rj = 778 412 010 km = 7.78*10¹¹m.  Suurin etäisyys jonka 32bittisillä luvuilla voi esittää (1m resoluutiolla) on 2³² = 4.29*10⁹.  (Jupiterin ja Auringon voisi esittää palloina samassa mallissa 1m resoluutiolla, kun lukutarkkuus on vähintään 40 bittiä).


Noinhan se menee tosiaankin, eli Maxin saa kyllä unohtaa täysin hommassa, koska siitä ei vain ole hommaa tekemään, jo yksin se, että on vain 32 bit versio itselläni, mutta myös se, että siinä on noita rajoituksia, jotka tehokkaasti estävät riittävän hurjan mallin teon.

POV Ray on käsittämättömän venyvä ohjelmisto, valitettavasti itse olen vähän joustamattomampaa materiaa, joten en tiedä opinko koskaan sitä riittävän hyvin, vaikka jo 1994 softaa käyttelin.

Täytyy siis vielä odotella, että kehitys kehittyy, 1994 vuonna 3d kuvan tekeminen oli 'aavistuksen' erilaista kuin nykyään ja mahdollisuudet hieman rajoittuneemmat, mutta eiköhän asiat kehity taas vaikkapa seuraavan 10 vuoden aikana näistä merkittävästi, josko tulisi 128 bittisyys jo siinä ajassa ja mallit monimutkaistuisi niin, että näille hulluille suunnitelmillekkin löytyy toteutusalustaa, kun elää niin näkee :laugh:
En tiedä sitten kuinka todennäköisesti oman elinikäni aikana onnistuisi koko aurinkokunta saada 1m tasoisena malliksi, plutokin on niin kaukana, tosin onko plutosta tai edes Marsista 1m dataakaan olemassa? Tietty ei se tilannetta muuttaisi, koska jos yhdenkin asian haluaa 1m tarkkuudella, niin käsittääkseni silloin koko 'maailma' on sitä tarkkuutta, vaikka jonkin kappaleen mallintaisi pienemmällä tarkkuudella, ei oikoteitä onneen siis.

On juuri niin hulppean näköistä tuo POV Rayllä tehty maisema maasta, kuin arvelinkin sellaisella tarkkuudella saatavan aikaan, tuo sitten vaan liikkuvaksi kuvaksi, ei taitaisi ihmisikä piisata renderöintiajaksi nykykoneilla, pitäisi olla salillinen koneita  :shocked:
Tuollaisessa hyvin näkee kuinka 'ohut' maan ilmakehä on ja silti se suojaa meitä varsin tehokkaasti kaikenlaista rojua vastaan.

edit: Jaa mutta kun olen vähän hölmö, niin enhän edes tarkalleen tiedä mitä sisältyy aurinkokuntaan, jos Oortin pilvelle asti pitäisi tehdä mallia, niin ei kai se ole mitenkään mahdollista vielä sataan vuoteen tuossa tarkkuudessa, ainakaan kerrallaan muistissa pidettäväksi, edes Sednan mukaan ottaminen ei olisi mahdollista, kun eikö se ole kymmeniä kertoja suurempi alue kuin auringon ja jupiterin osalta. Kyllähän se tyhjä tilakin pitää olla mahdollista täyttää kaikenlaisilla kappaleilla joita siellä välillä on, asteroidivyöhykettäkin kun tekee muutaman miljoonan murikkaa 1m tarkkuisena, niin siinä masiinat venyy jja paukkuu.
Lisäksi tuossahan tulisi jääkaapin valo ongelmaa, jos kompuutteri toimii valonnopeudella, ja räpsyttelen aurinkoa päälle ja pois, niin eikö sen pitäisi maasta katsottuna pitäisi räpsyä päälle ja pois viiveellä, sillä muutoinhan kompuutteri toimisi nopeammin kuin valonnopeus? Tai ehkäpä valonnopeuden ylittäminen onkin mahdollista yksinkertaisesti olemalla siellä ja täällä samaan aikaan, mielenkiintoistapa olisi tietää räpsyykö valoisuus maassa heti ja auringossa viiveellä vai toisinpäin noilla mittasuhteilla vai onko koodi samaan aikaan siellä ja täällä, onko virtuaalinen mitta verrattavissa fyysiseen mittaan? :rotfl:
Taitaapa kuitenkin olla niin, että kompuutterin näkövinkkelistä kaikki on ihan vierekkäin ja tarvittaisiin pienimuotoista koodausta, että saataisiin etäisyydet ja muut lainalaisuudet mukaan graafiseen esitykseen.

Ehkei näin yksinkertaisen pitäisi miettiä noin monimutkaisia :angel:

Mikko

Lainaus käyttäjältä: ketarax - 23.07.2010, 15:08:01
Tässä saitti, jossa POV-Raylla on renderöity upeita näkymiä Maasta 1km resoluutiolla.   Linkeistä löytyy dokumentteja ja käytännön esimerkkejä.

Aurinkokunnan, tai edes aurinkokunnan objektien, mallinnus 1:1 suhteessa niin että pienin mallinnettava etäisyys on 1 metri ei taida käytännössä olla nykyisillä (64-bittisilläkään) PC:illä ja "tavallisilla" mallinnusohjelmilla mahdollista.  Yhden rajoituksen asettaa koneisiin normaalisti asennettavissa olevan muistin määrä, toisen lukujen esitystarkkuus.  Lisäksi mallinnusohjelmissa tuppaa (tai ainakin tuppasi) olemaan optimointisyistä rajoituksia mallin maksimikoolle/-resoluutiolle.

Jo Jupiterin ja Auringon esittäminen samassa mallissa 1m tarkkuudella vaatii >32bittisen, käytännössä siis 64bittisen, ohjelmiston -- vaikka tyytyisit esittämään Jupiterin "vain" ruskeana ja Auringon keltaisena, täysin tasaisina palloina (JA vaikka tekisit tämän esim. POV-Raylla, jossa täydellisen pallon piirtämiseen ei tarvita yhtä polygonia enempää muistia).  Miksi?  Koska Jupiterin etäisyys auringosta Rj = 778 412 010 km = 7.78*10¹¹m.  Suurin etäisyys jonka 32bittisillä luvuilla voi esittää (1m resoluutiolla) on 2³² = 4.29*10⁹.  (Jupiterin ja Auringon voisi esittää palloina samassa mallissa 1m resoluutiolla, kun lukutarkkuus on vähintään 40 bittiä).

Valmista mallinnusohjelmaa käyttäessä tuo lukujen tarkkuus varmasti on rajoitettua, mutta ohjelmointiin saa matematiikka-kirajstoja, jotka pilkkovat luvun tarvittavaan määrään 32/64 -bittisiä paloja. Toki tuossakin tulee sitten muisti vastaan.

jussi_k_kojootti

Lainaus käyttäjältä: jtbo - 23.07.2010, 21:26:40
Taitaapa kuitenkin olla niin, että kompuutterin näkövinkkelistä kaikki on ihan vierekkäin ja tarvittaisiin pienimuotoista koodausta, että saataisiin etäisyydet ja muut lainalaisuudet mukaan graafiseen esitykseen.

Jep, ei tietokoneetkaan niin paljoa tiedä että omin päin osaisivat 3D-malliin suhteellisuusteorioita simuloida :-)

Lainaus käyttäjältä: Mikko - 24.07.2010, 01:04:38
Valmista mallinnusohjelmaa käyttäessä tuo lukujen tarkkuus varmasti on rajoitettua, mutta ohjelmointiin saa matematiikka-kirajstoja, jotka pilkkovat luvun tarvittavaan määrään 32/64 -bittisiä paloja. Toki tuossakin tulee sitten muisti vastaan.

Muisti ja myös seinäkellot -- mielivaltaisen tarkkuuden aritmetiikka on älyttömän hidasta.
jussi kantola / oulun arktos
CG-5 GOTO + KWIQ-guiding + SW80ED  // 10" dobson // canon eos 450d mod & 400d / ASI 120MM
http://astrobin.com/users/jussi_k_kojootti/
http://oulunarktos.fi/