Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 157 reacties
Submitter: bobwarley

Er is deze week wat ophef ontstaan over DirectX 10.1, de nieuwe versie die tegelijk met SP1 voor Vista zal worden geïntroduceerd. The Inquirer riep dat DX10-kaarten nu 'overbodig' zijn geworden, wat onder meer door Slashdot werd opgepikt.

De GeForce 8800 en Radeon HD 2900 zullen beide niet in staat zijn om DirectX 10.1-software te draaien, wat ze volgens de Britse tabloid meteen overbodig maakt. Een vreemd standpunt gegeven de verdere argumentatie, want in de rest van het artikel ratelt men alleen nog maar over hoe nutteloos de nieuwe features wel niet zouden zijn. Eigenlijk zou het natuurlijk helemaal geen verrassing moeten zijn dat hardware van een volgende generatie meer features biedt dan de huidige, noch dat het altijd vrij lang duurt voor spellen er ook goed gebruik van gaan maken.

DirectX 10 DirectX 10.1 - sinds twee weken in handen van een groep bètatesters - brengt onder andere shader model 4.1, filteren met 32-bits precisie, minimaal 4x anti-aliasing met dynamische pixelpatronen, texture cube arrays, betere compressie en meer flexibiliteit bij het kopiëren van data. Verder wordt XAudio2 toegevoegd, het geluidssysteem dat ook voor de Xbox 360 wordt gebruikt. DirectSound verdwijnt naar de achtergrond, waardoor het tegelijk ontwikkelen voor pc en Xbox op langere termijn makkelijker moet worden. Tenslotte zal 10.1 beter gebruikmaken van multithreading, wat voor eigenaars van dual- en quadcoremachines betere prestaties kan betekenen.

Waarschijnlijk zullen de nVidia G90 en ATi R700 de eerste videochips worden met ondersteuning voor DirectX 10.1, maar Vista met SP1 zal nodig zijn om er gebruik van te kunnen maken. De huidige hardware meteen overbodig verklaren lijkt dus niet nodig, maar geheel nutteloos is de update nou ook weer niet.

Moderatie-faq Wijzig weergave

Reacties (157)

De HD2900XT heeft al enkele features die nodig zijn voor DirectX10.1. Programmeerbare AA is daar een voorbeeld van. Maargoed, ik weet niet of DX10.1 ondersteund moet worden door games, maar als dat zo is dan duurt het waarschijnlijk nog wel een tijdje voor er games zijn met DX10.1. Bovendien is de G80 nu ook al weer bijna een jaar oud, logisch dat er vooruitgang is. Iedereen wist al dat de kaarten op een gegeven moment te zwak zouden worden voor de echte DX10 titels.
inderdaad, de DX10 kaarten van nu zijn niet opgewassen voor de echte DX10 games, het was sowieso al dom om zo'n kaart aan te schaffen omdat het de 1e modellen zijn van de DX10 (dus test kaartjes) verder als een DX10 demotje draaien komt het toch niet. Het gaat er meer om hoe die kaarten nu presteren op DX9 vlak.
Hoe weet je nu al hoe echte DX10-games gaan draaien, als die er nog niet eens zijn?
De eerste generatie DX9-kaarten (Radeon 9700Pro) was ook niet noemenswaardig sneller dan de laatste generatie DX8-kaarten in DX8-software, maar tot op de dag van vandaag kun je met een Radeon 9700Pro nog prima alle DX9-games spelen. Natuurlijk niet meer op de allerhoogste resoluties, en het allerhoogste detail, maar toch zeker nog zeer acceptabel. 1024x768 met 4xAA lukt wel met de meeste spellen, met goede framerates.

Ik zie niet in waarom dat anders zou zijn bij de GeForce 8-serie. Ze zijn toch weer een flink stukje sneller dan de 7-serie, en daarbij kun je in DX10 een hoop dingen efficienter implementeren. De game kan dus mooier en gedetaiieerder gemaakt worden zonder op de framerate in te leveren. En in DX9 is die framerate uitmuntend.

Natuurlijk komen er over een paar maanden weer snellere kaarten met meer toeters en bellen, maar dat maakt de huidige kaarten niet ineens totaal hulpeloos. Die kunnen prima mee. Sowieso zullen ontwikkelaars voorlopig nog rekening houden met mensen die nog DX9-hardware hebben, dus met DX10 zit je altijd goed.

[Reactie gewijzigd door ddbruijn op 14 augustus 2007 11:30]

In het verleden is al meerdere malen gebleken dat als je een grafische kaart wil hebben die alle features uit een directx serie aankan je nooit de eerste generatie kaarten met ondersteuning voor die directx serie moet kopen.
Dit Simpelweg omdat deze kaarten over het algemeen tegen de tijd dat er spellen verchijnen die de features gebruiken je kaart niet over voldoende rekenkracht meer beschikt om ze ook met de features aan te spelen. Daarnaast laat de .1 versie van een directX serie nooit erg lang op zich wachten zoals ook nu weer blijkt.

Zoizo eigenlijk moet je er eigenlijk vanuit gaan dat je grafische kaart als je met volledige effecten enz aan wil spelen binnen 1 a 1.5 jaar verouderd is, dat is helaas de wereld van pc gaming. Voordat deze 10.1 features worden gebruikt zijn we overgens wel 1 a 1.5 jaar verder en is de 8800 serie en zijn ati tegenhanger al lang en breed verouderd.

Wat ik wel "vervelend" vind is dat MS steeds meer probeerd zijn pc platform gelijk te trekken met het Xbox platform, ideaal voor ontwikkelaars natuurlijk maar Ik zit hier eerlijk gezegt helemaal niet te wachten. Dit werkt namelijk alleen maar bedrijven in de hand die goedkope poorts van hun Xbox spellen naar de pc toe brengen, en "limiteerd" het gebruik van de grotere mogelijkheden van pc's ten opzichte van Consoles.

