Port de Quake 2 en HTML5
Los chicos de google han dado un gran golpe demostrando lo que hace algún tiempo se rumoreaba sobre el bajo rendimiento de HTML5 frente a Flash.
Han usado todo un arsenal de novedades de HTML como el canvas, la nueva etiqueta audio, webGL,localstorage, entre otros...
El resultado es increible.
Más información en su página oficial en google code
Organiza tus proyectos con Reforest AIR

Interesante, curiosa y útil aplicación basada en Adobe AIR.
Se trata de Reforest que no es más que un organizador de proyectos en flash que nos permite crear siempre una misma estructura de carpetas y archivos a partir de un archivo de plantilla en formato XML.
Un punto negativo es que puede ser un poco tedioso crear el xml personalizado... ¿Quizás un auto generador del xml para la siguiente versión?
Procesing: Flame
Flame es un interesante e inspirador proyecto de Peter Blaskovic desarrollado en procesing.
No os perdais la galería de los propios usuarios
Hobnox Audiotool
Os dejo una impresionante herramienta de composición musical basado en Flash.
Desde luego Flash player 10 nos deja hacer cosas que muchos ni imaginamos.
Hobnox Audiotool
Lista de correos sobre Papervision en español
Hace un par de días que se ha creado una nueva lista de correos donde se hablará de todo lo relacionado con papervision.
Una buena oportunidad de aprender sobre este motor 3D para flash
Empezando con AS3
Hace ya muchos meses que no publico nada por aquí por el trabajo aunque hoy he decidido hacerle un hueco al AS3 para, poco a poco, ir haciéndome a trabajar con flash y AS3 (ya con flex he dado algunos pasitos) y de paso actualizar el blog un poquito.
El primer ejemplo que he creado es un comprobador de fortaleza de contraseña para indagar un poco en la expresiones regulares, los contenedores de display objects (el maravilloso y querido addChild
), etc.
Bueno aquí tenéis el ejemplo y el código fuente:
PD. Juanma ahora te paso la pelota a ver si te animas a publicar algo por aquí.
Guia de cambios Flex 2.0.1
Interesante enlace con un pdf que nos cuenta los cambios que nos traerá la inminente actualización de flex.
A resaltar el soporte para aplicaciones modulares... adios a esos swf iniciales tan pesados
Crear un webservice con nuSoap y consumirlo con Flex
Leyendo un post en MIF sobre Webservices y .net me entro la curiosidad y me puse a experimentar con servicios web basados en PHP y nuSoap. La experiencia fue muy grata ya que en unos minutos tenía creado un servicio.
Lo primero que debemos hacer es bajarnos la última versión de nuSoap y copiarla en nuestro servidor. En mi caso cree una carpeta llamada webservices para alojar los servicios y dentro de esta otra llamada nuSoap donde incluí todas las clases que previamente había descargado.
Una vez que tenemos las clases en nuestro servidor es hora de crear el servicio web. Para ello creamos un fichero llamado HolaMundo.php e incluimos el siguiente código:
< ?php require_once('nusoap/nusoap.php'); $server = new soap_server; function HolaMundo ($nombre) { return "Hola ".$nombre; } $server = new soap_server; $ns="http://localhost:9999/ws/HolaMundo"; $server->configurewsdl('ApplicationServices',$ns); $server->wsdl->schematargetnamespace=$ns; $server->register('HolaMundo', array('nombre' => 'xsd:string'), array('return' => 'xsd:string'), $ns); if (isset($HTTP_RAW_POST_DATA)) { $input = $HTTP_RAW_POST_DATA; } else { $input = implode("\r\n", file('php://input')); } $server->service($input); exit; ?>
Como vemos lo que hacemos es crear una instancia de la clase soap_server , asignamos el namespace del webservice, configuramos el WSDL y registramos el método HolaMundo indicando los parámetros de entrada y salida así como el tipo de cada uno de estos.
Una vez hecho esto ejecutamos el servicio web desde nuestro navegador y si todo ha ido bien nos aparecerá una pantalla como esta:

Por el lado de Flex el ejemplosería algo así (bastante similar al excelente articulo de MIF
)
< ?xml version="1.0" encoding="utf-8"?> <mx :Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" width="400" height="150" backgroundGradientColors="[#ffffff, #ffffff]" > </mx><mx :Script> < ![CDATA[ import mx.controls.Alert; private function ok():void { Alert.show(ws.HolaMundo.lastResult); } ]]> </mx> <mx :WebService id="ws" result="ok()" showBusyCursor="true" wsdl="http://www.alexdw.com/webservices/HolaMundo.php?wsdl" /> <mx :HBox width="100%"> <mx :Label text="Tu nombre: "/> <mx :TextInput id="src" enter="ws.HolaMundo(src.text)" toolTip="Escribe aquí tu nombre"/> <mx :Button label="Salúdame!!" click="ws.HolaMundo(src.text)" /> </mx>
Aquí lo que hemos hecho es crear un campo de entrada, un botón y hemos instanciado nuestro webservice de modo que al pulsar sobre el botón (o al hacer enter en el campo de texto) invocamos el método HolaMundo de nuestro webService pasando como parámetro el texto del campo de introducción.
Como veis la creación y uso de los webservices en flex se hace de lo más sencillo