GIG reference manual

Flow Motion tutorial

____________________________________________________________________________________

Section contents

____________________________________________________________________________________

Tutorial1

Overview:
This tutorial will guide you in your first steps into the world of Flow Motion. Here you will become familiar with fields that are the basic building blocks for creating complex animations of objects by simulation.

Organization of Tutorial 1:

This tutorial consists of 2 exercises. By completing them in order, you will create several animations and learn how to use Flow Motion.

In Exercise 1 you will learn:

In Exercise 2 you will learn:

Working Instructions

To become familiar with the GIG Flow Motion capabilities, first time GIG users should first complete all the Exercises in the GIG Tutorial.

Some Basics

Fields are used to automatically generate motion for one or more objects at once. These fields exist as primitive forms already known to you from the solid construct menu:
These are now available as field-containing primitives in the field construct menu. You can think of a field as a certain kind of motion (e.g. rotation around a line) contained inside a solid primitive; the field-solid.

The position, shape and size of the field-solids can be transformed like any other solid in GIG. In fact, field-solids are just the same as other solids, only they can have a field (motion) defined inside of them and they are by default invisible during ray-tracing.

The kind of motion inside of a field-solid is defined by the field-type. In Flow Motion there are currently the following field-types available:

For a detailed description of the behaviour of all field-types, refer to the field construct menu section. In the following exercises you will become familiar with some of the field-types.

Exercise 1

In this exercise you will create an animation of a ball rotating inside a field.

Procedure:

  1. Go to general in main menu.
    Click the reset all button, and enter y and press <enter> to reset GIG click the set project button, enter tutor and press <enter> then confirm.
  2. Go to edit in main menu.
    Click on the tag status box at bottom of screen.
    Enter "ball" press <enter>.
  3. Go to tools in main menu
    Select Flow Motion and confirm.
    You will now see a different main menu from the standard GIG main menu. The ff mode, ff edit, ff trans, ff grids, and tools menus have now been replaced by the following Flow Motion menus: field construct, connect, visualization, simulation and GIG.
    To return to the standard GIG main menu, click on GIG in the main menu.
  4. Go to field construct in main menu:
    Click the cylinder button to add a new field in a cylinder shape to your environment.
    In response to the prompt;
    Please enter a name for this field:
    Enter rotate, and press <enter>.
    You have now created one new field with the tag name "rotate". As you can see in the status boxes, the type of motion (field type) is a vortex type of field. This is the default setting for any new field added.
    In the next step you are going to move the field in space.
  5. Go to transform in main menu
    Note that, upon exiting the field construct menu, the field automatically becomes the active solid.
    Click the keyboard button to activate keyboard input
    Click the move button and on the prompts:
    x ? enter -5 press <enter> (the field is moved so that the ball is not at the centre of the field).
    y ? press <enter>
    z ? press <enter>
    Now that you have created and moved a field tagged "rotate" with the object "ball" inside this field, the field and the object have to be connected to each other. This is necessary because Flow Motion has to know which objects it will have to move, and from which fields the movement will be calculated. When working with a large number of objects it is a laborious task to connect every single object that should be animated to one or more fields, therefore groups are introduced into Flow Motion.
    By placing objects into an object-group and placing fields into a field-group the connections between large number of objects and fields is simplified by connecting the groups of objects to groups of fields. In this exercise both the object-group and the field-group consist of only one element each in order to keep this exercise simple.
    In the next step you will place the object "ball" into the default object group "object_grp" and the field "rotate" into the default field group "field_grp"
  6. Go to connect in main menu.
    Four scroll lists are now visible, appearing from left to right:
    • The objects scroll list
      This list contains all tagged objects, ("ball" and "rotate" at this moment).
    • The object groups scroll list
      This list contains all the objects groups, (only the default object group "object_grp" at this moment).
    • The field groups scroll list
      This list contains all the field groups, (only the default field group "field_grp" at this moment).
    • The fields scroll list
      This list contains all defined fields, ("rotate" at this moment)
    The (default) groups "object_grp" and "field_grp" are already connected to each other by default.
  7. Click the add obj button to add the object "ball" to the object group "object_grp". The "ball" button will now be highlited to indicate that it is connected to the object group "object_grp".
  8. Click add field to add the field "rotate" to the field group "field_grp".
    After the object and field are connected to the groups, the simulation can be started.
  9. Go to simulation in main menu.
    Click the simulate button to start the simulation. Flow Motion will now calculate the animation from the start to the end frame. During the calculation, the track of the moving objects will be displayed by alternating red and white lines. Each line represents the movement of an object during one frame. During the simulation, the animation is stored just as a normal animation with fixed events.
    After the simulation has reached its end frame, Flow Motion will have calculated an animation of 50 frames. The animation can be played in the animation menu.
  10. Go to animation in main menu.
    Click the play button to play the animation.
    Now that you have created an animation of an object moving according to a field, you may wonder what is actually happening inside the field, what the actual motion inside the field looks like. The motion inside a field can be visualized in the visualization menu.
  11. Go to visualization in main menu.
    Click the solid vectors button to visualize the motion inside the current active fieldgroup. Flow Motion now calculates the direction and amount of motion at specific points inside the field and displays this information using vectors. Each vector visualizes the motion contained inside the field at one specific point. The number of points where vectors are calculated and displayed can be adjusted in the status boxes. As you can see from the visualization, the field inside "rotate" is a vortex field which causes objects to rotate around the local z-axis of the field primitive, in this case a cylinder.
    By transforming the field primitive, the field inside will be transformed also.
    To see how this works go to the transform menu.
  12. Go to transform in main menu.
    Click on animation to switch animation off.
    Click on get solid tag button, click on rotate and then on confirm to activate the field "rotate".
    Click x-y-z size to make an ellipse-like field.
    On the prompts:
    x ? enter 2 press <enter> (the field is shaped to an ellipse).
    y ? press <enter>
    z ? press <enter>
  13. Go to simulation in main menu:
    Click simulate to start the simulation. Flow Motion will now calculate a new animation. Because the start and end frame are the same, the old animation of the simulated object will be overwritten. The resulting animation is a ball moving along an ellipse-shaped track.
  14. To visualize the vectors of this transformed field:
    Go to visualization in main menu.
    Click on solid vectors to visualize the motion inside the transformed field.
    Save your animation using save ani in the general menu and continue with the second Exercise.

