implemented dynamic camera