#3d #ogre3d
#3D #ogre3d
Вопрос:
Как создать камеру, которая следует за игроком (как в MMORPG играх) без необходимости транслировать ее каждый кадр. Но ее легко поворачивать. Если это возможно.
Node character;
Camera camera;
void init() {
createCharacter();
/** CREATE CAMERA **/
}
void rotateCamera(float aroundYaxis, float verticaly) {
/** ROTATE CAMERA **/
}
void changeDistanceOfCameraToPlayer(float delta/* may be absolute that doesn't matter*/ ) {
/** MOVE CAMERA **/
}
Ответ №1:
По умолчанию камера не привязана ни к одному узлу, поэтому лучший способ — переписать функции, отвечающие за движение камеры, так, чтобы переводить, рыскать и поворачивать не саму камеру, а некоторый узел, к которому вы должны прикрепить свою камеру, а затем подключить этот узел к проигрывателю. Таким образом, если ваш плеер движется, камера будет двигаться вместе с ним.