1. Updated Resource Submission Rules: All model & skin resource submissions must now include an in-game screenshot. This is to help speed up the moderation process and to show how the model and/or texture looks like from the in-game camera.
    Dismiss Notice
  2. DID YOU KNOW - That you can unlock new rank icons by posting on the forums or winning contests? Click here to customize your rank or read our User Rank Policy to see a list of ranks that you can unlock. Have you won a contest and still havn't received your rank award? Then please contact the administration.
    Dismiss Notice
  3. We have recently started the 16th edition of the Mini Mapping Contest. The theme is mini RPG. Do check it out and have fun.
    Dismiss Notice
  4. Choose your ride to damnation in the 5th Special Effect Contest Poll.
    Dismiss Notice
  5. The winners of the 13th Techtree Contest have been announced!
    Dismiss Notice
  6. The 13th Music Contest Poll is up! Vote for the best tracks in this symphony of frost and flame.
    Dismiss Notice
  7. Race against the odds and Reforge, Don't Refund. The 14th Techtree Contest has begun!
    Dismiss Notice
  8. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Orbital Movement

  • IcemanBo


    Sep 6, 2013
    Orbital Movement

    There is an angle phi that is defined to rotate around z-axis [local system]. When it makes 360°, it will result in one complete rotation. It should be permanently increasing/decreasing, to simulate the motion.

    The motion curve is described by 3 angles:
    • alpha = yaw = rotation around x-axis [global system]
    • beta = pitch = rotation around y-axis [global system]
    • gamma = roll = rotation around z-axis [global system]
    Difference between global and local coordination system

    Global system is the world's normal axis system. It is constant, so x,y,z directions are always the same.


    In this system the local system describes a 2D simple circle on its x-y-plane, meaning the z-coordinate is always 0.

    Final Rotation + shift:

    The final rotation is obtained by rotating the circle's local coordinate system around the global coordinate system. The shift from global origin is described by defined x/y/z center-coordinates.


    ... in this system the actual axis rotations can be described by 2 things:
    • Amplitude:
      Describes the axis rotation, between 0° and 360°.
      Technically, with only defining amplitudes you already can get all possible points on the sphere.

    • Frequency Factor:
      The frequency factor will result in pendeling the respective axis rotation between amplitude values.
      Its actual value will always be somewhere from amplitude to -amplitude.
      • Factor = 0 → amplitude/axis rotation is constant
      • Factor = 1 → amplitude/axis rotation equals phi_speed
      • 0 < Factor < 1 → slower curves (with coming closer to 0 it gets slower)
      • 1 < Factor → faster curves
      So the factor only describes how fast the actual angle rotation goes between the amplitudes.

      We make alpha_amplitude 50° and make frequency factor 2.
      Now the alpha rotation (x-axis) will go between 50° and -50°, back and forth, with factor 2, leading in 2x speed of a normal sinus curve.

    Attached Files: