update camera class

*viewport set() calculate viewport transformation matrix automatically.
*rename some properties and methods to avoid ambiguity.