Foros 3DPoder.  

Bienvenido a Foros 3DPoder..

Usted esta viendo este foro como invitado, no esta registrado todavía, lo que limita su visión del foro. Si quiere unirse gratis a la mayor comunidad del diseño gráfico de habla hispana, tener acceso a publicar y responder mensajes, tener mensajes privados con otros miembros(PM), responder encuestas, publicar sus imágenes para que las vea el resto del mundo, tener acceso a los video_tutoriales, y muchas cosas más, no lo dude. Registrarse es rápido, simple y gratuito, agregate hoy a la mayor comunidad 3D de habla hispana! !

Si usted tiene algún problema con su registro, por favor , díganoslo aquí. 3d




Retroceder   Foros 3DPoder. > :: Técnicas 3d > VideoJuegos
Foro3D Galeria Privada Video3D Blueprints Software Blog3DPoder Buscar Empleo Donaciones


Noticias, Anuncios y Publicidad

Respuesta
 
Herramientas
Antiguo 09 jun 2008   #1
Bardo_Slaine
Miembro
 
Avatar de Bardo_Slaine
 
Fecha de Ingreso: junio-2006
Mensajes: 49
Blender Problema con script GE Blender

Bueno.. aquí estoy de nuevo dando la coña con el python en Blender XD...

Bueno, resulta que estoy haciendo un jueguecito para que un muñeco se mueva según pulses en una pista en el suelo (el blender lo detecta como un joystick) con 8 flechitas.

Aqui planteo la situación...
Quiero hacer que el muñeco cuando estén pulsadas dos teclas de la pista (izquierda y derecha), el muñeco se agache, y en el momento que las sueltes el muñeco salte...
Probé con unas cuantas maneras, pero ninguna me funcionó, la ultima es la que vi mejor, pero seguramente también sea una porquería, pero no se me ocurre otra manera...

El problema es que en el scrypt metí un bucle "while", y el blender se me queda colgado cuando la pongo... XD... y no se por qué, entonces no se si es que el scrypt esta fatal o si hay algún problema solo con ese bucle....

Por favor!, que alguien me ayude... llevo unos días y me empieza a sacar de quicio xD, tiene que ser simplísimo... pero es lo primero que programo en mi vida... asi que todavía no le tengo cogido el truco^^

Un saludo a todoS!
Descargar Directa de Archivos ...
Tipo de Archivo: rar muñeco.rar (133.7 KB, 16 visitas)
__________________
Que es la vida, un frenesí, que es la vida una ilusión,
un sueño, una ficción. Que el mayor Bien es pequeño...
Toda la realidad es sueño y los sueños, sueños son
Bardo_Slaine is offline   Responder Con Cita
Antiguo 09 jun 2008   #2
Caronte
BlenderAdicto
 
Avatar de Caronte
 
Fecha de Ingreso: diciembre-2004
Ubicación: Valencia-España
Mensajes: 10,138
Predeterminado Re: Problema con script GE Blender

Yo hace tiempo que no hago nada con el GE, pero el bucle ese te sobra, porque... si no recuerdo mal el script se va a ejecutar siempre que los sensores cumplan las operaciones lógicas (en este caso AND), o sea, que el script se ejecutará una vez en cada ciclo mientras los botones del joystick estén pulsados.

De todas formas, me parece que te estás complicando mucho la vida haciendo un script solo para eso, cuando podrías simplemente usar los Logic Briks de forma muy sencilla
__________________
"Algún día todo será digital"
Caronte.
My latest personal work
Caronte is offline   Responder Con Cita
Antiguo 09 jun 2008   #3
Bardo_Slaine
Miembro
 
Avatar de Bardo_Slaine
 
Fecha de Ingreso: junio-2006
Mensajes: 49
Blender Re: Problema con script GE Blender

Buenas noches!

Respecto a lo del bucle, lo puse por la siguiente razón. Cada vez que se ejecutaba el script los atributos de la clase estado(para saber que esta haciendo el muñeco en cada momento), se restablecen, así que nunca esta haciendo nada... al menos de manera continua, por eso puse el while, para que el bucle no sea en el scrypt entero, sino solo en la parte que yo quiera...

Respecto a lo de la facilidad y demás, supongo que tienes razón, es mas, hice unas pruebas sin programar, pero, estoy aprendiendo xD... Por eso estoy haciéndolo por python ^^....

Se me ocurrió una idea, pero al intentarla se me chafó todo xD... Se me ocurrió, que para que los atributos que definí en la clase, no se vuelvan "False" cada vez que se ejecute el scrypt, en vez de hacer la clase, lo que cojo son unos "Property" del GE de blender, eso valdría, ¿no?...
Lo único es que no se como coger un property XD... probé con "getProperty", pero no me funcionó...

¿Alguien sabría decirme como se hace?


SaludoS!
__________________
Que es la vida, un frenesí, que es la vida una ilusión,
un sueño, una ficción. Que el mayor Bien es pequeño...
Toda la realidad es sueño y los sueños, sueños son
Bardo_Slaine is offline   Responder Con Cita
Antiguo 09 jun 2008   #4
Mars Attacks
Ready? Go!
 
