Hi Alex,
> I just wanted to clarify something regarding the current graphics > subsystem. As I understand it, we have 3 visual buffers, that are > pixmaps, that have graphics data drawn to them. That is correct. Note that the visual buffers do not neccessarily _have_ to be pixmaps, but the partial update methodology we use makes it hard to implement them as sets of vector graphics constructs. > If a line is to be drawn to a buffer, it is drawn by the driver as a > pixmap, to a pixmap. No, drivers are supposed to provide native line-drawing functions. That is, the driver takes a line and draws it to whichever interpretation the underlying hardware has of a "line". X11, for example, provides accellerated line drawing operations, but still produces a line. Some implementation of an OpenGL target might store it as vector data instead, to allow for scaling. [...] > So, rather than having pixmap objects, line objects, and filled > rectangle objects in the drivers, all information ends up as a pixmap. That depends on your driver. (Right now, it turns out that this is the case in all of them, although at least two-- xlib and directfb-- allow at least for accellerated line drawing into pixel space). > I hope I've made this understandable. The reason why I ask is that > DirectX graphics are all object-based. Pixmaps can be used no problem, > but it won't operate quite as efficiently that way (and at the moment I > can't get DirectX to understand our pixmap data!!). The most common problem I've had in this respect was that FreeSCI didn't understand the way the pixmap data was to be provided, i.e. I created graphics modes with incorrect masks and shift values. You might want to look into that. > I'm not proposing any changes to the graphics subsystem, but just > throwing an idea into the ring as to making it capable of supporting > graphical objects as well. If this wouldn't benefit any other platforms > however, there's little point. Would it? I don't seem to get the point right now. What concretely do you mean by "object" in this context? llap, Christoph
