Recommended Posts

There are some attempts out there. But from what I can tell nothing has a huge team working on it yet, just a couple guys playing around is the feeling I get from most :(

what would I need to know to create a graphics system for linux on par with Quartz Extreme (Mac OS X) and Desktop Composition Engine (Windows Codename Longhorn)?

what would I need to know to create a graphics system for linux on par with Quartz Extreme (Mac OS X) and Desktop Composition Engine (Windows Codename Longhorn)?

a lot. The current graphics systems are getting there and in come instances ahead. For instance XP doesn't support SVG, but several window managers in linux do support it and so do icons in some desktops. Longhorn is supposed to use vectors, but linux uses it first...(I don't know about mac here)

Longhorn is supposed to use vectors, but linux uses it first...(I don't know about mac here)

I'm sure mac uses vectors... Mac users seem to have a thing for sleek, sexy curves... If you don't believe me, look at any piece of hardware Mac has put out, at least for the last 5 years.... :laugh: :)

I think OS X might use vectors for a couple of things in the GUI. But don't quote me on that, I've barely touched a modern Mac right now - I could be totally wrong.

I'm pretty sure all the icons are still bitmaps/pixmaps though.

Quartz extreme is simply a 3D accelerated version of quartz. Where possible the 3D card handles the 'hard' work during the compositing process. Things like scaling graphics, transparency, rotation, etc. are handled by the 3D processor. OS X still ships with plain old Quartz code for Macintosh owners who don't have 16mb Radeon+ class video cards which has the same functionality - just without the hardware acceleration.

http://developer.apple.com/quartz/ is a good place to find out exactly what quartz does, specifically the quartz primer. The simple rundown of features is:

- Anti aliasing of all text and graphics

- Provides the frame-buffer display services to prevent tearing.

- Color management via Colorsync

- PDF services (quartz treats all objects it handles as PDF files)

- Transparency

- Transformations (like rotation, scaling, skew, etc).

Quartz and core graphics have services to render vectors, however the Aqua interface does not make use of them for things like Windows, widgets, or icons. Icons on OS X are high-resolution (128x128@32 + 8-bit alpha) images that are resized "on the fly" by quartz. Same story with expos?: it's actually working with bitmaps when it's doing all that flashy resizing and moving.

One thing quartz does not do is "render each window as a polygon and then bumpmaps the window contents over it" - though it is impressive all the same. Every control contains several "views". A view would be any component you can see, so for example a safari window will have views for:

- the scroll bar which is made up of the up and down arrows, the track, the thumbnail, a tool tip (if it exists) - those are each views themselves or may be made up of small views still.

- the tab bar which is made of the background, the tabs themselves are all views just like the "close" icon on the tab, the text displayed on the tab.

- a view or two for each of the 3 toolbar buttons

- each of the title bar buttons

- controls in the window (like 'add reply', and 'more options')

- the address bar, the text in the address bar, the "favicon" image, the snap back button

- the google bar, the past searches icon, the text in the google bar

- and probably a bunch more I can't see.

A window can easily break 1000 views and have an even higher number of polygons to support that. If you're interested in how a window breaks down and you have access to a macintosh running OS X with the developer tools installed fire up /developer/applications/performance tools/quartz debug.app. It will let you see what parts of the screen quartz is working with - every yellow or red rectangle is at least two polygons from quartz extremes point of view.

If you just want to use your 3D card to handle tossing your widgets on the screen then Evas is the project to look at. It's not going to provide exactly the same functionality quartz does but it's still a pretty cool project.

  • 3 weeks later...

The FD.O xserver (found here) supports compositioning and GPU-accelerated drawing. The team is collaborating with KDE and Gnome, as well as Cairo. Their plan is to provide standards and software for next-gen Linux desktop. It currently is in the early stages, but it has already matured very much.

http://www.freakforum.nu/galleri/showphoto...rt=1&thecat=998 <- Screenshot from a couple of months ago on an old pentium 3.

www.home.no/om88 <- Screenshots and a short clip (nevermind the fact that it was made with windows movie maker, I had to annoy a friend of mine when I made it :p) of software rendring in gnome. Currently there isn't many cards supported for accelerated drivers, but my ATI rage 128 pro works perfectly (my IRC-machine, 800mhz)

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • low latency mode is still bugged and causing bootup times slow to a crawl. To fix, you have to disable the feature with vivetool. Seems as though it's not rolled out to a lot of people yet since I've only been able to find only a handful of people that are having issues.
    • I would recommend the Nothing 2a. The battery life is awesome, 2 or 3 days without going into battery power mode. The only thing that I've been looking into recently is that it doesn't "support" Graphene OS. I'm pretty sure there is a way, I just need to do some more looking.
    • You'd have to show me an example of a listing that says Gen 1, usually i'd expect that to mean Snapdragon Gen 1 (a type of chipset, which the Pixels don't use). Pixel 7 - White - 128gb - Unlocked - 85%+ battery - Grade B+ - $159 with free delivery - https://www.ebay.com/itm/398046617206 Pixel 7 - Obsidian - 128gb - Unlocked - 80%+ battery - Very Good - $157 with free delivery - https://www.ebay.com/itm/355617734563 Both look to be sold by companies with good feedback, dealing with refurbished phones and state the phones are unlocked with a clean IMEI. Obviously I can't vouch for either company though, but the listings look good in my opinion.
    • Because Chrome is doing it. And no one said anyone had to update immediately. That's silly. They could update every day for all I care as long as it's fast, and the next time the browser restarts, you're good. And the basic point is not to tee it up for bigger updates. As it is right now, all the windows I had open reopen anyway except inprivate.
    • Why? Does anybody actually want this? The constant need to close all browser sessions and wait for a new version to install, just so that there’s a integrated coupon manager feels like a waste of everyone’s time
  • Recent Achievements

    • Week One Done
      davidbazooked earned a badge
      Week One Done
    • One Month Later
      Jamswaz earned a badge
      One Month Later
    • Week One Done
      Jamswaz earned a badge
      Week One Done
    • Rookie
      Marzoid went up a rank
      Rookie
    • Community Regular
      coch went up a rank
      Community Regular
  • Popular Contributors

    1. 1
      +primortal
      514
    2. 2
      PsYcHoKiLLa
      185
    3. 3
      +Edouard
      159
    4. 4
      Steven P.
      83
    5. 5
      ATLien_0
      75
  • Tell a friend

    Love Neowin? Tell a friend!