I have made the switch to Unity 5. Wow! I’m not going to lie, I’m pretty terrified.
I’m going to talk about why I made the switch.
Current Tech Problems I’m Dealing with
1. Player movement feels extremely clunky
2. After jumping to a wall, player will sometimes get stuck halfway in the floor before being snapped back up again, causing a very abrupt and disruptive feel
3. Sometimes player falls through walls/floors.
4. Cubes fall at a different speed than the player, meaning that the player cannot fall while carrying objects, which makes it impossible to solve some of the puzzles.
5. Sometimes triggers will think a cube has moved away
6. The teleportation system that makes the repeated world mechanic possible sometimes screws up and sends player elsewhere than intended
7. You can carry an object while being teleported.
As you can see, a lot of the problems I’m dealing with are due to all the game systems not working together. The way this happened is that for a long time, I didn’t know what the game was going to be. The project is still just one giant prototype. When I wrote the movement code and the object carrying code, I didn’t have the repeated world mechanic in mind. I also wasn’t expecting players to go outside.
So as the scope of the game has expanded, and as the number of systems have increased, I’ve just been adding more and more edge cases to my code controlling movement.
All of these are the basics of the system.
But to go back now and fix things is a huge pain. So many things are interconnected that I fix one thing and break three others, and I can’t run the game in the meantime.
To be honest, it’s much easier for me to start a fresh project with a small clean world, and get the systems working right then.
So to rewrite, I really only have two options: Unity 4.3 or Unity 5. This is because these are the only two that support console porting at the moment.
Given how long I have left to work on the game, it makes more sense to go to 5. Also, a lot of the game depends on quick instantiation and shorter load times, which 5 is much better at.
So yeah, that’s my reason for going to 5.
Day 1 with Unity 5
So far, it hasn’t been too bad. There are changes to the API, and definitely some bugs, but all in all, it’s working quite well.
ProBuilder works on it, which is great.
Cursor lock state seems to have some problems, which is a bit annoying.
Anyway, just getting started with the smaller project. I’m going it RELATIVITY REDUX for now.
I also finally figured out the unequal terminal velocity issue.
More updates in the coming days.