Roderick Colenbrander ha scritto: >> > > Under the hood Windows uses Eng* functions in the win2k/winxp driver model > (perhaps even Vista, don't know). > It is a different architecture than what Wine uses we are close to a win3.1 > design. > The use of the real win32 functions would offer the possibility of using > native printer drivers again > (not sure if this is something we really want). > Doing stuff the microsoft way might have advantages for properly integrating > ddraw and other things. > On the other hand it could be a lot of work to get right.
I'm afraid too... I think we've got do decide if do it on the quick side or on the "right" side. IMHO I'd choose the first one for the moment.... > > Here's my view on DirectDraw / D3D and the DIB engine. > There are two cases. First of all you have plain 'software rendering' in > which we do 2d ddraw using GDI > and DIB. The use of a DIB engine would save us some roundtrips to X and make > color conversion more > efficient. Depending on the situation it could boost performance quite a bit. > That's what I'd like to solve first, but it's maybe too deeply tied to the other stuffs... still don't know. I've seen that in Autocad all rendering (in 2d mode) is done by autocad itself, besides TTF fonts. When there are TTF fonts inside drawing, the most time is spent in dib_coerce stuff, so translating DIB to X11 and back, in order to use X11 font rendering engine. The speed difference between TTF and non-TTF is something like 100:1 or worse. Switching to 3d mode, the font rendering is done (ugly) by autocad itself, so the things speeds up a lot (but some half speed than in 2d mode, indeed). Fonts are just outlined, line styles are not applied, etc, so it's not a viable workaround. What I'd like to know... It would make sense (I mean, could it enter wine repo) to extend Huw Davies/Jesse Allen's approach of implementing the engine ? I'd like to try it, but I'd not like to spend some weeks/months coding using the wrong approach :-) Also I'd like to see in wine a partial DIB engine, as I explained at post starting. Would it be possible, or shall I stop it by now ? Max