Aiming in 3D, Part Four

This is the final part in a four part series, describing the evolution of the aiming mechanic in Minecart Basketball.

This part take the rim/shot comparison used in the previous entry and moves it from down on the ground up to the level of the rim.

[WP_UnityObject src=”https://beanalby.net/blog/wp-content/uploads/2013/07/aimIn3D-4.unity3d” width=”960″ height=”600″/]

The shot prediction finds the rim closest to the trajectory’s plane. It projects the ball’s impact onto the rim’s plane, ends the projection at that point, and draws a vertical, gray line down from there.

The system is a bit more robust than it needs to be, and the game didn’t fully utilize it. In the above demo, you can see some of the baskets are tilted towards or away from the cannon. The projection still works for these angled baskets. When you pull back from the left-most basket that’s angled toward the camera, the transition point gets lower to the ground, matching the rim’s slant. Similarly, when the player pulls back from the rim tilted away from he cannon, the transition point is raised.

This also showed me there’s NO WAY I was going to have baskets tilted away from you in the game. It’s a nightmare trying to make shots into that thing.

What It Does Right

This was a big improvement on the previous part, and it was the first time I through it felt “good”, rather than just “better than before”. The transition point from white prediction to black vertical happens on the plain of the rim, so placing that point inside the rim is what gets you nothing but net.

I think one key phrase from that last sentence, “placing that point inside the rim”, is the most important detail to making this “feel” good. When we want users to make baskets, their primary focus is on the rim. When they have one obvious detail (the transition point in the prediction) that they can control (by moving around the mouse), it’s natural to put tab A into slot B. Which happens to be exactly what they need to do. It’s both easy to use, and easy to discover.
Comparing misses and hits

What It Does Wrong

This is how the mechanic exists in the game I published at the end of its month, so obviously that means it’s perfect. *cough*

I’d still like to get a bit more feedback into the success/failure of any given aiming state. There’s no icon in the transition between prediction to vertical line like there is with hitting the backboard, there could be some kind of “good” icon when that transition occurs within the rim as opposed to not inside the rim.

I also would’ve liked to have more feedback with bank shots, maybe showing the prediction after the bank and how it interacts with the rim. I knew the physics engine wouldn’t just be mirroring the velocity on the backboard’s plane and would’ve taken some investigation to determine how it should be modeled, and I ran out of time.


I hope you’ve found it interesting or useful to follow the path I traveled trying to improve this mechanic. The full source & assets for this game and all my other 1GameAMonth projects can be found at Beanalby/1GameAMonth13 on GitHub.