Нет, это неправильный путь.
Как вы собираетесь делать обнаружение ловушек? Как насчет того, когда игрок достигает края стен? Будет ли ваша система просмотра работать с подземельями или вам придется переписывать значительную часть кода?
Мир это геометрия. Игрок это геометрия. Мир не двигается. Плеер делает. Установите положение камеры в центре проигрывателя. Всегда . И это все, что нужно сделать.
Не пытайтесь увлечься «о, если я скользю по миру, тогда это создаст впечатление, что игрок движется». Вы просто собираетесь усложнить математику странными системами координат в конце дня.
Это правда, что рендеринг OpenGL на самом деле работает, «фиксируя камеру так, чтобы она указывала вниз - z, и преобразовывая и поворачивая всю геометрию мира, чтобы она соответствовала объему канонического вида», но вы не должны думать об этом таким образом при программировании , gluLookAt
имеет параметры, названные eye
, look
и up
по причине - так что вы можете думать с точки зрения разумной системы координат.