Antin blogi

Tietokonegrafiikkablogi

 

3D-grafiikkaohjelmintia Flashilla.

 

Tämä on varsinainen mammuttiaihe, joten tulemme puhumaan tästä osissa aika ajoin tällä blogilla.

Oletan että kaikki lukijat tietävät mitä on 3d, joten ei juuri yritä selittää mikä on kolmiuloitteinen avaruus tai -malli. Myös perustieto 3d grafiikasta on erittäin suositeltavaa.

Tämä on varsinainen mammuttiaihe, joten tulemme puhumaan tästä osissa aika ajoin tällä blogilla.

Oletan että kaikki lukijat tietävät mitä on 3d, joten ei juuri yritä selittää mikä on kolmiuloitteinen avaruus tai -malli. Myös perustieto 3d grafiikasta on erittäin suositeltavaa.

3D

Tietokoneen monitori on 2d-taso eli siihen ei voi piirtää 3d-pistettä. Tästä syystä 3d-piste on ensin projisoitava 2d-tasolle, jotta voit piirtää sen ruudulle. Piste pitää kuitenkin ensin transformoida eli siirtää oikeaan paikkaan ennen projisointia. Tämä projisointi tehdään 3d-mallin jokaiselle geometria verteksille, jonka jälkeen saisimme aikaan mallin josta osaamme piirtää verteksit.

Jos yhdistät pisteet viivalla oikeassa järjestyksessä saat aikaan wireframe mallin eli rautalankamallin.

Jos täytät viivojen rajaamat alueet saat solidface mallin. Tällöin mallisi olisi kuitenkin tasaisen yksi värinen.

Jos lisäät ohjelmaasi varjostuslaskentaa saat aikaan varjostetun 3d-mallin. Varjostustapoja onkin sitten monia, mutta alkuun kannattaa opetella joku yksinkertainen kuten esim. Z-Flat.

Varjostuksesta on luonnollista siirtyä tekstuureihin, joka on Flashilla hankala toteuttaa. Se on kuitenkin mahdollista rotailemalla ja skewaamalla kuvaa sopivasti. Tästä tulee kuitenkin ongelmia isojen polygonien kanssa johon palaamme myöhemmin. Sanotaan kuitenkin, että ongelmana on ettei tekstuureja ole perspektiivikorjattu. Ongelmaa voidaan vähentää tesseloimalla polygonia, mutta tämä on kuitenkin vain purkkaviritelmä, joka ei oikeasti kunnolla toimi, mutta korjaa kyllä ongelmaa jonkin verran. Palataan tähän aiheeseen kun oikeasti asiaa käsittelemme.

Kun olemme käsitelleet yllä olevat asiat alkaa sinulla ollakin jo melko hyvä pohja 3d-ohjelmoinnissa. Paljon kuitenkin jää asioita opittaviksi tämänkin jälkeen, mutta aloitetaan ensin aivan alusta.

Pisteen projisointi

Pisteen projisointi 2d-tasolle on helppoa. Se vaatii vain kaksi yksinkertaista laskukaavaa.
sx = x*256/z
sy = y*256/z

Näin siis projisoimme 3d pisteen 2d pisteeksi. Luku 256 on katselupisteen etäisyys projisoitavasta pinnasta.

Nyt periaatteessa osaisit tehdä 3d starfieldin. :)

Lataa FLA.

Responses (36) to "3D-grafiikkaohjelmintia Flashilla."

  1.  

    As a Newbie, I am always searching online for articles that can help me. Thank you



    vigrx

  2.  

    b0eJJR gqpyfpqtvmsg, egkexuqvjvhv, penhnfbehefc, http://wgoixzdnzydh.com/

  3.  

    now I stay in touch..

  4.  

    Please, can you PM me and tell me few more thinks about this, I am really fan of your blog...

  5.  

    acomplia uttx buy xanax =[[

  6.  

    about valium iul cialis 93310 xanax 55190

  7.  

    KtrJNW mwwdlejmvaoh, zwpunriaxvyk, vwyjgdqsukpj, http://dbgkghsjwdvv.com/

  8.  


    Keep working ,great job!

    rH3uYcBX

  9.  

    levitra %(((

  10.  

    tramadol teqks ambien >:-DD accutane 8]]] xanax 2994

  11.  

    levitra naq ambien :-( accutane >:-)) accutane %-PP xanax 7769

  12.  

    tramadol 5201 levitra qcg nexium %]]] accutane 404

  13.  


    I usually don’t post in Blogs but your blog forced me to, amazing work.. beautiful …

    rH3uYcBX

  14.  

    prednisone egohke soma >:[ viagra %))) levitra tjajc accutane imx

  15.  

    nexium cvoa buy cialis online 8-PP levitra online =-DDD accutane 758309 viagra 19086

  16.  

    valium %-]]] acomplia aala buy viagra %-( levitra 38489 auto insurance rates 175779

  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  

    tramadol kfttrq levitra 8[[ xanax 27518 health insurance :OO valium vock levitra =]

  24.  
  25.  
  26.  
  27.  
  28.  

    и всё эе: неподражаемо.. а82ч

  29.  

    ehh. informative style smile

  30.  
  31.  

    y8vqfn How are you? and purchase rocaltrol and http://rocaltrol-fda.viviti.com purchase rocaltrol and hkdgx and

  32.  
  33.  

    How are you? and http://advair-diskus2.socialgo.com advair diskus and http://ciplox2.socialgo.com ciplox without prescription and http://entocort2.socialgo.com entocort online and http://lincocin2.socialgo.com lincocin and

  34.  
  35.  
  36.  

Leave a reply

Comments are disabled for this post.