OpenGl, DirektX, 3D programozás
2002-06-15T15:30:15+02:00
2004-02-03T14:03:58+01:00
2022-07-27T14:32:42+02:00
  • Hi!

    A kerdes az lenne, lehet valahogy befolyásolni a multitexturázásnál azt hogy melyik texturanak milyen intenzitasa legyen?
    A Blend engedelyezes + a texturakhoz apha csatolason kivul?
    Udv,
    Tamas.
    Mutasd a teljes hozzászólást!
  • nem azert gondoltam, hogy ugyan az legyen 100x elmondva, nem a forumot akarom lecserelni, csak nehany dolgot szerintem gyorsabban lehetne letargyalni irc-n, es lehetne latni, ki akitv...
    Mutasd a teljes hozzászólást!
  • Megnéztem és müködik nagyon hasznos ajánlom mindenkinek főleg aki Delphizet és hiányolta ezt a funkciot az IDEből. Már csak a csak "egy header fv. et irom ki funkció" hiányzik, de ez pl: az OpenGLnél nem zavaro mert ugye minden gl-kezdetü :)
    Mutasd a teljes hozzászólást!
  • Hi.

    És ha beieom hogy Direct3D_Object és rakok utánna egy -> nem listázza ki hogy mik vannak

    Innen lelehet tolteni egy jo kis plugint VC-hez ami talan segit.

    Udv.: Ben
    Mutasd a teljes hozzászólást!
  • Lehet hogy most nagy baromságot kérdezek, de nézzétek el :) Adva van egy D3D tutorial Whoops - 404
    Vagy amugy a D3D. Lefordul meg minden, van benne pl egy ilyen sor LPDIRECT3D9 Direct3D_Object = NULL; És ha beieom hogy Direct3D_Object és rakok utánna egy -> nem listázza ki hogy mik vannak, pedig e nélkül sokkal nehezebb eligazodni. A fordíto MicrosoftVC++6.0. Egyszer írta vki hogy osztályokba van rendezve a DirectX az akkor mi ha nem ez. Még csak Ct tanultam nem tudom mi az a osztály :)
    Mutasd a teljes hozzászólást!
  • Hi.

    De nekem a self illum textúrával kéne...

    -A megvilagitas is megy texturaval, tehat a self illum-nak is mennie kell.

    A mátrix transzponálásra ven extension is

    -Szinten nem minden kartyan van. Szerintem erdemes figyelni ra, habar az 1.2-es verziot lehet, hogy tekinthetjuk alapnak...

    Mellesleg nem akarunk (lehet hogy mar van csak nem tudok rola) pl egy irc szobat nyitni, ahol lehetne ilyen dolgokrol beszelgetni?

    -Szerintem megiscsak maradni kellene itt. Szerintem forumot azert hoznak letre, hogy ne kelljen akar a legalapabb dolgot is 100* elmagyarazni, hiszen a forumon ez maradando. Legfeljebb a logokat fellehet tenni netre, de szerintem egy forumot akkor is sokkal tobben olvasnak el, igy a valaszadasok eselye nagyban no(egy logban latott kerdesre hogyan reagalnatok??).

    kicsit aktivabban mint itt :)

    -Ha ez a forum nem tul aktiv, akkor milyen lenne egy irc szoba? Gondolom ezt a forumot eleg sokan olvassak, valyon egy irc szobaba hanyan lepnenek be?

    Udv.: Ben
    Mutasd a teljes hozzászólást!
  • Áááááá... ezért írtam én meg kézzel? :D
    Mutasd a teljes hozzászólást!
  • Ahamm... glow az kb. érthető, bár akkor asszem az env mapot felejthetem el :( És ha jól sejtem attólmég a rendesbe is le kéne renderelni, nem? :D

    Self illum: ööö... namost a megvilágítás tudtommal per vertex dolog. De nekem a self illum textúrával kéne... akkor mennyek át per pixel lightingra? :)
    Mutasd a teljes hozzászólást!
  • A mátrix transzponálásra ven extension is GL_ARB_transpose_matrix (http://oss.sgi.com/projects/ogl-sample/registry/ARB/transpose_matrix..)
    Mutasd a teljes hozzászólást!
  • Hmm,,kb egy par nappal ezelott irtam ide be egy invertalast az mukodik kamerara is.
    De amugy kamera matrixot eleg transzponalni.

    void Matrix4::Transpose(void)
    {
    float Temp,o41,o42,o43;
    Temp=_12;_12=_21;_21=Temp;
    Temp=_13;_13=_31;_31=Temp;
    Temp=_23;_23=_32;_32=Temp;

    o41=_41;o42=_42;o43=_43;

    _41 = -(o41*_11 + o42*_21 + o43*_31);
    _42 = -(o41*_12 + o42*_22 + o43*_32);
    _43 = -(o41*_13 + o42*_23 + o43*_33);
    _44 = 1.0f;
    }

    itt is van...

    Mutasd a teljes hozzászólást!
  • Nem akar osszejonni, nincs valami pelda kodod?
    Esetleg nem tudunk valamikor online pl irc-n este osszefutni? :)
    Mutasd a teljes hozzászólást!
  • hmm megprobalkozom vele
    mit szolnal webes irc-hez? :)
    http://cgiirc.pbm.hu/cgi-bin/irc.cgi
    #prog.hu
    mellesleg az irc server hunchat.telnet.hu
    :)
    Mutasd a teljes hozzászólást!
  • Van egy egyszeru trukk, en azt hasznalnam. Ha megvan a 3 forgatasi szog, akkor *-1 es kigeneralod a kamera matrixot igy is. Ez az inverze. Egyebkent fontos, hogy a kameramatrixban van eltolas, mig ebben az inverzben nem, mivel itt az eltolas a sprite sajat pozicioja lesz.

    Viktor

    ps: Ahol vagyok csak a http megy...
    Mutasd a teljes hozzászólást!
  • Mellesleg nem akarunk (lehet hogy mar van csak nem tudok rola) pl egy irc szobat nyitni, ahol lehetne ilyen dolgokrol beszelgetni? kicsit aktivabban mint itt :)
    varok velemenyeket, szoba nev tippeket... :)
    Mutasd a teljes hozzászólást!
  • Es hogy szamolok onfly gyorsan inverzet? :)
    A kamera matrix ugyebar 3x3-as, benne pozicio, rotacio es az upvektor...
    kvp nincs esetleg icq-d vagy valami hasonlo cuccod, hogy segits egy kicsit? :)
    Mutasd a teljes hozzászólást!
  • 3D Sprite-okat hogy csinaljak gyorsan OpenGL-ben?


    Van egy kamera matrix. Ennek az inverzevel elforgatva kell kirakni egy negyzetet. Mivel a kamera matrixot a programozo adja meg, ezert ezt a legegyszerubb megoldas.

    Sima 2D sprite-okhoz pedig a 2D-s gl fuggvenyeket erdemes hasznalni. (pl. egerkurzorhoz)

    Viktor

    Mutasd a teljes hozzászólást!
  • Az egyik a glow. ... A másik pedig a self-illumination.


    Glow:
    Egyszeruen fogod az objektumot, megnoveled egy skalazo matrixal a meretet, kirajzolod a stencil buffer-be (csak oda). Igy lesz egy 2d stencil foltod az objektumrol. Ezutan blend-elsz a teljes kepre egy szines negyzetet, azzal a feltetellel, hogy csak akkor irjon ha a stencil nem nulla. Ez ratesz egy egyseges attetszo szines (esetleg enyhen texturazott) fenyt a mar kirajzolt objektumra. Ha korvonal kell, akkor eloszor stencil beallitas a megnovelt korvonallal, majd stencil torles az eredetivel. Ez egy szep korvonalat ad az objektum korul.

    Self-illumination:
    Itt a trukk az, hogy a megvilagitason kivul meg hozza kell adni egy megvilagitas fuggetlen erteket is. Igy ha nincs semmilyen feny, akkor is fenyes lesz a targy. (ez egy szin komponens, amit nem szabad blend-elni a megvilagitas ossz szin ertekevel) Ezutan ossze kell adni, es a szintartomanyba vagni. (ha nagyobb lenne az ertek a teljesen fehernel)

    Viktor
    Mutasd a teljes hozzászólást!
  • Hi

    3D Sprite-okat hogy csinaljak gyorsan OpenGL-ben? Extension-ok vagy keressem meg a camera fele forgato matrixot es hasznaljam azt? :)
    Thx
    Mutasd a teljes hozzászólást!
  • Glow:
    Általában blendel billboard.

    Self-illumination:
    Van, ugyanott, ahol az anyag diffúz és spekuláris jellemzőit is állíthatod (ne haragudj, nem kerestem ki).
    Mutasd a teljes hozzászólást!
  • Megnéztem egy programot (Shaderworks.com) Nézzétek meg nagyon jó. És arra gondoltam hogy meg kéne tanulnom vmenyire a D3Dt. Az első demoban (D3DTutor1) LPDIRECT3D9 g_pD3D ilyen sor. És ha g_pD3D-> irok akkor nem kéne kilistáznia a fveket (vagy ehez kell vmit csinálni) mert sokkal átláthatobb lenne ha látnám hogy milyen fv. ek vanak (Mint Delphiben unitnév+'.').Vagy ki lehet egy headert listázni valahogy Pl csak a math header fveit (Ez nagyon hiányzik a MSC++6.0ból vagy lehet?) MicrosoftVC++6.0 fordítot használok. És amugy tud vki valami nehe szerű oldalt csak d3dben. Tudom hogy ott az SDK, de ott túl bővek a példák és nem csak a problémára koncentrálnak (Mindenféle állítások stb...)
    Mutasd a teljes hozzászólást!
  • Hmm... emberek néhány kérdéssel jönnék :) Effektekről. Konkrétan: a specular és bump mapping megvalósítására rájöttem (mert ugyebár emboss csak a diffuse-t veszi figyelembe, ezért DOT3at kellett alkalmaznom, de ez elvileg menni fog...). Viszont van még pár, amiről keresgettem infót, és nem találtam. Ellenben játékokban már láttam őket. Az egyik a glow. Olyan szintű ötletem van, hogy egy fog-ot kéne csinálni a kellő helyekre, de szvsz az nagyon lassítana. Főleg, hogy fényesnek is kéne lennie. Erre van valami megoldás?

    A másik pedig a self-illumination, vagyis hogy az objektum fényes legyen... Ez lehetséges, vagy ez is csak fényforrással megoldható?
    Mutasd a teljes hozzászólást!
  • Tényleg ha ennyire szakavatott vagy akkor: ha az alap textúra csak RGB, az envmap pedig RGBA akkor az RGB-sre is számol alphát vagy csak kirakja?


    Ilyenkor az alpha alapbol atlatszatlan, de meg hozza jon a szin alpha-ja is (ha van). A legegyszerubb az egyiknel be-, a masiknal kikapcsolni a blend mode-ot. (ugyanugy kell, mint a texenv-et) Bar, nemelyik kartya driver-e eszleli es optimalizal, nemelyik meg nem. (van ami meg mindig blend-el, csak a fuggvenyt csereli)

    Viktor

    Mutasd a teljes hozzászólást!
  • Hali!

    Tudnátok valami tippet adni, mitől lehet a következő hiba: amikor az OpenGL progimat futtatni akarom hibaüzenetet dob, GLUT: Fatal Error in <unamed> : failed to create OpenGL rendering context.

    A Glut-os dolgokat bemásoltam, ahogy a mellékelt file írta. De sajna nem tudom mi a baja...

    Előre is köszi!
    Mutasd a teljes hozzászólást!
  • Hi.

    Innen letoltheted ami kell a DirectX-hez.

    Udv.:Ben
    Mutasd a teljes hozzászólást!
  • Ha D3D programokat irsz, akkor feltehetoleg van DirectX SDK -d. Es akkor ott van a sugo... (konkretan DirectX9_c.chm -nek hivjak, ott lakik az X:\\\\\\\\DxSDK\\\\\\\\Doc\\\\\\\\ -ban)
    Mutasd a teljes hozzászólást!
  • Így igazad van, de azt akartam pont elkerűlni hogy mindent Blendelve rakjak ki, a régi kártyákon nagyon sokat lassított a blend engedélyezése.
    Az új kártyáknak meg meg se kottyan az hogy kétszer rakok ki minden objektet.

    Tényleg ha ennyire szakavatott vagy akkor: ha az alap textúra csak RGB, az envmap pedig RGBA akkor az RGB-sre is számol alphát vagy csak kirakja?

    Köszi hozzászólást, kiprobálom - hátha gyorsít.
    Mutasd a teljes hozzászólást!
  • Sziasztok!
    DirectX -es progikat fejlesztgetek, de a tudásom még hiányos főleg D3D terén.
    Rájöttem mire van szükségem:

    hlp fájlok kerrenének,

    DirectXSDK.hlp
    Direct3DSDK.hlp

    ,vagy valami ilyesmi.

    Nem rendelkezik valamelyikőtök véletlenül ilyen fájlokkal.

    Megkösszönném ha elküldené őket valaki!

    Köszi!
    Mutasd a teljes hozzászólást!
  • Ezeket már tudom, sőt tudom használni a multitextúrát. Lekérdezni, van-e, ha van akkor nem a glTextCord2F-et kell használni ... stb. Azt nem tudom, hogy kell azt beállítani hogy az első textúra nem átlátszó a második pedig igen + SpehereMap. Illetve hogy azt a hatást keltse mint az a módszer amit leírtam, vagy amit láthattál a kis progiban.


    Ugy latszik, hogy megsem ismered elegge a multitexturazast.

    Az atlatszosagot ugy lehet megadni, hogy az a texural rgba formatumuak es az elsonek max az atlatszosaga (nem atlatszo), a masodiknak pedig valamilyen mas ertek.

    A sphere map hasznalatahoz (egy leirasbol):
    Note that the state of each texture unit is completely independent. When multitexture is supported, other texture command such as glTexGen(), glTexImage2D(), and glTexParameter() affect the current active texture unit as last set by glActiveTextureARB(). Other commands such as glDisable(), glGetIntegerv(), glMatrixMode(), glPushMatrix(), and glPopMatrix(), also abide by the current active texture unit when updating or querying texture state.


    Viktor
    Mutasd a teljes hozzászólást!
  • Hali!

    Tudnátok valami tippet adni, mitől lehet a következő hiba: amikor az OpenGL progimat futtatni akarom hibaüzenetet dob, GLUT: Fatal Error in <unamed> : failed to create OpenGL rendering context.

    A Glut-os dolgokat bemásoltam, ahogy a mellékelt file írta. De sajna nem tudom mi a baja...

    Előre is köszi!
    Mutasd a teljes hozzászólást!
  • Szia!

    Ezeket már tudom, sőt tudom használni a multitextúrát.
    Lekérdezni, van-e, ha van akkor nem a glTextCord2F-et kell használni ... stb.

    Azt nem tudom, hogy kell azt beállítani hogy az első textúra nem átlátszó a második pedig igen + SpehereMap. Illetve hogy azt a hatást keltse mint az a módszer amit leírtam, vagy amit láthattál a kis progiban.

    1. Fogom kirakom az objektumot sima texturazással.

    2. Beallitom a GL_SPHERE_MAP-ot + GL_TEXTURE_GEN_ engedélyezem.
    Bekapcsolom a Blendet.
    Beallítom a megfelelő envmap textúrát.
    Kirakom megint az objektumot.


    Ez két kirakás, de ugyanazt rakom ki csak a másodiknál más a textúra. Ezt szeretném multitextúrával kiváltani ha lehetséges. Hátha gyorsabb.
    Mutasd a teljes hozzászólást!
Ez a téma lezárásra került a moderátor által. A lezárás oka: most hogy m�r kategoriz�lva van a t�rsalg�, az elt�r� t�m�knak legyetek sz�vesek k�l�n topicot nyitni, illetve a tud�st�rat haszn�lni! k�sz�n�m
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd