This is part one of a multipart discussion of the camera system I have constructed for my experimental RTS game using Unity3d. We begin with building a class to house all of the data for the camera that all of the various parts of the system – zoom, rotation, panning – will need to share or impact. By separating out the data from the classes that consume them, we gain some logical division, and the centralization allows for greater control. There is also a certain degree of cleanliness to the system as well, asĀ it helps to cut down on bugs when our operations are essentially “dumb”, and there is one data class that can be “smart” for all of them equally.

Read More