Python Ursina引擎运行基础代码无法正常渲染显示窗口如何解决
问题描述
编写了如下最小测试代码:
from ursina import * from ursina.prefabs.first_person_controller import FirstPersonController app = Ursina() player = FirstPersonController() app.run()
代码无语法错误,但运行后Ursina窗口无法正常渲染显示。
测试环境信息
- 初始测试环境:Python 3.10、Ursina 4.1.1,操作系统为Windows 10
- 切换至Python 3.7版本复测,问题仍然存在。
解决方案
优先按以下顺序排查修复:
- 补全基础场景实体
原代码仅初始化了第一人称控制器,未添加任何带碰撞的地面实体,控制器生成后会立即触发重力效果无限下落,叠加部分设备天空盒渲染异常就会出现白屏/花屏的故障。先补充基础地面实体做验证,修复后可运行代码如下:
from ursina import * from ursina.prefabs.first_person_controller import FirstPersonController app = Ursina() # 添加可碰撞地面 ground = Entity( model='plane', scale=(100, 1, 100), color=color.gray, texture='white_cube', collider='box' ) player = FirstPersonController() app.run()
- 调整渲染初始化参数
如果补充场景后仍渲染异常,修改Ursina初始化配置,关闭默认的无边框全屏、垂直同步适配,部分Windows核显设备对默认渲染参数兼容性差,修改方式为将app = Ursina()替换为:app = Ursina(vsync=False, fullscreen=False, borderless=False) - 修复依赖版本兼容问题
Ursina 4.1.1默认拉取的最新版Panda3D渲染后端在部分Win10设备上存在渲染bug,执行以下命令固定兼容版本后重试:pip install panda3d==1.10.13 --force-reinstall
注意:执行命令前请确认当前pip对应你测试使用的Python版本,避免依赖安装到其他Python环境导致修复无效 - 更新显卡驱动
核显设备请勿使用Windows自动推送的通用显示驱动,前往显卡品牌官网下载对应型号的最新稳定版驱动安装后重试,Panda3D对老旧通用驱动的渲染兼容性较差。
内容的提问来源于stack exchange,提问作者HAPPY
相关产品推荐
相关产品推荐

