混合游戏引擎Python

2024-05-02 18:33:41 发布

您现在位置:Python中文网/ 问答频道 /正文

首先很抱歉我的英语不好,我来自德国

我自己写的Python文字有点问题。 我想要一个闪烁的灯,这样我就把它放在聚光灯下, 这一个我给了两个财产:

  1. 布尔命名的toggleProp
  2. 整数命名计时器

我把三个逻辑块链接到spotlight,一个总是设置为触发true级别的传感器,链接到Pythonbrick,我把脚本放在那里,然后链接到Poperty块,在那里我设置模式来切换链接我的属性

我在Pythonscript中写了以下几行:

import bge


def main():

    cont = bge.logic.getCurrentController()
    light = cont.owner

    toggleProp = cont.actuators ["toggleProp"]

    if light ["timer"] == 25:
        cont.activate(toggleProp)
        light ["timer"] = 0

    if light ["toggle"] == False:
        light.energy = 0.200
    else:
        light.energy = 1.500

    light ["timer"] += 1


main()

当我开始比赛的时候,什么都没有发生。 控制台显示:ImportError:No module name'bge'

我用的是搅拌机版本2.78。在

感谢德国并致以诚挚的问候:)


Tags: if链接main整数命名energy计时器light
1条回答
网友
1楼 · 发布于 2024-05-02 18:33:41

在编译Blender以支持此特定选项之前,直接从本机python脚本执行“import bge”并不容易(还要考虑到开发团队不再使用此选项)。。。在

但是。。。您可以直接从Blender运行脚本(在OSX/Linux下,Blender需要从终端运行)

为此: 在Blender中选择“文本编辑器”,然后将以下两行粘贴到文本字段中

filename = "/path/to/your/python_script/run.py"
exec(compile(open(filename).read(), filename, 'exec'))

根据需要调整路径,然后用鼠标单击“运行脚本”按钮从Blender运行它。在

更多信息here

相关问题 更多 >