Blender游戏引擎Python

时间:2016-11-16 17:40:22

标签: python blender

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

我自己编写的Pythonscript有点问题。 我想要一个闪烁的光,所以我放入聚光灯, 这个我给了两个房产:

  1. 布尔名称toggleProp
  2. 整数命名计时器
  3. 我将三个逻辑砖连接到聚光灯下,一个Alwayssensor设置为如此级别触发真实,链接到Pythonbrick我放入我的脚本而不是链接到Poperty Brick我在其中设置模式以切换链接我的Property's。

    我在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:没有名为'bge'的模块

    我正在使用Blender 2.78版。

    感谢德国的最诚挚问候:)

1 个答案:

答案 0 :(得分:0)

直接从本机python脚本执行“import bge”并不容易,直到您编译Blender以支持此特定选项(同时考虑到开发团队不再遵循此选项)...

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

要做到这一点: 在Blender中选择“文本编辑器”,然后在文本字段中粘贴以下两行

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

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

更多信息here