Új hozzászólás Aktív témák

  • Menthirist

    veterán

    válasz lacko81 #4414 üzenetére

    nem értelek... mindenképp vonalakból kell kiindulni? nem lehet vertexekből? mert szerintem abból kellene... mint mondtam (alaphangon) tárolod a vertexeket egy tömbben, majd egy másikban mondjuk az éleket (pontosabban minden él melyik kettő vertex közt van). végigpörgeted az él tömböt, és pl opengl-ben egy parancs a két vertex összekötése éllel... így gyorsan lehet csinálni wireframe nézetet... ha meg face nézet kell, akkor oda kell egy face tömb, ami azt tárolja, hogy melyik face-hez melyik három vertex kell, opengl-ben ugyanúgy egy parancs a 3 vertex közé síkot húzni. ugye 3 közé csak azt lehet... így meg lenne oldva ez is... ha meg nem csak egyenesekkel operálsz, hanem komplex vonalakkal (pl nurbs), na az akkor jóval komplikáltabb, azt nem vágom... mellesleg ha effektíve programot is szeretnél rá írni, akkor kelleni fog a normál vektor. a helyzet ugyanis az, hogy ha van egy face-ed, az alapból mutathat mindkét irányba (mindkét oldalról látható), de ebből testet felépíteni nem lehet, mert mindig minden látszana, ha shadingot is bekapcsolsz (térbeli ábrázoláshoz kell) akkor ott nem lesz térbeli, ha nincs megadva, merre néz a face...
    a tiédben is van ráció, de szerintem egyszerűbb az én verziómat implementálni... ha gondolod, odaadhatom a forráskódját az én obj megjelenítőmnek, bár nincs bekommentezve túlságosan... lényegében áll egy értelmező részből, ami beolvassa sorról sorra az obj file-t, és értelmezi, ha vertex adatot olvas, akkor a vertex tömbbe teszi, ha mást, akkor az aktuálisan kellőbe, van egy billentyű és egérkezelő része, és van a megjelenítés (ami végigszalad a tömbökön, és sorban kipakolja a dolgokat) (és persze a main) szétszedtem külön darabokra, amennyire lehet...

Új hozzászólás Aktív témák