Welcome, Guest. Please login or register.

Author Topic: Transperent shell window?  (Read 2484 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline SamuraiCrow

  • Hero Member
  • *****
  • Join Date: Feb 2002
  • Posts: 2281
  • Country: us
  • Gender: Male
    • Show all replies
Re: Transperent shell window?
« on: October 10, 2005, 04:08:34 PM »
When I used to run a custom copperlist on my Workbench screen everything drawn in the background color was transparently displayed as the copperlist.  It was very annoying that I couldn't see the text against the multicolored background so I had to change my shell-startup to produce a dark background color behind my text to prevent the transparency from interfering with the usability of the shell.  It was not cool.   :-(
 

Offline SamuraiCrow

  • Hero Member
  • *****
  • Join Date: Feb 2002
  • Posts: 2281
  • Country: us
  • Gender: Male
    • Show all replies
Re: Transperent shell window?
« Reply #1 on: October 11, 2005, 03:52:03 PM »
Quote

boing wrote:
This is another example where engineers need to be working on implemention MORE sprites and playfields, not less. Fancy blitter engines are great, but not's let put all our graphics eggs in one basket.


Not TRUE transparency (gradient controls) as requested here but it is cool:

 I like "drag with window contents in realtime" but was unhappy with the programs out there that added this to the Amiga.  They used the  Blitter and I wasn't happy with the chipmem usage but most of all I was appalled at the number of bus cycles wasted.  That's where the idea came from for this...

I had planned on writing a program that would allow you to move/render public windows/screens to another playfield, which you could then overlay anywhere onscreen. Or underlay.  For OCS, ECS, and AGA.  Some color limitations apply- mostly on OCS/ECS.  I had planned options to render it's contents to the main screen (wherever you drop the window), and only use the playfield for dragging the window [so as not to suck bandwidth on older OCS/ECS machines].  In other words, the playfield would optionally only be in use during a drage or move.  This can reduce chipmem bus sage under many circumstances.

Anyway the cool thing is that you also get real-time window dragging along with it, virtually for free, sans the usual blitter/cpu bus load. Mind you, a large Shell on an A1000 in Hi-Res mode can mean you'd start to feel a bit sluggish (but not as bad as the current ways of creating "drag with content" windows for pre-AGA Amigas).

I never got to it, and have no IP or patent on the idea (software patents are evil) so if any of you want to build on it, go ahead.

Sprites and Playfields rule.  Adding tranparency in hardware is fairly easy if you already have genlock/sprite/playfield circuitry.  And... that ain't gonna happen.  We'll all be using off the shelf cards that lack sprites.


The reason sprites aren't used in PC-style graphics chipsets is that there is no left border available for the graphics chipset to load in oodles of sprites.  Most graphics chipsets support ONE sprite for the mouse pointer and not more for that reason.

I do agree, though, that blitter-based solutions waste bus cycles by writing everything to the framebuffer instead of piping the results of the blits straight to a queue on the video DAC.