- fixed begin call to return value
- camera refactoring added viewport