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."
And only a few days ago we were asked, "Where have all the cycles gone?" Sheesh.
...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.
Forward: For a drawn out post on next-generation X rendering, this blog entry is really short on eye candy. I apologize, but I'm at home, separated from my beloved eye candy, and figured I should write this while I felt motivated. As a way of forcing my own hand, I'm making a link now to a blog entry I haven't yet written that will contain screenshots in the future :-)
Next-Generation Rendering For the Free Desktop
For the past half year or so Red Hat's desktop team has had people working toward making accelerated graphics rendering on the free desktop badass, but doing an ass job of actually talking about what they're doing in a larger public / GNOME context. They've been doing a combination of experimentation (from that cracktastic OpenGL compositing/window manager luminocity to xsnow for the Xcomposite generation) and knuckle-down no-holds-barred infrastructure work (like making Win32 GTK work on Cairo so GTK can move to cairo as the default backend). With RHEL4 kicked out the door we've been able to rebalance day-to-day work on GTK and X onto other people to give the nextgenren hackers free hands. Currently the full-time nextgenren team at Red Hat is Owen Taylor (gtk/pango maintainer), Søren Sandmann (x hacker), Diana Fong (visual designer), Kristian Høgsberg (x hacker) and Carl Worth (cairo maintainer).
I'm really excited because these guy's expertise is across a broad chunk of the rendering pipeline, from the toolkit down to the x server, which is going to give this effort the ability to work on this from a global perspective rather than optimizing the bits where we happen to have influence in. I'm doubly excited because other companies (well, Novell at least, but hopefully others will join) are starting to invest in this effort too!
I'm hoping to drag Owen into spinning this off into an umbrella effort (ala project utopia) to help maintain a coherent story/platform even as lots of people pour work into lots of different packages and distros. There are so many different ways to attack the X rendering issue that I'm a little worried about seeing a lot of fragmentation of effort and the result not being particularly coherent. I do hope people experiment with lots of different approaches, but I also really hope that in we can give developers a consistent platform for doing cool graphics on the free desktop. It would be a real shame to end up with the message in two years being "well, platform X has the feature you want, but you have to worry about also working with Y because X won't work well on distro Z". This sort of technology-choice morass can really dampen developers playing with this stuff and adding support all over GNOME, which is exactly the sort of quick-fiddling big-payoff stuff I think we'll see a lot of as soon as this stuff starts landing. In other words, lets push toward the point where people can feel confident and start hacking up cool things for this system inside GNOME.
What It Might Look Like
A really good system needs to have lots of pieces in place all hooked together....its not something that can be hacked apart and replaced by arbitrary random incompatible bits (though there are points of commonality, such as OpenGL or Render). For example the pieces in one imaginable architecture - by no means the decided-upon final one or anything - might look like:
* A sophisticated drawing layer (cairo using glitz/opengl or render as backends)
* Stock renderers built on top of that drawing layer (pdf/ps rendering backed by cairo - such as Alex Larsson's xpdf fork in evince, svg rendering backed by cairo, etc)
* A toolkit that agressively takes advantage of the features in the drawing layer, exposing them to applications and themes (gtk+)
* A window+compositing manager that can work closely with the toolkit but essentially takes the window contents as a static image in compositing (metacity with luminocity-like GL compositing manager features fused in to deal with window effects, synching up smooth resizing
Actually reading through it now, it looks like they are going for a combination of OSX and XP. Still got to ask, are they beating a dead horse, when OSX does Xwindows too?
"Slashdot, where telling the truth is overrated but lying is insightful."
Are those techniques only available on one kernel? IMHO that "for Linux" part is optional.
oh. sorry. parsing error.
I read that as "Next Gen-X Window Rendering for Linux"
"Win treats sysadmins better than users. Mac treats users better than sysadmins. Linux treats everyone like sysadmins."
I am sure the new Linux desktop will make OSX look like Windows. And then the entire creative department will rush out and buy Linux based laptops just to look trendy.
This is not the sig you are looking for...
BeOS *still* does it better and faster than any other OS out there.
Here's a little hint to the (future) OS coders out there:
Don't make it snazzy, make it *functional*, snazzy can come later.
So rise up, all ye lost ones, as one, we'll claw the clouds.
Seems to be working toward the same goal as the E folks with their DR17 and associates libraries.
Windows that shrink scale and move all over the fucking place with cool animations
Yes, sounds... nice. And easy to work with.
Life is Reality
"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."
I submitted this story to Slashdot last week, but for some reason it seems to be stuck in "Pending" status, so go here: http://nat.org/2005/february/#9-February-2005
It's an OpenGL-based X11 server, complete with some screenshots. Apparently, window dragging is very smooth (no repaint events are even given to the apps), and with Cairo and GTK, this really could be the future backend for Linux desktops.
I didn't see any specific mention in here, but does this include having a fully 3D accelerated Framebuffer device across graphics cards? I've been missing this for a while in X, having just gotten triple-monitor across two Radeons working. It would be cool to be able to play any 3D game across three monitors.
I'm not losing any sleep over this, but it would be cool. I read on an X board that some people are looking at this, but it's obviously a big undertaking.
overall the idea is good, however...
1) rendering to texture is slow on some GPUs, especially GPUs with limited memory.
2) alpha blending is expensive on almost all GPUs.
imo X needs an overhaul, needs to ditch the legacy crap (lose Xaw for example) and move on. stop interfacing with video hardware like it's 1980.
but considering this guy has basically laid out a "What It Might Look Like" roadmap, this looks like more more vaporware than Avalon ever was. Three more years, at least.
Go somewhere random
An Indian-American Hindu committed to non-violent thought/speech/action alarmed by the global explosion of radical Islam
No screenshots? Someone please post a dupe-story when the screens are up. Thanks in advance ;)
I have never let my schooling interfere with my education.
I've just discovered it, and I love it.
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.
I second this. At the very least, we want the appropriate documentation for the cards. I can understand if they can't release their current drivers, but I don't understand releasing the info on how to interface with the card. What's it going to reveal? That they have some sort of super-secret magic instruction on the GPU?
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
Because somehow, deciding to not implement these features will magically make historically recalcitrant GPU vendors more open and willing to talk?
I thought AMD bought NextGen.
Oops.
Done. Plus, it will be rendered in real-time. With a swishy tail.
If Linux can beat Longhorn to the punch with a fully 3D rendered GUI, ala OS X, I will switch 100%.
"Since taking advantage of these new toys would require a new theme system, Havoc and I have been talking about how a very different theme / widget rendering system might work with this that allows for custom design of any window, widget, or anything in between."
Theme managers for Gnome seem to me to be just stabilise to stableize under hoary. I hope the flow of new features with a major revision to theme management won't break down the continuity of it.
my sig
A few things that sound useful, like:
- Hardware accelerated PDF viewers
- Synchronized smooth resizing so there's no disjunct between window borders moving and the contents redrawing (you should see the demos of this in luminocity... it really makes a difference in how real the interface feels, just as double-buffering did for stuff moving)
- A shared path between on-screen display and printing (using Cairo's PDF/PS backends)
- Alpha transparency in applications whenever and wherever the urge strikes us
A couple things that may lead to greater usability:- Toolkit themes that draw with layer blending effects, delightful bezier curves, and irritating alpha gradients
- Live window thumbnails
And lots of rather pointless fancy eye candy:- Indiana Jones buttons that puff out smoothly animated clouds of smoke when you click on them
- Hundreds of spinning soft snowflakes floating over your screen.... without messing up nautilus
- A photograph of a field of long dry savanna grass as your desktop background... where the grass is gently swooshed around by a breeze created by moving your mouse across the background
- Windows that shrink scale and move all over the fucking place with cool animations
- Vector icons with very occasional super subtle animations rendered in realtime...a tiny fly which buzzes around the trash every several minutes, etc... think mood animations as in Riven (which as a total random aside is still a shockingly beautiful and atmospheric game years after it came out, postage stamp sized multimedia videos notwithstanding)
- Workspace switching effects so lavish they make Keynote jealous
- Brush stroke / Sumi-e, tiger striped, and other dynamically rendered themes where every button, every line looks a little different (need to post shots / explanation of this stuff, but another day)
- Progress bars made with tendrils of curves that smoothly twist and squirm like a bucket of snakes as the bar grows
- Text transformed and twisted beyond recognition in a manner both unseemly and cruel
- A 10% opaque giant floating head of tigert overlayed above all the windows and the desktop.
Now, these fancy effects are certainly kind of cool, and may look nice. (Though I can guarantee that when they're all in, I'll probably still be using Blackbox.) However, is that really all that the future holds? More special effects, without any substantial improvements in usability?How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
i wrote a paper on this topic for my CG1 class, and it covers most of the modern display systems with a few right around the the horizon.
i'm hoping cairo/glitz will give quartz extreme a run for its money. now we just need to get started on implementing something similar to coreimage/corevideo!
- tristan
You would think. However, remember - you need to get a profit-motivated corporation to spend money on something with no forseeable returns.
well I don't have a pony, but I do have something you could stick down your throat....
That'll make you a little horse.
It's a nice idea, for sure. I just hope it fares a little bit better in reality than Seth Nickell's last grandiose idea. I'd like to see some of these idea implemented and not just discussed. Of course, I've contributed nothing to the success of these projects either -- and Seth's ideas are great. I'm not saying that I'm so much better than him, just that I hope some reality can emerge from this grandiose idea so that Linux doesn't develop the same reputation for vaporware as does Duke Nukem.
501 Not Implemented
Fuck yeah mutha fucka... watch those cool animations fucking fly... wooohoooo
"We need a fourth law of Robotics: Stop Fingering My Wife"
No.
The XAA sucks sweaty donkey ballsack. KAA (or it's successor) needs to be firmly in place, with solid proof that it works (software implementation) before vendors are going to write drivers for it.
Getting the vendors to open up specs, or to write OSS drivers themselves is just gonna get you blue in the face, and besides, it is pretty orthogonal to actual technological growth.
Only programmers can do this work, any consumer or advocate can push to have specs opened up. How many GPU manufacturors have you contact this week?
We are also working on a Cairo based canvas, currently using gtkmm, but with portability in mind.
It will be good.
Oh, (and of course I had absolutely no intention to say that when I started writing this posting), btw., we are still looking for developers.
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."
If RedHat and Novell and the FSF go to NVidia and ATI and tell them - we'll endorse one or your products, which ever gives us the best support (or both, if both do well); it's a big enough market to matter.
(of course the OSI'll probably simply bless the highest bidder adding some confusion)
It's a chicken/egg situation, the hardware manufacturers are going to support the most popular software and unfortunatly thats the software with the most eye candy.
If a great windowing system is exclusively available for one manufacturers card, the other manufacturers will be jumping over each other to add support.
I say, work with what you've got, let the others kick themselves when they realise their ignorance and complacancy lost them the market.
No trees were harmed in the posting of this message. However, a great number of electrons were terribly inconvenienced.
Anyone else read that and immediately think Pearl Jam wallpaper? Maybe a grunge-inspired flannel theme??
-Laz
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.
I am suprised it took me this long to find a linux fanboy post. Wow. The zealots are getting lazy around here.
OTOH, it was a nice effort to bash Windows, Apple and everyone who owns a Mac in so few words.
_damnit_
It's my job to freeze you. -- Logan's Run
Those of us who like out UIs fast, featureful, and pant wettingy gorgeous, already have what we want
I mod down anyone who says "I will be modded down for this", regardless of the rest of their comment
..by Apple. Apple humilated all other Unixes especially Linux when Jaguar appeared. It taught a shaming lesson to KDE and GNome afficinados in how to construct a WM, GUI, appropriate drivers and deliver fast results in a slick appealing and unobtrusive interface.
This current initiative is no doubt pleasant news for Linux heads, and provides them with a glimer of hope but the fundemental problems with Linux GUI(s) are simply too great for this to help them (it will make them worse) and they need tackling first. Of course it won't get tackled, instead the ever growing tower of graphics library layers in Linux is set to meltdown into an ugly mess anytime soon. Well it kind of has already.
You heard it here first
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
Granted, Enlightenment is a window manager that lives on top of the existing X protocol, but nearly every single piece of 'eye-candy' this guy mentions is already do-able in E17.
Sounds just like the themeing system in E17 to me... http://enlightenment.org/pages/systems.html
Don't get me wrong, the things Seth describes sound cool, but the way he describes it makes it sound like they're the only ones with these ideas, when in fact Enlightenment 17 is already enabling most of what he mentions in this article. Sure, it's not a "production" release yet, but DR17 is certainly usable today, and has most of the features he mentions.
Heck, some things Seth talks about (Live window thumbnails) have been available in Enlightenment for quite some time (I know DR16 has them, and maybe earlier versions as well)
... where are my mod points when i need them
...how do you really feel?
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.
But you I suppose you are talking about drivers for that rad game box your mom bought you for your birthday, you know, that awesome deal she got on it from the QVC shopping channel.
There's a difference between a useful animation, like the red X lighting up to indicate activity, and the unnecessary cruft like animated icons. The former serves a purpose; the latter just serves to distract you.
I'd really love to have the "disable cruft" option at install time. I appreciate functional improvemnts. I subscribe to the form-fits-function mentality, and I strongly oppose increasing my effort without getting some benefit in return.
I'm appalled that folks generally just accept that they'll need to upgrade their computer just to handle the additional burden that an OS like WinXP imposes. I feel like we've stagnated in terms of progress in computing capability. The hardware gets better, but the OS "improvements" chew up the benefits before the applications get a shot.
Also, there is considerable progress being made on the open source driver for ATI Radeon class cards - even things based on the R350 cards will have decent support through this soon (well, eventually, anyway).
'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 be so condescending to OSS. Prior to MacOS X, the Mac was an OS in the dark ages.
If MacOS didn't gut BSD, it would still be using cooperative multitasking.
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?
I can't run OS X on my machine. "Go buy a mac" is not a solution. I have nothing against Macs, but it isn't beating a dead horse to implement this functionality for Linux/FreeBSD on intel. Also OS X isn't open source.
Celebrate the finer things in life
Maybe it's being sponsored by Samuel L. Jackson?
The two are not mutually exclusive. The developers are not going to spend their time negotiating. They are developer not negotiators.
Celebrate the finer things in life
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?
That author ((likes to use lots of parenthesis)) it makes it hard to follow (that is, read (for instance a book) along with) his line (a geometric object) of (reasoning (which separates us from animals)) that I lost his point (not a line).
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 :)
... that much eye candy will not make X fat?
Someone should come up with the idea of writing a real 3D engine in X...
what do i checkout to get luminocity? sounds nifty.
Hmmm... sounds a lot like Microsoft's Avalon API + Longhorn's (well, it used to be in Longhorn, not sure after cuts) desktop compositing engine which basically uses Avalon to render the entire desktop. If you've seen the Aero user interface examples, you know what I'm talking about.
I couldn't find in the article what license the code is written under?
"Persistence is annoying success." - ghee22 11:28:1999 - 10:53:PM
> ..by Apple. Apple humilated all other Unixes especially Linux when Jaguar appeared. It taught a shaming lesson to KDE and GNome afficinados in how to construct a WM, GUI, appropriate drivers and deliver fast results in a slick appealing and unobtrusive interface.
I prefer KDE to OSX in terms of interface. OSX is shiny, but I'd rather have virtual desktops, built in and on by default, instead of zooming trash can icons. Expose is cool, but it seems like a hack to get around the lack of virtual desktops; I've tried Expose clones under Linux/x11, but never end up using them much, while under OSX it's fairly vital when using several apps.
I also fail to see how Apple "shamed" KDE/Gnome users with its drivers... It's not as if the end users write the drivers, on either system, which your post seems to imply; nor do the people who write the desktop environments.
> This current initiative is no doubt pleasant news for Linux heads, and provides them with a glimer of hope but the fundemental problems with Linux GUI(s) are simply too great for this to help them (it will make them worse) and they need tackling first.
Specifics? I wouldn't say there's anything fundamentally wrong with X11; Gnome, KDE, and other DEs all need serious work, and lack the slickness of OSX, but in terms of pure usability, I find KDE more productive than OSX as an interface.
> Of course it won't get tackled, instead the ever growing tower of graphics library layers in Linux is set to meltdown into an ugly mess anytime soon. Well it kind of has already.
How is it melting down? Gnome is a bit of a mess architecturally, but it's far from the only environment, and Xorg is getting a lot cleaner.
> You heard it here first
As if. People have been saying what you've been saying for as long as Jaguar's been out, and small variations of the theme for many years.
I've probably been trolled, given that you present a few highly charged points, with no specifics, and use terms like "Linux heads." If so, have a nice day....
Now introduce transparencies for organization and content.
Are there any reports from XDevConf on the net yet?
OS X is wonderful, to be sure. But it is proprietary and only runs on Mac hardware. Xorg is open source and runs on many operating systems and architectures. Big difference. You will continue to see Linux improve in the coming years and there will be more and more Linux desktop deployments. That is the advantage of open source. The battle is far from won. You didn't hear it here first, but you did hear it here.
Celebrate the finer things in life
Enlightenment E17 IS the next generation X desktop! It has the fastest gfx libraries on this planet and it's veeery smooth! It's already released as developer version (DR17), but should be released for masses soon.
I don't care for the Jaguar UI. If you were to force me to use it I'd give up on computers and go do something else for a living.
Michael
MOD UP!! Insightful!!
... we used fvwm, *and we liked it*!
--fatboy
not just get a mac already? Hardware accelerated PDF, puffs of smoke.... If these guys want OS X so much, just buy it.
First of all, until the graphics card makers get SERIOUS about Linux support, this is all dreaming.
Second *looks around* desktops are almost all OS X or XP here - Stanford. Linux is for the servers, which numericly dominate, but are for computation, not making poof graphics when you click something. I haven't installed X on a Linux box since about 1996.
- Adam L. Beberg - The Cosm Project - http://www.mithral.com/
so I dont screw with mods I've done in here...
But I feel compelled to make a comment after reading the article fully now...
useless.
useless.
useless.
It really doesn't matter what is getting rolled into E because no one is using E. I appreciate their innovations but at this point....whats the point?
I've tried to follow these developments for a while but I still can't see how it all fits together. What I need is a nice diagram with each API layer. So far my understanding is:
GTK
Cairo
Glitz
Mesa
DRI
But where does the X server (via RENDER?) come into play? What about xserver/kdrive or the new XGl, that I hear rely on just OpenGL? What about games that want direct access to OpenGL?
IMHO, no app should be given information about it's environment. The only reason expose events exist is because back in the day there wasn't enough memory to store a complete image of every window - so the apps had to be asked to update parts of the display when they were exposed. Apps interacting with other apps without user intervention is definitely a no-no and is the source of some Windows security holes. I just how when (even IF) an app gets to screen capture itself they don't show other data through the transparent parts. It needs to be pulled from its private video memory and not off the screen. The user of course should be able to take a screen shot, so either the window manager needs to have special privledge or it needs to be integrated into the server. I think the special privledge is consistent with what exists today.
"Progress bars made with tendrils of curves that smoothly twist and squirm like a bucket of snakes as the bar grows"
Why? what's wrong with a simple progress bar?!
So far it's just the usual bullshit. _IF_ we did that, we _could_, blah blah blah, yadda, yadda, yadda. I'm so sick and tired of empty promises. How's cut&paste doing, folks? Can I cut & paste between _everything_ yet or it's another 5 years away?
One of the many great Calvin & Hobbes lines. It's really hard to find a good time or a place to use it though.
"What's the point in being cool if you can't wear a sombero" on the other hand is great for just about any occasion....
...when it comes to OS X.
Denial that Apple delivered the best UI experience for a generation.
Denial that it just WORKs and is ready to go, no messing about X drivers and arcane configs just to draw a window.
Denial that KDE, GNOME and all their copycats are falling to pieces at the seams and going NOWHERE. Their only hope is keep adding on yet more junk in the hope that no one actually realises what's going on underneath the surface.
Denial that X Windows is something from the PAST, awash with irrelivant client/server stuff that most will never use.
Denial that ONE GUI, ONE DESKTOP is how most people want to work.
Denial that Aqua is a thousand times better and faster than X11.
And of course there are those in denial that Apple even PROVIDES an X11 environment for those who actually want that stuff. Oh but we hear 'well Apple's X11 isn't as good as..." "It's flawed..." etc. Yet the only reason is seems like CRAP is because next to Mac OS X's native GUI it is CRAP and is exposed for the CRAP it is.
It is somewhat concerning that there is no mention of other toolkits here. I know RedHat is a GTK/GNOME shop, but when they're talking about next generation X, they shouldn't exclude other tookits and frameworks from that discussion.
It seems like they aren't looking at QT/KDE, XUL, OpenOffice.org, Wine, Java (SWT & Swing), and such. Though many other toolkits seem to be moving towards using GTK as a backend on Linux, even a brief mention of KDE or QT would've been nice.
Not that I'm too worried. It seems that even though RedHat and freedesktop.org are dominated by GNOME people, there has been good involvement from other camps. The work being done should benefit everyone, regardless of toolkit or desktop environment (well maybe CDE and Motif will still be butt-ugly, but what can you expect).
"'Workspace switching effects so lavish they make Keynote jealous' "
Keynote? As in the Apple presentation application? What does this have to do with workspace switching? The only thing that keynote switches are slides.
You must be referring to Expose, a feature of Apple's window manager, not a workspace switcher. However, a great little (free) app called DesktopManager does use expose's effects to create workspaces.
There are 10 types of people in the world. Those who understand binary and those who do not.
Hardware-accelerated PDF viewers, huh? Aqua beat already does that.
Well and before Aqua beat there were "hardware-accelerated postscript viewers" - but they were normally just called "printers".
so I was reading this and I began to think......his paint thinner is running out. My My this hacker thinks he can hack raster style. Enligtenment has already been doing this, its just does it better. Gnome does not or even makes mention of this since they lack good wm of their own. I woule suggest that they redouble efforts to work with Enlightenment to make it better than the current default wm for gnome.
Manufacturers aren't going to write drivers against a moving target.
Putting inplace a good solid road-map and feature plan will help boost the confidence of the manufacturers in Linux and X windows.
Why waste time and money developing drivers for X windows when the applications are going to be 'slow' anyway.
Composite and Damage help quite a bit by providing more modern clipping, getting with of CPU or pixel map generated widgets and replacing them with shaders will give another significant performance and footprint boost as well as something for manufacturers to develop drivers for.
If were really lucky QT and GTK will be forced through the same widget layout code so that you get the same layout regardless of toolkit.
'Why is my submit button made out of purple tactile fur? must be that new X they've been talking about'
thank God the internet isn't a human right.
You know you want one!
As far as I can see hardware accelerated PDF rendering is all it's cracked up to be.
Doesn't it make you feel good to know that our freedoms are protected by politicans, lawyers and journalists.
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?
Or you could learn to use it and work with it :D ,
oh since when has apple forced people to use Mac osX
Michael
(a difrent one , unless im having some mental problems i dont know about)
Eye candy GUI stuff like this is cool, sure. But you're hungry for more after about 30 minutes.
Where are the fundamental changes in the ways that we interact with our applications and systems?
Sure, keep up with quartz and aqua for now, but i want to see some changes in fundamental Graphical User Interfacing system.
There are 01 types of people in this world. Those that understand binary, and me.
Instead of switching desktops, you can have multiple scaled-down windows on the screen, so you can view your desktop as a whole and then zoom in on windows as you see fit. Great interface for those of us who run many programs at once and would like a convenient way to keep track of them all.
What I don't understand is what the graphics card manufacturers think they have to gain by keeping their drivers closed source. The support of the F/OSS community could do nothing but improve their drivers, which could benefit not only their customers using Linux, but also their customers using other OSes.
I LOVE Calvin and Hobbes, but I don't remember that line what book is that in? mmasdf@hotmail.com -manno
left the U out.. The most important aspect of any interface is the User. If linux/unix wishes to make waves on the desktop they need a evolution on how the user interfaces.. not eye candy.
I know you were quoting the article summary, but I just wanted to note that whoever wrote that probably meant "Expose" instead of "Keynote." Unless Keynote has some hidden workspace switching effects I'm not aware of. Maybe they meant the Keynote graphical transitions within presentations?
Anybody know if I'm missing something?
Si la vida me da palo, yo la voy a soportar Si la vida me da palo, yo la voy a espabilar
Personally, I consider virtual desktops much more unnatural than Expose. It makes more sense to me to have everything overlapping on one screen. For people who work like that, Expose is great. But hey, this is one guy's opinion.
Moof.
If the autors Enlightenment (Raster etc.) could work with the X.org designers on the Composite extension etc. maybe the extension would be feasable without accelerated drivers (as it is in Kdrive). Then maybe gtk could use some code from enlightment to redifine their widget set. If the gtk( and hopefully Qt apps to) comes to a state where they may be compared to entience of Enlightenment, we could begin to talk about animated buttons with smoke and flying bees.
When it comes to simple programming a ui designer like qt designer (qt 4.0), which works with the ruby wrappers created for enlightenment could be as easy as a visual basic like designer.
XGL, also known as X they way it should have been (and will be)
Getting rid of application size dependencies on screen resolution
Absolutely necessary for high-resolution displays, which may actually finally get to the same quality that peoper is in the next 10 years.
From what I've read, due to improper order in their rendering pipeline, OSX still doesn't do this acceptably. Cairo will.
E17 is software based rendering for Enlightenment and its apps only.
This is hardware based rendering for all X apps.
I agree to that. Or standard cross-platform (x86/PPC/etc) cards. I'm sick of having to spend extra $ just to get a card for my PPC machine (whether it's running OSX or linux, I don't care, I just want the damn thing to work).
I understand all of the reasons that these cross-platform cards don't exist, but I really don't care. =P
Also, I'm just as much of an eye-candy whore as the next guy. Hell, I love OSX's clean interface and awesome animation and transparency effects, but this stuff CAN be taken too far. Animation can be taken too far, M$ has done this with those animated menus, and apple has gotten close to this with their fade-out menus.
Smooth-animated buttons that move in and out as you push them is worthless. The interface needs to be as snappy and responsive as possible. That's why I have the gripe with the menus, and yeah, I know you can turn off the animation in Windows...
As long as the crap doesn't delay my work or play by anything more than 100ms, it doesn't bother me.
Some of the other effects sound pretty cool. The smoke thing seems like a pretty sweet idea, but I'd probably have it turned off.
I'm just waiting for some more desktop animation stuff. Very suttle animation on the desktop can be a good thing, especially for casual web browsing and chatting and whatnot.
...spike
Ewwwwww, coconut...
Back in 2000, I remember Raster showing how cool EVAS was (the rendering backend of E17), and he pointed out that OpenGL sucked for doing a lot of 2D windowing because creating textures was so resource intensive. If you had textures that had to be rendered on the fly back then, you were pretty much limited by the hardware. Now 5 years later, we've got another project implementing the same basic idea, and largely because of politics and waiting for hardware we've barely moved anywhere. Congrats Raster you were right all long :)
I think the gain is probably realized in not being sued for breach of contract. Sure, open drivers could be improved, but the value of that is probably significantly overcome by the massive lawsuits they would be open to for violating the terms of non-disclosure agreements or other information sharing contracts.
If there was money to be made by opening up the drivers, the companies would do so.
Who cares how "cool" the rendering is? Who cares how awesome the effects are?
It all means almost zero if the interface SUCKS.
The prettiest X-Window window manager is still bloody X-Window. Even KDE and GNOME are not quite up to snuff when compared to the likes of WinXP, OS X or even OS/2 in terms of useability for _non-hackers_.
Always chasing the wrong problem. Right in front of me right now I've got a WinXP box, an OS/2 Thinkpad T40p, a dual-CPU RedHat box, a SPARC with Solaris 10.
Already the Sun guys have done quite a bit of tweaking to make their Java Desktop Environment (GNOME really) much better than the default GNOME.
On either case, the GNOME desktop sucks ass when compared to WinXP or OS/2's WPS even though, as in the case of WPS, it is on the ugly side.
GNOME or X-Windows is like that bimbo with nothing behind that pretty face.
From PDF Information: OS X and PDF:
"MacOS X is the first operating system on the market that actually uses PDF-technology within the operating system itself. Apple calls this technology 'Quartz'. Quartz is a layer of software that runs on top of Darwin, the core (or kernel) of the MacOS X operating system. It is responsible for the rendering of all 2D objects. Alongside Quartz, OpenGL takes care of handling 3D data (used in games like Quake or Unreal as well as professional 3D applications like Maya) and QuickTime handles multimedia stuff (movies, sound,...).
Quartz
Quartz replaces QuickDraw, which was used within earlier versions of MacOS. Within QuickDraw, the native file format was PICT. With Quartz, this now becomes PDF.
Quartz performs a number of tasks that include include:
automatic PDF generation and save-as-PDF (disk and clipboard)
conversion of PDF data to raster data or PostScript. The fact that Quartz can rasterize PDF files means that even cheap inkjet printers can output complex files. Gone are the days when only the screen preview of EPS-files was printed on non-PostScript printers.
a consistent feature set for all printers
automatic on-screen preview of graphics
high-quality screen rendering
In short: Quartz implements a set of rules for describing how pictures and text are displayed and printed. Because Quartz uses the PDF drawing model for imaging, native applications can create and import PDFs without the need for outside programs.
Some people have been wondering whether Apple pays licenses to Adobe for the technology used in Quartz. Here is what an Apple employer had to say about this: The Quartz renderer and the PDF interpreter that Apple ships with Mac OS X are built with Apple code, with no external licenses, by Apple employees. Adobe just publishes a specification for how it's supposed to function. This gives Apple considerably more flexibility with regard to what Quartz and the PDF interpreter can be used for.
Adobe PDF versus Quartz PDF
Since Quartz uses PDF, one would assume that everything that is possible within a PDF file is also supported by Quartz. This is not the case. Quartz uses only some of the features of PDF, it is based on a subset of the full PDF specs.
These are some of the things that are used within both the official PDF specs and Quartz:
the PDF imaging model
Common colour spaces: grayscale, RGB and CMYK
Embedding of images (even though Quartz does not support masks)
And these are things that are feasible in PDF but that are not (yet?) implemented in Quartz:
Annotations
Colour management using ICC profiles
Forms
Actions
Bookmarks
Digital signatures
Security
DeviceN (used within PDF to offer improved support for images containing spot colours)
Embedded fonts
Form XObjects: in some ways the PDF-equivalent of an EPS, meaning a group of objects that are a sub-part of a page.
Transparency
In fact, one of the main differences between both systems is that the PDF specs are now at version 1.4 while Quartz adheres to a subset of the PDF 1.2 specs."
I reallly wish that before they get to talking about setting up some advanced rendering engines, etc. they think about making QT and GTK work better together. Before we can have cool OpenGL effects, I would like to have unified themes that work across the board, meaning in GNOME and KDE.
Also, I would like to see Nvidia's drivers for linux have a graphical installer. The command line based one can be very confusing and complicated, especially for new users.
Anyway, on a different note, it will be really interesing to see if the Enlightenment team picks up on these new features once they are released. Imagine the possibilities! Can't you see that window minimizing effect in all it's OpenGL glory? What about the dock thumbnails?
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.
Thank you, thank you, thank you for stating the obvious. It's amazing to me how many people can't see the obvious through the marketing crap. How the hell are we supposed to get "workspace switching effects so lavish they make Keynote jealous" if there are no usable cards for this new X-NextGen?
GNOME is a GNU project. Last I checked, GNU was all about Free Software, including Free Software drivers. What good is all this freedom if the basic infrastructure itself is encumbered?
I'm not asking for video manufacturers to sell their first born, only to provide hardware specs. Is that so much to ask?
Don't blame me, I didn't vote for either of them!
LINUX != x86!
2^5
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?
what about burning melting dialog boxes?
K.
What about those of us who see that the whole industry is adopting Qt ? /
What about those of us who liked gtk/gnome and saw that sun and hp backup were just fairytailes
Those of us who liked it when they could actually configure something befor the gtk2 "upgrade" ?
More acid spills and bitter moods on request.
"Quartz uses the PDF drawing model for imaging"
"Quartz - Adobe Imaging Model (PDF)"
Quartz - "Display PDF"
"Quartz is Mac OS X's new 2D graphics system based on Adobe's Portable Document Format (PDF)."
But perhaps the best source would be Apple itself:
"Based on version 1.4 of the Portable Document Format (PDF) specification the same standard that drives the professional publishing industry Quartz is the name for Panthers revolutionary composited windowing system. Take one glance at the Panther screen and youll see crisp graphics, anti-aliased text, liquid transparency, and photo-realistic drop shadows. The technology behind this unparalleled graphic rendering quality is Quartz.
Uncompromised beauty
Even when you print or save to a PDF file, the Quartz engine makes sure the quality of your image is never compromised. Your PDF file or your printed document retains its transparency and 3-dimensional elements so that it looks just as its supposed to look.
From PostScript to PDF
Using industry-leading PostScript-to-PDF conversion technology, Panther translates Encapsulated PostScript (EPS) and PostScript data to high-quality PDF. Because this technology is integrated into Quartz, any Panther application can benefit from it by drawing images on screen from high-resolution PostScript/EPS data instead of low-resolution bitmap. And this also means that you can print PostScript-quality documents on all printers, even on non-PostScript devices by always using hi-res data Panther makes sure your documents always look their best, no matter what printer you use."
Another one from Apple:
"Quartz is a powerful graphics system which forms the foundation of the imaging model for Mac OS X . Quartz offers a sophisticated two-dimensional drawing engine and an advanced windowing environment. Quartz's feature-rich drawing engine leverages the Portable Document Format (PDF) drawing model and offers Mac OS X applications professional-strength drawing functionality. Quartz's windowing services provide low-level functionality like window buffering, event handling/dispatch as well as dynamically creating the translucency and drop shadow effects found in the Aqua user interface."
http://www.apple.com/macosx/features/quartz/
http://www.apple.com/macosx/features/quartz/:
"Based on version 1.4 of the Portable Document Format (PDF) specification the same standard that drives the professional publishing industry Quartz is the name for Panthers revolutionary composited windowing system. Take one glance at the Panther screen and youll see crisp graphics, anti-aliased text, liquid transparency, and photo-realistic drop shadows. The technology behind this unparalleled graphic rendering quality is Quartz."
Slightly off topic, but it seems to me that not enough attention gets paid to one of the biggest 'bang-for-the-buck' features of X, the much-derided remote access capability.
Of course X has always had that, but compared to Citrix, it's plenty hard to use. What would really get businesses interested is the ability to easily set up a box that served up a single application to desktops. I think NX does something like this, but there's some confusion about whether that's really free (as in beer).
In my case, I have a WIN32 app that I provide to OS/X users by running it under Linux and WINE. Works nicely, but when it comes time to print, they can only print on printers the Linux box can see. When it comes time to download a file, they can't save it on their local box - or launch a local application (e.g. email) to process it.
I think Citrix allows all of that, and there's no reason X couldn't support it too. Probably some of these capabilities aren't strictly the job of X, but they're only useful in an X environment, so...
Posted from my Android phone. Oh, I can change this? There, that's better...
the parent is right, see:
I maging/Conceptual/drawingwithquartz2d/dq_pdf/chapt er_13_section_1.html
http://developer.apple.com/documentation/Graphics
PDF documents store resolution-independent vector graphics, text, and images as a series of commands written in a compact programming language. A PDF document can contain multiple pages of images and text. PDF is useful for creating cross-platform, read-only documents and for drawing resolution-independent graphics.
Quartz creates, for all applications, high-fidelity PDF documents that preserve the drawing operations of the application, as shown in Figure 12-1. The resulting PDF may be optimized for a specific use (such as a particular printer, or for the web) by other parts of the system, or by third-party products. PDF documents generated by Quartz will view correctly in Preview and Acrobat.
Quartz not only uses PDF as its digital paper but also includes as part of its API a number of functions that you can use to display and generate PDF files and to accomplish a number of other PDF-related tasks.
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.
-1 Flamebait
It's Open Source, idiot!
-ZOD-
because from a usability standpoint, the Windows GUI sucks the most of all, and we should not be cloning it
I don't agree, Windows is really the best GUI from a usability standpoint, it has has some really usefull features that no X/Mac OS X/KDE/Gnome developper seems to think about.
It's the only GUI I ever saw that's 100% usable from the keyboard, without a mouse (physical or emulated). X has some hacks to emulate a mouse from the keyboard (like turning the numeric keypad into a "mouse"), but it's not as efficient as applications designed with the keyboard in mind :
However, Window's start menu awfully sucks. Please stop copying it. See my last example for an efficient alternative available in Windows but not other GUI's that cloned that horrible start menu.
While bragging about how they can do anything from the command line, "linux geeks" fail to realize that a GUI should also be usable with a keyboard, because in many cases, it's much more efficient.
good, 8.825 sucks. I've been trying to do Directx 9 for wine and it's like eating gravel.
thank God the internet isn't a human right.
I think the current video driver situation on Linux is terrible. There is no such thing as a video driver for Linux. You have to have an X server for a specific card. When XFree was being dropped, everybody was clamoring for nVidia to release X.Org drivers. WTF?
Why can't there be a video driver that works on all of Linux, including the console, whatever X server you like, PicoGUI, or whatever you care to use? Why is it being tied to a specific X server?
boldly going forward, 'cause we can't find reverse
Personally, I'm still waiting for GNOME to get some basic stuff, like universal support for cut and paste, color management, drag and drop everywhere and other integration/standardisation, decent MDI support (see GIMP!), ACLs...
Basically, KDE is where it's at for now: lightyears ahead of GNOME in everything but Accessibility and Internationalisation. KDE still has its faults, but nowhere near as many, so that's the one I'd want to see with Cairo support soon.
As for this article and the "snazzy" features like animated trashcans, I've gotta call BS on it: we don't have animated icons now, after so much time with open source libraries for animated PNGs etc. Even with SVG libs out there, there are VERY few animation tools that do any serious Flash-like vector animation.
So: I really can't imagine that changing for a few years at least. Certainly not becoming commonplace, standardised and integrated across the Linux desktop. Gimme a break. I get my work done on KDE, but as this article says, the fragmentation of different APIs on Linux holds things back far too much.
To say that Quartz uses the PDF display model is not the same as saying that it uses PDF. The PDF display model (which is basically the same thing as the PostScript display model) is an abstraction for performing imaging operations. Essentially, it consists of awareness of current state (location, pen thickness, colours, transformation matrix) and operations which act on this state (moveto, lineto, rotate, &c.)
A lot of things these days use PostScript-influenced display models (Qt's QPainter is one); which is not the same as saying that a lot of things use PostScript.
regardless of zany SFX, i reckon it's about time gnome does something about it's icons.
there's always been something 'smoked' or 'damp' about them.. themes should be called "Journey to the Mushroom Planet" or "Camping in the Rain". the 'My Computer'(ish) desktop icon is a metaphor so tired it yawns on it's own. this said, the http://librsvg.sourceforge.net/screenshots/gorill
is it a case of lagging sentamentalism? gnome itself has evolved into something extremely useable. why are the icons still lost in a pipe-dream?
think i'll just stick with X.org and http://icculus.org/openbox/
Seriously, how many people have 'switched' to Mac OS X because it looks cool? Quite a lot. Linux can and should be able to out-cool windows.
Of course, because Linux is modular, you can ignore it and stick to twm if you like,
They did use OpenGL for [Quartz], but only in a very limited way. Each window is represented as a texture on a surface and fed to the graphics pipeline for compositing.
Let's just remember that, shall we: Quartz uses OpenGL acceleration only in a very limited way, because Apple fanboys always scream bloody murder when people make that statement.
Quartz is amazing. Nothing else in the world comes anywhere close to it,
Display lists as the basis for graphical user interfaces are ancient. DisplayPostscript also basically did the same thing. Tk and Gnome both have had vector-based canvases for a long time, and both use them for creating complex widgets. Zoomable toolkits have offered the same functionality and then some.
There is very little that is new about Quartz-like engines. The reason they haven't been used widely before is because they are memory and CPU intensive (and it shows with Quartz, which is a real resource hog compared to X11). But machines are now fast enough to ship those kinds of display engines for day-to-day applications, so everybody is doing it. Apple, as usual, was a little quicker to market, for the usual reasons: they charge a premium for their machines so they can afford to put expensive features into it, and they don't worry about compatibility with anybody else.
The nice thing about X11 support for these features is that X11 will remain fully backwards compatible.
http://cbbrowne.com/info/xbloat.html
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.
OK, hardware-accelerated PDF viewing is practical, especially in light of how shitty Adobe's PDF viewer is on Linux compared to its Windows counterpart (mouse wheel-scrolling, anybody?).
But buttons that puff smoke? WTF? Who gives a shit? I don't want to waste my cycles on that garbage, and only an "OOOH, SHINY!" ADHD-afflicted graphics dolt -- the kind who thinks Star Wars (any of them) and The Matrix: Revolutions are classic movies because of their special effects -- would.
Lavish workspace-switching? I don't care how cool it looks; what I care about is how fast it does the switching and how little I have to fight the interface to do it.
Here's a prime example of something that should've been fixed 15 years ago: cutting/copying/pasting.
In Windows, it does not matter from which window you are cutting/copying, and, for text at least, it does not matter to which window you are pasting -- all these things work seamlessly. I can take text from the cmd.exe/Cygwin prompt and paste it into my browser, and vice-versa.
On Linux + X, whether or not such copy/paste procedures will work is a complete and total crapshoot.
Look, stick to improving your foundation until it's solid enough to move on. Forget the trinket side-details; nobody doing real work gives a flying fuck about "lickable buttons" in various shades of Cornflower Blue.
mo X needs an overhaul, needs to ditch the legacy crap (lose Xaw for example)
X11 is a protocol. Xaw is not part of the protocol. It was "ditched" long ago. People still use it because they still have applications that depend on it, but that doesn't need to bother you.
stop interfacing with video hardware like it's 1980.
I don't know what that is supposed to mean. X11 has numerous server implementations that interface with hardware in all sorts of ways. Many commercial and workstation X11 implementations have had dedicated hardware acceleration for more than a decade. What more do you want?
If you are saying that XFree86's architecture is a bit dusty, well maybe you are right, but XFree86 isn't X11, it's one of many implementations.
Rather than worrying about "button smoke" and "lavish workspace switching", why don't the X people worry about the absolute dirt-basic foundational things, like, oh, cut/copy/paste -- which STILL does not work correctly across all windows in X?
Even fucking Windows 3.1 got this right. And where is X? Stuck in an era prior to 3.1, apparently, or, about 15 years behind the times.
I frankly do not give a flying fuck about whether my buttons are lickable or come in the color "Cornflower Blue." I care about *practical* things, like cutting/pasting...
Is Capitalism Good for the Poor?
NeWS used it's own interpreter written at Sun. In many ways it was much better than DPS. Most important was that it defined operators to actually create and manage windows, while DPS required you to use X or whatever to create the window and then you could use DPS to draw into it. NeWS also supported an object oriented extension to the PostScript language that was used to create user interface objects in it. NeWS also had many other minor improvements over PostScript, such as allowing null to be a dictionary key, and allowing non-bool to be the argument for if statements, types for colors and paths, etc. It also had a much better "wire compression" scheme for reducing the PostScript program down into bytes, the NeWS one had no structure and thus could be streamed easily.
In many ways Adobe/DPS were way behind NeWS.
Off topic, but its germane to your comment:
Beg to differ -- but it doesn't. We use (by fiat) Word and Visio at work.
Put a Visio picture in -- an outside company gets it and prints it: two of the boxes are BLACK, whereas on our printer they are WHITE. And, there is a blue bit which prints as a half-tone for the outside company that doesn't print AT ALL on our printer (but is visible on the screen). So, Visio "doesn't get printing".
As to the rest of Word? Generally works. But, you need the correct printer driver. Whereas with Unix, you send around PostScript (and don't need a stinkin driver). I tend to prefer the PostScript solution.
PS. The difference between ourselves and the outside company? We use PostScript printers; they don't.
Ratboy.
Just another "Cubible(sic) Joe" 2 17 3061
Just what you need for crunching an Excel spreadsheet.
I wondered how we might best use the cell processor.
This is my post. There are many others like it. If you don't like what you read here, go try one of the others.
Are you using Wine, or Cedega?
Cedega don't release there source so I thought I'd write my own patch against winehead/a>.
It's about a meg or so, if you fancy testing, or playing around and implements the core of DirectX9, beyond cedega in some areas. I'm merging with wine head at the moment so wine should be on a similar level to Cedega in a month or so when shaders are fixed.
Hopefully when Cedega get some competition they will actually improve there product or release more source so that others can.
thank God the internet isn't a human right.
There's a funny thing that goes on with discussions about bloat, eye-candy, and the rest. People talk about how "This feature distracts me, that feature distracts me, I just want to concentrate on the ONE THING."
The problem is, just concentrating on the one box of text, white on black, for hours on end is killer. It's very bad for your body!
The eyes blink less. The back hunches, the brow furrows. The eye muscles don't move. Switching applications replaces the large white square flecked with tiny bits of black with another large white square flecked with tiny bits of black. It's not good.
These moving animations are a good idea. Just as when you're outdoors, you can keep thinking even while the grass moves, while the birds swoop about, while a few people walk by on a path. There's no problem.
Indeed, many people find it easier to concentrate in an environment like this. By letting your eyes follow a person walking across the path, you decouple your mind from what you're seeing. Your brain doesn't look for the answer to the problem you're working on from the person... your eyes just take care of that, and you can move on to abstract thought.
This sort of thing would be *fantastic* for a desktop. Yes, it will probably be overused for flashy bling bling effects. Yes, when teenagers get their hands on this, it'll be a mess.
There will still likely be a lot of decent environments in which you can really get a lot more work done.
You ask "Is this all the future holds?" The question I ask is "What should the future hold?" I think the future should be one in which using a computer is a great deal less unpleasant. The movie Brazil paints a brilliant picture of what our work lives are like today... we squint at glowing tubes and fiddle through endless file folders , sending off thousands of identical documents for who knows what purpose. To figure out what anything *is* in our work world take as good thirty seconds of squinting.
In a world where an ordinary desktop computer can calculate more in a week than the human race did for its first ten thousand years, what else is left but to make working with files less painful and more sane?
Maybe QuickSilver, and whatever predated it on standard Unix.
I really cannot believe that you have the FUCKING gall to go and say that Steve Jobs is not GOD! How dare you!
CDE has risen again! There is power in our NEXT derived system. And it 0wns you!
And guess what! With the power of Portage on OSX I can have a better interface than you ever will with the power to EMERGE! It will optimized and cool, something that you can't say about your shitty gnome!
I'd just like my mouse to stop freezing for a few ms every now and again.
I can't tell you how many potential Linux/UNIX users I know that have told me they're waiting for something like buttons that disappear in a puff of smoke and, until Linux has that, they'll stick with Windows.
Darn it! I forgot the "sarcasm" tags.
CUR ALLOC 20195.....5804M
except that Linux / KDE / Gnome / etc... are free! As in freedom! I don't care how much better OSX is. It is owned by a large corporation. It's not "mine". So, please, all you OSX/Apple people, get that thru your think heads... people like Linux because of the Freedom, something which you don't get with Apple.
Meh.
It's already too damn complex. Talking about adding more layers to an already ridiculously complex convoluted and way overdone system.
The reason X sucks is because there's too MUCH of this crap, not that it needs MORE crap to get around it.
"Champagne for my real friends - and real pain for my sham friends!" http://ericblade.postalboard.com/
And I don't mean remote desktops. (VNC, RDP...) Don't get me wrong, those are nice and all, but nothing compared to remote display.
The X window system is the only *multiuser* GUI out there. The Mac is an interesting hybrid in that it features a nice multi-user kernel with a single user GUI bolted on. Being able to remote that would bring a lot of power to the already fine Apple experience.
Because Apple and Microsoft didn't create multi-user GUI environments, a very high percentage of the computer using population has exactly NO IDEA WHAT MULTI-USER COMPUTING REALLY IS ALL ABOUT.
That's too bad because they would benefit from it.
Honestly, the multi-user X window system and virtual desktops/workspaces/whatever, are the two features that keep me using Linux/UNIX in general. Once you understand what it means to send an application to a particular display, it's really limiting to not have the ability to do so.
The single-user GUI environments also sharply limit the types of group computing possible. Single user GUI systems are all client-server or web-services kinds of systems. This means the software must reside directly on the computer that serves the needs of the user currently using it.
For a single person using their computer, or maybe somebody running a portable one, this makes perfect sense and I'm not bashing it.
However, the potential benefits of workgroup computing are sharply limited by these single-user GUI environments. Just look at all the kludges, we have Novell ZenWorks, install scripts, and other junk all designed to move the increasingly complex software environment from one machine to another as users move.
It's all pretty stupid actually.
In an X window environment, the applications reside where ever they make the best sense and the users run them, where they live, and simply request the application display I/O come from the machine they are currently using.
This has a number of very significant advantages:
- Sharing powerful machines. Does every user have to have the super box? No. With the X window system, everyone who needs to run something on a powerful box can simply do so, from the machine they are running.
- Sharing expensive applications. Look at MCAD, or analysis, or simulation applications. These things are very expensive and are often complex to administer. Making a package like this available to a group of users is a lot harder than it needs to be, when you don't have the X window system working for you. The application needs to be loaded on each machine, then complex and error prone floating licensing schemes regulate the use of the software.
In an X window environment, any user that wants to run the application simply does so by running the one copy on the computer it is loaded on. When they get the data they need, they put it on the network where they have more local access to it and move on. This has licensing implications also. Many companies charge more for floating licenses because they know workgroups need that capability. The X window system mitigates this cost in almost every case.
- Data Management. In a client/server environment, a user must have a copy of the data on their machine in order to manupulate it. However an X window capable application can isolate the user from the data in powerful ways, mostly for free because of the way the UNIX and X window systems work together.
Imagine a data pool located on machine A, data manupulation application on machine B and user running on machine C.
When the user wants to do something with the data, in the data pool on machine A, they run the application on Machine B, remoting the display to their machine C, while the application then manupuates the data on Machine A.
In this case, the user has no direct access to the data in question. Possible actions and even copying of the data can be made as easy, structured, and or difficult as necessary to meet the design parameters. (Render
Blogging because I can...
Quit using those old outdated apps that don't support modern copy and paste Its been standard for a few years now, both GNOME and KDE get it right. I'm sure others do too.
Its not our fault if you refuse to upgrade to something that supports the standard.
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.
Did you ever consider turning all the services "off", setting inittab's default to 1, then running everything from runparts rc3.d from rc.sysinit?
MUWAHAHAHA.
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
OK - I see another E thread... Time to inject some fact in here (some of this thread so far is fact, some is over-exuberance, some is patently false).
OK - First. E17 has had all the stuff seth is alking about FOR Cairo, GTK+, Qt - ALREADY DONE. Years ago. Been there. Done that. Been wating for 5 years for XRender to stop sucking. Sorry guys. It does suck (in general). Do some benchmarks. We have had OpenGL acclerated rendering for 2D for years. Evas has enabled that long ago. We choose NOT to use it due to 1. most users NOT having accelerated cards capable of drawing well enough for 2D use (all you i8xx users? s3 savage? via unichrome? just ask all wonders of modern ati cards how great their ati closed drivers are in stability? etc.), and 2. driver stability is so bad, using OpenGL is like asking for an instant system freeze. Linux users like to tout how stable it is - give me 5 minutes on any linux machine with nvidia or ati cards... freeze. It has improved over the years - definitely, but it still is unstable - to the point where we support it but don't trust it to enable it by default. All the playing Owen, Seth etc. are doing and talking about, we have done "in principle" years ago - but no one was interested much. The code has been available for years in CVS. Just check the logs.
We have all the fancy "Indiana Jones" effects done NOW. We have the effects engine done (macro-media flash like system we call Edje, specifically designed to do layout, animation and interaction and act as a slave to a widget set/app). We have an accleratable, re-targetable canvas (Evas) that supports Software X rendering (the highest quality and most stable one), OpenGL (very fast if you have dirvers, but lower quality due to OpenGL resampling for scaling down - mipmaps dont fly for 2D), DirectFB, Linux Framebuffer, Qtopia, System Memory, and yes - we have a CAIRO engine. They are all selectable at runtime by the app and compile time too, so none are REQUIREMENTS, just options. Now just for your info - on every machine I have (1 laptop, 3 desktops - nvidia, ati, i865 and g400 gfx cards) Evas's Software X engine is in the order of 20-40 TIMES faster than Cairo. I can go into details as to WHY and the Cairo devs know and agree as to why (we discussed this - thats why i wrote the engine hooks as a test case) - but first before everyone runs around half-cocked, get some facts on the viability of these things. Evas can pull the same tricks Cairo does via glitz - use OpenGL. We have been doing this for years. We consider it too unstable for production use at all. Punting everything via OpenGL is not a walk in the palk, and has its drawbacks - if you do, WITHOUT a good software fallback system, you have just left every user of a non nvidia card in the stone-age. We do not believe that is a viable thing. Sure - SUPPORT modern cards and get acceleration from them, but don't alienate those with older cards and older systems. At this stage the only rendering engine I have seen to date that can provide the same visuals AND at an acceptible speed is Evas, and still take advantage of modern GPU's via any API made available.
We are doing most of what Seth "dreams of" already. Have been doing so for years. And we have more on our TODO list. UNLIKE relying on CAIRO etc. we can run fast on LEGACY systems WITHOUT special X extensions, and run usably fast (see testimonials on people on 400Mhz or below boxes). We even target embedded devices with our engines (50-200Mzh ARM CPU's). We have an abstracted engine system so we can slide in any rendering technology when it becomes usable. We are WAITING for XRender to become usable (en masse - not just in 1 monolithic xserver for 1 subset of chipsets). We happily continue with the rest of our design and code and dreams being able to bide our time and wait because we have a usable software layer already. We don't RELY on NEEDING a hardware layer. We CAN use it. We CHOOSE not to. See above as to why.
--------------- Codito, ergo sum - "I code, therefore I am" --------------------
Hype-noun: blatant or sensational promotion
Tonizing(tone)-to give a particular intonation or inflection
Hyptonizing must mean-the particular intonation or inflection in which you give your sensational promotion.
It is X Window, X or X Window System. Only to discredit it you have to intentionally use it as X-Windows.
Senthil
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.
This has been mentioned on /. a couple of times before, but it suits this thread.
There is a project underway to not only build Linux drivers for a card, but build the card with open-source in mind. The card designs will be open, and much (if not all) of the firmware will be available, as will the circuit designs and all the specifications to interact with it. It is in the process of being designed, and apparently is moving along at quite a clip (I'm kinda following the development, but have no experience on how these things normally go).
It won't be an nVidia beater, but will be more than sufficient for a non-high-end-gamer desktop. It will also be openly hackable ("you want to overclock it, here's the information how on the official website, run with it!").
Details can be found on the open-graphics list page, and I encourage signing up to the list just to get a feel for what goes on in this kind of development.
When this gets released, we can finally have a recent video card and not have to worry about unfixable drivers causing issues with bizarre hardware configuration Z, like I've had with the nVidia Linux drivers before.
that's a technical issue. As you pointed out, there are solutions for X.
My primary point lies with multi-user computing and the choice it offers the users and administrators.
X is a multi-user GUI and the Apple and Microsoft GUI environments aren't.
Given the attitude at Microsoft, I can see why they did what they did, but Apple had basically a fresh crack at that issue and made a poor choice, IMHO.
And, for the record, I'm getting a Mac Mini here in a month or so. I like it, so my post is not an Apple bashing post. The GUI is good. It's just not multi-user and it should have been, given the UNIX OS it runs on.
Had a comment in my journal too about this being a mainframe throwback. Not everybody is going to want to run things that way. Local computing has a *lot* of advantages. However, denying the multi-user choice takes something important away from computing that should be there for those that want to take advantage.
Afterall, we built this nice network, why not make the ability to fully make use of it standard, in the box, stuff.
Apple would have done it very well compared to what we have today.
Blogging because I can...
How do you ensure any developers haven't stolen code from other companies and put it into whatever they are working on?
Holy shit. You mean to say that people in the real world actually use OpenInventor? This must be the first relevent thing I have learned in college (took 4 and a half years). I'll be damned.