Abstract:
In one embodiment, a dynamic effects subsystem automatically generates a dynamic effects animation. A graphical user interface enables an animator to sketch applied energies that influence graphical objects. Each applied energy includes flow particles that are associated with velocity fields. Over time, a dynamic effects engine moves the flow particles and the associated velocity fields along a overall direction associated with the applied energy. To generate each frame included in the dynamic effects animation, the dynamic effect engine computes samples of the graphical objects, computes the influences of the velocity fields on the samples, and updates the positions of the samples based on the influences of the velocity fields. Notably, the applied energies and the flow particles enable the animator to effectively and interactively control the automated animation operations of the dynamic effects engine. Consequently, the resulting dynamic effects animation meets artistic, performance, and physical accuracy goals.
Abstract:
One embodiment of the present invention sets forth a technique for generating a tube within a three-dimensional (3D) model. The technique involves receiving a first location on a surface of the 3D model. The technique further involves receiving a second location on the surface of the 3D model. The technique further involves receiving at least one constraint associated with a first tube to be generated within the 3D model. The technique further involves generating, based on the at least one constraint, the first tube, where the first tube connects a first opening at the first location with to a second opening at the second location.
Abstract:
A computer-implemented method for editing an interactive dynamic illustration includes receiving a first input associated with a functional relationship between a first visual entity in the dynamic illustration and a second visual entity in the dynamic illustration, receiving a second input that associates a visual parameter of the first visual entity with the functional relationship, and receiving a third input that associates a visual parameter of the second visual entity with the functional relationship. The method further includes causing a graphical representation of the functional relationship to be displayed that visually links the first visual entity and the second visual entity. At least one advantage of the disclosed method is that a user can graphically define and/or modify interactive behavior of the visual elements of an interactive dynamic illustration without textually editing the software that generates the illustration.
Abstract:
A method for reproducing authored content within a visual manipulation software environment includes displaying the authored content, such as an individual drawing stroke, in a manner that enables the end-user to experience the temporal dynamics associated with the creation of each drawing stroke or action performed by the author when creating the content. Each individual drawing stroke created by the author may be displayed in a tutorial with the same speed and direction used by the author to create the stroke, and can then be used as a guidance curve by the end-user. End-user input corresponding to the displayed author content is then received and used to generate an end-user version of the displayed content.
Abstract:
An animation engine is configured to apply motion amplifiers to sketches received from an end-user in order to create exaggerated, cartoon-style animation. The animation engine receives a sketch input from the end-user as well as a selection of one or more motion amplifiers. The animation engine also receives one or more control sketches that indicate how the selected motion amplifiers are applied to the sketch input. The animation engine projects the sketch input onto a sketch grid to create a sketch element, and then animates the sketch element by deforming the underlying sketch grid based on the control sketches. The animation engine then interpolates the sketch input, based on the deformations of the sketch grid, to animate the sketch. In this manner, the animation engine exposes an intuitive set of tools that allows end-users to easily apply the well-known Principles of Animation.
Abstract:
The disclosed pen-mouse is a tracking menu that tracks the position of the pen. A pen cursor that corresponds to the pen is moved about within the pen-mouse graphic by the pen and the pen-mouse remains stationary. The pen-mouse is moved when the location of the pen encounters a tracking boundary of the pen-mouse. The tracking boundary coincides with the graphic representing the mouse. While moving within the pen-mouse, the pen can select objects within the pen-mouse body, such as buttons, wheels, etc. The selection of a button or other virtual control causes a corresponding computer mouse button function to be executed. The execution is directed at any object designated by a pen-mouse tracking symbol, such as an arrow, that is part of the pen mouse graphic. The pen-mouse emulates functions or operations of a mouse including single button clicks, double button clicks, finger wheels, track balls, etc.
Abstract:
Techniques are disclosed for presenting an online tutorial. A method for presenting an online tutorial may generally include providing an interactive tutorial to a user. The interactive tutorial may include both tutorial content specifying steps to perform a task with an application and an application interface associated with the application used to perform the task. This method may also include recording the user interacting with the application interface to perform the task according to the steps specified by the interactive tutorial and augmenting the tutorial content with the recorded user interaction.
Abstract:
In one embodiment of the present invention, a hybrid subsystem orchestrates animated transitions between stereoscopic imaging and non-stereoscopic imaging. In operation, the hybrid subsystem receives frames that represent a three-dimensional object over time. The hybrid subsystem renders the first frame based on a left eye position and then re-renders the first frame based a right eye position. The left eye position and the right eye position are separated by a predetermined distance that is optimized for stereoscopic viewing. As part of rendering and re-rendering subsequent frames, the hybrid subsystem gradually deceases the distance between the left eye position and the right eye position. Upon receiving a final frame in the transition, the hybrid subsystem renders once—to a single eye position. Advantageously, because the rendered three-dimensional object image gradually loses depth throughout the animated transition, the hybrid subsystem minimizes disruptions to the viewing experience.
Abstract:
One embodiment of the present invention sets forth a technique for providing help content related to a software application to a user. The technique involves receiving a first discussion element associated with a first user and including textual input related to a first software application and first contextual information related to the first software application. The technique further involves receiving second contextual information associated with a second user and related to the first software application, determining a measure of correlation between the first contextual information and the second contextual information, determining that the first discussion element should be transmitted to the second user based on the measure of correlation, and transmitting the first discussion element to the second user.
Abstract:
One embodiment of a computer-implemented method for analyzing human motion data includes receiving a set of motion data that indicates one or more movements of a first person within a real-world environment; generating a virtual avatar corresponding to the first person based on the set of motion data; determining a position of the virtual avatar within an extended reality (ER) scene based on the one or more movements; and displaying the virtual avatar in the ER scene according to the determined position.