Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C: 3D tekstuureista

User137 [12.02.2009 18:47:46]

#

Tuommoset häiritsevät viivat tulee: :(
http://i41.tinypic.com/2aetk5z.png

Ideoita? Tuo on piirretty GL_REPEAT päällä 3 kertasena:

  d:=(sin(toRad*t*0.1)*0.5+0.5)*(1-2/16)+1/16;
  glBegin(GL_QUADS);
    glTexCoord3f(2,-1,1/16); glVertex2f(1, 1);
    glTexCoord3f(-1,-1,d); glVertex2f(-1, 1);
    glTexCoord3f(-1,2,d); glVertex2f(-1, -1);
    glTexCoord3f(2,2,d); glVertex2f(1, -1);
  glEnd;

Tuli ainakin opittua miten nuo koordinaatit toimii... Nyt on käytössä 8 kerrosta ja jos ensimmäisen kerroksen haluaa piirtää niin sen Z-tekstuurikoordinaatti on 1/16, ei 0. Eli samalla tavalla jatkuva 0-1 välillä kuten X ja Y akselitkin.

Bah, jotain outoa on ihan siinä mielessä että X suunnassa ei bugaa.

edit: Njaa vika on hyvin todennäkösesti datassa kun tarkemmin tutkailin. Ylin rivi on musta tms.
Joo, Vika on korjattu. Voi poistaa viestin jos turha :p

User137 [12.02.2009 20:18:12]

#

Tuon tyylistä sillä tekniikalla sai aikaan:
http://i39.tinypic.com/2enruc9.jpg

Markus [12.02.2009 22:21:57]

#

User137 kirjoitti:

Tuli ainakin opittua miten nuo koordinaatit toimii... Nyt on käytössä 8 kerrosta ja jos ensimmäisen kerroksen haluaa piirtää niin sen Z-tekstuurikoordinaatti on 1/16, ei 0. Eli samalla tavalla jatkuva 0-1 välillä kuten X ja Y akselitkin.

Koordinaatit toimivat aivan samoin kaikissa suunnissa. Jos sinulla on 8 kerrosta, 1/16 on ensimmäisen kerroksen keskellä. Jos käytät arvoa 0, saat arvon ensimmäisen kerroksen "pohjalta", joka filtteröinnin ja GL_REPEAT:n päällä ollessa tarkoittaa ensimmäisen ja viimeisen kerroksen keskiarvoa. Tilanne on aivan sama myös x- ja y-suunissa, mutta koska tekstuuri on näissä suunnissa 8-pikselien sijasta yleensä satoja ellei tuhansia pikseleitä leveä ei tätä efektiä huomaa.

Mod. lisäsi lainaustagin, käyttäisit ihan itsekin.

User137 [13.02.2009 00:18:33]

#

Ihan sattumalta törmäsin sun artikkeliin muutamia päiviä sitten ;) ei olis tullut muuten mieleenkään koko 3d-tekstuurit.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta