The Hoops update introduced the option to map air-roll left/right to our gamepad. This allows us to simultaneously roll and yaw while performing aerials, which was previously impossible. I would like to use this thread to discuss advantages, mechanics, gamepad configurations.
LOCAL REFERENCE FRAME
Rotation in RL is applied in local space. Take your car and imagine coordinate axes rooted at the center. The local X-axis points forward through the nose of your car, the Y-axis points to the right through the side of your car, and the Z-axis points upward through the roof of your car. This defines your car's local reference frame. When performing aerials, you use your gamepad to rotate your car about these local axes. Now, by "center" I mean the car's center of mass (COM). In RL, this is artificially placed near the centroid of the wheels? Whenever your car is rotating, its axis of rotation always passes through the COM. Since the COM is located at the bottom of the car, taller cars have a slightly awkward roll and pitch (though in some ways advantageous). In the very first gif below, try to find the point that doesn't trace out a circle. You will find that it lies in the center between the two wheels. But I digress.
picture
In RL there are six inputs for rotation. They are Air Roll Left/Right, Air Pitch Up/Down, and Air Steer Left/Right. Rotation is applied via torques, or angular forces. When you roll, a torque is applied that pushes your car around its local X-axis. When you pitch, a torque pushes your car around its local Y-axis. When you steer, or yaw, a torque pushes your car around its local Z-axis.
Visualization of each RL
* roll right, torque = (1,0,0)
* pitch up, torque = (0,1,0)
* yaw left, torque = (0,0,1)
TORQUE AND ANGULAR DYNAMICS
So RL takes our input and converts it into a torque vector T=(tx,ty,tz) such that each component lies in the range [-1,1]. It is worth noting that the vector length itself is not clamped to 1. This observation came to my attention [in this thread]. This leads us to our first clear advantage when using the new bindings. **We can now input the torque T=(1,1,1) which is ~22% stronger than the previous maximum of (1,1,0). This means you can change your angular velocity up to 22% faster. Freestylers can use the new bindings to twist faster and with more variety. ** -- In windows 10 you can configure your gamepad to have a square response.
- gif of pro aerial training, I didnt make a gif prior to switching so I'm sorry for the lack of comparison. If anyone wants to make a gif for me please feel free.
In RL our car experiences strong angular damping; a torque is automatically applied to counteract our car's angular velocity. This is what stops the car when we take our hands off the gamepad. One nice artifact is that our car's angular velocity quickly converges to the axis of any torque applied, so it acts as a natural flight assist. Another thing to note is that our car's inertia tensor is some multiple of the identity matrix (it behaves just like a uniform-density sphere). This means that angular velocity is conserved, so that in the absence of forces our car will continue to rotate around the same axis at the same speed. It also means that torque can be measured as a direct change in angular velocity, allowing us to describe the motion of our car using rotational kinematics, and making it pretty easy to code ai-controlled aerials (Psyonix plz).
Start by pitching and switch to yawing. Show case without damping. GIF, GIF.
Gif of bot performing an aerial
Let's look at a few ways we can rotate our car. Suppose our car's nose is currently pointing in direction A and that we want it to instead point in direction B. We might want to do this for boosting purposes, or perhaps to powershot the ball. How can we rotate from A to B as quickly as possible?
One way to rotate from A to B is to consider the plane that contains both vectors A and B and take the axis of rotation to be the plane's normal vector. Note there are two directions in which we can rotate. We will only concern ourselves with the shorter of the two routes (angle <= 180 degrees). This angle is of importance to us. Is it the smallest angle we can achieve? Is there a different axis of rotation from A to B that yields a smaller angle? The plain answer is no. To see this, consider the path our car's nose takes as it rotates. Imagine a unit sphere surrounding our car, with the car's nose tracing out a line along its surface. On the surface of a sphere, the shortest path from one point to another is along a great circle (geodesic). As seen below, rotating around the plane-normal gives us this geodesic motion.
gif --- math
The optimal axis of rotation is orthogonal to both A and B (the cross product AxB). So what does this mean in RL? ** This means that to align the front of your car in the fastest manner possible (from a standstill), you need only pitch+yaw; to align the right side of your car you need only yaw+roll; to align the top of your car you need only pitch+roll. Even when you are already rotating, it will still be close to optimal (only minute adjustments in the third axis are needed). **
Gif, gif, gif
For future reference, let's call these GV-rots (short for Geodesic-Vector-Rotations). So a GV-rot only combines two of the three possible roll+pitch+yaw inputs. The two most important GV-rots, those that align the front and top of our car, are already possible with the current gamepad bindings. This is a valid reason for keeping our current bindings, but its not the whole story. For example, if we pitch+yaw to align the front of our car, we might find that our car ends up upside-down. If we also want our wheels to point toward the floor, we need all three inputs. Generally speaking, if we want to fully align our car, we need all three inputs. Even if we just want to align a corner of our car, we need all three inputs. We need all three inputs.
One way to perform a full alignment is a natural generalization of G-rots. Suppose we move an axis along a great circle all the while twisting around the same axis. For example, we can pitch+yaw so our car's nose traces a great circle, all the while twisting the nose by rolling. Let's name these G2-rots. These can be pretty dank.
Gif of G2-rot
Gif x6
G2-rots are useful because the let us align one axis as fast as possible (just liek G-rots) while simultaneously twisting. The twist may however be slower than the geodesic rotation, and in general the speed of one comes at the expense of the other. For example, in the gifs above we observe full-speed twist and slow geodesic motion. The gif below shows the opposite, with maximum geodesic speed and slow twist.
gif
So how do we use our gamepad to perform such a rotation? Take a look at the first two gifs in which the front of our car moves along the geodesic and the twist is an air-roll. The left analog stick (geo-stick) drives the geodesic motion whereas the right stick (twist-stick) drives the twist. In the gif we see the twist-stick is held constant while the geo-stick moves around a circle. In fact, the twist stick and the initial geo-stick input fully determine the G2-rotation. The twist-stick directly drives the twist speed, inversely determines the geodesic speed, and directly defines the speed and direction you must move the geo-stick around. The initial geo-stick determines the geodesic great circle. I think it is easiest to learn this by trial and error... slo-mo and low-gravity in an exhibition match.
While G2-rots are fancy, they are hard to perform due to the required stick motion and they are't even optimal in the full-alignment sense. There is another rotation however, that is not only optimal, but also allows us to hold our sticks fixed. A result of Euler, there is a unique axis about which we can rotate one reference frame into another. The axis is the vector that is the same with respect to both reference frames (for those mathematically inclined this is an eigenvector of the transformation matrix with eigenvalue 1). The actual calculation to find this axis is out of our scope, but it can be found [here]. To get an intuition about where this axis lies and how to use your gamepad, here is a myriad of examples.
gif * a bunch
Alright, so we have a few theoretical advantages to using the third axis, but what are some of the more practical uses? What are some simple maneuvers we can do? I hope people will test this out and provide their own, but here are a few. [link to first thread]
Jump into inverse aerial. Awesome twist off wall that I did. Off side-wall jump.
Finally, there is one new type of flip as well. For a description of how flips work, see here. Yaw-Right + Roll-Left or vice versa perfoms a flip that doesn't disable your input and doesn't push you in any horizontal direction. It yeilds what I lioke to call a "zero flip." As all the other flips, it does keep you height level. Observe.
I haven't found too many uses for this. Perhaps it can help when spidermanning from above. Tt might be useful for certain challenges or kickoffs, or maybe for those awkward situations where you are sideways or backwards in goal. In any case it looks cool.
TLDR:
Using all three inputs has clear advantages.
22% increase in maximum torque
To align your car's nose quickly (optimally), you need only pitch+yaw.
Optimal full car alignment requires all three inputs
There is new type of "zero" flip
Changing your [gamepad setup] is brutal
[Train] in slo-mo
Simply explained, in Rocket League, a rotation is when you change your position in accordance with the other players on your squad. It would seem as if you were drawing a lot of circles if a line were drawn over the area where your automobile rotated. While it may sound unusual, spreading the field enables your team to play far better than ball chasing. Here is a video to teach you how to learn rotations: https://www.youtube.com/watch?v=xiHHbvhRNBU, and also you can find more stragies for rocket league hoops on https://guideshere.blogspot.com/2022/12/hints-strategies-for-rocket-league-hoops.html
ReplyDelete