D3D fény gondok...DELPHI !

D3D fény gondok...DELPHI !
2005-06-01T18:09:15+02:00
2005-06-03T17:24:37+02:00
2022-10-25T10:10:47+02:00
MadDoc
Valaki !
Egy kissebb segítségre lenne szükségem. DX-ben ugye vannak a fények. Nos a DIRECTIONAL-lal nincsen problémám, de SPOT Light-ot nem tudok életre lehelni(nem világít). Minden lehetséges paramétert beállítottam, de akkor sem hajlandó engedelmeskedni. Transformálni kéne a World Matrix-ba, vagy valamit be kell állítani a D3DDEV8-ban, mi egyebet ? Tudna valaki segíteni ?
Mutasd a teljes hozzászólást!

  • hy, ahol van a fény definiálása, az alatt kellene valami ilyennek lennie:
    g_pd3dDevice.SetLight(0, light); g_pd3dDevice.LightEnable(0, True);
    na akkor, ezt írd át így:
    g_pd3dDevice.SetLight(0, light); g_pd3dDevice.LightEnable(1, True);
    , nem tudom, hogy jó-e csak próbálkoztam egy tutorial átírásával.
    yah,
    var g_pd3dDevice: IDirect3DDevice9 = nil;
    Mutasd a teljes hozzászólást!
  • Na most, ha jól vettem ki a tutorialokból, akkor a SetLight és a LightEnable függvények első paramétere, a fények azonosítására való. Mivel max. 8 fény lehet, így az első fény a 0. indexű, a második az 1. , és így tovább. Ezzel csak kiválasztom, hogy melyik fényt szeretném bekapcs. stb.
    Ezeket a függvényeket alapban használom a DIRECTIONAL Light-nál is, és ott műxik. Valahol máshol lehet a hiba !?
    Mutasd a teljes hozzászólást!
  • Sajna, én csak a GL-t ismerem, de az alapján, amit gymisi írt, a dolog hasonlóképpen van megoldva DX alatt is.
    Ott az ilyen problémákat leggyakrabban az okozza, hogy megadsz olyan paramétereket, ami nem jellemzője egy spot light-nak, onnantól kezdve pedig az már nem spot-light, és nem is fog akként viselkedni. Most sok konkrétumot nem tudok mondani, de körülbelül úgy kell elképzelni, hogy feltételezzük, hogy egyenletes szórt fényt akarsz, irány nélkül, de te megadod az irányt, ergo, nem kapsz egyenletes szórt fényt. Remélem érthető voltam, de forráskódból talán okosabb lennék.
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd