[Openal-devel] Faster buffer model, and more random stuff
Sherief N. Farouk
sherief at mganin.com
Tue Feb 26 08:44:21 PST 2008
I'd think any new AL API should be designed after GL3. Unfortunately the
Khronos group is taking their sweet time with it, and no one really know what
it's like yet.
>>: Some guidelines are available in the gl pipeline newsletter.
Since AL is specificly designed to function similarly to GL, I wouldn't see
that as very conducive.
>>: My point is, ignore the intricate details of PBO mapping. Let's focus on doing something with a GL-like INTERFACE, but with the best semantics for our target.
If your app is that strained for memory that you have to stream almost
everything as Ogg, you'd be better off with hardware that can natively decode
Ogg. In such a case, there's an extension which lets you load compressed Ogg
data.
>>: And till I get such hardware, I'll work on this approach :D.
A PBO doesn't have an explicit internal format. It's data in the form of
whatever you wrote to it. That is how it's stored in the PBO, and that's
what's mapped. When it's used as the basis for GL function pixel data (for
glTexImage, glReadPixels, etc), you specify the format for it, just as if you
were using a normal RAM pointer, and GL reads/writes it to the PBO as such.
>>: Let's forget about PBOs. Let's think of the mapping proposal as if glMapBuffer never existed. Let's make a mapping function that's easiest to use while allowing most implementation side optimizations. That's why I propose convert on read/write, to isolate the user from the implementation internal format if different, and to directly map into format sink if same. Smarter things can be done when you're multithreaded.
- Sherief
More information about the Openal-devel
mailing list