Ursina FirstPersonController 相机移动速度太快

问题描述 投票:0回答:2
from ursina import *
from ursina.prefabs.first_person_controller import FirstPersonController


class Voxel(Button):
    def __init__(self, position):
        super().__init__(
            parent=scene,
            position=position,
            model='cube',
            origin_y=0.5,
            texture='white_cube',
            color=color.white,
            highlight_color=color.lime
        )


app = Ursina()
for z in range(8):
    for x in range(8):
        voxel = Voxel(position=(x, 0, z))

player = FirstPersonController()
app.run()

我正在按照基本 Minecraft 克隆的教程来学习 Ursina,但是当我像教程中那样添加 FirstPersonController 类并启动游戏时,最轻微的鼠标移动就会使相机旋转一万亿次。它也直接指向下方,无论我如何移动鼠标,相机都会在向下看时旋转。我也有这个错误:

Known pipe types:
  glxGraphicsPipe
(4 aux display modules not yet loaded.)
:pnmimage:png(warning): iCCP: known incorrect sRGB profile
:pnmimage:png(warning): iCCP: known incorrect sRGB profile

但实际的窗口仍然有效,所以我只是忽略它。即使只是

它也被提高了
app = Ursina()
app.run()

不知道这是否重要,我想我只是提一下。

python camera ursina
2个回答
0
投票

如果第一人称控制器太快,我会使用命令更改玩家速度

player.speed=your speed choice i recommend 1 for slow

但如果不想那样做,那么我无法回答你


0
投票

这个案例我认为你的鼠标有问题 问题似乎是鼠标灵敏度 所以尝试降低player.mouse_sensitivity

from ursina import *
from ursina.prefabs.first_person_controller import FirstPersonController


class Voxel(Button):
    def __init__(self, position):
        super().__init__(
            parent=scene,
            position=position,
            model='cube',
            origin_y=0.5,
            texture='white_cube',
            color=color.white,
            highlight_color=color.lime
        )


app = Ursina()
for z in range(8):
    for x in range(8):
        voxel = Voxel(position=(x, 0, z))

player = FirstPersonController()
player.mouse_sensitivity = 2# litteraly any number u want 
app.run()

你可以用任何数字替换 2 所以它不会旋转一万亿次

© www.soinside.com 2019 - 2024. All rights reserved.