PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : OpenGl: Kopie von Texturen im system ram verhindern


muhkuh_rs
2006-11-14, 12:31:57
Hallo,

Ich entwickle für ein embedded system mit 256MB Ram und 256MB VRam (nvidia Karte). Die OpenGL-Implementierung hält von allen Texturen eine Kopie im System Ram. Leider gibt es keien Swap Space und ich brauche den RAM für andere Dinge.

Normalerweise ist das Halten der Texturen im Systemspeicher ja sinnvoll, falls nicht mehr genug VRAM da ist und Texturen in den System RAM zurückwandern müssen. Kennt jemand vielleicht einen Trick, wie man das verhindern kann? Ich habe versucht erst ein Pixel Buffer Object zu erstellen, dieses mit Texturdaten zu füllen und dann als Quelle für glTexImage2D zu verwenden aber das hat nichts gebracht. Vielleicht reserviert die Implementierung auch grundsätzlich immer System RAM, falls die Textur mal aus dem VRAM raus muss?

Vielen Dank

Markus

Asmodeus
2006-11-14, 13:47:19
Mal ganz blöd gefragt, verwendest Du OpenGL oder OpenGL ES? Vielleicht gibt es bei OpenGL ES zusätzliche Mechanismen, welche diese geforderte Funktionalität bieten, denn Speicher ist auf Embedded Systems ja immer knapp bemessen.

Gruss, Carsten.

muhkuh_rs
2006-11-14, 14:09:01
Es ist OpenGL aber auch in OpenGL ES habe ich auf die Schnelle nichts derartiges gefunden.

micki
2006-11-14, 15:47:48
ich glaube da gibt es nen fiesen trick, erst textur enable und dann setzen ;)

kann mich aber nicht mehr erinnern auf welcher hardware bzw treibern das so war :)