Exercise 2
In this exercise you will learn how to use the extra vector input box in order to introduce an extra motion in a certain direction. You will also work with multiple fields and objects.

What is your starting point?

Load the animation you have created in the first exercise using get ani.

Procedure:

  1. Click on solid vectors in the visualization menu to switch off the display of the solid vectors.
    Go to field construct in main menu:
    Click the extra input box to add an extra vector upwards to the field.
    On the prompt:
    Enter "vector(0,0,0.1)", press <enter>.
    This will result in a spiral motion inside the field, because the vector upwards is added to the vortex motion.
  2. Go to simulation in main menu:
    Click the simulate button to start the simulation.
  3. Go to animation in main menu
    Activate side view in left camera window in order to view the added upwards motion clearly.
    Click the play button to play the animation.
    Notice the ball rotates and moves upwards due to the extra vector. This vector adds a motion along the fields' local z-axis (because of the z-component 0.1 of the vector). The addition of the vortex and upwards (vector(0,0,0.1)) results in a spiral motion.
    To clearly see that the motion inside the field indeed is a spiral motion, lets change the shape of the field and add more objects.
  4. Go to transform in main menu:
    Click the animation button to turn off animation.
    Click theget solid tag button and select rotate.
    Make sure that the keyboard button is active.
    Click the x-y-z size button to stretch the field along the z-axis.
    On the prompts:
    x ? press <enter>
    y ? press <enter>
    z ? enter 3 press <enter>.
    Now you are going to group a torus to the ball in order to create a flying saucer, then multiply the saucer to create four saucers.
  5. Go to solid construct in main menu:
    To remove the tag name from the ball, click the get solid tag button, select ball, click on the tag input box and enter <space>, press <enter>.
    Click the group button.
    Click the torus button.
    On the prompt:
    radius ? enter 0.5 press <enter>.
    Click new / fix solid button.
  6. Go to edit in main menu:
    Click the left button to select both the ball and the torus.
    Click the tag input box, and enter 'saucer' press <enter> to give a tag to the object.
  7. Go to transform in main menu:
    Click the multiply button.
    Click the move button and go to the status box at the bottom of the screen.
    On the prompts:
    x ? enter -20 press <enter>
    y ? press <enter>
    z ? press <enter>
    Click the multiply button.
    On the prompts:
    multiply factor ? enter 4 press <enter>.
    multiply in (y/n) ? enter y press <enter>.
  8. Go to connect in main menu:
    Click the add all obj button below the objects scroll list.
    Now all objects from the object list are added to the active object group (object_grp).
    (Fields are not added by add all obj).
    The previous made animation (Exercise 1, step 13) will now have to be removed before simulating the new animation.
  9. Go to edit in main menu:
    Click the delete ani button to delete the previously made animation.
  10. Go to simulation in main menu:
    Click simulate to calculate the animation.
  11. Go to animation in main menu:
    Click the play button to play the animation.
    Notice that the objects further from the center move upwards faster. This is due to the gradation of the vortex field which is linear increasing.
    Suppose you want to move all objects with the same speed upwards, you can set the gradation of the field to constant but then the vortex motion will also be constant which will not look natural. To solve this problem, you can remove the extra vector from the vortex field and let the field remain with linear increasing gradation, then create another field with a constant gradation and an upwards motion only.
  12. Go to field construct in main menu:
    Click the extra status box to remove the extra upward vector .
    On the prompt:
    Enter "vector(0,0,0)", press <enter>.
    This results in the default vortex motion inside the field (no more upward motion).
    Now an extra field has to be created with an upwards motion only. To do so you will use the multiply button to create a copy of the second field, then change the copy of the field in order to create a field with the upwards motion (the second field could also been have created by creating a new field in the field construct menu.
  13. Go to transform in main menu:
    Click multiply twice to make a copy of the vortex field (fields can be multiplied like any other solid), on the prompt:
    multiply factor ?
    enter 2 press <enter>.
  14. Go to field construct in main menu:
    Notice there are 2 fields defined now (field 0001 of 0002): rotate 1 and rotate 2 (multiply automatically assigns tag names).
    Click the next button to select "rotate 2".
    Click the tag inputbox which does now display "rotate 2" to change the name into "upwards"
    On the prompt:
    Enter "upwards", press <enter>.
    Because you do not want a vortex motion inside the upwards field, you will have to change the field-type into empty.
    Click on field type above the field-type scroll list, and on the prompt "Please enter (a part of) the name to be searched"
    enter e press <enter>.
    Notice the empty field is now selected in both the field types scroll list and the field type status box (see field types in the Reference part of this manual on how to use the Flow Motion scroll lists). Also, the gradation is set to constant (default setting for empty field).
  15. Click the extra input box to add the extra upward vector .
    On the prompt:
    Enter "vector(0,0,0.1)", press <enter>.
    This results in an upwards motion inside the field "upwards".
  16. Go to connect in main menu:
    Click the add all button below the fields scroll list to add the two fields "rotate 1" and "upwards" to the field group "field_grp".
  17. Go to simulation in main menu:
    Click the simulate button to calculate the animation.
  18. In the animation menu:
    Click the play button to play the animation.
    Now all objects move with equal speed upwards due to the upwards field "upwards" and rotate according to the "rotate 1" field.
    Now you are going to create a third field which will attract the saucers in the fields to the middle line of the field (linesink type).
  19. Go to transform in main menu:
    Click the get solid tag button, select "upwards".
    Click the multiply button twice to make a copy of the upwards field, on the prompt multiply factor ? enter 2 press <enter>.
  20. Go to field construct in main menu:
    Notice there are 3 fields defined now: rotate 1, upwards 1, and upwards 2. Click the next button twice to select "upwards 2".
    Click the tag input box to change the name of "upwards 2" into "linesink".
    On the prompt:
    Enter "linesink", press <enter>.
    The desired motion is a movement towards the local z-axis of the field, so the field type will be changed into a linesink in order to create this motion.
    To select linesink from the scroll list, you can click on field type and enter the name of the field type as you did before in the tutorial. You can also scroll the list by clicking on one of the buttons above or below the active field type until linesink is the active field type (see field types for more information on how to scroll the list).
    Now change the power of the linesink field to 0.1:
    Click on the power status box, on the prompt:
    enter 0.1 press <enter> (this will decrease the power of this field, otherwise the saucers will move to fast towards the middle line of the field).
  21. Go to connect in main menu:
    Click add all.
    Now all fields are added to the active field group "field_grp".
  22. Go to simulation in main menu:
    Click the simulate button to calculate the animation.
  23. Go to animation in main menu:
    Click the play button to play the animation.
    Now all objects are pulled towards the local z-axis of the linesink field as they move in a spiral motion.
  24. If you want you can save the animation file together with the fields select save ani in the general menu.
Conclusion
In the first Exercise of this Tutorial you created a vortex type of field with a cylinder as fieldsolid. You linked a ball to this field by adding it to the default groups. You then calculated the animation of the ball rotating inside the field in the simulation menu. You learned that you can visualize the motion inside a field in the visualization menu. You have also learned that when you change the shape of a field primitive, the field inside will be transformed as well. In the second Exercise of this Tutorial you learned how to use the extra vector and how to work with multiple fields and objects, and that a field can be transformed and multiplied like any other solid.

____________________________________________________________________________________

Tutorial 2

Organization of Tutorial 2:
This tutorial consists of 1 exercise. By completing it, you will create an animation of a flag waving in the wind.

In this Exercise you will learn:

Some basics:
Fields can be used to transform individual points in free form and nurbs models allowing the model to transform in time. When individual points in a free form or nurbs model have been activated before simulating the animation, only those points will be transformed in time. When no points have been activated, all points will transform in time when influenced by fields.

Procedure:

  1. Go to general in main menu.
    Click the reset all button, enter Y press <enter> to reset GIG.
    If the Flow Motion menus are still displayed, click on GIG button in main menu.
    First we are going to create a flag, consisting of a flag, a stick, and a top.
  2. To create the flag:
    Go to solid construct in main menu.
    Click on the ff patch box.
    Click on the tag input box at bottom of screen
    Enter "flag" press <enter>.
  3. Go to ff mode in main menu:
    Click on point in net button.
  4. Go to ff edit in main menu:
    Click on set all and then on set button.
    Click on the tag input box. On the prompt:
    enter "active" press <enter>.
    Now all control points of the patch are active and will move under influence of one or more fields. Remember to give a tag to the points which are to be used as control points with the deformable option in Flow Motion. Note that we could also click clear all instead of set all, because when no points are active, Flow Motion considers all points active, for more information, see deformable.
  5. Go to transform in main menu.
    Click on keyboard.
    Click x-y-z size to make a flag shaped patch.
    On the prompts:
    x ? enter 15 press <enter>
    y ? enter 10 press <enter>
    z ? press <enter>
    Click move, on the prompts:
    x ? enter 7.5 press <enter>
    y ? enter 9 press <enter>
    z ? press <enter>
    To create the stick:
  6. Go to solid construct in main menu.
    Click on the group button.
    Click on the cylinder button.
    Click on the tag input box at bottom of screen
    Enter stick press <enter>.
  7. Go to transform in main menu.
    Click rotate, on the prompts:
    x ? enter 90 press <enter>
    y ? press <enter>
    z ? press <enter>
    Click x-y-z size, on the prompts:
    x ? enter 0.4 press <enter>
    y ? enter 32 press <enter>
    z ? enter 0.4 press <enter>
  8. To create the top:
    Go to solid construct in main menu.
    Click on the group button.
    Click on the ball button.
    Click on the status box at bottom of screen
    Enter top press <enter>
  9. Go to transform in main menu.
    Click size, on the prompt:
    size ? enter 0.9 press <enter>
    Click move, on the prompts:
    x ? press <enter>
    y ? enter 16 press <enter>
    z ? press <enter>
  10. Now that the model of a flag is ready, we are going to create a field with Flow Motion, which will make the flag wave.
    Select tools in main menu
    Select Flow Motion and confirm.
  11. Select field construct in main menu
    Click the cube button to add a new field to your environment. On the prompt:
    Please enter a name for this field:
    Enter "wind", press <enter>.
    You have now created one new field with the tag name "wind".
    For wind we will need a waves-type field.
  12. Click on the waves button to make the field-type waves (see field types on how to scroll the field types list).
  13. Click on the power input box at bottom of the screen,
    enter "8*mx()" press <enter>.
    This ensures that the field will increase its power along the local x-axis of the fieldsolid from 0 to 8 as the x-coordinate changes from 0 to 1. The reason for this is that we don't want the flag to move where it is connected to the stick, and that the flag should wave more, further from the stick.
  14. Go to transform in main menu
    Note that, upon exiting the field construct menu, the field automatically becomes the active solid.
    Click size, on the prompt:
    size ? enter 1.5 press <enter>
    Click on the move button and on the prompts:
    x ? enter 8 press <enter>
    y ? enter 8 press <enter>
    z ? press <enter>
    Now that you have created and moved the field "wind" with an object "flag" inside this field, the field and the object have to be connected to each other.
  15. Go to connect in main menu.
    Activate "flag" in oobjects scroll list (far left scroll list).
    Click on the add obj button to add the flag to the default object group ("object_grp" ).
    Click on the add field button to add the field "wind" to the default field group ("field_grp").
    After connecting the object and field, the simulation can be started. The simulation is the stage where the actual animation is calculated by applying the motion contained in the fields to the objects that are connected to those fields.
  16. Go to simulation in main menu.
    Click the simulate button to start the simulation. Flow Motion will now calculate the animation from the start to the end frame. During the calculation, the track of the moving objects will be displayed by alternating red and white lines. Each line represents the movement of an object during one frame. During the simulation, the animation is stored just as a normal animation with fixed events.
    After the simulation has reached its end frame, Flow Motion has calculated an animation of 50 frames. The animation can be played in the animation menu.
  17. To view the flag waving from an interesting viewpoint:
    Go to camera in main menu.
    Activate the keyboard button.
    Click the orbit coi button, on the prompt
    horizontal angle ?
    enter 45, press <enter>
    Click the orbit coi again, on the prompt
    horizontal angle ?
    press <enter>
    vertical angle?
    enter -30, press <enter>
  18. Go to field construct in main menu.
    Click the show fields button to make the wire frame of the wind field disappear.
  19. Go to animation in main menu.
    Click the loop button.
    Click the one window button.
    Click the play button to play the animation.
    You can now save the animation using save ani in the general menu.

    Notes

    • If you only want to transform a free form or nurbs model as one object and you do not want to transform the individual points, then switch the deformable button to off in the simulation menu with the free form or nurbs model active in the scroll list.
    • By saving a free form, nurbs or a group of solids which have been transformed using Flow Motion on a certain frame number as a solid, Flow Motion can be used to help you model your objects.
    • See render ani on how to render an animation.

Conclusion
In this Tutorial you learned how to transform free forms in time using Flow Motion. You learned that only the active points in a free form will be transformed, unless no points are active, then Flow Motion will transform all the individual points.