added camera controller