2017-07-19 3 views
1

Ich habe andere Foren angeschaut und keine Antwort auf mein Problem gefunden, ich weiß, dass das Skript nur funktioniert, wenn es mit Logikbausteinen verbunden ist, und nur um sicher zu gehen, dass ich tippe Es war die richtige Art und Weise, wie ich ein BGE-Tutorial auf youtube sah und es funktionierte für ihn, aber nicht für mich.Blender Game Engine - bge Modul nicht gefunden

Wie lade ich das bge Modul herunter? Anregungen stark

auch bemerkt geschätzt würde ich, nachdem ich das Video der Mixer-Konsole das sagte sah:

Fehler:

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 

Script:

import bge 

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

main() 

Antwort

0

Ja, das bge Modul ist ein Teil der Game Engine und ist verfügbar über ein Python-Controller-Logik-Baustein. Dieser Python-Controller wird nur aktiviert, wenn die Game-Engine tatsächlich ausgeführt wird.

Während Sie Blender ohne die Spiele-Engine erstellen können, würde ich nicht erwarten, dass es deaktiviert wird, es sei denn, Sie haben Ihre eigene Version von Blender kompiliert. Der angezeigte Fehler tritt immer dann auf, wenn Sie ein Skript ausführen, das bge außerhalb der Spielengine verwendet, z. B. aus dem Texteditor von blender.

Aktivieren Sie zuerst die Spiel-Engine, indem Sie sie im Render-Engine-Menü auswählen.

render engine menu

Dann nach dem Skript im Python Controller drücken P, um das Spiel Motor zu starten einrichten.

EDIT:

Der Fehler in der Frage, die Sie import Bge in Ihrem Skript haben, sollte die bge all klein geschrieben werden, die Sie im Skript festgelegt zu haben scheinen Sie hinzugefügt. Das Skript wird eine andere Fehlermeldung erhalten, da es keine positive Eigenschaft in einem Objekt ist, werden Sie owner.position.x

import bge 

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

main() 
+0

und das ist, verwenden, warum ich verstehe nicht, warum es nicht funktioniert. ich habe immer einen sensor auf dem script mit echtem pulse, um mir 0,1 blender-einheiten auf der x-achse zu bewegen, und weil es immer ein sensor ist, solange ich den bge run habe, bekomme ich diese nachricht in der konsole: Python script error - Objekt 'Cube' Controller 'Python': Traceback (letzter Anruf zuletzt): File "moveX.py", Zeile 10, in File "moveX.py", Zeile 8, in dem Haupt Attribute: ‚KX_GameObject 'Objekt hat kein Attribut' positiv ' Blender Spiel Engine Finished – littleman27

+0

selben wie die, die ich oben – littleman27

+0

geschrieben habe ich denke, ich weiß, was das Problem ist der Typ, ich beobachtete das Tutorial von möglicherweise hat eine onlder Version von Python und die Syntax wurde geändert Von nun an, also kannst du mir helfen, werde ich das Skript im obigen Beitrag veröffentlichen – littleman27