[Reactie gewijzigd door reb65 op 12 augustus 2007 13:01]

Niet helemaal waar, volgens mij waren er sinds dx8 geen incementele updates meer waardoor een oude videokaart niet meer zou werken. (bijv. Geforce 3 tov Geforce 4) Alle games die op een geforce 4 werkten deden het ook wel met een Geforce 3, zelfde met de dx 9 videokaarten.

Waar ik het wel met je eens ben is het ontwikkelen voor multiplatforms. Het geld zit 'm nu eenmaal in consoles. Daarom snap ik ook niet helemaal al die toevoegingen aan dx 10, behalve dan dat ontwikkelaars makkelijker kunnen porten van xbox naar pc.

Dus die nieuwe features zullen ze waarschijnlijk niet gebruiken, aangezien een groot deel van de games geport wordt.
Veel ophef over niets. De DX10.0 standaard is nog niet eens ingeburgerd, dus mensen met een Geforce 8800 of een ATi 2900 kunnen nog een flinke tijd vooruit. Het zijn behoorlijk sneller kaarten, ook in DX9, dus wat is het probleem?

Voor echte DX10.0 spellen op ultra-high settings zijn die kaarten ook al niet krachtig genoeg, dus DX10.1 is voor die kaarten niet het enige probleem. Vista SP1 komt pas in november/december, en voordat de eerste game uitkomt die gebruik maakt van DX10.1 wordt het dus eind 2008 of later. En die spellen kun je met een 8800GTX nog gewoon spelen, op medium/high settings. DirectX is immers backwards compatible.

Oftewel: Elke gamer loopt altijd wel iets achter op de nieuwste technieken, tenzij je elke maand nieuwe hardware koopt. Is altijd zo geweest en zal ook altijd zo zijn. In plaats van te zeuren kun je ook gewoon de goede games van nu gaan spelen. Het gaat naar mijn mening niet om de nieuwste technieken, maar om het spel-plezier.

[Reactie gewijzigd door geert1 op 12 augustus 2007 13:39]

Veel ophef over niets. De DX10.0 standaard is nog niet eens ingeburgerd, dus mensen met een Geforce 8800 of een ATi 2900 kunnen nog een flinke tijd vooruit. Het zijn behoorlijk sneller kaarten, ook in DX9, dus wat is het probleem?

Dat is juist het probleem: DX10.0 is nog niet eens ingeburgerd, en nu staat DX10.1 al voor de deur. Het is nu dus nutteloos een DX10.0 kaart te kopen, en kan je beter wachten op DX10.1 - aangezien de developers zich nu gewoon op de bijna gereedstaande DX10.1 versie gaan richten.
Volgens mij snappen de meeste mensen hier niet dat het DX10.1 is, en niet DX11.
Het verschil is dus veel kleiner dan tussen DX9 en DX10.
Je moet dit zien als bv de overgang van DX8 naar DX8.1, waar je oa ps1.4 support kreeg.
Voor programmeurs betekende dat gewoon dat ze nog steeds ps < 1.4 moesten ondersteunen, en dus in principe DX8-code moesten schrijven.
DX8.1-code kon je alleen makkelijk 'erbovenop' zetten.
Zo zal het nu ook zijn. Ze zullen gewoon een extra check doen voor DX10.1 features, en zo ja, dan schrijven ze wat extra code voor betere antialiasing etc.
Zo gek boeiend zijn die functies nou ook weer niet. De eindgebruiker zal er waarschijnlijk weinig van zien, net zoals de meesten waarschijnlijk het verschil tussen een GeForce4 (ps1.3) en een Radeon 8500 (ps1.4) ook niet zagen. Voor de programmeurs was het echter een wereld van verschil (effecten met grotere precisie en in minder passes).
@Cowboy_Bebop:
Als DX10 zo langzaam inburgert, waarom zou DX10.1 dan ineens 3 maand daarna wel ingeburgerd zijn? Zo snel gaat dat echt niet. En anders maar wel, dan heb je aan een 8800GTX nog steeds genoeg om de spellen met veel plezier te spelen. Zij het zonder enkele effecten en optimalisaties.

Laten we nu eerst eens afwachten wat de echte DX10 games gaan leveren, en hoe die spellen spelen op de huidige hardware. Daarna wil ik wel eens zien wat de Geforce 9 en de ATi R700 in petto hebben, en dan vorm ik wel een oordeel over deze kwesties. Tot die tijd vind ik het dus veel ophef over niets.
Als de eerste generatie DX10-kaarten niet tegelijkertijd het beste van het beste op het gebied van DX9 zouden zijn zou ik je gelijk geven. Nu is het gewoon het standaard dilemma dat je altijd hebt: over een half jaar krijg je iets beters voor hetzelfde geld. Tegen de tijd dat je 10.1 echt nodig hebt ben je ook drie jaar verder en allang aan een upgrade toe.

[Reactie gewijzigd door Wouter Tinus op 12 augustus 2007 15:03]

erm... bleuh?

dit hele artikel klinkt gewoon overbodig, want elke dag komen nieuwe "dingen/apparaten/software" uit in computerland die de vorige generatie "overbodig" maakt...

en wat betreft DirectX... sloop dat er voor mijn part maar uit... OpenGL, OpenAL én SDL is all you need om voor alle platforms te kunnen ontwikkelen.

(het is OPEN dus je kan het zo maken dat het ook op een XDOOS/PS3/Wii of whatever er ook nog meer mag zijn werkt)

[Reactie gewijzigd door mstreurman op 12 augustus 2007 12:44]

1 ding weet ik wel en dat is dat DirectX er 10x beter uit ziet dan openGL of 3DFX etc, veel scherpere textures etc.

