Next-Gen X Window Rendering For Linux
Bytal writes "Seth Nickel, a GNOME hacker, has an extensive treatment of the next generation Linux graphics technologies being worked on by Red Hat and others. For all those complaining about the current X-Windows/X.org server capabilities, things like 'Indiana Jones buttons that puff out smoothly animated clouds of smoke when you click on them,' 'Workspace switching effects so lavish they make Keynote jealous' and even the mundane 'Hardware accelerated PDF viewers' may be interesting."
...negotiating with graphics card manufacturers to get some solid, open drivers for Linux.
That would make this endevour much easier in the long run, would it not?
There's a Mercedes gap too. I want one and can't afford one, but it's not government's job to do anything about it.
Um, if it's hardware accelerated, it will be eating fewer of your CPU cycles.
-- Alastair
Seems to be working toward the same goal as the E folks with their DR17 and associates libraries.
"Indiana Jones buttons that puff out smoothly animated clouds of smoke when you click on them"
This is kinda cool. I know it seems gimmicky and all, but I have to say there's something to be said for having a UI that subtley lets you know what you just clicked on.
I know a few people aren't keen on eye candy. They worry about slowing things down etc. But I have to say, in my own experience, the more visual feedback I get from my computer, the more attuned I get to using it. A lot of my actions become reflex instead of having to decipher what I should do next. For example, I use Opera. When a page is loading, a red X lights up. (Click on it and it stops the page from loading.) It's subtle, but I actually do react to that red icon there when it's on. Somewhere deep down, I have a sense of "This page is ready for you to browse". I find that sort of thing useful.
Of course, it can be done badly or absurdly, but eye candy like this can actually be really useful.
"Derp de derp."
Particularly true with Tiger (what with the new CoreImage technology), OS X really can push eye candy more than Windows (and Linux) for one main reason - the mac development team have a limited number of graphics cards to develop for, and the drivers are pretty much rock solid.
I just don't see that happening in Linux / Windows - developers must write for as wide a range of hardware as possible. One would therefore imagine that such eye candy being talked about in Linux would be optional, and you'd only get the full benefit with the highest powered and most compatible graphics card - whereas in OS X, most users can get the eye candy without any problems. Of course, there are certain graphics cards on macs that don't support Core Image, Quartz Extreme etc, particularly on the older macs people are upgrading, but I'm willing to bet the majority of macs will be able to run Core Image etc. Whereas here, the minority of PCs will be able to run the Linux eye candy.
Seriously. Otherwise all the effort being put into X.Org's newest extensions is basically tied to the good will of card manufacturers when it comes to modern videocards.
Anyway, there's a lot of terrific work being done on X.Org - Cairo, XComposite and Damage specially. When these extensions become supported by the GUI toolkits, we'll be in for a treat. It's a shame it took guys like Keith Packard so long detach themselves from XFree86.
OS X and quartz is no standard, it runs on one architecture and one OS only. This is meant for all the other OS:es who needs good visuals. Apple puts their mony on qartz, all other unix companies on this. Lets se who wins, whall we.
"Don't make it snazzy, make it *functional*, snazzy can come later."
I was under the impression that most of the UIs for Linux already are functional.
With that said: Visual feedback is part of being functional. Imagine if ythe cursor you used in the field you typed this into didn't blink. You could adjust to it, but admittedly this 'snazzy' feature is helping you.
'Snazzy' is more benefical than most realize. Remember that we, as a species, are interactive creatures. Visual snazziness really isn't all that different from body language.
"Derp de derp."
no... because basing it on OpenGL means that they are abstracting the GUI from the GFX card and the GUI will run on a computer that does not have the right hardware. if the right GFX card existed in the system, all the better.
I am the Alpha and the Omega-3
Hardware-accelerated PDF viewers, huh? Aqua beat already does that. The entire OpenGL-composited interface is described using PDF, which also makes it awesome for publishing because what you see on screen is how it's going to look on paper (and you get a free "Save to PDF" in your print dialogs).
:)
Not that it isn't cool to see the OSS desktop community finally looking ahead like this. It's something people have definitely been crying out for. But when I see the section titled "What It Might Look Like," I look over at my Mac and see what it already looks like.
Then again, I am quite happy to have people follow Apple's lead rather than Microsoft's. Please, no more taskbars, "start menus," integrated filesystem/net browsers, and whatever else is coming over from the Windows world and polluting desktop Linux. Though KDE is still cool, at least Gnome is willing to try some different directions in the name of usability (rather than familiarity...because from a usability standpoint, the Windows GUI sucks the most of all, and we should not be cloning it).
You won't spend a single CPU cycle on Xaw if you don't use it. Just half a cent's worth of disk.
"2) alpha blending is expensive on almost all GPUs."
Well, to be fair, compare the task of running Doom 3 to the task of being a pretty desktop UI. Cards will always get better. If the idea takes off, new cards will be tweaked to make the experience more interesting. (For this reason, it's a good thing for all of us that Microsoft is heading in this direction, too.)
"Derp de derp."
You know what? I'm really sick of seeing OSX trolls posting all over slashdot.
Everytime ANY topic comes up, some OSX troll pipes in "So its just like OSX!" well, OSX isn't fully (or even mostly) open source, Quartz Extreme isn't an open standard, etc. Ok? Do you understand that? Even if it was, we like our software to be GPL'd so that we don't just shift ourselves from being slaves to Bill Gates and Microsoft, to being slaves of Steve Jobs and Apple. Mabye you don't care if you really 'own' your PC or not but we linux users do. So STFU with your OSX this and OSX stuff that.
Its even getting absurd. Someone mentions making a Linux network for sharing sound -- some OSX Troll pops in "Just spend thousand of dollars on mac parts and there you go! You don't have to use an inexpensive solution!"
Pretty soon I'm gonna start seeing "If those idiots voted in OSX instead of Bush everything would be perfect now".
The Gentoo-Emerge trolls never came close to the kind of witless trolling that you OSX fuckers are reaching!
I don't like your cheesy OS! I think the widgets are ugly! I think that stupid bar on the bottom of the screen looks like CDE back from the grave! I like my Athlon64 instead of your goddam PPC! I like my beige case instead of your tiny little silver box! I want to be able to open my case and see what shits inside it, and I don't want to have to use a fucking laptop harddrive in a non-portable computer!
Every-fucking-topic some OSX troll shoes his stupid platform in, its worse then the Liberal-Conservative crap from the Americans.
Look you obnoxious pricks -- not everyone digs your fucking Macs.
--SD
"Computers will never truly be free until the last windows user is strangled with the entrails of the last mac user."
Well, forgetting ATI, the nVidia drivers are solid, and I don't see why you're so adament on them being open. I've created some great 3d renders in OGL code without needing to know the details on the drivers. Also Windows GUI was designed all without knowing exactly what code is in the drivers.
Good documentation is all that's needed, and if you are going to insist on something from the manufacturers being open, how about we get Open standards so the same calls work on all vid cards.
Wait, we have that, it's called OpenGL and standard driver formats.
DarkMantle I been bored, so I started a blog.
Don't make it snazzy, make it *functional*, snazzy can come later.
Or not at all. Personally, I turn off just about any eye candy. Don't even need rendered window dragging.
Such "negotiation" would be largely a waste of time. You need to give graphics card manufacturers a market to care about and demand for their cards. Currently usage of 3d on Linux is very limited, a few games, visualisers and niche apps.
If 3d is used more widely used on the desktop then more card makers will see linux as a market for their cards and more people will be using 3d and pressuring for better, more open drivers.
Boffoonery - downloadable Comedy Benefit for Bletchley Park
Yes. Great.
We all know that it is not the mixture of 10,256 different toolkits, each one uglier than the other, for every fucking application that makes Linux unusable as a Desktop-platform, it is the lack of "omg k3wl" effects that are the problem.
Good a big company like Rat Had is working in the right direction.
'Indiana Jones buttons that puff out smoothly animated clouds of smoke when you click on them,'
Now that is a useful extension..
No wonder our brand new 4ghz machines run slower then my 20 year old AtariST..
Morons. "just beacuse" isnt a reason.
---- Booth was a patriot ----
Don't get me wrong -- I think X is "usable enough," but really, I don't think the moniker "next generation" is appropriate for anything but the most fundamental technological advances. Buttons that go "poof?" Is this seriously what we're concentrating our effort on?
So...you tell people that specialize in graphics programming to drop their keyboards and start calling people for specs? Why would you have some of the most talented programmers in the community become lobbyist?
One key points of open source development is that there is lots of different people from lots of different backgrounds doing the jobs they do best. I mean, how much do you think people would contribute if they were told not to work on their field of expertise to but to just email companies and bother them about specs all day? Its like having a bad job except, your not getting paid.
Open source is NOT about controlling the efforts people are making to contribute. Thats why X was forked in the first place. Now that we have people coming out of the woodwork to add great features to X, your complaining?
Instead of a bunch of kool effects I would be much more interested to see a *true* 3D desktop as a finite 3D space modeled after the real world... For example, imagine a set of virtual "rooms" each one is dedicated to a specific task. You have an internet room where each wall works kinda like a tab in firefox... or file room that looks like a library.. possibilities are endless. And this can be done, we already have seen this in Doom :)
While I agree in principle on the need for hardware acceleration of PDLs (page description languages), can we PLEASE not use PDF as the standard? PLEASE?
Why not SVG, for instance?
...because from a usability standpoint, the Windows GUI sucks the most of all, and we should not be cloning it
Hmm, I can't really agree there. There's lots of things wrong with windows, but there is a lot of things they have done right in the gui.
It's seems too many linux devs detest windows to the point where they don't allow themselves to see what they have done right. We should be thinking embrace and expand whenever it's appropriate. We should look at what they have done right and benefit from it.
Here are some examples I find of things that just should not exist at this point. In these examples I'm talking about gnome.
1) Remembering windows size/positions. This drives me nuts. I've read that the reasoning behind this is for the most efficient use of the desktop (e.g. you launch a 2nd term and it positions itself beside the 1st term instead of overlapping). Sounds good, but in practice it makes me a less efficient user. Back in my windows days, I liked that whenever I launched the file browser it was always in the same position where I left it. I could rely on this and be ready to click whereever I needed. Same with the file dialog, calculator or whereever. I EXPECTED them to be in a certain position and thus I could work faster/more efficiently. I think maybe a compromise on this would be the default should be that gnome remembers size/position for all apps unless the developer of an app explicitly coded an app not to follow this behaviour. So the wm is the default unless the app says otherwise. I can see the benefit of autopositioning maybe with terms, but for most other apps it just makes me slower and gets in the way. As it stands I feel like I never know where an app will be when it launches.
2). Hot keys. For the love of god can someone fix hotkeys in gnome! Ok again this is coming from a windows background but bare with me. I was used to the alt key toggling the menu of whatever is the active app. Toggles are good, they are efficient and I believe intuitive. Just like play/pause on almost every player that exists. Ok so when I first used gnome, no alt hotkey toggle. Ok fair enough, I have to actually press alt f, but then I try alt f again to get out of the menu and nothing. I have to press escape to get out of the menu. Ok ignoring that, once I'm in the menu the other hot keys are rendered useless. Go ahead try it, press alt f, and then press alt e to get to say edit. Nothing. This is clunky. Once you are in the menu only the arrow keys navigate the menu's.
I work for a company testing applications and a key thing we look at is the hotkey placement of apps as when employees are using apps everyday all day, you want those hotkeys to be laid out efficiently as possible. So sometimes once in a menu it's quicker to just left arrow over once but sometimes it's less keystrokes to use the hotkey while in the menu.
I was going to go on about the menu functionality with gnome but I'm going on too much. You might say it sounds like I want kde but there are many more things about kde I don't like over gnome, and I appreciate the streamlined environment of gnome over kde.
Now you might say I was conditioned to the windows way of things. But really look at what I said above about say the hot keys. Which system is the more efficient. I'm talking number of keystrokes here and navigation.
It erks me when people say just flat out say the windows gui suck most of the time. On my thought of embrace and expand. I think there should be a document really analysing what windows has done right, and if they have done it right, why would we or would we NOT implement it.
I wouldn't call it a paragon of usability. It may just be me, but I always seeked out the sparcs where I could just log onto the unix system. Could do almost as well logging on at home over the console with modem on an 8088 with 640k ram and a CGA screen, console hasn't changed too much since then.
But don't get me wrong, I'm not bashing Macs. I honestly don't have enough experience with them to bash them. I just question the term "paragon of usability". OS X seems good, I played with it at CompUSA for like 2 or 3 minutes and thought, "cool" with no headache :)
so are they putting any work into how these applications will work in the X Client/Server model, or are they just sweeping that under the rug (a la the dri and shm extensions). i'd be thrilled if they were looking at how they can add these as extensions that reduce the amount of X calls that need to be sent accross the wire, so you could use meaningful gui applications over slow to moderate speed network connections. of course it doesn't sound like it from any of the things that he mentioned, and it seems that X development lately has taken a 'the thin client is dead, so who needs network transparency' route.
If I don't put anything here, will anyone recognize me anymore?
XGL, also known as X they way it should have been (and will be)
"...is that really all that the future holds? More special effects, without any substantial improvements in usability?"
Improvements such as.... (?)
Don't think I'm singling you out, as I'm not, but why is it whenever someone posts articles regarding improvements to X, and really to Linux in general, that everyone comes out of the woodwork to complain, without offering any positive comments, or conclusions?
Your post goes into detail about how you don't want these effects, and run Blackbox still, but WTF do you want then? And I ask this to everyone when they complain about what developers are working on in Linux... Everyone can complain, but few are able to offer good input, let alone suggest how we get from point "a" to point "b".
Let's face it... Eye candy sells pc's (No... Not to you Blackbox users... You guys are probably happy running on a PII still). You want to know why the Amiga still gets the nod a lot of the time? Because it did things with graphics (aka 'Eye Candy'), which no one, on any platform, was doing at the time!
Yes, they had a multi-tasking environment, and a lot of other unique things about them (as a former Amiga owner, I can tell you that the pro's and con's were pretty equal in some ways... Lemme tell you that I don't miss the "black screen of death", with tis esoteric guru errors!), but the fact remains that the Amiga stood out from the pack due to its eye candy capabilities.
You know why a lot of people (again... Not us typical Slashdotters, but the average Joe Computerguy) are drawn to the Mac? It's clean, well thought out, and it looks good on screen! You laugh at the puffs of Indiana Jones smoke comment, but one of the things which many people notice first about my Mac is the "puff of smoke" that appears when you drag an icon off the dock. Yeah, it's cheezy, and won't entertain anyone for too long, but it grabs the eye and sticks with you!
A lot of people in this thread, and elsewhere, point out how much they hate Windows, and its GUI, but look at one of the faster growing segements of consumer software: GUI Mods, and eye candy! People want a cool looking computer, and have shown that theyr'e willing to pay for this.
So when everyone's here knocking these guys for adding new and accelerated features to X, I applaud them! Will it win over new users? Very possibly, and even if it does not, it will show that Linux is capable of the same kind of cpu-waste than Windows and OSX is, which is important to a very large demographic of people.
And I hope that this also indicates that more hadrware vendors will be jumping on board soon too! I still find it very frustrating that if I want accelerated graphics in Linux, I have to either run it on older hardware (My old ATI Pro Wonder, and a CompUSA branded S3-Virge, for instance, will run in accelerated modes), or purchase an Nvidia card. I personally like ATI card, and have them in both my X86 boxes, as well as my Mac, and they perform great! Until you add Linux into the mix...
Under X, my 9600 card still will not run in accelerated mode when driving dual monitors. My OSX box and Windows however will handle this just fine.
My point is rather than berating people for developing something that you're not interested in (all the while alluding to the fact that they should be focused on something else, without quite saying what that something else is), why not focus on the potential increase in users of OSS software (Linux), and think about the hardware support and technology which will follow such an increase in usage. Or better yet, start learning how to code, and prove to the world that you're right. All's you're doing otherwise is whining IMHO, and potentially driving developers over to other platforms.
Think about it... You're an OSS developer trying your best to ignore the financial gains of developing for Windows or OSX, in favor of developing something the whole world can enjoy for free, and all's your target audience do
Because its the technology being described in the article
Because your post is about different rendering systems and whether they use OpenGL. The thing I linked to is about X and OpenGL.
I already have what I want:
- Zero eye candy.
- Zero window decorations to maximize screen real estate
- Ability to quickly manipulate windows without the mouse
- Ability to show multiple windows simultaneously without tediously resizing each.
- Ability to quickly switch tasks without touching the mouse.
I use X and a window manager called "ratpoison". Combined with xbindkeys it provides speed, elegance, and simplicity like nothing else.
This new next gen window rendering system looks like a load of junk to me. What productivity benefit will it provide?
Dude, no offense, but it's clear that you're just googling around for keywords without really understanding anything that's being said.
If you ever get interested in the actual story, rather than just googling marketing copy, Apple's developer documentation has all the detail you'll ever need. Until then, just shut it. You're bein' a tool.
I know you are joking, but why not have animated vector fonts. Now I can really have that aqua font I always wanted.
Also imagine if the font specifies its own translucency and reflectivity with normal angles. Suddenly you can now have a terminal where the fonts look like they are made of glass or mirrors, and reflect other fonts and applications around you.
Of course -- taking this to the extreme, we should have ray traced desktops for that ultimate visual candy.
Raytraced desktops are the way of the future. Remember you heard it here first. (actually you probably did not -- since I am sure thousands of other people have probably considered it, and it is probably implemented in some obscure way on N64 or something)
badness 10000
I don't know about this. Linux Geeks really don't have the eye to make an appealing desktop. Microsoft's and Apple's (especially Apple's) UIs are the results of lots of studies, then professional cooperation between graphic artists, professional animators, and programmers. With an open source project like this, it tends to be a mish-mash of gaudy concept effects in odd places stuck in by guys who's idea of a perfect GUI is a VT1000 terminal. If they could all get together and hire some real graphic consultants, then maybe they could come up with somethat is really appealing and easy to use. If you use a Mac, after the first minute or so you don't even notice the effects, they are just part of the experence (unless you are using an old G3). The same is true of Windows XP much subtler alpha transparency effects.
X11 on OS X is dog slow compared to running X11 natively. In fact, Quartz itself is dog slow for text rendering. And that's not surprising: contrary to what you are stating, the use Quartz makes of hardware acceleration is still quite limited.
If XGL is fully OpenGL accelerated, it is leapfrogging anything Apple has implemented in Quartz today.
"it uses Adobe's Portable Document Format (PDF) standard which is a superset of Adobe Postscript"
Not to mention that Postscript is a turing complete programming language and PDF isn't, so there is no way it can be a superset.
could it be that
a) win xp version is more optimized (spend more time optimizing the program used by 97% of your audience... heavens forbid)
or
b) win xp averages load over a longer period? both run a 100% when something can run; the question is over which period you average load when summarizing it as a simple number.
Perhaps the drivers are solid, but only if you are running the right Linux (not *BSD, reactos, or any of the other open source operating systems that would like good support for these cards) on 80386 (not PPC, sparc, MIPS, or any of the other systems linux and the others run on - though admitidly not all of them have the right hardware to connect the card - but some do. I'm not sure about x86-64 either, though I suspect not)
In short, your stable drivers are useless to me because I'm an old BSD guy (complete with beard) and I'm convinced that the sysV style init that most of linux uses is evil and all that. I'm looking for drivers that are stable on my systems, not theoretically stable if I'm willing to run something I don't otherwise like.
It looks like they are moving toward the direction of Mac OS X (Open GL accelerated, Vector Graphics 2D backend). Why not put the effort on GnuStep and make it easier for Mac OS X app developers to bring Mac OS X apps to Linux and extending Linux developers' access to a more commercial market of Mac OS X applications.
I don't know much about Quartz vs. PDF, but it is clear you are missing an important metaphysical point.
DATA != REPRESENTATION
Simple example: the digits "42" are not a number. They are a textual representation of a number, which is an abstract concept. A number has certain properties which the textual representation does not. I can add and subtract numbers, but I can't add and subtract text.
A "PDF" file is a representation of an image using various bytes, starting with "%PDF-1.3". Another representation of that image is a mathematical idealization with certain properties. The bytes that a Mac stores in memory to process the image is yet another representation, the bytes that travel to the video card are yet another, and the glowing pixels on your screen are yet another. Finally, the light from these pixels stimulates the optical cortex in your brain.
When you are looking at the screen of your Mac, is your brain using Quartz?