Мне хотелось знать, где я ошибаюсь в своем коде. Я пытаюсь воспроизвести представление, аналогичное тому, как работает Old School Runescape, за исключением того, что вместо 3D-объектов я использую сложенные спрайты для имитации 3D-среды.
Как я понимаю, это работает заключается в том, что когда игрок перемещается в реальном мире, новая точка поворота должна основываться на плитке, на которой в данный момент находится игрок, а объекты с определенными позициями должны подстраиваться под текущую точку поворота.
Моя игра
OSRS
Проблема сейчас заключается в том, что объекты мира не подстраиваются под мировое положение, а объекты также «подпрыгивают» вверх и вниз, когда я поворачиваю камеру. Чем ниже наклон камеры, тем заметнее «отскок». Я пробовал разными способами рассчитать расстояние от мирового объекта до мирового положения игрока, но движение все равно очень плохое.
Мне хотелось знать, где я ошибаюсь в своем коде. Я пытаюсь воспроизвести представление, аналогичное тому, как работает Old School Runescape, за исключением того, что вместо 3D-объектов я использую сложенные спрайты для имитации 3D-среды. Как я понимаю, это работает заключается в том, что когда игрок перемещается в реальном мире, новая точка поворота должна основываться на плитке, на которой в данный момент находится игрок, а объекты с определенными позициями должны подстраиваться под текущую точку поворота. Моя игра OSRS [code]import math
import pygame from math import * from pygame import Vector2
# Need distance from player to obj orbOffset.from_polar((distance, -self.camRotAngle)) newPos = pivot + orbOffset orbRect = modObjectSurface.get_rect(center = newPos)
self.mainWindow.blit(modObjectSurface, orbRect) [/code] Проблема сейчас заключается в том, что объекты мира не подстраиваются под мировое положение, а объекты также «подпрыгивают» вверх и вниз, когда я поворачиваю камеру. Чем ниже наклон камеры, тем заметнее «отскок». Я пробовал разными способами рассчитать расстояние от мирового объекта до мирового положения игрока, но движение все равно очень плохое.
Мне хотелось знать, где я ошибаюсь в своем коде. Я пытаюсь воспроизвести представление, аналогичное тому, как работает Old School Runescape, за исключением того, что вместо 3D-объектов я использую сложенные спрайты для имитации 3D-среды.
Как я...
Мне хотелось знать, где я ошибаюсь в своем коде. Я пытаюсь воспроизвести представление, аналогичное тому, как работает Old School Runescape, за исключением того, что вместо 3D-объектов я использую сложенные спрайты для имитации 3D-среды.
Как я...
Моя модель перемещается в другое положение на экране после выбора точки поворота 3D-модели.
Я пытаюсь использовать GL.LookAt для реализации вращения вокруг точки поворота функция.
GL.MatrixMode(MatrixMode.Modelview);
Matrix4d viewMatrix =...
Моя модель перемещается в другое положение на экране после выбора точки поворота 3D-модели.
Я пытаюсь использовать GL.LookAt для реализации вращения вокруг точки поворота функция.
GL.MatrixMode(MatrixMode.Modelview);
Matrix4d viewMatrix =...