The present invention relates to animation tools and particularly to a browser based animation tools
Animation tools are well known in the art. Such tools have degrees of complexity ranging from the complex type used for motion picture animations to simple versions such as used in presentations where an object can be moved so as to emphasis a point.
To create these animations a user typically requires familiarity with the software packages that are used to generate the ultimate animation. These packages can require a high level of familiarity before a user can easily generate animations. This long lead-in learning time and requirement for some level of artistic creativity and knowledge of the underlying principles that govern how animations are generated prejudices users without that time or knowledge from generating animations.
There is a desire for such users to be able to readily generate animations for use for example in presentations or the like without requiring a detailed knowledge of the complex environment of the commercial animator. There is a further need for such a user to be able to readily generate and store animations and share those with other similar users.
These and other problems are addressed by an animation tool which is provided in a client server architecture, functionality of the tool residing on a server which is then accessible by a user over a browser connection from a client machine.
The animation tool includes a graphical user interface to a datastore providing a plurality of graphical elements which can be individually selected by the user and placed onto a worksheet. The graphical user interface desirably is configured to portion the available client screen into distinct regions; a first region being provided as the worksheet area where a user can pick and place graphical elements for subsequent generation of an animation. A second region which is desirably dimensioned smaller than the first region provides graphical representations of each of the available graphical elements that are available. A third region which is also desirably dimensioned smaller than the first region provides graphical representations of each of graphical element effects that may be applied onto each of the graphical elements.
Each of the second and third regions are desirably provided on the same area of the screen but are sequentially viewable by the user through a tab menu whereby the first and second region will interchange.
The tool enables a user to select individual graphical elements from the second region and place them using a mouse onto the first region. The desired graphical element effect for that graphical element may then be associated with that graphical element by dragging that effect from the third region onto the appropriate graphical element that is provided on the first region. It will be appreciated that the effects and the elements are orthogonal to one another in that the attributes of the graphical element are independent of the properties resultant from association of the graphical element effect with that graphical element.
These and other features will be better understood with reference to the following drawings which are provided to assist with an understanding of the teaching.
The present invention will now be described with reference to the accompanying drawings in which:
Such an architecture includes a plurality of client devices 120A, 120B, 120C each of which can independently interact with a server 110 over one or more communication links 130. Such communication will be familiar to those skilled in the art as being of the type typically employed in an internet environment where the client devices use web browser software to access one or more programs that are executable on a remote server.
Using the browser software such as provided by Internet Explorer™ Mozilla™, Safari™ and the like, a user at any one of the client devices 120 can interface with the animation tool that resides centrally at the server 110. This interface is typically via a web page that will effect generation of a graphical user interface to the server 110 on the client devices 120.
The server includes a plurality of datastores 111, each of which may be configured to store specific data elements that may be usefully employed by the user as part of the usage of the animation tool. A processor 112 provides the necessary processing requirements for the animation tool to process the user commands which are receivable through the graphical user interface, typically by mouse action by the user at the client device.
The animation tool includes a graphical user interface to a datastore providing a plurality of graphical elements which can be individually selected by the user and placed onto a worksheet. The graphical user interface is provided on a browser window 200 such as may be provided by MOZILLA™ Internet Explorer™, Safari™ and the like and is configured to portion the available client screen into distinct regions; a first region 210 being provided as the worksheet area where a user can pick and place graphical elements for subsequent generation of an animation. A second region 215 which is desirably dimensioned smaller than the first region provides graphical representations of each of the available graphical elements that are available. A third region 220 which is also desirably dimensioned smaller than the first region provides graphical representations of each of graphical element effects that may be applied onto each of the graphical elements. The second and third regions desirably occupy the same location on the user interface but are not viewable at the same time. By using a tab menu, it is possible to interchange between the elements that are provided as graphical elements, i.e. the population of the second region, and those that are graphical element effect, i.e. the population of the third region.
A management region 230 is provided as part of the graphical user interface and by manipulation of items within this region the user may effect changes in the number of frames 235 or length of individual frames for the animation being created. Using the mouse as a interface tool the user can simply stretch or shrink individual frames so as to enable the time of that frame to be modified.
As shown in
The time duration from which the graphical element 300 takes to complete the movement from the first location 305 to the second location 310 will be determined by the user shrinking or stretching the frame 235a provided as part of the management region. In this exemplary arrangement the complete animation includes 4 frames, 235a, 235b, 235c & 235d—each of which can be populated as just described. The duration of any one of the frames can be independently determined relative to the others.
As part of any frame, movement of a graphical element from one location to another may be required. The frame may also require a graphical effect to be applied to that element. Examples of graphical effects include the application of shadows, blur effects, wipeouts etc. In accordance with the teaching of the present invention such effects are independently applied to graphical elements—i.e. pre-stored graphical elements with these effects hard coded into them are not required. In contrast to such arrangements the animation tool provides a datastore or library of desired effects and these are accessible to the user through the second region. Once a desired graphical element has been located on the first region, the effects that may be applied to that graphical element are available to the user by the user tabbing across to replace the second region with the third region. In
The user may then select using their mouse a particular graphical effect 400 and by dragging that onto the desired graphical element 300 that is already present within the first region can apply that effect to that graphical element. On identification by the processor of the animation tool that a graphical element effect has been associated with a graphical element, the processor is configured to read the underlying code that is associated with that effect and apply it onto the features of the graphical element. All of this is transparent to the user in that the user needs no knowledge of software code or the like to provide a desired effect—all they need to do is drag a graphical element into a frame and associate that element with an effect by dragging the effect subsequently onto the element.
As was mentioned above, it will be appreciated from a comparison of
The tool enables a user to select individual graphical elements from the second region and place them using a mouse onto the first region. The desired graphical element effect for that graphical element may then be associated with that graphical element by dragging that effect from the third region onto the appropriate graphical element that is provided on the first region. It will be appreciated that the effects and the elements are orthogonal to one another in that the attributes of the graphical element are independent of the properties resultant from association of the graphical element effect with that graphical element.
By separating the nature of effects that may be applied to graphical elements and the graphical elements themselves the animation tool requires much less hard coding into the datastore of ultimate images. Each of the effects are applied separately and dynamically to user selected images. In this way more effort can be made on generating individual graphical elements as opposed to having to provide the same graphical element with a plurality of different effects applied thereto a priori for subsequent selection by the user.
Such an animation tool may be provided as a server executable application which is accessible through conventional browser technology. The animations may be generated in any one of a number of different file formats with the standard Flash™ file format for use in presentations or for website Flash™ animations being particularly well suited to the simplicity of the animations that may be conveniently generated using such a tool. In this way the user may access the animation tool provided by the teaching of the present invention, generate an animation and then store that animation for use in one or more other applications subsequently. The essence of the user simplicity of the tool derives from the fact that it is web based and the way in which animation is handled. Each of the graphical elements and graphical element effects have an XML description a FLASH based processor provided as part of the server architecture interprets the XML and renders the intended animation on the screen. Users do not have to learn XML in order to describe the desired animation but can do so by manipulating the objects on screen. Animations described in this way can then be read by the animation tool and displayed in a web browser as they are rendered in standard file formats.
The tool is particularly suited for construction of animations using a scene-based metaphor. In each scene the user can place a number of objects and can animate objects by applying effects and also be creating a copy of the object that serves as an animation target. To create animations the user simply moves, resizes or edits the animation target. The scenes in the animation are represented in a timeline enabling global manipulation. Rather than being frame based, requiring detailed control of image movement, the animation tool only requires the user to indicate scenes each with their own the start and end points of a sequence. The software handles the intervening movement and it does so for multiple images at the same time. The interface uses the timeline concept found in movie making.
The graphical elements and the graphical effects are provided as part of a library which is stored on the server and accessible through each of the second and third regions. Desirably the elements in image form are provided are high resolution vector drawings based on the flash vector file format, swf. Images in the swf format take up less internet resources than other images and also scale to larger sizes without losing image quality, making them ideally suited to our project. There is also support for animation within the swf format which sets it apart from other vector file formats, such as, SVG software and image manipulation is facilitated using familiar concepts from standard desktop applications. However, user input formats such as jpeg etc are also supported by the tool.
It will be appreciated that what has been described herein is an exemplary arrangement of an animation tool which is configured to enable a user to generate one or more animations for subsequent execution on a computer platform is described. These generated animations are provided as an output from the animation tool in a format that enables them to be executed on any one of a number of standard computing platforms or embedded into one or more presentation tools such as for example Microsoft™ Powerpoint™. The output animations are provided in any one of a number of user selectable file formats. The animation tool provides a plurality of graphical integers which a user can use to generate an animation. The graphical integers are divisible into graphical elements and graphical element effects, the effects being applied by a user onto an element and defining the viewing properties of that element. Modifications can be made to what has been described herein without departing from the spirit and or scope of the claimed invention.
The words comprises/comprising when used in this specification are to specify the presence of stated features, integers, steps or components but does not preclude the presence or addition of one or more other features, integers, steps, components or groups thereof.