Dan maar aan windows vast zitten, maar zonder DX geen normale graphics
(het is juist zover ontwikkeld omdat het van MS komt, en daar wordt later weer op gebasseerd door openGL )
1 ding weet ik wel en dat is dat DirectX er 10x beter uit ziet dan openGL of 3DFX etc, veel scherpere textures etc.
Doom3 was het grafisch topspel van zn tijd, en het is gemaakt op OpenGL, en de OpenGL-versie (de release voor OSX) ziet er dan ook even mooi uit als de D3D versie(terwijl die dezelfde GFX kon toveren op lagere hardware!)
Met OpenGL kan je dus evenveel (zoniet meer) als met DX, het enige verschil is dat bijna alle games op DX platformen worden gereleased.

[Reactie gewijzigd door kiang op 12 augustus 2007 19:13]

Doom3 was het grafisch topspel van zn tijd
Uhhh... Far Cry en HalfLife 2 waren grafisch toch wel wat beter.
Doom3 had maar hele beperkte shading (wat niet zo opvalt omdat alles in het spel toch enorm donker is). Het shading-model was gebaseerd op wat er op GeForce2 en GeForce3 mogelijk was.
Het is later in SM2.0-achtige shaders verpakt voor nieuwere hardware om het wat efficienter te maken, maar het blijft enorm simpele shading. Daarom ziet alles er ook als plastic uit in Doom3. Iets waar FarCry en vooral HalfLife2 geen last van hebben.
Met OpenGL kan je dus evenveel (zoniet meer) als met DX
Niet meer. Ten tijde van Doom3 was dat nog min of meer waar (hoewel Doom3 daar zelf geen bewijs voor levert), maar OpenGL is nog niet rechtgetrokken met DirectX 10, en bungelt nog rond de DX9-standaard. Alleen met vendor-specific extensions zou je kunnen wat je met DX10 standaard kunt, maar dan programmeer je je helemaal suf als je het op alle OSen en GPUs wilt laten werken.
maar OpenGL is nog niet rechtgetrokken met DirectX 10

Dat is niet waar. De OpenGL extensies waren al beschikbaar in november 2006, ruim voor Vista op de markt kwam, en ze zijn nog steeds de enige manier om de nieuwe features te gebruiken in operating systems anders dan Vista.

Maar kankeren over OpenGL is immer populair. Jammer eigenlijk.
De OpenGL extensies waren al beschikbaar in november 2006, ruim voor Vista op de markt kwam, en ze zijn nog steeds de enige manier om de nieuwe features te gebruiken in operating systems anders dan Vista.
Extensies van NV ja, begin je niet veel mee op ATi-kaarten. Zoals ik zeg, je programmeert je suf als je het nu al overal wilt laten werken.
Om die reden loopt OpenGL al jaren achter de feiten aan, en is het niet populair meer bij game-ontwikkelaars. Of dacht je dat het komt omdat mensen op tweakers 'kankeren' over OpenGL? :)

[Reactie gewijzigd door ddbruijn op 12 augustus 2007 23:22]

Extensies van NV ja, begin je niet veel mee op ATi-kaarten. Zoals ik zeg, je programmeert je suf als je het nu al overal wilt laten werken.

Dat is ook niet waar. Het zijn extensies van het EXT_ type, dat wil zeggen dat ze door tenminste twee vendors ondersteund worden.
Ik vind de woordkeuze hier niet helemaal gepast, de woordkeuze voor zeuren in dit geval.

Ik vraag me overigens af onder welke paddestoel jij geleefd hebt. Maar er is computerland altijd twee producten die volgens o.a. tweakers niet door 1 deur kunnen. Ik noem enkele voorbeelden:

Microsoft - Apple
Windows - Linux
Office - Open Office
IE - Firefox

door gaan?

Wat vreemder is waarom alle producten van MS in twijfel getrokken worden.
Hmm, met OpenGL is het altijd blurry, de textures zijn gewoon uitgesmeerd en dof. De textures zijn in D3D veel scherper en gedetaileerder.
Wat is dat voor bullshit, het is een programmeertaal, die veranderd niks aan de textures.

Start Farcry op in DX9 mode en in OpenGL mode, het verschil:

HELEMAAL NIETS

