@halwarsing
Я python и Web программист.

Как можно решить этот баг?

Делаю 3d движок, вроде рисуется всё нормально, но при определённом угле или позиции, появляется вот такой баг - 612b8f2950a80154261432.pngвот кусочек кода поворотов и приврашения из 3d в 2d -
x,y,z=p

#OBJECT ROTATION
x,z=rotate2d((x,z),(math.sin(model.rot[1]),math.cos(model.rot[1])))
y,z=rotate2d((y,z),(math.sin(model.rot[0]),math.cos(model.rot[0])))
x,y=rotate2d((x,y),(math.sin(model.rot[2]),math.cos(model.rot[2])))

#CAMERA POS
x-=camera.pos[0]-model.x
y+=camera.pos[1]-model.y
z-=camera.pos[2]-model.z
                
#CAMERA ROTATION    
x,z=rotate2d((x,z),camera.rotY)
y,z=rotate2d((y,z),camera.rotX)
x,y=rotate2d((x,y),camera.rotZ)

verts.append((x,y,z))
    
f=fov/z if z else fov; x=x*f; y=y*f

if z>0 and x>0 and x<w and y>0 and y<h: on_screen=True
pns.append((x,y))

Можно ли это пофиксить?
  • Вопрос задан
  • 124 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы