Creating Process



I loved this cube toy when I was a kid. It was great fun to create this 3D game to get to know how to use Unity. I used to make mini games using Android Studio, but it was not exactly a game engine so I had to code everything myself. I found Unity is a very powerful tool to develop games, especially when it comes to 3D.



First, I created a unit cube and arrow button using Blender.


Then I made an input action file, so that it can be played not only by mouse, but touchscreen or pen. I put the unit cube at the center, and developed the function to rotate the viewport. But I met an issue. When I use a touchscreen or pen, the screen skips the rotation from time to time.

At first, I thought it was interference from the mouse. I tried Unity’s input debugger, and found that mouse input was not found while using the touchscreen. So I used the Debug.Log() function to print the actual input values, and found sometimes the value hikes above average level. Just limiting input value with threshold could solve the problem.


Next, I simply stacked the unit cube to each place. Then added arrow buttons to their place, as well. I made a function to get the unit cubes in a certain row, and made them rotate along the axis by parenting them under an empty pivot object. The rotation also involved a bit of scale animation to exaggerate. After that, I had to unparent the unit cubes and clean up the transform values to prevent errors.

Finally, I made it to decide winning by comparing the rotation value of all the unit cubes. Also, I added a particle system to sprinkle confetti toward the camera. With this, all the game functions were constructed.



While playing, I did not like the cube revealing an empty center while rotating a row. So I added cover planes to hide the sides while rotating a row.



Also, when the player won, the confetti leaned to one side as the camera rotated around the cube. I did not make the cube rotate, because it could cause issues when using unit cubes. So every other function, including viewport rotation, used the camera instead of the cube itself. However, since the confetti is attached to the camera, it became a problem. So I made the cube rotate only when it comes to winning, since rotating a cube row will not be necessary anymore.

All the additional functions including UI were added as well. I allowed the users to select the level, and check the manual to get information about this game. I did not add play time intentionally, since what I loved playing a cube toy was enjoying thinking and time killing.

I cooked up a title text using Adobe Illustrator.


BGM is created with Chrome Music Lab. And the effect sound for rotating a cube row is actually a record of my room door key. Other effect sounds, like buttons or fanfare, are created using Cakewalk and Noise Maker.





I hope you can enjoy this game!

StatusReleased
PlatformsHTML5
Authorrudy_games
GenrePuzzle
Made withUnity

Leave a comment

Log in with itch.io to leave a comment.