Avatar de Mars Attacks
 
Fecha de Ingreso: junio-2003
Ubicación: Castellón
Mensajes: 11,213
Predeterminado Re: Problema con script GE Blender

Tengo el Game Engine bastante oxidado, pero el mejor consejo es que te descargues juegos hechos con Blender (de los que hay en la página oficial, por ejemplo) y estudies los distintos scripts que tiene, y qué hace cada parte. Se aprende un montón sobre su filosofía de funcionamiento.

Sobre lo del bucle, tú lo has dicho: no querías que el bucle fuera el script entero, sino sólo la parte que tú querías... así que se queda para siempre en esa parte y no sale nunca.

Tienes que entender el juego como un bucle principal global en el que no existirán subbucles a menos que sea para iterar por elementos de listas de tamaño conocido o, al menos, limitado.
Tu segunda intuición va por mejor lado: usa las properties como lo que son, variables miembro para tu objeto que contienen valores mantenibles (y modificables) a lo largo del funcionamiento del programa.
__________________
Yo
//
Portafolio | blog
Mars Attacks is offline   Responder Con Cita
Antiguo 09 jun 2008   #5
Bardo_Slaine
Miembro
 
Avatar de Bardo_Slaine
 
Fecha de Ingreso: junio-2006
Mensajes: 49
Blender Re: Problema con script GE Blender

Gracias por los consejos^^.

Me pondré a ver algún que otro juego a ver como van (al único que le eché un vistazo es al FPS_Template, y fue el que medió la idea del "property" :P)

Aun así sigo teniendo el problema de como hacer referencia a un "property" desde el script de python XD...). Pero ya estoy maquinando alguna forma de hacerlo (a traves de un sensor de "property" y un actuador de "property" ^^)

Si tengo más problemas os avisaré!

Espero que cuando vuelva a decir algo sea para enseñaros el programa :P

SALUDOS!
__________________
Que es la vida, un frenesí, que es la vida una ilusión,
un sueño, una ficción. Que el mayor Bien es pequeño...
Toda la realidad es sueño y los sueños, sueños son
Bardo_Slaine is offline   Responder Con Cita
Antiguo 14 jun 2008   #6
Mars Attacks
Ready? Go!
 
Avatar de Mars Attacks
 
Fecha de Ingreso: junio-2003
Ubicación: Castellón
Mensajes: 11,213
Predeterminado Re: Problema con script GE Blender

Desde python puedes acceder a los objetos de la escena, y una vez accedes a los objetos puedes acceder a sus propiedades. No recuerdo exactamente cómo se hace, pero por poderse, se puede

Mira, mi trabajo de fin de carrera de informática consistió en un pequeño paseo virtual interactivo de mi universidad. Puedes echarle un ojo al resultado (bastante precario visualmente, pero no dio tiempo para pulir el grafismo) en No me toques los webs que me la pones dura
Te lo descargas y le echas un vistazo a los scripts a los que se llaman y qué objetos los llama. Creo que en alguno de ellos hacía lo de modificar propiedades de un objeto (probablemente un empty o el suelo de la escena).

Un saludo.
__________________
Yo
//
Portafolio | blog
Mars Attacks is offline   Responder Con Cita
Antiguo 14 jun 2008   #7
Klópes
12 meses, 12 pagas
 
Avatar de Klópes
 
Fecha de Ingreso: julio-2005
Ubicación: Bajo el sol monegrino
Mensajes: 4,918
Predeterminado Re: Problema con script GE Blender

Bardo, el sensor Property es uno de los pocos que necesita un script para ser usado al 100%. Puedes gestionar una propiedad con get/setProperty(), get/setType() y get/setValue().

Código:
import GameLogic as G

c=G.getCurrentController()
s=c.getSensor('nombre_de_propiedad')
propiedad=s.getProperty()
contenido=s.getValue()
Tienes la documentación oficial (para la 2.34) aquí, aunque hay páginas más completas.
__________________
Y sus discípulos le preguntaron, diciendo: ¿Qué significa esta parábola? Y él dijo: A vosotros os es dado conocer los misterios del reino de Dios; pero a los otros por parábolas, para que viendo no vean, y oyendo no entiendan.

Mateo 8, 9-10
Klópes is offline   Responder Con Cita
Antiguo 25 jun 2008   #8
Bardo_Slaine
Miembro
 
Avatar de Bardo_Slaine
 
Fecha de Ingreso: junio-2006
Mensajes: 49
Blender Re: Problema con script GE Blender

... deje el post abandonado y no me di cuenta de las respuestas^^, gracias por la información!.

Supongo que no puedes llamar directamente a la propiedad, ¿no?. Lo que se hace es llamarla a través de un "Property Sensor", ¿no?, si me equivoco, por favor corrijanme...

SALUDOS!
__________________
Que es la vida, un frenesí, que es la vida una ilusión,
un sueño, una ficción. Que el mayor Bien es pequeño...
Toda la realidad es sueño y los sueños, sueños son

Última edición por Bardo_Slaine fecha: 26 jun 2008 a las 03:05.
Bardo_Slaine is offline   Responder Con Cita
Antiguo 26 jun 2008   #9
Klópes
12 meses, 12 pagas
 
Avatar de Klópes
 
Fecha de Ingreso: julio-2005
Ubicación: Bajo el sol monegrino
Mensajes: 4,918
Predeterminado Re: Problema con script GE Blender

Como dice Mars, cuando añades una propiedad a un objeto, esta se convierte internamente en un método de Python: puedes llamarlo con:

p = objeto.nombre_de_propiedad
__________________
Y sus discípulos le preguntaron, diciendo: ¿Qué significa esta parábola? Y él dijo: A vosotros os es dado conocer los misterios del reino de Dios; pero a los otros por parábolas, para que viendo no vean, y oyendo no entiendan.

Mateo 8, 9-10
Klópes is offline   Responder Con Cita
Antiguo 26 jun 2008   #10
Bardo_Slaine
Miembro
 
Avatar de Bardo_Slaine
 
Fecha de Ingreso: junio-2006
Mensajes: 49
Blender Re: Problema con script GE Blender

Código:
import GameLogic as G
c=G.getCurrentController()
s=c.getSensor('nombre_de_propiedad')
propiedad=s.getProperty()
contenido=s.getValue()
Con este script lo que haces es modificar al "property sensor", no a la propiedad en si, ¿no?
Es que esas funciones (en la base de datos), están en la seccion del Property sensor:

SALUDOS!
__________________
Que es la vida, un frenesí, que es la vida una ilusión,
un sueño, una ficción. Que el mayor Bien es pequeño...
Toda la realidad es sueño y los sueños, sueños son

Última edición por Bardo_Slaine fecha: 26 jun 2008 a las 12:32.
Bardo_Slaine is offline   Responder Con Cita
Antiguo 26 jun 2008   #11
Klópes
12 meses, 12 pagas
 
Avatar de Klópes
 
Fecha de Ingreso: julio-2005
Ubicación: Bajo el sol monegrino
Mensajes: 4,918
Predeterminado Re: Problema con script GE Blender

Cita:
Escritos por Bardo_Slaine Ver Mensaje
Código:
import GameLogic as G
c=G.getCurrentController()
s=c.getSensor('nombre_de_propiedad')
propiedad=s.getProperty()
contenido=s.getValue()
Con este script lo que haces es modificar al "property sensor", no a la propiedad en si, ¿no?
Hombre, con ese script no estoy modificando nada: sólo asigno a unas variables el contenido de otras que me ofrece el sensor. Si usara "set" sí estaría cambiando valores del sensor. Pero NO la propiedad, para eso se usa lo que he dicho en el anterior mensaje
__________________
Y sus discípulos le preguntaron, diciendo: ¿Qué significa esta parábola? Y él dijo: A vosotros os es dado conocer los misterios del reino de Dios; pero a los otros por parábolas, para que viendo no vean, y oyendo no entiendan.

Mateo 8, 9-10
Klópes is offline   Responder Con Cita
Antiguo 26 jun 2008   #12
Bardo_Slaine
Miembro
 
Avatar de Bardo_Slaine
 
Fecha de Ingreso: junio-2006
Mensajes: 49
Predeterminado Re: Problema con script GE Blender

OK OK, es que al principio crei que modificab la propiedad, pero cuando estuve mirando en la referencia ya me di cuenta^^
Gracias!
__________________
Que es la vida, un frenesí, que es la vida una ilusión,
un sueño, una ficción. Que el mayor Bien es pequeño...
Toda la realidad es sueño y los sueños, sueños son
Bardo_Slaine is offline   Responder Con Cita
Respuesta


Usuarios activos actualmente viendo este tema: 1 (0 miembros y 1 visitantes)
 
Herramientas

Normas de Publicación
Usted no puede publicar nuevos mensajes.
Usted no puede responder mensajes
Usted no puede publicar archivos adjuntos
Usted no puede editar sus mensajes

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are deshabilitado
Pingbacks are deshabilitado
Refbacks are deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema con BevOb en blender DraDo Modelado 3 15 may 2008 08:58
Manual de Blender - PARTE X - CUERPOS BLANDOS Y FLUIDOS 3dpoder Blender 0 12 mar 2008 09:14
Blender script: Exportador de cámara a After Effects y Shake SHAZAM Script 0 11 ene 2008 03:12
Problema con Kerkythea Blender exporter vleda Render, Iluminación y Cámaras 2 18 mar 2007 06:22
Nuevo Script para... mejor que lo probeis! (Blender) Caronte Plugins 11 21 ago 2005 16:27

google adsense



La franja horaria es GMT. Ahora son las 18:12.


Powered by: vBulletin, para 3DPoder.com Versión 3.7.0 Beta 4
Derechos de Autor ©2000 - 2008, Jelsoft Enterprises Ltd.
3DPoder.com Foro3d.com © Al servicio de la infografia y el 3D desde 1997.
Personal Loan | Dirty Dozen Brass Band | Bad Credit Mortgages | Mortgage Calculator | Vegas Hotel
Content Relevant URLs by vBSEO 3.2.0