(mischien wat fps'jes)
Dat komt omdat farcry overal al dezelfde nep rubber glans blur overheen heeft zitten.
Dus D3D van farcry is OpenGL op D3D mode, maar als je bijvoorbeel stalker neemt of de HL2 engine dat is gewoon luid en duidelijk D3D.
Open is maar de helft van het verhaal. In een ideale wereld zou er één ideale API zijn die door alle PC's Mac, gameconsoles e.d. ondersteund zou worden. Maar de andere kant van het verhaal is dat hoe generieker je API is (hoe meer verschillende hardware je er mee kan aansturen) hoe minder optimaal het gebruik maakt van bepaalde features die niet in alle kaarten zitten e.d. Oftewel, je krijgt een 'least common denominator' aan features, die niet optimaal performen.

Helemaal aan de andere kant van het spectrum zitten custom made API's en games, tailored naar één architectuur. Die zullen beter performen en sneller de nieuwste features kunnen gebruiken. Dat zie je meer aan de console kant gebeuren. Uiteindelijk ligt de waarheid in het midden en zijn er dus meerdere API's en architecturen die met elkaar concurreren. DirectX is wel interessant omdat het wordt gebruikt door de (Direct)X-Box... Voor zover ik weet gebruiken Nintendo en Sony eigen API's en niet OpenGL. Dus dat kan een duidelijk voordeel zijn van DirectX voor een ontwikkelaar.
bwa, dat een point-release een volledige generatie hardware overbodig maakt is toch nogal opmerkelijk. de GF4 serie was namelijk compatibel met DX9.0 tot en met de laatste DX9, maar DX10 is nog geen jaar uit, idem voor de DX10 kaarten, en er is al een nieuwe versie dei niet werkt met de "nieuwe generatie" kaarten...
Een GF4 ondersteunde toch ook niet alle features in DX9?
Die features hadden toen (meestal, SM3.0 is een uitzondering) geen eigen versie-typering.
Wat dat betreft verandert er in principe niets, behalve dat het overzichtelijker wordt voor programmeurs.
Ik heb in het DX9-tijdperk met een flinke database aan caps-dumps gewerkt, om voor mezelf uit te zoeken hoe ik DX7, DX8 en DX9-hardware zou laten werken.
Met DX10 of DX10.1 weet ik precies waar ik aan toe ben, en hoef ik geen rekening te houden met het feit dat ATi net even wat meer texture stages ondersteunt dan nVidia, of nVidia net weer wel trilinear kan filteren op cubemaps en ATi weer niet, of weet ik wat er allemaal was.
Grapjas, heb je enig idee wat er bij komt kijken om een engine voor meerdere platforms beschikbaar te maken? Een verandering van API is maar de minst ingrijpende, zeker gezien het feit dat OpenGL en D3D in essentie helemaal niet zoveel van elkaar verschillen, en bovendien spreek je op de consoles liever direct de hardware aan ipv gebruik te maken van een API. Het echte werk zit erin om de beschikbare hardware, dat op elk platform anders is, zo effectief mogelijk te gebruiken. Een oplossing voor een probleem dat op het ene platform goed werkt kan op een ander platform compleet averechts uitpakken. Platformspecifieke optimalisaties kosten gewoon het meeste werk bij het porten van een engine.
Ehm grapjas, ja daar heb ik een redelijk goed idee van. Ik heb al enkele (hobby) games gemaakt waaronder een 3D tetris en een 2D Mario rip-off en volg de markt al vijftien jaar. Ik betwijfel ook ten zeerste je stelling dat je op console games de hardware direct aanspreekt. Heb je daar bronnen voor? Volgens mij spreek je gewoon API's aan, alleen dan geen DirectX of OpenGL maar een Sony of nintendo specifieke. Daar kún je natuurlijk omheen, maar dat kan op de PC ook. I seriously doubt it dat bijv. E.A games de hardware direct aanspreken. En het zou me zeer verbazen als bijv. Zelda dat wel doet... voorbeelden?

Ik heb ook zowel voor DirectX als OpenGL geprogrammeerd. Hoewel je gelijk hebt dat de API calls porten zeker niet het meeste werk is als je een game multi-platform wilt maken is het wel degelijk extra werk. En dus kan het wel degelijk een overweging zijn. Als je je spel graag wilt uitbrengen op de PC, maar ook graag naar de consoles wilt (kunnen) porten, waarom zou je dan niet voor DirectX kiezen i.p.v. OpenGL? Waarom zou je jezelf onnodig werk op de hals halen? Als je kiest voor DirectX kun je een hoop werk besparen. Ik ben het ook zeker niet met je eens dat D3D en OpenGL niet eens zoveel met elkaar verschillen. Ik geef toe dat mijn ervaring een paar jaar oud is, maar destijds waren de verschillen zeer behoorlijk, je moest je architectuur toch wel wat anders opzetten afhankelijk van welke API je gebruikte.

En die platformspecifieke optimalisaties waar je het over hebt.. was dat niet juist de strekking van mijn argument? Uiteindelijk is één API voor alle systemen onmogelijk. Mijn stelling is dat MS er goed in slaagt om DirectX zowel bruikbaar als relevant te maken / houden voor een groot deel van de ontwikkelaars. En dat doen ze o.a. door de API op zowel PC als XBox te ondersteunen.
Ik betwijfel ook ten zeerste je stelling dat je op console games de hardware direct aanspreekt. Heb je daar bronnen voor? Volgens mij spreek je gewoon API's aan, alleen dan geen DirectX of OpenGL maar een Sony of nintendo specifieke.
Nee hoor, hoewel het met de laatste generatie misschien wat minder is.
Ik ken uit de demoscene een aantal ontwikkelaars voor oa PS2 en DreamCast consoles (waaronder ook die werkzaam zijn bij EA), en die doen veel zelf.
De PS2 en DreamCast hadden sowieso flink afwijkende hardware van een doorsnee PC+GPU, dus OpenGL zou er sowieso nooit goed op kunnen werken.

Bij de XBox ligt het wat anders, omdat je daar DirectX hebt, wat sowieso een lager niveau is dan OpenGL, en de DirectX-API is ook wat aangepast om perfect aan te sluiten op de XBox hardware, en is dus niet een 1:1 kopie van wat je op Windows hebt. De XBox heeft ook een 'gewone' GPU, die weinig afwijkt van wat er in een PC zit. Evenals de Wii en PS3 overigens, maar vooral de PS3 heeft dan weer de sterk afwijkende Cell-processor, waardoor je alsnog veel zelf moet schrijven, omdat standaard C/C++ code met een standaard-compiler gewoon veel te traag is.
Daar kún je natuurlijk omheen, maar dat kan op de PC ook.
Op de PC is dat natuurlijk veel lastiger omdat je een hele grote verscheidenheid aan CPUs, geheugenconfiguraties, chipsets en GPUs moet ondersteunen.
Bij een console ligt alles vast, zelfs de timings van het geheugen wijken nooit af. Iedere console is dus tot op de laatste cycle EXACT hetzelfde, en daarom kun je heel specifiek voor de hardware optimaliseren. Iets wat voor PCs gewoon ondoenlijk is.

Verder snap ik het punt van OpenGL vs D3D niet in relatie tot dit artikel.
DX10.1 is een nieuwe standaard van 3d hardware-features. In OpenGL zal dat ook betekenen dat er weer extra extensies nodig zijn om die te gebruiken, en die zullen ook niet werken op de huidige DX10-kaarten, want die hebben gewoon die features niet aan boord (nog afgezien van het feit dat die extensies vendor-specific zijn, en pas over maanden, zoniet jaren door de ARB gestandaardiseerd zijn).
DX10.1 is een nieuwe standaard van 3d hardware-features. In OpenGL zal dat ook betekenen dat er weer extra extensies nodig zijn om die te gebruiken, en die zullen ook niet werken op de huidige DX10-kaarten, want die hebben gewoon die features niet aan boord (nog afgezien van het feit dat die extensies vendor-specific zijn, en pas over maanden, zoniet jaren door de ARB gestandaardiseerd zijn)
Het verschil tussen D3D10 en D3D10.1 is "heviger" dan het verschil tussen D3D8 en D3D9. Met versie 10 van de API zijn de zogenaamde "caps" gestorven. Als de D3D10 API op je systeem beschikbaar is, kun je er als programmeur vanuit gaan dat alle features van de API ook daadwerkelijk werken. Ik heb 10.1 nog niet doorgekeken, maar als ze dezelfde filosofie doortrekken, wat erg waarschijnlijk is en wat dit hele nieuwsartikel bestaansrecht geeft, werkt het in 10.1 net zo: als 10.1 beschikbaar is, dan werken alle features van 10.1, wat wil zeggen dat je 10.1 niet kunt installeren als je een 8800 hebt, terwijl je D3D9 wel kon installeren met een SM 2.0 kaart.

OpenGL heeft hier sowieso geen laast van wegens hun extensiesysteem. Wat ook weer een hel is, want idd zoals je zegt zit je in het begin met vendor-specifieke extensies, waar je als developer al helemaal niet blij van wordt...
Ik heb 10.1 nog niet doorgekeken, maar als ze dezelfde filosofie doortrekken, wat erg waarschijnlijk is en wat dit hele nieuwsartikel bestaansrecht geeft, werkt het in 10.1 net zo: als 10.1 beschikbaar is, dan werken alle features van 10.1, wat wil zeggen dat je 10.1 niet kunt installeren als je een 8800 hebt, terwijl je D3D9 wel kon installeren met een SM 2.0 kaart.
Klopt, zoals ik volgens mij elders ook al zei.
Maar het is wel zo dat de DX10.1-API praktisch identiek is aan die van DX10, dus op source-niveau ben je wel meteen compatible met DX10.1.
Daarom is het dus redelijk eenvoudig om de extra features te gebruiken, waar je bij D3D9 praktisch een nieuwe engine moest schrijven om alleen al de DX8-functionaliteit te kunnen gebruiken.

Dus nee, je kunt geen DX10.1 op een 8800 draaien, maar de engine voor DX10 en DX10.1 is praktisch identiek, dus een fallback naar DX10 is makkelijk gemaakt door ontwikkelaars.
Bij DX9 was het eigenlijk zo dat een fallback onmogelijk zou zijn geweest als er geen support voor DX8-kaarten en features zou zijn geweest. Dan moest je gewoon een DX8-engine ernaast hangen.

Ik zie het eigenlijk zo dat je nu ipv de caps gewoon het versienummer van de API hebt om te bepalen welke features je kunt gebruiken. Veel simpeler.
Ehm grapjas, ja daar heb ik een redelijk goed idee van. Ik heb al enkele (hobby) games gemaakt waaronder een 3D tetris en een 2D Mario rip-off en volg de markt al vijftien jaar
Ik vind het erg knap dat jij daar een redelijk goed idee van hebt terwijl je alleen maar in de hobby sfeer bezig bent geweest en er dus geen flauw benul van hebt hoe het er op de consoles aan toe gaat. Ik ben zelf professioneel gamedeveloper en ontwikkel een 3d engine voor de PC, Xbox360 en de PS3, die gebruikt is in Tomb Raider: Legend en die gebruikt gaat worden in TR8 en andere toekomstige games van Crystal Dynamics.

Nee, ik heb geen (voor jou beschikbare) bronnen voor mijn info, het staat namelijk nergens op een publiekelijke plek gedocumenteerd. Niet zo gek, aangezien je een dikke NDA mag tekenen voordat je platform documentatie überhaupt onder ogen krijgt. Dus daarvoor zul je simpelweg een dagje met me mee moeten draaien.
I seriously doubt it dat bijv. E.A games de hardware direct aanspreken. En het zou me zeer verbazen als bijv. Zelda dat wel doet... voorbeelden?
Denk je nou echt dat ik mijn tijd ga verdoen door voorbeelden op te zoeken zodat ik jouw twijfels, die nergens op zijn gebaseerd anders dan pure persoonlijke aannames, weg kan nemen? Ga anders zelf op zoek naar voorbeelden. Als ik ze zou kunnen vinden (als in, publiekelijk gepubliceerd bewijs), kan jij dat natuurlijk ook :). Ik kan je slechts vertellen dat we voor PS2 en Xbox (1) al jaren gebruik maakten van directe communicatie met hardware (dus zelf de GPU command buffers vullen met commando's en die naar de GPU pushen). De 360 en PS3 zijn natuurlijk nog betrekkelijk nieuw dus daar beginnen we met de API, en beetje bij beetje wordt de API steeds meer gebypassed. Je begint bijvoorbeeld met in plaats van een IDirect3D9Texture te maken via de device en te locken zodat je je data erheen kunt kopiëren, gewoon een D3DTexture op de stack aan te maken en de datamembers (die eigenlijk niets meer zijn dan de representatie van een texture op de GPU command buffer) zo in te stellen dat hij direct naar de texturedata in het geheugen wijst, zodat je onnodig kopiëren kunt voorkomen. En aan het eind van het traject zit je gewoon helemaal zelf de GPU buffer te vullen met commando's en aan de hardware te voeden, zodat je totale controle hebt over het systeem.
Ik ben het ook zeker niet met je eens dat D3D en OpenGL niet eens zoveel met elkaar verschillen. Ik geef toe dat mijn ervaring een paar jaar oud is, maar destijds waren de verschillen zeer behoorlijk, je moest je architectuur toch wel wat anders opzetten afhankelijk van welke API je gebruikte
Dan vraag ik me af hoe lang dat geleden is. Pre DX8? Ja, OpenGL heeft een immediate mode middels glVertex() & co, maar als je een serieuze engine schrijft laat je dat achterwege en gebruik je dingen als vertex buffer objects. Ik zie niet in hoe de architectuur verder echt daadwerkelijk anders is.
En die platformspecifieke optimalisaties waar je het over hebt.. was dat niet juist de strekking van mijn argument?
Ik reageerde op mstreurman, niet op jou.
En dat doen ze o.a. door de API op zowel PC als XBox te ondersteunen
Lol, je moest eens weten hoeveel onze Xbox360 engine verschilt van onze PC engine. Ik had toevallig laatst eens gekeken naar het aantal regels code voor in een andere discussie hier op t.net. Onze PC engine is 25.000 regels code. De 360 engine is "slechts" 15.000 regels code. Dat klinkt niet echt als bijna 100% crossplatform code, of wel? ;)
Ik ben het ook zeker niet met je eens dat D3D en OpenGL niet eens zoveel met elkaar verschillen. Ik geef toe dat mijn ervaring een paar jaar oud is, maar destijds waren de verschillen zeer behoorlijk, je moest je architectuur toch wel wat anders opzetten afhankelijk van welke API je gebruikte.
Ja mijn ervaring is ook wat verouderd op dat gebied, maar voor iedereen die het wil zien: start bijvoorbeeld Unreal Tournament (de eerste ja) maar eens op in D3D en OpenGL, ziet er toch wel behoorlijk anders uit. Voor UT is het ook vrij makkelijk te coden, dus je kan ook kijken in de (juiste) files (durf niet te zeggen welke je moet hebben) hoe het in elkaar steekt. Zeker weten dat je verschil zult vinden ^^ (is dus wel al even oud).

