Hirdetés
- Luck Dragon: Asszociációs játék. :)
- bitpork: Ha Isten létezik...
- MasterDeeJay: RAM gondolatok: Mennyi a minimum? DDR3 is jó?
- Elektromos rásegítésű kerékpárok
- Lalikiraly: A nagy ő! Stohl...
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- eBay-es kütyük kis pénzért
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- sziku69: Fűzzük össze a szavakat :)
- potyautas: A teljesség igénye
Új hozzászólás Aktív témák
-
Abu85
HÁZIGAZDA
válasz
keIdor
#40261
üzenetére
Nem csak annak a kérdése. A trükk alapvetően a wave programozás. A mai PC-s játékok többsége még mindig az elavult shader programozást követi, nagyrészt a legacy kódok miatt, amit nyilván elfogadnak az API-k, de a mai hardverekre ezek nem optimálisak. Viszont ha mondjuk két explicit API-t célzol, akkor azt nyilván egy shader nyelvből akarod megtenni, jelen esetben a HLSL-ből, és ott például olyan kód kell, amit a SPIR-V-re elég jól le tud fordítani a Glslang. Ez nagyjából a shader modell 5.x-et foglalja magába. Ennél jobb shader modellre a Spiregg kellene, ami ugyan létezik, de még messze nem olyan jó, mint a Glslang, tehát egy nagyobb projektnél meggondolandó, hogy a wave programozást, mint lehetőséget választod, vagy azt, hogy legyen egy stabil rendszer a HLSL kódok D3BC-re és SPIR-V-re fordítására. Utóbbi kifizetődőbb, mert kevesebb lesz vele a szopás. Viszont a shader modell 5.x nem definiálja a wave-level operációkat, vagyis effektíve csak egy szálra levetített feldolgozási modellt kínál, amit ugyan megesznek a mai GPU-k, de explicit erőforrás-korlátozások kellenek ahhoz, hogy a feldolgozás párhuzamosítása garantálható legyen. Emiatt jött be a shader modell 6, aminél már erre nincs szükség, pusztán a wave terminológia garantálja, hogy a lane-ek egymás mellett futhatnak, és ehhez semmilyen direkt beavatkozás nem szükséges. Na most konzolon ez egyszerű, már a kezdeti évek óta így lehet ezeket a gépeket programozni. PC-n is lehetséges, de legalább HLSL shader nyelv 2016-os specifikációja kell, ami nem lenne nagy gond, ha a program csak DirectX 12-t támogatna, ugyanis csak annyi változna, hogy a bájtkód nem D3BC-ben, hanem DXIL-ben lenne szállítva. Viszont azzal, hogy a Vulkan is támogatott, már át kellene konvertálni a wave terminológiát is az újabb SPIR-V-re. Maga az API támogatja ezt, a subgroup utasítások néven fut a funkció, és a World War Z már használja is: [link]. Csak ehhez ők elég sok shadert direkten módosítottak, és valószínűleg az RDR2 annyira nagy projekt, hogy ez önmagában nem éri meg. De abszolút nem a konzol fixfunkciós hardvere dönt jelenleg, hanem az, hogy a Rockstar nem akar a Spireggre menni, így a PC-re szállított shaderek jóval lassabbak, mint a konzolon futók.
Új hozzászólás Aktív témák
Hirdetés
A topikban az OFF és minden egyéb, nem a témához kapcsolódó hozzászólás gyártása TILOS!
Megbízhatatlan oldalakat ahol nem mérnek (pl gamegpu) ne linkeljetek.
- 188 - Lenovo LOQ (15IRX10) - Intel Core i5-13450HX, RTX 5060
- iPhone 15 Pro Max 256GB 100% (1év Garancia)
- HIBÁTLAN iPhone 14 Pro 128GB Space Black-1 ÉV GARANCIA - Kártyafüggetlen, MS4420, 100% Akksi
- HIBÁTLAN iPhone 13 Pro Max 256GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3685
- Apple iPad Pro 12.9 4.Gen (2020) 94% (1év Garancia) + Ajándék tok
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

