While I am still working on Killing Horizon, I have been thinking of a side project that’s not game related. The first one was a bit of a complicated, yet interesting 3D clock. But I realized that’s a bit more complex to do than I want.
However, I did come up with what I think is an interesting clock design and want to turn it into an app/living wallpaper. So I took a clock tutorial and started modifying the code/objects (hands) to match my vision.
Unfortunately, I’m running into an issue that has to do with scaling and rotation in 3 dimensions when you have 2 separate objects, but they are attached as a parent and child object. The childobject is skewed, somehow taking its parent’s rotation and scale into account.
At least I have an idea of what’s wrong now, and I find that there’s some attribute in Unity3D called “lossyScale” so I may have to fuck around with that soon.
In other news my Nexus 7 got stepped on the other day and it took the last damage it could handle (and that thing took plenty of a beating, dropping on conrete and hard floors many a time)… So I can’t really test on it yet. But I’m getting the newer 2013 model and look forward to testing my first android app.
At first I thought I might just not use Unity3D for the clock, once I saw that Processing has an “export to Android” feature, I was going to go that route, but then I realized that regardless of what system I use, I’m always going to have to get used to the quirks that arise as work arounds for complications with the original design. And that is just how programming is. There is not magic “perfect system”. Every system will have issues that it needs to correct, and these go back to the fundamental basis of that system’s design. So any attempt to fix it is a kludgey hack that uses the given systems mode of working to solve the problem. It creates a coherent “world view” of the system, but regardless, since every system does something in its own way (even if there are similarities across systems (for example: translation, rotation, scale… object transforms, those are fundamental traits that exist as a mathematical concept and systems apply, but they do it in their own way).
So even if I don’t run into a scaling/rotation issue like I am with Unity, I would still run into some OTHER problem, and the question is: Is it worth it to try to learn yet another framework while I’m still trying to architect my game? If I do it in Unity, my understanding of how Unity works will continue to grow, which I think is a boon to my overall ability to make games in the future.
So I’ll suck it up and figure out how to resolve the issue in Unity.