> TnT2 should handle hardware scaling fine, so there must
> be something else going on here. Perhaps there is a problem
> scaling 1-bit transparent images...
Hmmm, strange, trying opaque doesn't fix it, nor does rendering to a window
instead of fullscreen (as you suggested). But combining both changes does use
DirectDraw and goes really really fast.
The sun.java2d.trace=count results...
Fullscreen bitmask:
1001 calls to sun.java2d.loops.Blit::Blit(IntArgbBm, SrcOverNoEa, IntRgb)
1 call to sun.java2d.loops.Blit::Blit(IntRgb, SrcNoEa, IntRgb)
1 call to sun.java2d.loops.SetFillRectANY::FillRect(AnyColor, SrcNoEa, Any)
101 calls to DXFillRect
1 call to sun.awt.windows.Win32BlitLoops$DelegateBlitBgLoop::BlitBg(Any,
SrcNoEa, "Integer RGB DirectDraw with 1 bit tra
nsp")
1 call to sun.java2d.loops.FillSpans::FillSpans(OpaqueColor, SrcNoEa, AnyInt)
1106 total calls to 6 different primitives
Fullscreen opaque:
1000 calls to sun.java2d.loops.MaskBlit::MaskBlit(IntArgb, SrcOver, IntRgb)
1000 calls to sun.java2d.loops.Blit$GeneralMaskBlit::Blit(IntArgb, SrcOverNoEa,
"Integer RGB DirectDraw")
1 call to sun.java2d.loops.MaskBlit::MaskBlit(IntRgb, AnyAlpha, IntRgb)
101 calls to DXFillRect
1 call to sun.java2d.loops.FillSpans::FillSpans(OpaqueColor, SrcNoEa, AnyInt)
1 call to sun.java2d.loops.Blit$GeneralMaskBlit::Blit(IntRgb, SrcOverNoEa,
"Integer RGB DirectDraw")
2104 total calls to 6 different primitives
Windowed bitmask:
1 call to sun.java2d.loops.Blit::Blit(IntRgb, SrcNoEa, IntRgb)
1 call to sun.java2d.loops.FillSpans::FillSpans(OpaqueColor, SrcNoEa, AnyInt)
1 call to sun.java2d.loops.SetFillRectANY::FillRect(AnyColor, SrcNoEa, Any)
1 call to sun.awt.windows.Win32BlitLoops$DelegateBlitBgLoop::BlitBg(Any,
SrcNoEa, "Integer RGB DirectDraw with 1 bit tra
nsp")
100 calls to GDIFillRect
1001 calls to sun.java2d.loops.Blit::Blit(IntArgbBm, SrcOverNoEa, IntRgb)
1105 total calls to 6 different primitives
Windowed opaque:
1 call to sun.java2d.loops.Blit$GeneralMaskBlit::Blit(IntRgb, SrcOverNoEa,
"Integer RGB DirectDraw")
1 call to sun.java2d.loops.FillSpans::FillSpans(OpaqueColor, SrcNoEa, AnyInt)
999 calls to sun.awt.windows.Win32ScaleLoops::ScaledBlit("Integer RGB
DirectDraw", SrcNoEa, "Integer RGB DirectDraw")
1 call to sun.java2d.loops.MaskBlit::MaskBlit(IntRgb, AnyAlpha, IntRgb)
1 call to sun.java2d.loops.ScaledBlit::ScaledBlit(IntRgb, SrcNoEa, IntRgb)
100 calls to GDIFillRect
1103 total calls to 6 different primitives
regards,
Damon.
===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA2D-INTEREST". For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".