
jak na 2D engine v moderním OpenGL
Ahoj
Pracujem s kolegou na 2D hře v Pythonu, začali jsme s PyGame.
- vykreslování přes SDL nám přestalo stačit, nebylo dost výkonu na logiku/pathfinding..
- chceme nechat logiku v PyGame a vykrelování přesunout na OpenGL
OpenGL se teprve učím, zatím engine umí pozicovat vertexy na souřadnice obrazovky v pixelech, a zobrazit texturu.
Do bufferu se nasypou souřadnice 4 vertexů (čtverec) a textura se bindne na TMU-1
Mám teď problém textur asi bude víc než 32, víc než TMU.
Našel jsem že existují bindless textury ale neneašel jsem jak se to používá.
Jinde jsem zase našel že nemusí být bindnuté všechny textury pořád, ale jen ty co se zrovna používají
pro vykreslování.
Napadlo mě nasypat do bufferu jen ty 4vertexy a texturu, pak buffer vyprázdnit, a další 4 vertexy a texturu a taklhe vykreslit všechny objekty.
Chtěl bych se zeptat jestli se tim nahráváním a vyprazdnováním bufferu s každým objektem neztrácí moc výkonu.
A jestli je tohle řešení použitelný je potřeba hlídat jaká textura je bindnutá na kterou TMU jednotku aby se pořád nebindovalo jen na první?