Posted By: goran | Sep 15th, 2004 @ 10:43 AM
page 1 of 1
Comments: 10 | Views: 2478

I'm wondering something...

Why has it taken MS so long time to implement a vector based UI? Is it because lack of computer speed before? Is it necessary to have a 3D graphics card?

I mean, the NeXT computer used Display PostScript years ago, so it doesn't feel like it's the speed that is missing...?!

Is it because it's such a big thing to change in a OS? But even so, why has it taken so long time?


Does anyone here know?!

Thanks in advance!
/G

goran wrote:

I'm wondering something...

Why has it taken MS so long time to implement a vector based UI? Is it because lack of computer speed before? Is it necessary to have a 3D graphics card?

I mean, the NeXT computer used Display PostScript years ago, so it doesn't feel like it's the speed that is missing...?!

Is it because it's such a big thing to change in a OS? But even so, why has it taken so long time?


Does anyone here know?!

Thanks in advance!
/G


Note that Display PostScript only defines interfaces in vector.  It doesn't store them in vector. Quartz is the same way - it buffers windows offscreen with large raster bitmaps, which is why it needs large amounts of RAM or a hefty video card.

Avalon stores display elements in a scene graph from what I've read, and components like textboxes and buttons are represented as textboxes and buttons, instead of pixels. The compositing engine does the work of transforming them to raster and doing caching. This means that theoretically, you could zoom onscreen components in realtime with no loss of quality. Try doing that in Quartz - I'd be interested to see it!

To directly answer your question, though, I have no idea why it's taken so long, but it doesn't suprise me that it has. Nobody else has really done this before - at least not for such a wide market as Microsoft's, and so pervasively.
Sven Groot
Sven Groot
My name has 9 letters. Coincidence? I think not...
Doesn't MacOS X use vector graphics?
Minh
Minh
WOOH! WOOH!

goran wrote:
Does anyone here know?!


Who knows... but here are my guesses anyway:

1) No one were asking for a vectorized UI. Rasterized ones have worked pretty good for pretty long for a pretty big lot of people already. Why change?

2) Yes, redrawing those vector elements everytime is pretty CPU-intensive. Although, technically, 3D hardware are ready for a couple of years, no one had thought about using it in such an interactive environment as an OS's UIs.

3) In some ways, we already have vectorized elements in our current OS. TrueType fonts, resizable windows, any UI elements that respond to those resizable windows ... yeah, I thought this one's pretty weak, too.

4) Hey! they're working on it, OK?

Minh wrote:
2) Yes, redrawing those vector elements everytime is pretty CPU-intensive. Although, technically, 3D hardware are ready for a couple of years, no one had thought about using it in such an interactive environment as an OS's UIs.


Remember they only have to be redrawn when something changes about them - for instance if the resolution was changed. Dump them into RAM as bitmaps. The point about Vector graphics is a method of rendering bitmaps after all. Bitmap is after all closer to what the screen outputs and therefore is more resource friendly.
Sven Groot wrote:
Doesn't MacOS X use vector graphics?

Yes. Quartz is based on Display Postscript, which Apple got from NeXT. However, the compositing engine is still raster, and the UI is not entirely vector. Just mostly.
Karim
Karim
Trapped in a world he never made!
I think you will need vectors for displays such as this:

http://www.tigerdirect.com/applications/SearchTools/item-details.asp?EdpNo=36083&Sku=I74-1544

With a resolution of 204 pixels per inch, you would need a magnifying glass to read the Start button.  Even on a 22-inch display.

With a vector-based UI, you can be a bit more resolution-independent.
goran wrote:

I'm wondering something...

Why has it taken MS so long time to implement a vector based UI? Is it because lack of computer speed before? Is it necessary to have a 3D graphics card?

I mean, the NeXT computer used Display PostScript years ago, so it doesn't feel like it's the speed that is missing...?!

Is it because it's such a big thing to change in a OS? But even so, why has it taken so long time?


Does anyone here know?!

Thanks in advance!
/G



There is a big difference in what Longhorn is going to do and what Mac OS X is doing now. Because of marketing terms like quartz, people think that they are getting something superior.

Quartz and the current windows xp's underlying apis are equally capable. They are very similar from API perspective. What differs is the graphic design. You don't have particularly any superior API in Quartz now.

Longhorn's API is quite different. You can manipulate elements anyway you want in real time. You can't do that with OS X or XP today. For example, you can't zoom into a button or rotate it with some degree in Windows XP or OS X. When you rotate the button, or the grid, the elements will still work as if you rotated the screen.
Minh
Minh
WOOH! WOOH!
Manip wrote:
Remember they only have to be redrawn when something changes about them - for instance if the resolution was changed. Dump them into RAM as bitmaps. The point about Vector graphics is a method of rendering bitmaps after all. Bitmap is after all closer to what the screen outputs and therefore is more resource friendly.


Well, yeah ... you should only redraw when you need redrawing.

I don't know if vector gfx is MORE "resource" friendly if you're caching the rasterized img. You're still storing the bitmap + CPU time to render the vector gfx.

I believe Alalon's distinction from Quark is that it doesn't rasterize (& cache?) until the end. I don't know enough to say if that will change the users' experience any ... But with 95% of the OS market, people will experience Avalon when Longhorn ships.
Minh
Minh
WOOH! WOOH!
Karim wrote:
With a resolution of 204 pixels per inch, you would need a magnifying glass to read the Start button.  Even on a 22-inch display.


I've got the solution! We'll just have to add 512x512 icons. Problem solved.
Frank Hileman
Frank Hileman
VG.net
If the vector graphics system is optimized, it is not necessary to have a 3D graphics card. Only the modified objects must be repainted. Here is an example of an optimized vector graphics UI using todays (1.1) version of .NET:

http://weblogs.asp.net/frank_hileman/archive/2004/07/23/192509.aspx

Look at some of the other blog entries for other examples. No need to wait for avalon, and that runtime is only 320K with xcopy deployment simplicity!
page 1 of 1
Comments: 10 | Views: 2478
Microsoft Communities