játékfejlesztés.hu
FórumGarázsprojectekCikkekSegédletekJf.hu versenyekKapcsolatokEgyebek
Legaktívabb fórumozók:
Asylum:    5440
FZoli:    4892
Kuz:    4455
gaborlabor:    4449
kicsy:    4304
TPG:    3402
monostoria:    3284
DMG:    3172
HomeGnome:    2919
Matzi:    2519

Pretender:    2498
szeki:    2440
Seeting:    2306
Geri:    2185
Orphy:    1893
Joga:    1791
Bacce:    1783
MaNiAc:    1735
ddbwo:    1625
syam:    1491
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] > 15 < [20] [25] [30] [35] [40] [44]
syam - Törzstag | 1491 hsz       Online status #159062   2011.08.10 10:40 GMT+1 óra  
Én egyetlen helyen láttam a d3d előnyét, hogy külön lehet indexelni a vertex attribútumokat.
alias aalberik
   
Pretender - Törzstag | 2498 hsz       Online status #159058   2011.08.10 10:28 GMT+1 óra  
Nyilván a hasonló dolgok azért megvannak mindkettő grafikus apiban
Ha oglel kezdtem volna, akkor most bizonyára a dxet furcsálnám Mellesleg XNA után kezdtem ugye a c++ és dx dolgot, és hát igen... Tényleg fura volt, hogy minden D3D, D3DX, IDirect3D, ilyesmi De ezeket csak egyszer kellett beírni

   
syam - Törzstag | 1491 hsz       Online status #159057   2011.08.10 10:26 GMT+1 óra  
Hát d3dben minden D3D, D3DX, D3DR stb.vel kezdődik plusz elég sok helyen van -> az oop miatt.
+ nem szükséges push, popot használni van sima loadmatrix, multmatrix is.