[Reactie gewijzigd door the_RJ op 12 augustus 2007 21:22]

Ja mijn ervaring is ook wat verouderd op dat gebied, maar voor iedereen die het wil zien: start bijvoorbeeld Unreal Tournament (de eerste ja) maar eens op in D3D en OpenGL, ziet er toch wel behoorlijk anders uit
Bedankt voor je bewijs dat je totaal geen verstand hebt van grafische APIs. De APIs zorgen er namelijk niet voor dat dingen er anders uitzien, aangezien het de hardware is die tekent, en door beide APIs op dezelfde manier wordt aangestuurd. Het feit dat de D3D implementatie er anders uitziet dan de OpenGL implementatie, wil niets meer zeggen dan dat de implementaties (van de Unreal 3D engine dus) simpelweg verschillen. Niets meer en niets minder.
Al die mensen die toch constant zeiken op Microsoft, omdat het software is moeten ze het dan toch maar maken voor een systeem van 6 jaar oud (XP) en het liefst nog gratis ook. Als ik naar de autodealer ga, een auto koop en 6 jaar na dato de kleur van het ding niet zo mooi meer vind dan ga ik toch ook niet naar de dealer om te eisen dat de kleur toch nog gewijzigd wordt. Dat geld wat ik er toen tegenaan gesmeten heb voor XP is het wel waard geweest, ik heb 6 jaar lang kunnen genieten van gratis software, gratis ondersteuning en gratis updates van Microsoft en dat vind ik een ongekende prestatie, als ik nu een willekeurige cd uit mijn la haal van 6 jaar terug denk ik dat ik voor het overgrote deel geen ondersteuning en updates meer kan krijgen.

