tutorial programar para español como python 3d interactive game-engine blender

python - programar - ¿Cómo crear ladrillos lógicos mediante programación en Blender?



como programar python en blender (2)

Me gustaría dejar que mi script de inicialización cree sensores / controladores / actuadores adicionales necesarios para una aplicación Blender interactiva (no necesariamente un juego). Esto es preferible por dos razones:

  • Puedo usar este script en múltiples aplicaciones. Crear lógica común una y otra vez es tedioso. Y no hay otra forma de importar AFAIK.
  • Tener mis módulos de Python creando ladrillos lógicos es mucho más fácil y cómodo para mí, ya que soy un codificador. (... y el código puede ser controlado por versión, revisado por pares, documentado fácilmente, etc.)

En realidad, la creación de un archivo de plantilla aborda parcialmente el primer problema. Pero luego no puedo mezclar y combinar diferentes partes para diferentes proyectos, o tengo que crear una plantilla para cada posibilidad.

He buscado tanto los documentos de Game Engine como la API de Python pero no he podido encontrar ninguna pista. __init__ métodos de ladrillos lógicos ni siquiera están listados allí.

Pero si hay alguna forma de crear ladrillos lógicos dinámicamente dentro de Python, me gustaría probarlo.

NOTA: con mi conocimiento limitado de BGE, no puede, por ejemplo, acceder a pulsaciones de teclas directamente desde Python. Se requiere un sensor


Entonces, tal como es, no hay forma de crear ladrillos lógicos directamente desde Python.

Cuando crea una instancia de un objeto en su BGE (como con un actuador de objeto adicional), los ladrillos lógicos del objeto instanciado vienen con él, y puede cambiarlos y reorganizarlos, incluido el cableado de los sensores, el controlador y los actuadores.

Creo que esta es la solución alternativa: crea una matriz en blanco de genérico, controladores y actuadores, y cuando agrega nuevos objetos a una escena, llame a una función que complete los parámetros para los bloques lógicos y realice el cableado requerido.