Cg mit Direct3D



  • Moin,

    ich habe vor einiger Zeit, ein paar Shader mit Cg geschrieben. Das ganze wurde unter OpenGL eingebunden.

    In letzter Zeit habe ich mich aber mehr mit Direct3D beschäftigt. Natürlich würde ich da jetzt meine alten Shader gerne weiterverwenden. Hab mal nach Tutorials gegoogelt die Cg-Shader unter Direct3D verwenden, jedoch nichts passendes gefunden.

    Kann mir jemand ein Tutorial empfehlen, das die Anbindung von Cg an Direct3D zeigt?

    Oder sollte ich doch besser HLSL2 verwenden? Wo liegen eigentlich die Unterschiede? Ist das leichter anzubinden?

    Gibt es ein gutes Buch das sich nur mit Shaderprogrammierung beschäftigt?



  • Ich weiss zumindest eines: Die DXEffects (die auch HLSL können) felsen!

    Bye, TGGC \-/



  • Wenn du doch wieder auf OpenGL umsteigen willst (und dabei die zukunftssicherste Shadersprache, GLSlang, verwenden willst) scheint "The OpenGL Shading Language" eine gute Wahl zu sein, bin grade am bestellen 😋
    Allerdings etwas teuer und englisch.



  • spl@t schrieb:

    Wenn du doch wieder auf OpenGL umsteigen willst

    IMHO sehr unwahrscheinlich. 😎

    Bye, TGGC \-/



  • TGGC schrieb:

    spl@t schrieb:

    Wenn du doch wieder auf OpenGL umsteigen willst

    IMHO sehr unwahrscheinlich. 😎

    Bye, TGGC \-/

    Allein GLSL ist ein meiner Meinung nach verdammt guter Grund (ok, ich behaupte das , ohne HLSL und Cg wirklich zu kennen, aber ich glaube, dass das stimmt, was man so hört 🙂 )


  • Mod

    Man sollte die unterschiede kennen wenn man sich für eines entscheidet. GLSL und HLSL haben beide ihre ganz eigenen vorzüge die der Gegenpart nicht anbietet.

    z.b. kann man in GLSL auf den übergabe registern indizieren, in HLSL (in zusammenarbeit mit dem effect framework) gibt es wiederrum optimierungen, dass manche berechnungen, die eigentlich nur pro objekt nötig wären, von der cpu einmal pro renderaufruf gemacht werden und nicht vim VS berechnet werden.

    natürlich gibt es bei beiden noch viel mehr unterschiede.

    rapso->greets();



  • Ist der thread noch aktuell?.. Man kann sehr wohl cg Shader in DX einbinden. Falls es Dich noch interessiert, kann ichs hier kurz erklaeren (ausm cg tutorial book).


Anmelden zum Antworten