en voor alle mensen die een dx 10 kaartje gekocht hebben, je hebt gekregen waar je voor betaald hebt, dat dx10.0 nu niet zo'n super succes blijkt geworden te zijn is natuurlijk heel sneu maar iets kopen met het oog op de toekomst neemt altijd risico's met zich mee, zeker in de computer wereld
Nou ja, gekregen waar ze voor betaald hebben? hmm het is nog steeds wachten op 'alle' DX10 games!
DX 8 en DX9 hebben we ook heel lang mee gedaan.
Wie kon nou raden dat voor er echt fatsoelijk met DX10 gespeeld kan worden, deze alweer vervangen word door DX10.1.......dude ik moet zeggen echt Lame!

Ik mazzel dat ik toevallig nog wachte tot Q4 2007 voor ik me kaartje koop (9800GTX?)
Ik doe er niet meer aan mee.. Heb sinds twee weken een GeForce 8800GTS, nu komt de GeForce 9 serie er al weer aan. Het is gewoon gekmakerij die heel veel geld uit de zakken van mensen klopt. Over een half jaar is het DirectX10.2 met een extra feature.

[Reactie gewijzigd door TweakerDwayne op 12 augustus 2007 12:38]

Je bent niet verplicht om met de techniek bij te blijven hoor..

Jij hebt nu sinds 2 weken dan een 8800GTS, maar al eind vorig jaar was de GF8-serie beschikbaar. Dus na een jaar weer een nieuwe serie vind ik niet zo vreemd, zeker niet als je kijkt naar de veranderingen in besturingssysteem wat mogelijk meer mogelijkheden geeft.

