HW DoubleBuffer rotated brush missing

Discuss OpenGL® programming with the GL Galore plugin here
Post Reply
User avatar
lazi
Posts: 295
Joined: Fri Feb 25, 2011 12:08 am

HW DoubleBuffer rotated brush missing

Post by lazi » Wed Feb 07, 2018 12:44 am

Conditions:
- glgalore
- hardware brush
- hardware double buffer
- rotate the brush by standard drawing tag
- displayed brush part left out the window

Effect:
- no brush displayed

Script with hardware brush:

Code: Select all

@REQUIRE "glgalore.hwp"
BeginDoubleBuffer(True)

SetFont(#SANS,60)
CreateBrush(2,100,100,#RED)
SelectBrush(2)
TextOut(#CENTER,#CENTER,"A")
EndSelect
CopyBrush(2,1,{hardware=True})

DisplayBrush(1,-50,10)
DisplayBrush(1,-50,200,{rotate=180,anchorx=1,anchory=1})
DisplayBrush(1,600,200,{rotate=180,anchorx=1,anchory=1})

Flip

WaitLeftMouse
Image

Script with non hardware brush:

Code: Select all

@REQUIRE "glgalore.hwp"
BeginDoubleBuffer(True)

SetFont(#SANS,60)
CreateBrush(2,100,100,#RED)
SelectBrush(2)
TextOut(#CENTER,#CENTER,"A")
EndSelect
CopyBrush(2,1,{hardware=False})

DisplayBrush(1,-50,10)
DisplayBrush(1,-50,200,{rotate=180,anchorx=1,anchory=1})
DisplayBrush(1,600,200,{rotate=180,anchorx=1,anchory=1})

Flip

WaitLeftMouse  
Image

User avatar
airsoftsoftwair
Posts: 2557
Joined: Fri Feb 12, 2010 3:33 pm
Location: Germany
Contact:

Re: HW DoubleBuffer rotated brush missing

Post by airsoftsoftwair » Thu Feb 08, 2018 10:02 pm

Works with RebelSDL's hardware brushes, so it looks like a bug in GL Galore, not in Hollywood itself. Will be fixed.

User avatar
lazi
Posts: 295
Joined: Fri Feb 25, 2011 12:08 am

Re: HW DoubleBuffer rotated brush missing

Post by lazi » Thu Feb 08, 2018 11:45 pm

Nice, thanks!

Anyway, is it impossible to implement correct display syncing to the Hollywood display engine on Amiga systems like in GLGalore?
And perhaps in windowed mode?

Yes I know: users are insatiable. :-)

User avatar
airsoftsoftwair
Posts: 2557
Joined: Fri Feb 12, 2010 3:33 pm
Location: Germany
Contact:

Re: HW DoubleBuffer rotated brush missing

Post by airsoftsoftwair » Fri Feb 09, 2018 10:13 pm

lazi wrote:Anyway, is it impossible to implement correct display syncing to the Hollywood display engine on Amiga systems like in GLGalore?
And perhaps in windowed mode?
In windowed mode that won't work because even MiniGL and TinyGL can't do it in windowed mode so it's probably an OS limitation.

Also in fullscreen mode it's only possible with limitations. Display syncing requires Hollywood to use OS double buffered functions but these can only be used if there is only one display on the screen and if it doesn't use window borders and other window functionality. Using OS double buffered functions for fullscreen drawing imposes all kinds of limitations on Hollywood's display handler so I won't do that for the default display engine. If you need vertical refresh syncing, use GL Galore.

Post Reply