2017-07-19 117 views
1

我看了其他論壇,並沒有找到我的問題的答案,我知道對於bge腳本只有當連接到邏輯磚時才工作,並且只是爲了確保我打字這是正確的方式,我在YouTube上觀看了一個bge教程,它對他有用,但對我來說不是。攪拌機遊戲引擎 - bge模塊沒有找到

如何下載bge模塊? 任何建議,將不勝感激

還我注意到後,我觀看了視頻攪拌機控制檯這樣說:

錯誤:

Python script error - object 'Cube', controller 'Python': 
Traceback (most recent call last): 
File "moveX.py", line 1, in <module> 
ImportError: No module named 'Bge' 
Blender Game Engine Finished 

腳本:

import bge 

def main(): 
    cont = bge.logic.getCurrentController() 
    owner = cont.owner 
    owner.positive.x += 0.1 

main() 

回答

0

是的,bge模塊是遊戲引擎的一部分,可以通過一個python控制器邏輯磚。這個python控制器只有在遊戲引擎實際運行時纔會被激活。

雖然您可以在沒有遊戲引擎的情況下構建攪拌器,但我不希望它會被禁用,除非您編譯了您自己的攪拌器版本。如果您在遊戲引擎之外使用bge運行腳本(例如從攪拌器的文本編輯器中運行),則會發生錯誤。

首先通過在渲染引擎菜單中選擇遊戲引擎來啓用遊戲引擎。

render engine menu

然後在蟒蛇控制器設置你的腳本後,按P開始遊戲引擎。

編輯:

在你的問題的錯誤表示你在你的腳本有import Bge,該bge應該全部小寫,你似乎已經固定在您添加的腳本。因爲有一個對象沒有positive屬性的腳本會得到不同的錯誤,你將要使用owner.position.x

import bge 

def main(): 
    cont = bge.logic.getCurrentController() 
    owner = cont.owner 
    owner.position.x += 0.1 

main() 
+0

和這就是爲什麼我不明白爲什麼它不工作。我在腳本上總是有一個傳感器,用真正的脈衝來移動我在x軸上的0.1個攪拌器單元,並且因爲只要我有bge運行,它就是一個始終傳感器,我在控制檯中獲取此消息:Python腳本錯誤 - 對象'Cube',控制器'Python': Traceback(最近調用最後一個): 文件「moveX.py」,第10行,在 文件「moveX.py」,第8行,主 AttributeError:'KX_GameObject 'object has no attribute'positive' Blender Game Engine Finished – littleman27

+0

與我上面發佈的相同 – littleman27

+0

我想我知道問題是什麼問題是我正在觀看教程的人有可能擁有python的onlder版本,並且語法已更改從現在起,你可以幫助我,我會在上面的文章中發佈腳本 – littleman27