Als je je oude spul kunt verkopen is het trouwens niet eens zo gigantisch duur om 'bij te blijven'. Zo zit ik ook met een systeem uit december 2006 met een Core 2 Duo E6600, DDRII en een 8800GTX. We zitten alweer op Quadcores, DDRIII en een 8800Ultra. Ik ben er nog tevreden mee, maar anders verkoop ik m'n spul weer en dan heb ik de helft van het bedrag van mijn nieuwe spul alweer eruit.

Het is maar wat je wilt zien, als je veeleisend bent zul je er geld in moeten stoppen. Een high-end kaart (of zelfs SLI) kopen is inderdaad slecht voor je portomonee omdat er beter "Bang for Buck" spul tekoop is. Maar stiekem is het ook wel mooi om zulk spul te hebben. Ik zie de G90 in ieder geval graag komen samen met DX10.1.
Tja ik snap je frustratie, maar zoals meerderen al zeggen, de GF 8 serie is al bijna een jaar oud. Het was al duidelijk dat DX10 zoals het nu is niet de standaard zou blijven, dat er een update zou komen, blijkt dus dat het wel meer dan een simpele update is, maargoed dat terzijde. Daarnaast zijn er heel wat reviews te vinden met de eerste DX10 titels en de Nvidia/Ati(/AMD) DX10 kaarten. Het was daar toch al wel duidelijk dat die kaarten echt niet zo denderend presteerde in die titels.

Goed ik heb vorige week net een nieuw systeem gekocht en daarin een x1950xt genomen, met het idee "ik wacht wel tot DX10 echt klaar is en de drivers goed draaien, dan komen er wel nieuwe kaarten, dan maar eens zien wat goed presteerd". Tegen die tijd (jaar?) krijg ik nog wel wat terug voor deze kaart en zijn de huidige kaarten zeker goedkoper geworden dan het verschil wat ik terugkrijg van de nieuwprijs van deze x1950xt, zal er dus nooit armer van worden.

Aan de andere kant, gamedevelopers weten zelf natuurlijk ook wel welke hardware de meeste gebruikers hebben, de meeste games zullen dus ook wel gemaakt worden zodat huidige kaarten die kunnen draaien, wellicht niet op de hoogste settings, maarja het draait iig wel.

[Reactie gewijzigd door the_RJ op 12 augustus 2007 21:14]

je wist dat de serie al verouderd was, en dat er nieuwere en betere/efficientere kaarten komen aan het eind van dit, of begin volgend jaar, je bent gewoon dom om nu nog pas een keer een 8800 te kopen. Had je beter je geld kunnen bewaren en 1 van de nieuwe kunnen halen (of eerst nog een x1950xtx kopen die zijn ook niet eens duur)
Had je T.net misschien niet goed gevolgd ofzo? Je had kunnen weten dat ze vlug met de 2de generatie GPU's zouden komen (mede omdat de huidige generatie ondermaats presteert in DX10). Daar komt dan nog eens bij dat ze nooit zullen stoppen met ontwikkelen. Of had je liever dat we nog steeds FPS's a la Doom 95 speelden, omdat de GPU's niet verder zijn ontwikkelt?.
Laten ze eerst maar eens full dx10 spellen op de markt brengen ;)

Ik heb nu een 7900GT, maar ik ben geenzins van plan de gf8 serie te halen..misschien sla ik ook de 9 reeks over....elk jaar een nieuwe vid kaart is gewoon te gek 8)&
idem, ik zit nu op 7650, en ik ga miss meegaan met de 9000serie, maar wss wacht ik tot daarna... :)
gaaf dan ben ik weer bij, met mijn 9800 Pro :+

en maar sparen voor de 8800 GTS ... 8-)
Wat ik me nou afvraag is.
* installeert windows nu dx 10.1 automatisch
* of, kijkt deze naar je huidige hardware, en installeert deze niet als je kaart 10.1 toch niet aan kan.
* Draait 10.1 prima op 10.x ondersteunende kaarten, echter zijn dan alleen de 10.1 features niet beschikbaar.
Wat ik eruit opmaak is dat DX10 vs DX10.1 niet zoals DX9.b vs DX9.c , een beter versie is, maar gewoon een andere versie met andere regels, en een verandering in het audio-systeem. Nu zitten de meeste mensen juist voor de pracht en praal bij DX10, dus zal dit ze niet doen besluiten om een nieuwe VIDEOKAART te gaan kopen.