Na és ez mi is:
Kód:
    const D3DVERTEXELEMENT9 vertexDecl[] =
    {
        { 0, 0,  D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_POSITION, 0 },
        { 0, 12, D3DDECLTYPE_FLOAT2, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 0 },
        { 0, 20, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_NORMAL,   0 },
        { 0, 32, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TANGENT,  0 },
        { 0, 44, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_BINORMAL, 0 },
        D3DDECL_END()


Emiatt a "feature" miatt (is) szívtam sokat gl - d3d wrapperrel -.-

Ezt a hozzászólást syam módosította (2011.08.10 10:32 GMT+1 óra, ---)
alias aalberik
   
Pretender - Törzstag | 2498 hsz       Online status #159056   2011.08.10 10:25 GMT+1 óra  
Hát én konkrétan erre osztályokat írok, a SceneGraph rendszer meg pl. pont erre való

   
DMG - Szerkesztő | 3172 hsz       Online status #159055   2011.08.10 10:19 GMT+1 óra  
Nem veszekszem, csak érdekelt, hogy ha nincs benne pop, push akkor hogy, azt hittem van valami faja megoldása neki, de ha neked kell szorozgatni.

Hát az OO ott van a C++-ban meg a Javaben, meg amiben használod az OGL-t mindek még abba is?

DX-ben amúgy hol mutatkozik meg az OO? Isten bizony belenézek egyszer tüzetesebben.

EDIT:

gaborlabor: Jah szerintem is, épp ezért OpenGL ES2.0-ba gyorsan bele is szerkesztettem, mert kivették belőle a kis hamisok a komplett nézeti transzformációkat.

Jahh meg ok hogy DX-ben össze szorzod, de hogy nyered vissza az eredeti matrix-ot? Persze nylván más a szemlélet, más módszerek alakultak ki erre.
-----------------------------------------
Dont Listen to the Naysayers
   
gaborlabor - Moderátor | 4449 hsz       Online status #159054   2011.08.10 10:17 GMT+1 óra  
Idézet
Pretender :
Simán összeszorzom a két mátrixot?


A mátrix stack (amit push/pop -pal tudsz kezelni) nem a mátrixszorzást szűnteti meg / váltja ki, hanem egy mátrix elmentését, majd később visszaállítását tudod vele egyszerűen megoldani.
Megoldhatod az objektumok hierarchiába rendezését a beépített stack használata nélkül is, de én nem értem, miért tenne ilyet valaki, ez egy egyszerű, de jól működő módszer szerintem.

   
Pretender - Törzstag | 2498 hsz       Online status #159053   2011.08.10 10:09 GMT+1 óra  
Simán összeszorzom a két mátrixot?
Bár ezek kár "veszekedni", ez tényleg olyan, hogy ki mit szokott meg. Még tán' január körül gondoltam egyet, hogy megnézem ezt az ogl-t, aztán nagyon szokatlan volt, hogy az OO halvány jeleit sem találtam meg benne De mint mondtam, szokás kérdése

   
DMG - Szerkesztő | 3172 hsz       Online status #159052   2011.08.10 10:04 GMT+1 óra  
Idézet
Pretender :
Ez a Push, módosítás, Pop meg konkrétan nevetséges DX-ben csak szimplán beállítod, oszt' már jó is. Meg összeszorzol 2 mátrixot, stb.



És a DX hogy oldja meg a modell hierachiát ilyen téren, mondjuk ha egy adott testhez képest akarsz transzformálni egy másikat. (a bolygó holdja, fegyver a kézben stb...) Mert a Pop, meg a Push erre tökéletesen alkalmas, nem is használom másra.
-----------------------------------------
Dont Listen to the Naysayers
   
Pretender - Törzstag | 2498 hsz       Online status #159051   2011.08.10 09:59 GMT+1 óra  
@pista75:
Fú, ezt így nem tudom, sose így használtam. Nekem minden egyes effekt betöltéséhez volt egy ConstantTable-nek nevezett cuccom, amin keresztül lehetett a paramétereket átadogatni. Most is így van, csak külön töltök be vs-t és ps-t
Kód:
ID3DXBuffer* code = 0;
if (FAILED(D3DXCompileShaderFromFile(m_Path.c_str(), 0, 0, "main", "vs_2_0", 0, &code, 0, &m_ConstantTable)))
{
    code = 0;
    return false;
}

m_Device->CreateVertexShader((DWORD*)code->GetBufferPointer(), &m_VertexShader);
code->Release();
code = 0;

És ezt a ConstantTable cuccot el tudom kérni shaderenként, és annak segítségével paramétert állítani
Kód:
inline void SetValue(const std::string& p_Name, LPCVOID p_Data, const int& p_Size)
{
    m_ConstantTable->SetValue(m_Device, p_Name.c_str(), p_Data, p_Size);
}

   
Pretender - Törzstag | 2498 hsz       Online status #159049   2011.08.10 09:55 GMT+1 óra  
Én ezeket még soha nem használtam, és szerintem ilyen nincs is
Az a "_" nem egy "::" akar lenni? Ami már azt jelzi, hogy annak az interfésznek az egyik metódusa, tehát oop-sen írt

Én meg konkrétan az OGL-től hányok, hogy minden szart gl-el kell kezdeni...
glKutyafuleFarkaIstenNyila()
Ez most ilyen. Ez a Push, módosítás, Pop meg konkrétan nevetséges DX-ben csak szimplán beállítod, oszt' már jó is. Meg összeszorzol 2 mátrixot, stb.

Én amúgy ezeket szépen elrejtettem, így Vector3, Texture, és hasonló szépségeket kell csak írni

   
pista75 - Tag | 144 hsz       Online status #159048   2011.08.10 09:55 GMT+1 óra  
Pretender


Nem igazán értem, h mire gondolsz. Mi ez c++ és dx? Meg milyen shader?
Nekem ha pl. van ilyen "változóm" a shaderben, hogy
Kód:
float4x4 world;

akkor
Kód:
effect->SetValue("world", &world, Matrix:ize);



Úgy értem hogy van 1 effect osztályom ami betölti az effectet.
Nálam amit írtál az így van:
Kód:
//Shaderben
uniform extern float4x4 word;
//A programban
D3DXHANDLE world;
world= effect->GetParameterByName(0,"word");
mEffect->SetMatrix(world,&mat);


Na és D3DXHANDLE-ből van az egyiknél 6 a másiknál csak 2,ahol kettő van ott kifagy a program mer nem találja a maradék 4 változóz a shaderben.

És ezzel pontosan mit szerettél volna kérdezni? :Meg milyen shader?

   
DMG - Szerkesztő | 3172 hsz       Online status #159044   2011.08.10 09:50 GMT+1 óra  
Na ez az amitől égnek állt a hajam, mikor egyszer belenéztem egy DX-es könyvbe.
-----------------------------------------
Dont Listen to the Naysayers
   
syam - Törzstag | 1491 hsz       Online status #159043   2011.08.10 09:47 GMT+1 óra  
Hát én pl ezektől émelygek:

IDirect3DDevice9_CreateAdditionalSwapChain
IDirect3DTexture9_AddDirtyRect
IDirect3DDevice9Ex_CreateOffscreenPlainSurfaceEx
D3DRS_SEPARATEALPHABLENDENABLE
D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR
D3DAUTHENTICATEDCHANNEL_QUERYRESTRICTEDSHAREDRESOURCEPROCESSCOUNT_OUTPUT

D3DAUTHENTICATEDCHANNEL_QUERYUNRESTRICTEDPROTECTEDSHAREDRESOURCECOUNT_OUTPUT

Végülis parafílíának nem rossz
alias aalberik
   
DMG - Szerkesztő | 3172 hsz       Online status #159042   2011.08.10 09:44 GMT+1 óra  
Ez igaz. Mondják, hog yaz OGL fapados, bár én már hozzá szoktam.
-----------------------------------------
Dont Listen to the Naysayers
   
Pretender - Törzstag | 2498 hsz       Online status #159040   2011.08.10 09:40 GMT+1 óra  
A DirectX pedig sokkal jobban van felépítve, mint az Ogl, ráadásul lényegesen közelebb áll az oop szemlélethez Ez inkább olyan, h ki mit szokott meg

szerk.:
Tibsynek, és a többi nehezen indulónak, akik meg szeretnék tudni, hogy "hova kell írni az enginebe a kódot, hogy jó legyen" tervezek egy cikksorozatot, ami egy egyszerű kb. 10 leckében bemutatható "engine"t tárgyal végig, az üres main fgv-től, a 3d-s megjelenítésig. (bár ilyen már van, konkrétan itt az oldalon)

Ha van rá igény, akkor milyen nyelvet, és milyen grafikus api-t válasszak? Esetleg XNA? Kezdőknek ideális.

Ezt a hozzászólást Pretender módosította (2011.08.10 09:47 GMT+1 óra, ---)

   
DMG - Szerkesztő | 3172 hsz       Online status #159029   2011.08.09 22:51 GMT+1 óra  
Akkor nem szoltam, de láttam már HLSL kódot, és szerintem kaotikus, igez nekem a DX is az, az is igaz, hog ymég nagyon nem fogallkoztam vele, bár tervezek.

Lassan kész a saját tarnsformációs osztályom, az OpenGL ES 2.0-hoz, ami eltakarja a Matrix műveleteket, és lesz Push és PopMatrix benne.


EDIT:

És igen, működik.

Jó éccakát!

Ezt a hozzászólást DMG módosította (2011.08.09 23:27 GMT+1 óra, ---)
-----------------------------------------
Dont Listen to the Naysayers
   
Pretender - Törzstag | 2498 hsz       Online status #159028   2011.08.09 22:45 GMT+1 óra  
Az Asm ismeretlen számomra, és az is marad.
A másik beszúrt kódrészlet meg a programban van, nem a hlslben nyilván. Biztos máshogy is lehet használni, én így használom

   
DMG - Szerkesztő | 3172 hsz       Online status #159007   2011.08.09 20:52 GMT+1 óra  
Értem én, de mi ehhez kicsik vagyunk, na jó én biztos (jobban mondva, még nem próbáltam) Pretender álláspontját nem ismerem.
-----------------------------------------
Dont Listen to the Naysayers
   
syam - Törzstag | 1491 hsz       Online status #159005   2011.08.09 20:41 GMT+1 óra  
Idézet
DMG :
Idézet
syam :

Bezzeg a gpu asm....



Persze má'. Most mire vágsz fel?



Hát, hogy abban totál szabad kezet kapsz. Nincs mindenféle bind, use, uniform és egyéb kreténség.
alias aalberik
   
DMG - Szerkesztő | 3172 hsz       Online status #159003   2011.08.09 20:38 GMT+1 óra  
Idézet
syam :

Bezzeg a gpu asm....



Persze má'. Most mire vágsz fel?
-----------------------------------------
Dont Listen to the Naysayers
   
syam - Törzstag | 1491 hsz       Online status #159001   2011.08.09 20:31 GMT+1 óra  
Idézet
Pretender :
Akkor mit használjunk?



Nincs más

De pl. totál értelmetlen dolog, hogy pl. az mvp mátrixot minden egyes shadernek át kell adni külön-külön, amikor a gpunak van egy "globális" paramétertömbje és oda elég lenne egyszer belepakolni.
Persze lehet, h a hiper-szuper fordítók ezt megoldják, de akkor is egy rakat gl hívásodba kerül.

De a textúrakezelés az vmi "hányás"...

Bezzeg a gpu asm....
alias aalberik
   
DMG - Szerkesztő | 3172 hsz       Online status #159000   2011.08.09 20:24 GMT+1 óra  
Idézet
Pretender :
ezt most a float4x4-ből állapítottad meg?



Hát abból meg a beszúrt részletnek a szintaxisából.


Idézet
Pretender :
Akkor mit használjunk?



Programozzál egyesekkel és nullákkal.
-----------------------------------------
Dont Listen to the Naysayers
   
Pretender - Törzstag | 2498 hsz       Online status #158999   2011.08.09 20:22 GMT+1 óra  
Akkor mit használjunk?

   
syam - Törzstag | 1491 hsz       Online status #158998   2011.08.09 20:21 GMT+1 óra  
Szerintem a GLSL, HLSL + cG is egy nagy kupac $*¤>#&... :]
alias aalberik
   
Pretender - Törzstag | 2498 hsz       Online status #158997   2011.08.09 20:19 GMT+1 óra  
ezt most a float4x4-ből állapítottad meg?

   
DMG - Szerkesztő | 3172 hsz       Online status #158996   2011.08.09 20:01 GMT+1 óra  
Mennyivel szebb a GLSL.

Persze feltételezem, nektek pont fordítva van ez.
-----------------------------------------
Dont Listen to the Naysayers
   
Pretender - Törzstag | 2498 hsz       Online status #158994   2011.08.09 19:53 GMT+1 óra  
Nem igazán értem, h mire gondolsz. Mi ez c++ és dx? Meg milyen shader?
Nekem ha pl. van ilyen "változóm" a shaderben, hogy
Kód:
float4x4 world;

akkor
Kód:
effect->SetValue("world", &world, Matrix::Size);

   
pista75 - Tag | 144 hsz       Online status #158992   2011.08.09 19:37 GMT+1 óra  
Sziasztok.
Ha van két HLSL effektem.
Az egyiknek mondjuk csak 6 változót kellene átadni,a másiknak csak 2.
Az effekt osztájomban viszont előre ne kell tölteni a handlereket.
és ami jó az egyik effektnek az nem jó a másiknak.
Ezt hogy oldjam meg?

   
Parallax - Tag | 574 hsz       Online status #158819   2011.08.08 10:29 GMT+1 óra  
Idézet
Tibsy :
Köszönöm a linket ::..Parallax


Még egy kis tananyag. Most már karácsonyig egy szót se.

   
Tibsy - Tag | 307 hsz       Online status #158803   2011.08.08 08:32 GMT+1 óra  
Köszönöm a linket ::..Parallax
   
Parallax - Tag | 574 hsz       Online status #158786   2011.08.07 22:41 GMT+1 óra  
Idézet
Tibsy :
hi
visual C# - hoz értőt keresek aki segítene ezt azt megtanulni ..


Segíts magadon s az isten is megsegít: C# a felsőoktatásban (C/C++ is van ott, szóval kifogásod nem lehet.)

   
pista75 - Tag | 144 hsz       Online status #158688   2011.08.07 09:40 GMT+1 óra  
Valgrind van windowsra is?
Vagy van valmi ingyenes alternatívája windowshoz?

   
Tibsy - Tag | 307 hsz       Online status #158668   2011.08.06 22:46 GMT+1 óra  

Ezt a hozzászólást Tibsy módosította (2011.08.08 08:31 GMT+1 óra, ---)
   
ddbwo - Tag | 1625 hsz       Online status #158662   2011.08.06 21:29 GMT+1 óra  
LOL! xD

Ja hogy ez az... A Feladatkezelőt egyből levágtam volna. És tényleg írja a dolgokat. xD

kösz-kösz.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
DMG - Szerkesztő | 3172 hsz       Online status #158661   2011.08.06 21:26 GMT+1 óra  
Tálcán jobb klikk, feladatkezelő. Voálá.
-----------------------------------------
Dont Listen to the Naysayers
   
ddbwo - Tag | 1625 hsz       Online status #158660   2011.08.06 21:20 GMT+1 óra  
Ez általános név, vagy van konkrétan ilyen program? Ingyenes? Ha igen, honnan szedjem le hogy biztos ne hekkelje meg a windowst?

Tudom, kicsit furcsa és sok kérdés egyszerre.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
DMG - Szerkesztő | 3172 hsz       Online status #158659   2011.08.06 21:14 GMT+1 óra  
TaskManager?
-----------------------------------------
Dont Listen to the Naysayers
   
ddbwo - Tag | 1625 hsz       Online status #158657   2011.08.06 21:06 GMT+1 óra  
Azt mivel lehet megnézni hogy mennyi memóriánál tart egy program?
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
gaborlabor - Moderátor | 4449 hsz       Online status #158651   2011.08.06 18:29 GMT+1 óra  
Az adott scope a változó élettartama, tehát igen, annyiszor jön létre, ÉS meg is szűnik, ahányszor a ciklusmag lefut.
Amiatt nem fog szivárogni. (Kivéve persze, ha dinamikusan foglalsz memóriát, és nem szabadítod fel.)

   
pista75 - Tag | 144 hsz       Online status #158650   2011.08.06 18:28 GMT+1 óra  
ha for ciklusba rakok egy változó deklarálását akor annyi változó jön létre ahányszor lefut ?

   
gaborlabor - Moderátor | 4449 hsz       Online status #158649   2011.08.06 18:26 GMT+1 óra  
Valgrind-del vagy más hasonló tool-lal futtasd, megmutatja, hol, mi szivárog.

   
pista75 - Tag | 144 hsz       Online status #158648   2011.08.06 18:25 GMT+1 óra  
itt nem szivárog hanem ÖMLIK

   
DMG - Szerkesztő | 3172 hsz       Online status #158647   2011.08.06 18:21 GMT+1 óra  
Hát így látatlanban annyit tudok hozzátenni mint Joga.


Én ilyenkor puritán módon darabokra kapom a kódot, és megnézem, hogy melyik kódrészletnél szivárog a memória.
-----------------------------------------
Dont Listen to the Naysayers
   
Joga - Törzstag | 1791 hsz       Online status #158645   2011.08.06 18:16 GMT+1 óra  
Akkor valószínüleg mégsem szabadítasz fel mindent
(ಠ ›ಠ) Stewie!

   
pista75 - Tag | 144 hsz       Online status #158644   2011.08.06 18:06 GMT+1 óra  
Sziasztok.
1 elég érdekes dolgott fedeztem fel a programomban.
Ha elindítom és úgy hagyon menni folyton egyre több menóriát eszik.
Szóval a 1 óra múlva már 100-200MB ot kér a kezdeti 40 helyett.
mit rontottam el.
Asszem mindet felszabadítok ami nem kell már , de mégis nő.

   
Tibsy - Tag | 307 hsz       Online status #158265   2011.08.03 19:47 GMT+1 óra  
már meg találtam thy yahoo gogle xD


hi;

én 3D GameStudio-hoz keresnék egy olyan plugint amivel leget OBJ- kiterjesztést Exportálni
már rengeteg marhaságot le szedtem de ezidáig még egyik-se volt jó ....
véletlenűl nem tudtok egy működő plugint ?!

Ezt a hozzászólást Tibsy módosította (2011.08.04 23:39 GMT+1 óra, ---)
   
pista75 - Tag | 144 hsz       Online status #157977   2011.08.01 14:42 GMT+1 óra  
köszönöm

   
barack1 - Tag | 94 hsz       Online status #157976   2011.08.01 14:41 GMT+1 óra  
HomeGnome - Szerkesztő | 2919 hsz       Online status #157974   2011.08.01 14:35 GMT+1 óra  
@pista75: alapvetően az a különbség, hogy az elsőnél egy fájlból tölti be a textúrát, míg a másodiknál neked kell betöltened a fájlt a memóriába, és annak a memóriacímét adod át paraméterként.
Én arra használom, hogy nálam a textúrák nem külön fájlokban vannak, hanem egy darab pak fájlban, ahonnét magam töltöm be őket.

Klikk, a JF.hu bulvárlap.
Klikk #6 WIP: 30% (Kuz, sade, ramoryan...)
   
pista75 - Tag | 144 hsz       Online status #157973   2011.08.01 14:25 GMT+1 óra  
Ki a különbség a D3DXCreateTextureFromFile() és a D3DXCreateTextureFromFileInMemory() között?

   
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] > 15 < [20] [25] [30] [35] [40] [44]