Op donderdag 24 januari 2002 00:57 schreef vicz het volgende:
[Windows vs Linux]
Tja... Monopolie positie + misbruik. Windows koop je niet, die krijg je bij je computer.
Louwe loene! Dat domme gezever over monopolie en misbruik. Alleen de echte die hards, de ECHTE GNU adepten (de enige zeurdozen in het linux kamp waar ik respect voor heb) hebben NIET naar Windows XP gekeken toen het uitkwam. De rest kon niet wachten. Hou op over dat monopoliegelul, want de mens als koper is de oorzaak, niet MS.
[D3D vs OpenGL: D3D heeft gewonnen]
Waarmee hebben ze nou gewonnen? Was er een wedstrijd? En OpenGL laten voor wat het is lijkt mij ook niet handig, sinds D3D win32 only is.
Op win32 heb je 2 API's: D3D en OpenGL. Dat zijn heilige huisjes kennelijk. Als je een 3D based app gaat maken, moet je kiezen welke API je wilt ondersteunen. Je kunt voor beide een driver maken, maar je levert ALTIJD performance in op die manier. Voor D3D kiezen in de tijd dat het nog in versie 3 zat was dom. Voor D3D kiezen na v5 is al slimmer geweest en nu voor D3D kiezen is een no-brainer: iedereen heeft op d3d geoptimaliseerde videokaarten en drivers voor die videokaarten.
OpenGL is een heel ander verhaal. Weet jij welke kaarten goed OpenGL support hebben en welke kaarten niet? Neem bv Matrox. ALs je denkt dat daar een goede OpenGL driver bij zit heb je het mis. Je levert dus in als je OpenGL kiest, wat juist voor d3d gold in de tijd dat d3d slecht was en je voor d3d koos. OpenGL was altijd de feature-rich api, maar ook dat is niet meer zo: alleen via vendor-specific extensies kun je de d3d featureset benaderen. In theorie kan OpenGL 1.3 erg veel en v2.0 nog meer. In de praktijk komt daar niets van terecht. Niet op windows maar ook niet op Linux, waar OpenGL support nog slechter is dan op Windows.
[OpenGL docs zuigen]
Oke... docu is dan misschien niet erg goed, maar ik ben bij MS ook nooit erg goede documentatie tegen gekomen.
'misschien niet erg goed' ? Hellooo? Uberhaupt ooit OpenGL geprogrammeerd? Er IS geen reference manual voor de OpenGL API van de kwaliteit van de MSDN library. ALS er al een reference manual is (Een niet volledige pdf noem ik geen reference manual). Dat je bij MS nooit erg goede documentatie bent tegengekomen is tekenend.
klik eens:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/opengl/glfunc01_4f03.asp
Ken jij een betere documentatie voor OpenGL? Ik niet. En waar is die te vinden? Juist. Kijk eens naar je bovenste antwoord omtrent monopolie blabla? Word je nu niet heel erg stil? Ik hoop het wel.
[..]
Tja, ik denk dat het nogal dom is om je vasttebinden aan 1 bepaalde api/taal/whatever. Waarom gewoon niet beide leren. Kun je gelijk zien wat de zwakke en sterke punten zijn van beide api's.
Het is niet even te doen: de complete API's leren van beide. Ze werken nl. totaal verschillend. De een is rond COM gebouwd, de ander een pure C library. De een is gebaseerd op object states in je COM object, de ander op states in de API. De een is gefocussed rond een serie virtual canvasses, de ander op een global rendering context.
Er was laatst een randdebiel op de t.net frontpage die blaatte dat d3d gebaseerd is op OpenGL. Als dat zo was, was het leren van de API's en hun karakteristieken wellicht nog wel te doen, en beter: het leren waar je je voordeel mee kunt doen was nog wel te doen. Aangezien dat niet zo is, is het ondoenlijk allebei de API's te leren opdat je voor allebei stunning code kunt schrijven. Altijd zul je houden dat de code voor 1 api sneller en beter werkt dan voor de andere api.
Dat OpenGL ook nog op macs en op Linux machines draait en D3D niet is niet interessant, TENZIJ je een applicatie maakt die per se op die platforms moet draaien. Gezien het feit dat de hoeveelheid linuxdesktops in het niet valt bij de hoeveelheid d3d draaiende desktops lijkt me dat een zinloos argument, zeker gezien de hoeveelheid tijd die erin gestoken moet worden.
Op een studie informatica leer je nl ook niet een bepaalde taal (al lijkt dat soms wel) maar leer je programmeren.
Nee, je leert nadenken op een bepaalde manier opdat je universeel kunt bepalen welke tools belangrijk zijn voor het klaren van een bepaalde job, het oplossen van een probleem. Programmeren KAN daar een onderdeel van uitmaken.
Hier praten we echter over een API die moet worden gebruikt voor het renderen van de geometry. Je MOET een keuze maken, wil je slagen met je app, tenzij het een hobbyfrutsel is.