FOAM parte I: Hola Mundo

Etiquetas: Foam useMouseDragger solverIterations addGlobalForceGenerator RigidBody addElement INFINITE_MASS createRectangle

FOAM parte I: Hola Mundo

FOAM es un motor de físicas escrito es Actionscript 3.0. Ha sido liberado este mes (Noviembre de 2007) por Drew F. Cummins bajo licencia MIT. Se puede bajar de aquí:

  • http://blog.generalrelativity.org/

    Además ya está disponible la documentación aquí:

  • http://lab.generalrelativity.org/foam/docs/

    En las primeras pruebas que he hecho, he podido ver que es igual de fácil que aprender que el APE, y algunas diferencias que postearé cuando tenga un mayor control de ambos. De momento, este es mi primer ejemplo, hecho a partir de uno colgado en la página del autor.
  • APE parte II: WheelParticle y SpringConstraint

    Etiquetas: APEngine addForce addGroup collideInternal RectangleParticle CircleParticle WheelParticle SpringConstraint addParticle addConstraint angularVelocity

    APE parte II: WheelParticle y SpringConstraint

    Además de crear cuadrados y círculos (ver APE parte I), APE permite trabajar otros dos tipos de variables: WheelParticle (para crear "ruedas" con las que podemos interactuar) y SpringConstraint (para especificar las "limitaciones" que queramos en el modelo). Este es el ejemplo:

    APE (Actionscript Physics Engine). Prueba I.

    Etiquetas: RectangleParticle addParticle CircleParticle step paint APEngine

    APE (Actionscript Physics Engine). Prueba I.

    APE es un motor de físicas para flash (AS3). Esta escrito y mantenido por Alec Cove, y se puede descargar de aquí. La utilización de la librería de puede resumir en estos pasos (doy por hecho que se han descargado las clases y se ha indicado a Flash donde están):
  • Se crea una escena APE
  • Se crea una variable de tipo grupo y se asocia a la escena.
  • Se crean partículas y constrains, y se meten en ese grupo. Esta es mi primera película creada con APE:
  • Controlar teclas pulsadas en AS2

    Etiquetas: Object onKeyDown onKeyUp Key.getCode addListener

    El siguiente código controla los eventos de teclado "pulsar" (onKeyDown) y "soltar" (onKeyUp), devolviendo el código de la tecla con la que se ha interactuado.

    Actionscript 3.0: Simular el movimiento de una cuerda

    Etiquetas: addEventListener graphics clear moveTo lineStyle curveTo Math.sin Math.sqrt

    Actionscript 3.0: Simular el movimiento de una cuerda

    Cuando empecé a aprender Flash, lo que más me llamaba la atención eran los experimentos de páginas como uncontrol. Con el tiempo he ido viendo que algunos de esos experimentos no son tan complicados como me parecían, sino que son una mezcla de imaginación y matemáticas. Este es el código para simular el movimiento de una cuerda oscilando, utilizando la función curveTo y un poco de matemáticas.

    Tipos de materiales en Papervision 1.5

    Etiquetas: MovieScene3D Cube MaterialsList WireframeMaterial MovieMaterial MovieAssetMaterial BitmapAssetMaterial ColorMaterial BitmapFileMaterial renderCamera

    Tipos de materiales en Papervision 1.5

    Este ejemplo muestra como crear un cubo con 6 tipos diferentes de materiales en Papervision (AS3). He utilizado los más básicos, en la wiki de Papervision se puede encontrar un listado completo con los materiales disponibles.

    Recorrer XML en AS3

    Etiquetas: XML URLLoader URLRequest elements

    El siguiente código carga un XML y recorre sus nodos y atributos imprimiendolos en pantalla.

    El XML que he utilizado es el siguiente:

    1.  
    2. <Discos>
    3. 	<Disco puntuacion="10">
    4. 		<grupo id="20">The Knife</grupo>
    5. 		<titulo>Deep Cuts</titulo>
    6. 	</Disco>
    7. 	<Disco puntuacion="7">
    8. 		<grupo id="21">Jose Gonzalez</grupo>
    9. 		<titulo>Veneer</titulo>
    10. 	</Disco>
    11. </Discos>
    12.  

    Y el código AS:

    Cargar archivos de texto y XML con URLLoader

    Etiquetas: URLLoader URLRequest load

    El código de este ejemplo carga un XML e informa de los eventos de carga. Para cargar imágenes y SWF hay que utilizar Loader en lugar de URLLoader.

    Carga de imágenes y SWF en AS3 con Loader

    Etiquetas: Loader URLRequest contentLoaderInfo addEventListener load

    El código de este ejemplo sirve para cargar una imagen (jpg, gif o png) o swf controlando el proceso de carga. Para cargar otro tipo de archivos (por ejemplo XML o texto), hay que utilizar URLLoader.

    Papervision + Flickr

    Papervision + FlickrPapervision + Flickr

    Me ha costado sangre, sudor y lagrimas, pero he conseguido hacer interactivos los objetos de Papervision. La primera prueba la he hecho mezclando PPV con los XMLs generados el perfil de Lola de Flickr. El resultado es este: