如何在 Python 中使用 Ursina 播放 MP4

问题描述

我是游戏开发的新手。我正在尝试从高处开始制作 3D RPG。我知道这条路并不容易。这就是为什么我决定使用 Ursina 和 python 来制作我的游戏。

但是我想添加一个显示背景故事的过场动画。我有 mp4 格式的视频,但我似乎不知道如何在 Ursina 的游戏中播放它。

任何帮助将不胜感激。 (附带问题:你认为 Ursina 适合 3D 游戏的初学者吗?如果我想在我的网站上发布我的游戏,我学习 javascript 不是更好吗?我读过 Unity,但它太大了,无法下载对于一个小项目)

解决方法

您可以将视频设置为任何元素的纹理。您需要使用其 parent 属性将其修复到 UI,并且必须从同一文件中单独加载声音(如 Panda3D documentation 中所述)。

from ursina import *

app = Ursina()

video = 'video.mp4'
video_player = Entity(model='quad',parent=camera.ui,scale=(1.5,1),texture=video)
video_sound = loader.loadSfx(video)
video_player.texture.synchronizeTo(video_sound)
video_sound.play()

app.run()

以上代码假设视频文件与 Python 脚本在同一个文件夹中。