I’m attempting to write a program that uses transparent windows (Microsoft
Windows only is fine) where the desktop is visible behind objects that I
draw, such as one of those assistants in microsoft office.
I plan on modifying SDL slightly to allow for transparent windows (which
have been successful in standalone code).
My questions were:
I believe SDL 1.2 supports GDI, how do I ensure this is used instead of
DirectX/OpenGL for blitting, as these methods are not compatible with
transparent windows directly as they draw directly to the screen, bypassing
transparency.
SDL 1.3 uses Direct3D by default, but you can select the GDI renderer
explicitly.On Fri, Sep 4, 2009 at 8:05 AM, GMScribe <ali_lowe at sky.com> wrote:
Hi Guys,
I’m attempting to write a program that uses transparent windows (Microsoft
Windows only is fine) where the desktop is visible behind objects that I
draw, such as one of those assistants in microsoft office.
I plan on modifying SDL slightly to allow for transparent windows (which
have been successful in standalone code).
My questions were:
I believe SDL 1.2 supports GDI, how do I ensure this is used instead of
DirectX/OpenGL for blitting, as these methods are not compatible with
transparent windows directly as they draw directly to the screen, bypassing
transparency.
I’m now using GDI in SDL 1.3 by disabling the openGL and DirectX renderers,
however I had ran into the issue that blitting does not appear to be
functioning.
There appears to be some kind of pixel alignment issue where the image or
simple fillrect only covers about 2/3s of the width of the screen and only
in black and white (I believe this is because each colour component is being
assigned its own pixel?).
Are there any known issues?
Many thanks.
Sam Lantinga-4 wrote:>
Yes, GDI is the default in SDL 1.2
SDL 1.3 uses Direct3D by default, but you can select the GDI renderer
explicitly.
On Fri, Sep 4, 2009 at 8:05 AM, GMScribe <@GMScribe> wrote:
Hi Guys,
I’m attempting to write a program that uses transparent windows
(Microsoft
Windows only is fine) where the desktop is visible behind objects that I
draw, such as one of those assistants in microsoft office.
I plan on modifying SDL slightly to allow for transparent windows (which
have been successful in standalone code).
My questions were:
I believe SDL 1.2 supports GDI, how do I ensure this is used instead
of
DirectX/OpenGL for blitting, as these methods are not compatible with
transparent windows directly as they draw directly to the screen,
bypassing
transparency.
Thanks!On Sat, Sep 5, 2009 at 6:55 PM, GMScribe <ali_lowe at sky.com> wrote:
Thank you,
I’m now using GDI in SDL 1.3 by disabling the openGL and DirectX renderers,
however I had ran into the issue that blitting does not appear to be
functioning.
There appears to be some kind of pixel alignment issue where the image or
simple fillrect only covers about 2/3s of the width of the screen and only
in black and white (I believe this is because each colour component is
being
assigned its own pixel?).
Are there any known issues?
Many thanks.
Sam Lantinga-4 wrote:
Yes, GDI is the default in SDL 1.2
SDL 1.3 uses Direct3D by default, but you can select the GDI renderer
explicitly.
On Fri, Sep 4, 2009 at 8:05 AM, GMScribe <ali_lowe at sky.com> wrote:
Hi Guys,
I’m attempting to write a program that uses transparent windows
(Microsoft
Windows only is fine) where the desktop is visible behind objects that I
draw, such as one of those assistants in microsoft office.
I plan on modifying SDL slightly to allow for transparent windows (which
have been successful in standalone code).
My questions were:
I believe SDL 1.2 supports GDI, how do I ensure this is used instead
of
DirectX/OpenGL for blitting, as these methods are not compatible with
transparent windows directly as they draw directly to the screen,
bypassing
transparency.
You’ll find the issue with the default SDL 1.3 testsprite (the first test
sprite test). Testsprite2 is fine under GDI however functionality using the
old blitting methods appears to be broken.
I am perfectly happy to use the methods in testsprite2 for rendering however
there is not a clear and obvious pathway as to which functions I should use
to create my window and assign a renderer etc. We really need some
documentation for these new renderers. The testcase appears to be a mish
mash or higher and lower level functions?
Many thanks.
Sam Lantinga-4 wrote:>
Not offhand. Can you reproduce it with testsprite2 (which has command
line
parameters to specify renderer?)
Do you have a simple test case I can use to reproduce the problem?
On Sat, Sep 5, 2009 at 6:55 PM, GMScribe <@GMScribe> wrote:
Thank you,
I’m now using GDI in SDL 1.3 by disabling the openGL and DirectX
renderers,
however I had ran into the issue that blitting does not appear to be
functioning.
There appears to be some kind of pixel alignment issue where the image or
simple fillrect only covers about 2/3s of the width of the screen and
only
in black and white (I believe this is because each colour component is
being
assigned its own pixel?).
Are there any known issues?
Many thanks.
Sam Lantinga-4 wrote:
Yes, GDI is the default in SDL 1.2
SDL 1.3 uses Direct3D by default, but you can select the GDI
renderer
explicitly.
On Fri, Sep 4, 2009 at 8:05 AM, GMScribe <@GMScribe> wrote:
Hi Guys,
I’m attempting to write a program that uses transparent windows
(Microsoft
Windows only is fine) where the desktop is visible behind objects that
I
draw, such as one of those assistants in microsoft office.
I plan on modifying SDL slightly to allow for transparent windows
(which
have been successful in standalone code).
My questions were:
I believe SDL 1.2 supports GDI, how do I ensure this is used
instead
of
DirectX/OpenGL for blitting, as these methods are not compatible with
transparent windows directly as they draw directly to the screen,
bypassing
transparency.