Re: [kde-artists] [Back to Basics] Better animation for KWin effects
Nuno Pinheiro <[email protected]>
| Newsgroups | gmane.comp.kde.artists |
|---|---|
| Message-ID | <[email protected]> |
A Domingo, 30 de Setembro de 2012 18:35:47 Martin Gräßlin escreveu: > Hi kde-artists, > > (please CC me in replies, I'm not subscribed) > > recently I have seen videos about the new compositor for Elementary OS [1] > and I realized that their animations look much smoother than what we have > in KWin. > > But KWin itself is nowadays fast, we can do the framerate needed to have > smooth animations and we have heard quite often that changing our global > animation speed from "Normal" to "Fast" makes KWin feel smoother. > > Given that we can see that our animation durations are too long. And I want > to fix that but for that I need your help :-) > > I personally have no idea how long the durations should be and I guess many > are just random picked values. But I hope that you could help telling me how > fast the animation needs to be for a specific effect. If you want to work > on one of the effects, just let me know and I tell you which config option > you need to tweak. Most effects have a configuration interface and some > have a hidden config option. > > Also we could tweak the easing curves [2] which are used in the effects. > Most are either still linear or a simple easeIn/easeOut, I would love to > have something better there. > > Last but not least I'm open to define a set of new effects. Unfortunatelly > QML is not yet supported, but we should be able to write some effects quite > fast if you describe them properly. Also it's totally fine to have > animations which require shaders. > > So I hope for some input from you :-) > > Best Regards > Martin Gräßlin Ok soooo this is fairly complex land and most artists dont know much about this, only people with cinema/video/3d rendering experience know about this stuf. I know a few things so let me share what I know..... Ok you dont do motion blur that is essential to create something that our brain interperts as smooth.... our eyes work mush like any camera soo a fast moving object is seen by our brain as a shadow/tranparent like object that is mostly and simplifying the result of all the places the object was in a given time frame, if we simply show sharp versions of the objects in difrent places it will if the motion is fast enough make the objects jump from A to B to C / this can be mitigated by extremly high frame rates were the object is seen in much more in betwin places an resulting in a much closer to reality preception by our brain, (our brain/eyes will meld all of those fames into one shadow element.) Or we can simulate a motion blur via shaders reducing the amount of fames we need to send to the screen, most screens cant do that many FPS any way so this is a better solution....(cinema as relative low framerates and things look smooth becouse of motion blur, interestingly 3D animation movies have to do post processing to create motion blur as well.) Second, the efects tempos are a bit off and unatural at times depends on each efect, but i would try to aply some phisics laws to it by giving mass to elements and aplying the F=m*a so instead of spead/time we would aply forces to acelerate a movement or to stop it this should produce much more natural movements....(me notes that it will traslate to InQuad OutQuad animations but we shoud start with the basics and see how to transpose that into the sequential animations) aka aply force to object get constantly acelerated movment till max speed or what ever, aply same amout of force for the same amout of time to make it stop or use some brake atrit factor force that is dependent on speed to make it stop... Time as litle to do with it if done right the animations should look as smooth in uber slow motion as they do is super fast... There are many other litle things that are important to create smooth animations and like in many things the devil is in the details and a great deal of test and run needs to be done > > [1] http://elementaryos.org/journal/meet-gala-window-manager > [2] http://qt-project.org/doc/qt-4.8/qeasingcurve.html#Type-enum ______________________________________________________________________________ [email protected] | https://mail.kde.org/mailman/listinfo/kde-artists