Slashdot Mirror


Translucent Windows for X using OpenGL

Anonymous Coward writes "Take a look at this! This guy is working on an OpenGL backend for X. But he needs pizza and some new hardware. He's on a TNT2 for heaven sake!"

19 of 389 comments (clear)

  1. Not just for transparency? by Anonymous Coward · · Score: 5, Interesting

    Two more uses besides alpha blending that instantly spring to mind:

    - scaling (with interpolation)
    - color depth independance

    without the underlying application having to know about this at all!

    1. Re:Not just for transparency? by Anonymous Coward · · Score: 1, Interesting

      And rotation! Please don't forget rotation. Roll up windows are nice, but dammit, I want to be able to put a window down (like a book) when I'm done reading it.

  2. Mandatory Amiga Counterpoint by Whigh · · Score: 2, Interesting

    The Amiga's are gonna have something similar, only with menus. Of course, their dockies make it even better.
    AmigaForever!!!

  3. Oh great, more network traffic by melonman · · Score: 2, Interesting

    Yep, the site is dead, that must be a record.

    Personally, I'd be a lot more excited if someone was working on a useable desktop that used less bandwidth, especially in terms of network traffic with remote sessions. The amount of bloat on KDE, for example, gets worse with each new release, and it is killing my local network.

    Alternatively, I suppose I could go for an older window manager that makes DOS look futuristic.

    Please, can't someone come up with a Linux Window manager that doesn't give Windows users hysterics, but which can run over, say, a dial-up connection at a reasonable speed? In other words, something that performs a bit like MS Terminal Server (the 2000 version, let alone the XP 16-bit one)? I shouldn't need a gigabit backbone to run 10 diskless terminals...

    --
    Virtually serving coffee
  4. Re:Another thing that X should have had a long tim by FooBarWidget · · Score: 1, Interesting

    Why do we need a "3D-accelerated desktop" or "translucent windows" in order to "succeed on the desktop"?
    Win95/98/ME didn't have either. Were they ready for the desktop? People said they are.
    Translucent windows are only eyecandy and can actually decrease productivity. When I'm typing a report I want to concentrate on my report, not all the windows below my word processor!

    Translucency is nice but it's not a requirement.

  5. What About XDirectfb? by Hapless · · Score: 3, Interesting

    Another project (with admittedly a different aim) that is trying to bring exciting and modern desktop features to the masses:

    http://www.directfb.org/xdirectfb.xml

    Wouldn't it be nice if there was a consensus project for UNIX/Linux graphics that could integrate and manage the work of all these many people? Concentration of effort, rather than dilution?

  6. Re:This doesn't automatically mean higher performa by IpalindromeI · · Score: 2, Interesting

    I don't understand this whole translucent windows thing. Other than looking "kick-ass", what is the real benefit? Seems like all it does is make the windowing system more complicated and potentially slower. The only reason this would be helpful is if you could save screen real estate by overlaying windows and using both of them at once. But guess what: you can't. The human brain can't focus on two distinct tasks at once, and it definitely can't separate two sets of overlayed text. Besides, you can already lay one window over another and just switch between them for the real estate gain. I wish people would spend more time producing features that are actually useful as opposed to things that just look good.

    --

    --
    Promoting critical thinking since 1994.
  7. Re:This doesn't automatically mean higher performa by TonyMillion · · Score: 2, Interesting

    of course you totally miss the point of Quartz Extreme.

    When (not if) graphics chipsets are powerful enough to render display PDF into a texture then all the graphics drawing and compositing will be taken care of on the hardware, completely alleviating the CPU of all the donkey work.

    I can see apple taking this route as soon as its viable with the hardware, infact I wouldn't be surprised if thats sooner than anyone expects.

  8. ditto by ragnar · · Score: 3, Interesting

    I have experiemented with translucent terminals in Mac OS X and found that things are less readable on the whole. Maybe the trick is in the user interface. Since I often find myself minimizing, hiding or otherwize moving a terminal window out of the way, maybe the solution is to have a key combination that makes an app window translucent while they key is held down? This might be more useful to me.

    --
    -- Solaris Central - http://w
  9. Re:Why? by starseeker · · Score: 2, Interesting

    Because when used properly it enhances the coolness factor of the desktop. Basically the way to approach things is to have different levels of transparency depending on whether or not a window is active - if it is active, transparency should drop to a minimum so real work can go on. Most likely this should be part of desktop themes - how to handle transparency as a function of window focus. Maybe even add a scrollbar functionality to the window border at the top to temporarily override the defaults if you want to, say, write in a text editor while looking at the terminal under it. There are a few cases where it can be useful, and the rest of the time, with proper themeing, what's wrong with being cool?

    Of course, I don't know if this setup can do local transparency differently on a per window basis - that will be needed before things can really happen the way they should.

    --
    "I object to doing things that computers can do." -- Olin Shivers, lispers.org
  10. Re:This doesn't automatically mean higher performa by Haeleth · · Score: 2, Interesting

    It can be quite useful to have windows which become translucent when dragging or resizing. It gives a nice halfway ground between showing outlines and showing contents. This is the setup I use on my Win2k box; it'd be nice to be able to have the same in Linux.

  11. Re:This doesn't automatically mean higher performa by onco_p53 · · Score: 2, Interesting

    The TNT2 is fine for the workstation, but when I changed to the Geforce MX 420, I noticed a significant improvement in text quality.

    This really makes a difference for wordprocessing / coding ect...

  12. Re:It's not really about translucent windows par s by Anonymous Coward · · Score: 1, Interesting

    Actually that's not such a big deal. Modern graphics hardware has optimized blitting operations, line drawing operations, and so forth, i.e. everything needed for 2D stuff.

    What's interesting in this case is suddenly you have new operations at your disposal, namely, everything that the texturing units can do. Texturing hardware _is_ the meat of modern graphics chips, but that's out of reach of APIs like X11's, since in those APIs bitmaps are things you put on top of other elements, and that's basically it. With OpenGL as the backend, the frontend can start doing interesting stuff: rotating pixmaps for free, or compositing operations, or *gasp* bump mapping.

    You really don't want to have an X server that uses OpenGL as its internal API, but this is a great playground for testing new ideas. Eventually, you can take the OpenGL driver appart and move the stuff from there to the X server, but it is important that your existing applications run unmodified in the new environment.

  13. Re:Not Just a Novelty by say · · Score: 2, Interesting
    "For people who are serious about removing all the cruft in XFree86, you could make serious headway by forcing all windows to be allocated with this TransluXent technique. The amount of legacy code you could rip out of XFree86 is staggering. All the clip mask code. All the loops around drawing code. Lots of tests become useless. No more need for Expose events. Also imagine a proper Xshape extension using alpha masks instead of clip lists."

    You could probably reduce the usage of those hacks, but you couldn't possibly remove them. Video memory is still not infinite, you know. Most cards today have between 8 and 64 MB of memory. So you will need a workaround when you use a lot of windows (or one program which uses a lot of video memory (Quake)).

    But to normally use video RAM for this is interesting and intelligent. It is probably the future, and my guess is that it is possible to implement it without messing with the old implementation (ie keep both in X). That way, people with 2MB video RAM will get the same performance as today.

    --
    Roses are #FF0000, violets are #0000FF, all my base are belong to you
  14. What it takes to make translucency work by wowbagger · · Score: 4, Interesting

    There is a fundamental limitiation to modern graphics displays that limits the usefulness of translucent windows - the lack of different accommodation depths.

    Consider driving along the road as it starts to rain. Normally, you are looking downrange - your eyes are focused on infinity (as far as your visual system is concerned). The rain drops on your windshield are forming an image on your retina, but it is out of focus, and so is easier for your visual system to ignore.

    Should you want to look at the raindrops (to evaluate whether the rain is sufficient to require you to change your driving pattern), you shift the focus of your eyes. Now the raindrops are forming a clear image on your retina, but the road is not - now it is the road that the visual system can ignore.

    So, to extend this to a computer display - at a minimum, you would want to employ some form of blurring on the windows in the background as well as reducing the contrast. For this, a 3D card with motion blur might work without too much added work.

    But the second thing you need is a good, quick way to shift focus from window to window. If the back windows are fully obscured by the forward windows you cannot just click on them. You cannot just shift focus - the system has no feedback where your eye is focused. As a result, you have to minimize the forground window, or have a "send to back" button, or something like that, and you still get into the "nope. Nope. Not you. Nope. Nu-uh. Nyet. Aw, c'mon!" mode.

  15. Re:Not Just a Novelty by Screaming+Lunatic · · Score: 3, Interesting
    Of course, the downside is that you'll chew up serious amounts of offscreen video memory (aka texture memory). You might need to implement some code that "swaps" unmapped windows into system memory.

    OpenGL already does this for you automagically.

    Check this and this.

  16. Re:This doesn't automatically mean higher performa by SloppyElvis · · Score: 2, Interesting

    Agreed, this is eye candy.

    However, the potential for creating useful 3D widgets is something that warrants investigation...

    As a crappy example, take a widget that uses floor plans at design time, and presents 3D fire escape routes, or directions around a building, or whatever, at runtime.

    If I had a better, more general example that would be better suited to being a widget, than I'd go make it. The point is, their is potential there beyond eye-candy, that *could* increase productivity.

  17. Re:This doesn't automatically mean higher performa by msimm · · Score: 4, Interesting

    Its kind of funny, I'm reading a lot of comments like yours. Which is fine, of course. But there is a sort of big push right now for just this sort of thing on Linux desktops. Eye candy, it seems is underrated here?

    As a user who has been using the Linux desktop for about 4 years now I'd have to say this is a very exciting project. You should take a look at kde-look to get an idea what types of eye candies are being kicked around. I've been using translucent aterms, Convectivea crystal icons and the Mosfet's KDE liquid module for quite a while now, I love it.

    Btw, check out Karamba, its a new KDE extention that suports (fake) transparency, lots of fancy do-dads and themes. Beefs up the candy factor (and some functionality!). Might as well look good if your going to have to use it.

    Last one! Check out Slicker. Its a collection of utilities which provide an alternative to KDE's kicker, and looks good. I don't know about you, but I got tired of looking at screen shots of OSX.

    --
    Quack, quack.
  18. Re:This doesn't automatically mean higher performa by Anonvmous+Coward · · Score: 2, Interesting

    "Translucent windows is eyecandy and good for demonstrations, but that's pretty much it. Other than that, they're usability nightmares and harm productivity."

    Not for me. I have a desktop switching app (called Altdesk, it's for Windows though) that has this tiny bar with all my desktops and apps on it. It's an 'always on top' window that I have at the bottom right above my Start Menu.

    Unfortunately, it blocks information occasionally because some apps throw stuff there. It blocks Opera's message about how fast stuff is coming down, for example. No problem, the bar's transparent. I can still read the stuff plus see what each button does.

    You're right that it's limited, though. The bar is only icons, and the stuff below it is only text. I don't think it'd work if it were text on text. I'm just saying you can't apply an absolute rule like that here.