Tao Framework in C#



  • Hallo.

    Ich nutze das Tao Framework in C#. Ich habe OpenGl bisher eher als Mittel zum Zweck genutzt, möchte das aber jetzt etwas tiefer kennenlernen. Ich habe das Tao Framework installiert und eingebunden:

    using Tao.OpenGl;
    using Tao.Platform.Windows;
    

    Hab mir ein SimpleOpenGlControl erstellt und eingebettet und es funktioniert wirklich alles wunderbar.

    Jetzt möchte ich mit Texturen herumspielen und sehe, dass Leute mit C++ sich Funktionen ala

    GLuint LoadTexture(Bitmap Pict){
    
    /*...
    ...
    ...*/
    
    return texture;
    }
    

    erstellen.

    Ich kann aber nichtmal die OGL-internen Datentypen finden. Also ein GLuint gibt es bei mir gar nicht. Wie komme ich da ran?

    Ich finde zwar Konstanten dazu auf folgenden Weg:

    Gl.GL_UNSIGNED_INT = 5125
    

    Aber das ist ja kein Datentyp.



  • Kann es sein, dass die GL types einfach auf standardmäßige .NET types gemappt wurden.



  • Bei Tao werden texturen auf diese Weise in den Grafik-Speicher geladen und verwendet/gebunden

    int[] texture = new int[1];	// Texture array
    Gl.glGenTextures(1, texture);
    Gl.glBindTexture(Gl.GL_TEXTURE_2D, texture[0]);
    

    Du nimmst also einfach ein int-Array und texture[0] ist dann das texture[0]-Handle vom Datentyp int. Dieses kanns du dann bei BindTexture verwenden.

    Wenn du C++ nach C#-Tao übersetzt, dann orientiere dich an den Funktionen, die Tao anbietet. Dort siehst du ja dann, was für Datentypen sie als Input benötigen.



  • Also einfach das "Gl" wegdenken. Danke. Ist mir jetzt auch aufgefallen, als ich mir die Argumente der Tao-Functions mal angesehen hab.


Anmelden zum Antworten