(ikzelf bijvoorbeeld vind dat het geluid gewoon oke moet zijn, onboard, leuk normaal setjes van Logitech erbij incl subwoofer @ 49,99 en That's it, waaras de GPU wel ¤400 of meer mag zijn)

De meeste sites zeggen dat de veranderingen niet echt om wild van te worden zijn, en dat de kans dus groot is dat de meeste developers bij DX10 zullen blijven aangezien de verschillen zo nietig zijn, en ze DX10 nu al beter kennen + al aan het ontwikkelen zijn met DX10.

Maar zoals altijd met techniek zullen we moeten afwachten hoe het zal lopen.

[Reactie gewijzigd door Pimpy op 13 augustus 2007 14:32]

* installeert windows nu dx 10.1 automatisch
Waarschijnlijk wel, zo is het altijd al gegaan.
* Draait 10.1 prima op 10.x ondersteunende kaarten, echter zijn dan alleen de 10.1 features niet beschikbaar.
10.1 werkt niet, maar zoals altijd zal Windows de nieuwe functionaliteit NAAST de oude installeren. Ze zijn altijd backwards compatible.
Je DX10 blijft dus gewoon werken, en ook DX9 (hoewel ik eigenlijk niet met zekerheid durf te zeggen of Vista uberhaupt iets lager dan DX9 ondersteunt... Bij XP blijft alles gewoon werken, voorzover je videodriver het toelaat dan... M'n GeForce-driver stikt dusdanig van de bugs in DX7 dat het alsnog niet te gebruiken is).
@ harrald
Ja, maar het stomme is dat toen iedereen de 8800GTS of X2900XT gekocht heeft, er geen eens DX10 games beschikbaar waren. Nu komt de volgende al, welke dus niet ondersteund wordt, en we kunnen nog STEEDS niet genieten van DX10 effecten op CoJ en geloof nog een paar games na, en dan moet Crysis ook nog steeds uitkomen.

Vind dit echt belachelijk, het is waar dat technologie voorwaarts gaat e.d, maar degene die nu de kaarten gekocht hebben hebben er op de performance na niets aan gehad dus..
DirectX is altijd wel backward compatible. Dus als ze in DX 10.1 bijv. 10 nieuwe features stoppen en jou kaart ondersteund DX10.1 dan maak je daar gebruik van. Heb je een DX 10 kaart dan maak je gebruik van jou kaart voor alle DX10.1 features behalve die 10 nieuwe, daarvoor wordt de hardware geemuleerd en dan kan je software matig die features ook nog gebruiken.
Dat is niet zo. DirectX doet in principe niet aan software-emulatie. Dat wil je ook helemaal niet.
Het emuleren van features in software is bijzonder inefficient bij 3d-rendering. Bij OpenGL gebeurde dit wel, en dat gaf enorme problemen voor ontwikkelaars. Op de ene kaart is iets snel, en op de andere gigantisch traag, zonder aanwijsbare reden.
Aangezien DirectX vooral op spelletjes gericht is, is het belangrijk dat iets snel werkt, en niet dat het altijd werkt.

Er is maar 1 uitzondering, en dat is T&L/vertex shaders. Die kun je in software emuleren (hoewel ik niet weet of dat voor DX10 nog opgaat). Maar dat komt mede omdat dit een nogal fundamentele feature is, en omdat software-emulatie daar nog redelijk te doen is (veel onboard-chips hadden ook geen T&L-hardware, en deden software-emulatie in de driver, wat best goed werkte).

Verder moeten alle features van DirectX in hardware ondergebracht zijn (lees: de driver moet DirectX vertellen dat de feature in hardware ondergebracht is. Bij bv T&L is dit in de praktijk niet altijd waar, maar het maakt de driver wel meer compatible, want niet alle software doet de moeite om te checken en terug te schakelen naar software).
Bij DirectX10 is het zelfs nog stricter: De hardware moet ALLE features ondersteunen, anders werkt DirectX10 sowieso niet.
DirectX10.1 zal dus alleen weggelegd zijn voor de volgende generatie kaarten (ook niet de HD2x00-serie, want die ondersteunt niet alles), en de huidige kaarten blijven gewoon bij DX10.

Het voordeel van deze stricte regels is dat ontwikkelaars zich geen slag in de rondte meer hoeven programmeren om uit te zoeken wat een kaart nou wel of niet kan. Dit zal de compatibiliteit van software en de performance ook ten goede komen.
Ok, maar spellenmakers kunnen natuurlijk even testen of jij DirectX 10.0 of 10.1 hebt en dan bepaalde fancy toeters en bellen al dan niet aanzetten. Uiteindelijk zul je wel kunnen spelen en daar gaat het om.
Ok, maar spellenmakers kunnen natuurlijk even testen of jij DirectX 10.0 of 10.1 hebt en dan bepaalde fancy toeters en bellen al dan niet aanzetten. Uiteindelijk zul je wel kunnen spelen en daar gaat het om.
Natuurlijk, maar dat is iets heel anders dan dat DirectX het voor je in software emuleert, zoals hierboven beweerd werd.
De huidige hardware meteen overbodig verklaren lijkt dus niet nodig,
Als minimum 4x AA in DX10.1 games verplicht wordt hebben ze wel een punt, hoeveel kaarten kunnen dat met een aanvaardbare framerate verwerken?
ondersteuning van 4x AA is verplicht, niet het activeren ervan
Minimaal 4x AA moet ondersteund worden, dat wil niet zeggen dat het ook gebruikt moet worden :).
dat hangt natuurlijk helemaal van de resolutie af..
Zal dit wat te maken hebben met de "Free 4x AA" zogezegt bij de G92 specs? :)
Moeten we bij elke nieuwe DX versie weer een nieuwe video kaart halen pffff

Het kan dus straks zomaar zijn dat ik een spel installeer die roept U heeft een 8800GTX en die word niet ondersteunt u moet een DX 10.1 kaart kopen .
Klik op OK om de instalatie af te breken
Dat kon altijd al.
Als je alle features van een bepaalde DX-versie wilde gebruiken, dan beperkte je ook de ondersteunde hardware tot een absoluut minimum.
Het model is nu iets veranderd. Ipv dat de programmeur per feature moet kijken, zijn er nu featuresets, ieder met een eigen versienummer.
Het is nu dus wat fijnmaziger ingedeeld. Eerst had je alleen grofweg DX8 of DX9, en daartussenin nog een hoop features die al dan niet aanwezig konden zijn.
Nu heb je gewoon een DX10-klasse hardware, of DX10.1, met wat extra features erbovenop.

Het is de verantwoordelijkheid van ontwikkelaars om te zorgen dat ze niet alleen op DX10.1 richten, maar ook een fallback naar DX10 maken. Fallbacks maakten ze altijd al (met HalfLife2 als absolute heerser op dat gebied), het wordt nu alleen veel gemakkelijker voor ze, omdat ze niet meer met ieder klein dingetje rekening hoeven te houden. Dat gaat dus wel goedkomen. Als software niet werkt op de meeste hardware, dan kopen de meeste mensen het ook niet, dus ze moeten wel.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True