Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Windows Scenic Animation Overview

Download

Right click “Save as…”

  • High Quality WMV (PC)
  • MP3 (Audio only)
  • MP4 (iPhone, Android)
  • Mid Quality WMV (Lo-band, Mobile)
  • WMV (WMV Video)

Smooth animations are fundamental to many graphical UI applications, and Windows 7 introduces a native animation framework for managing the scheduling and execution of animations. The animation framework supplies a library of useful mathematical functions for specifying behavior over time and also lets developers provide their own behavior functions. The framework supports sophisticated resolution of conflicts when multiple animations attempt to manipulate the same value simultaneously. An application can specify that one animation must be completed before another can begin and can force completion within a set time. The new framework also helps animations determine appropriate durations

Watch Yochay Kiriaty, Windows 7 Technical Evangelist, and Windows Ribbon Scenic Animation product team members Paul Kwiatkowski and Paul Gildea as we explain Windows Scenic Animation, why we need it, and which components of Windows use this amazing technology. Paul also has few cool demos that show the real power of this technology.

For more technical content on Windows 7 and few cool code samples, go to the Windows 7 Blog for Developers.

Tags:

Follow the Discussion

  • Wow! Very exciting stuff. Can't wait to get the Beta.
  • rhmrhm
    I've got a name for your feature: Core Animation

    As a long time Windows developer I had my head burried in the sand about Macs. Since I've been learning it, it's been a revelation. If you have programmed on it you have no idea how nice it is to have a platform where all the cool stuff is in the native API. On Windows I have to make a really awkward decision: Use WPF to get the cool graphics, but then suffer massive memory consumption, have to pInvoke to do all the stuff that inexplicably hasn't been wrapped by the framework yet (anything to do with the shell, anything to do with media beyond a simple "play video" control); or you program native and have to invent everything from scratch.

    On the Mac I'm missing managed code, but Objective-C isn't too bad. Hey, it's got databata binding in a native language without the ugly bandaid that is 'dependency properties' in WPF. And I get flashy graphics straight from the OS instead of resource hogging library ontop of it. If I want to write my own video editing app I can do everything I need using the Quicktime API. What do you on windows? Is DirectShow even still supported, or do you just bite to bullet and write your own video decoding libraries (or licence them from a third party at huge cost). Oh, and if you want to do anything sophisticated with video from within WPF, good luck.

    I'm not going to predict anything stupid like Macs are going to take over - Window's position is almost complete unassailable - but what a mess the developer story is on it. I mean a seriously ugly mess. But hey, adding one more API can't hurt can it?...
  • Koistya `Navinkoistya RIA Guy | Koistya `Navin
    I love Win7 even though they has incredibly simplified it's UI in comparison to Vista.
  • Allan LindqvistaL_ Kinect ftw
    err.. troll? Smiley
  • rhmrhm
    Not really. Just telling it like it is.

    What they've described in this video is exactly what Core Animation does in Mac OS X Leopard.

    The rest of it is my reaction to yet another API as someone that's already been 'sold' WPF as the solution to doing graphics on Windows. If Microsoft don't think it's the solution, why should I?
  • You're right, clearly Microsoft doesn't have much confidence in their own technology given how few of their internal projects use it. This extends to .NET as a whole and how poor managed access is to the win32 apis. 
    WPF got there before Core Animation, but like so much of Microsoft's technology, they don't exploit it nearly as well as Apple dogfoods theirs. So why should anyone else?
  • So now we have yet another way to draw things on the screen?  Why not focus on WPF and managed code?  The animation system in there is easy to use and is very capable.

  • hakhak

    @aL_ 

    Accept the fact, this is very similar to Core Animation, or maybe we should say a strip down copy of it. Microsoft does not invent anything new here, but rather provides another API for animations that can be used instead of WPF which has shown rather big limitations in many regards from my opinion.
  • brian.shapirobrian.​shapiro things go on as always
    hak,

    So what, its also similar to animation in WPF, and Microsoft got that started before Core Animation. The difference is that when Microsoft started they decided to do it through a managed library.

    Maybe Microsoft should have done things this way to begin with, but anyone implying Microsoft is copying Apple is being a little dishonest about it, I think.

    The original vision for Longhorn was a pie in the sky idea that every app would be using the managed API
  • rhmrhm
    I don't think it's worth getting in an argument about who copied who, etc. Who cares who did something first? That's not what I was complaining about.

    Although it's amusing how transparent a copy of Core Animation this is, it's not that the bothers me. For clarity Core Animation isn't the actual graphics engine, it's a library for sequencing changes to the properties of other objects in order to effect animation, i.e. exactly what this library does (as described in the video). Comparisons with WPF aren't that great because WPF provides this facility as well, but it's a small part of WPF as a whole.

    What bothers me is that Microsoft have in all the time WPF has been available, come up with only 1 significant product that uses it: Expression Blend. They are now going to shoehorn it into Visual Studio and that should have developers worried - VS2010 could be really awesome, but it could also turn out to be a sluggish bloated nightmare (which would fit the pattern: 2003, good; 2005, sucky, 2008, great; 2010??). Now it seems the rest of Microsoft (outside the island that .NET framework and developer tools live on) don't take WPF very seriously and need a way of doing WPF-style graphics without it.  It's not exactly confidence inspiring for us .NET developers who have been told that WPF would be the next big thing ever since it first surfaced on Channel 9 as Avalon. I was sold on the vision of WPF myself until I bought a Mac recently and started to learn Cocoa development. Like I said in my first post to this thread; it feels like I'd had my head burried in the sand for the last 6 years or so.


    btw. Something else unrelated about this video:  I know hardware to demonstrate touch interfaces on is thin on the ground at the moment, but you shouldn't use those HP machines to demo new software; the tracking lag is absolutely shocking. I'm sure it's the panel/driver/touch-library/whatever rather than your new animation/rendering code, but still, it looks to most people like your code is really slow and laggy.
  • RHM has it pretty dead on.  I have been a huge MS fanboy forever (even worked for them for a short while).  For the last year I have been heavily investing in learning WPF and was extremely excited as to the potential, yet disappointed at the immaturity.

    Yesterday I got my first Mac. After one day experience on the Mac as a multiple developer/engineer certified MS professional I am in shock how far behind windows is. I finally understand why Mac usage is on such a quick rise lately.

    I know major projects take years at MS (at one time I was offered a sr position on the Win32 replacement team, 5 years later WPF was announced). If MS does not already have a major step beyond WPF in late development they can kiss their market lead goodbye. I was semi interested in Windows 7, but after one day with a Mac I am not even going to bother.

  • LiquidBoyLiquidBoy Silverlight
    To all the trolls that are already bagging this solution out...

    - If you want to do animations in a webpage use Silverlight
    - If you want t do cool animations in a business type app where the users system is managed use WPF
    - If you want to do cool animations in an existing native application that you have  or are building a new native application that requires cool animtions , and the target system doesnt have a managed environment then use these api's (windows scenic animation api's)

    The only issue I have is if they completely change the method of defining these animations.

    Silverlight is very close to WPF - very similar implementations of the "storyboard"
     
    Windows Scenic animations seem to be following the same semantics "storyboard", but untill I actually see the code I'll reserve my judgement.

    As long as I can leverage my skillset to define animations, via storybords, once and reuse it across technologies then I'll be a happy boy. BUT if they've reinvented the storyboard just for Windows Scenic Animations then that will definetely upset me.

    I'll wait till more detailed videos come out.. . BUT love it so far..

    PS RHM and SpikedThree, WPF PixelShaders are a game changing technology that in time will bring the Windows OS to the level of MacOS, probably beyond. We just need to educate designers and developers how to use these new graphic technologies..

  • rhmrhm
    OK, sure Mr. fanboy (if you're going to dismiss people's actual knowlege of platforms as trolling, I can certainly describe you as a fanboy can't I?)

    Mac OS X can also the pixel shader thing using GLSL shaders. It's not exactly a "game changer" though as there's precious little use for it in most applications.

    As for Silverlight being "very close to WPF", it is only superficially so. Ever wanted to subclass something and found that all the classes are sealed? That's because everything has been reimplemented in native code to keep the size down and speed up in comparison with WPF. Ever wanted to manipulate some text and found there's no way to turn text into a path, or wanted to lay out text around another object and found that there's no way to flow text because you can't measure it, or wanted to draw to bitmap, etc.  Silverlight is kindof useful, but it's fundamentally crippled for a lot of applications. When they implement 3d for Silverlight 3 they'll probably do that wrong by copying the more-or-less useless 3d facility from WPF instead of providing an XNA-style imperative interface,
  • What'll be the final name of this? Is this related to MILcore? Can you give some more info on the architecture of this? This has so much potential for eye-candy. Why isn't Windows 7 and bundled apps filled with effects based on this? Same reason again? "We did not want to use something which itself was getting built" like you said for Avalon? MS needs to showcase some production quality apps built using this for developers to use it actively, need to expose its use in the UI, otherwise it'll remain under the wraps. And will this be available downlevel on Vista and XP?
  • Hi,

    Is that one more example of "The left hand does not know what the right hand is doing in Microsoft"?  or just one more example on how
    to confuse people a little bit more with their decision on what technology / API to use? 

    Or is WPF dead - is thats what you are saying?

    What on earth is going on - i would be glad if someone please can clarify!
  • Does this mean that we can manipulate the animations in 7 themselves? Something similar to the ones in this video http://video.msn.com/video.aspx?mkt=en-us&user=3230159420880800435

  • Ok, you seem like a nice enough person and seem to mean well; however, the whole Core Animation argument is really off track.

    If you want to look at NEW technologies instead of just exposing OS level features, you need to look beyond Core Animation and the Apple marketing my friend.

    1) You act like Core Animation has been around in the Mac/OS X world forever. It was introduced a year ago with Leopard. (You and the other 'I worked at MS, but Apple is ahead of MS' poster don't seem to get that prior to leopard, getting access to even the simple OS effects Apple created and used was a freaking nightmare for developers prior to Leopard (and still has issues as core animation doesn't give you everything.)

    2) Core Animation is not even an actual 'consistent' application or API base, it is a series of technologies stuck together, by people like yourself wrapping what Core Animation does into one 'tag line' is really wrong.  It would as crazy to call all the animation and UI technologies in Windows Vista - the WDDM system. (Understand how the WDDM is doing all the technology, but it isn't the technology?)

    Core Animation is a nice marketing word, but it not much more than Apple Quartz, Quicktime and other technologies that survived the OS X years thrown in a box and given a cute name.



    If you want to do a comparison; here is one area you can do it...
    Prior to Scenic Animation, Vista used many animation and PS technologies that were only available to Aero/DWM of the OS.
    Prior to Core Animation, many of the Apple OS level animations used were also ONLY available to OS X.

    Understand?

    You are truly putting core animation on a pillar it does not deserve to be on, as it truly is nothing new, but just Apple opening their libraries of cute animations to developers.

    Core Animation is NOT a new UI model, GUI model, API, Animation Language, etc, etc, etc....



    If you want to contrast Apple and MS when it comes to GUI API technologies or even GUI designs, Core Animation would be a very sad example to begin with if you want Apple to look good. 

    With OS X, many of the UI technologies and APIs past QuickDraw have been a disaster and have been thrown out because of performance, not migrated and replaced with 'another attempt', had tried to hack in GPU level acceleration time and time again, only for it to fail and be removed, and to this day, for GPU based Application animation technology, you end up in OpenGL technologies, as the basic UI of OS X and the main APIs are CPU bound with SSE optimizations.

    In the end OS X is STILL using a version of Display PDF, that is equal to GDI+ of Windows 2000, and their only 'advancement' with regard to GPU usage is a Composer that uses the 3D GPU to store window textures and draw simple surfaces to the Video Card. And even in this area, the OS X composer is ONLY Bitmap, and also is very inefficient as it does a double transfer of memory and writes when creating the onscreen image and writing it to the GPU.

    Win7 and Vista has a vector composer that works with native WPF API/Vista APIs and also doesn't double write the image on every draw.

    Windows also has WPF and Silverlight. 

    WPF is a not only a full new API set for Windows, it is a vast graphical API set that is designed around many technologies with advanced display/imaging and animation.  With WPF you can draw and animation graphical concepts OS X cannot even natively display without them being rendered to a bitmap.  This is why you see press mfrs looking at XAML and WPF for their printers as it can produce results even Adobe's full featured PDF technology cannot.

    This is where it becomes funny when people say Mac's are graphics computers, as I can assemble an Image using XAML that OS X cannot even display if the concept was fully translated to Adobe Illustrator or PDF and natively rendered to the OS X display without having to bitmap render the graphical concepts. 

    Window's native display language (Aero/DWM/XAML) can natively render images more advanced that Adobe Illustrator can even create, let alone a graphical element produced for an OS X display in PDF or their limited Display PDF formats.


    Now on to Silverlight...
    Yes as you point out Silverlight is NOT WPF, but uses the WPF model of development and cross API features to deliver the MS technologies on any computer in the world via a browser, focused around MS's VC1 codecs.

    Silverlight is something Apple doesn't even try to do, nor has the technology to do. - And even if they did, moving their usage of display PDF technologies from QuickDraw or Quartz would pretty much bring the hammer of Adobe down on them, as it would be competing with Flash. (Remember Apple is still using borrowed/licensed technologies for graphics and rendering on OS X, something MS is not.)

    Additionally the OS X Quartz technologies would not be fit for Silverlight type of content, or you would see Adobe using it for Flash themselves first, and they aren't even that stupid...


    ---------------
    Basically stop glorifying Core Animation, and stop refering to it as a single technology unless you are working at Apple's marketing department, you should know better as a developer.
    ---------------
  • I just want to know if this is going to be backported to Windows Vista.
  • Why there's so much latency there? If you look when he drags the object with finger they come far behind, quite annoying and establishes a "slow piece of ..." feel. There have been touch ui's with faster reaction so it's possible..

  • 55

    @deviants:

Remove this comment

Remove this thread

close

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.