<?xml version="1.0" encoding="ISO-8859-15"?><rss version="2.0"><channel><title>..:: Threshold ::: Un sitio oblicuo ::.. feed rss</title><link>http://www.whoarethispeople.com</link><description>Threshold news ::: actualizaciones y últimos posts del blog. Códigos, tutoriales, imágenes, animaciones, experimentos.</description><language>es</language><managingEditor>david@whoarethispeople.com (David Villa)</managingEditor><webMaster>david@whoarethispeople.com (David Villa)</webMaster><copyright>Copyright 2010, David Villa</copyright><pubDate>Sun, 01 Aug 2010 19:52:20 +0200</pubDate><lastBuildDate>Sun, 01 Aug 2010 19:52:20 +0200</lastBuildDate><docs>http://blogs.law.harvard.edu/tech/rss</docs><ttl>1440</ttl><image><url>http://www.whoarethispeople.com/feed/thr-rss2.png</url><title>..:: Threshold ::: Un sitio oblicuo ::.. feed rss</title><link>http://www.whoarethispeople.com</link></image><item><title>FumeFx, burn the world</title><link>http://www.whoarethispeople.com/blog/index.php?post=FumeFxcommasign-burn-the-world</link><description><![CDATA[
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;M&aacute;s experimentos, para empezar el mes de agosto.<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>3dsmax</strong>, <strong>FumeFx</strong> y <strong>reactor</strong> para efectos, y <strong>AfterFx</strong> para la edici&oacute;n del video.<br />
<br />
<br /><br />
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="500" height="400" id="FlashID" title="the World Burns"> 
  <param name="movie" value="../experimentos/ThrGenPlayer/genPlayer/ThrGenPlayerV1.swf?movie=../experimentos/ThrGenPlayer/swfs/FumeFx01.swf" /> 
  <param name="quality" value="high" /> 
  <param name="allowFullScreen" value="true"> 
  <param name="wmode" value="transparent" /> 
  <param name="swfversion" value="10.0.0.0" /> 
  <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. --> 
  <!--[if !IE]>--> 
  <object type="application/x-shockwave-flash" data="../experimentos/ThrGenPlayer/genPlayer/ThrGenPlayerV1.swf?movie=../experimentos/ThrGenPlayer/swfs/FumeFx01.swf" width="500" height="400" allowFullScreen="true"> 
    <!--<![endif]--> 
    <param name="quality" value="high" /> 
    <param name="wmode" value="transparent" /> 
    <param name="swfversion" value="10.0.0.0" /> 
    <param name="allowFullScreen" value="true"> 
    <!--[if !IE]>--> 
  </object> 
  <!--<![endif]--> 
</object> 
]]></description><category>3d</category><comments>http://www.whoarethispeople.com/blog/index.php?post=FumeFxcommasign-burn-the-world</comments><pubDate>2010-08-01 19:52:20</pubDate></item><item><title>Melting</title><link>http://www.whoarethispeople.com/blog/index.php?post=Melting</link><description><![CDATA[
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Otro experimento cutre-r&aacute;pido para rellenar, que se acaba junio y no cumplo el cupo de posts que ten&iacute;a planeado, que era de uno nuevo cada dos d&iacute;as... ejem.
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;En esta ocasi&oacute;n, la cl&aacute;sica herramienta <strong>melting</strong> de 3ds max aplicada a dos personajes de ese <a href="../comic/" target="_blank">comic</a> que alg&uacute;n d&iacute;a continuar&eacute;, aunque a estas alturas ya me pregunto para qu&eacute;.<br /><br />
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="500" height="400" id="FlashID" title="Melting Characters"> 
  <param name="movie" value="../experimentos/ThrGenPlayer/genPlayer/ThrGenPlayerV1.swf?movie=../experimentos/ThrGenPlayer/swfs/Melting.swf" /> 
  <param name="quality" value="high" /> 
  <param name="allowFullScreen" value="true"> 
  <param name="wmode" value="transparent" /> 
  <param name="swfversion" value="10.0.0.0" /> 
  <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. --> 
  <!--[if !IE]>--> 
  <object type="application/x-shockwave-flash" data="../experimentos/ThrGenPlayer/genPlayer/ThrGenPlayerV1.swf?movie=../experimentos/ThrGenPlayer/swfs/Melting.swf" width="500" height="400" allowFullScreen="true"> 
    <!--<![endif]--> 
    <param name="quality" value="high" /> 
    <param name="wmode" value="transparent" /> 
    <param name="swfversion" value="10.0.0.0" /> 
    <param name="allowFullScreen" value="true"> 
    <!--[if !IE]>--> 
  </object> 
  <!--<![endif]--> 
</object> 
]]></description><category>grafico</category><comments>http://www.whoarethispeople.com/blog/index.php?post=Melting</comments><pubDate>2010-06-27 21:35:36</pubDate></item><item><title>Generador de partículas en AS3</title><link>http://www.whoarethispeople.com/blog/index.php?post=Generador-de-particulas-en-AS3</link><description><![CDATA[
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Versi&oacute;n 1 de un generador de part&iacute;culas con Flash. Iba a hacer un tutorial y subir las fuentes, pero todav&iacute;a hay que afinar unas cuantas cosas. Notar&eacute;is que con determinados par&aacute;metros el procesador no puede con todas las part&iacute;culas, y eso prob&aacute;ndolo con un Intel Quad. Se recomienda mantener bajos los niveles de blur y escala, y altos los de desvanecimiento, que si no los c&aacute;lculos por segundo se disparan. Si prob&aacute;is la funci&oacute;n que pone valores aleatorios con el dado puede pasar cualquier cosa.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ya, un poco cutre,  pero es un experimento y adem&aacute;s es la primera versi&oacute;n. Cuando lo optimice un poco ya subir&eacute; un tutorial y las fuentes.<br />
<br />
<a href="../experimentos/expfiles/Particles.html" target="_blank"><img src="http://www.whoarethispeople.com/blog/blogimages/generador_particulas.jpg" width="450" height="338" alt="Generador de part&iacute;culas" onmousemove="showAltImg(event,this)" onmouseout="hidePanel('altImg')"/></a> <br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;&iquest;Y esto realmente para qu&eacute; sirve?&quot;, se preguntar&aacute; el intr&eacute;pido y curioso lector. Pues para nada, &iquest;no he dicho ya que es un experimento?
]]></description><category>grafico</category><comments>http://www.whoarethispeople.com/blog/index.php?post=Generador-de-particulas-en-AS3</comments><pubDate>2010-06-20 21:24:47</pubDate></item><item><title>Tutorial Papervision3D (y IV)</title><link>http://www.whoarethispeople.com/blog/index.php?post=Tutorial-Papervision3D-(y-IV)</link><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Como promet&iacute; cuando los dinosaurios dominaban la Tierra, acabamos la <a href="http://www.whoarethispeople.com/blog/index.php?post=Tutorial-Papervision3D-(I)" target="_blank">primera</a> <a href="http://www.whoarethispeople.com/blog/index.php?post=Tutorial-Papervision3D-(II)" target="_blank">serie</a> <a href="http://www.whoarethispeople.com/blog/index.php?post=Tutorial-Papervision3D-(III)" target="_blank">de tutoriales</a> de PaperVision3D con esta entrega. Quedaba pendiente ponerle un mapa de sombreado y otro de relieve, que es lo que vamos a hacer a continuaci&oacute;n. Cambiamos la imagen de fondo, para variar un poco y tambi&eacute;n porque no la encuentro.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Bueno, vamos all&aacute;.<br />
&nbsp;&nbsp;&nbsp;&nbsp; Est&aacute;bamos usando <strong>Flash Builder 4</strong> como herramienta de desarrollo, y nuestra &uacute;nica clase es
<strong>TutoPV3D01</strong>.<br />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/pv3d_4_01.jpg" width="248" height="246" alt="Nuestro proyecto en Flash Builder 4" onmousemove="showAltImg(event,this)" onmouseout="hidePanel('altImg')"/>
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ten&iacute;amos linkada a nuestro proyecto como un componente de clases precompiladas (SWC) nuestra librer&iacute;a de <a href="http://code.google.com/p/papervision3d/downloads/list" target="_blank">PaperVision3D</a>. Como ya se coment&oacute;, tambi&eacute;n podemos linkarlo como un proyecto aparte, entre otras opciones. Lo importante es que el compilador pueda encontrar las librer&iacute;as de PaperVision3D cuando compilemos nuestra aplicaci&oacute;n.<br />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/pv3d_4_02.jpg" width="350" height="129" alt="Nuestra librer&iacute;a PaperVision3D como SWC" onmousemove="showAltImg(event,this)" onmouseout="hidePanel('altImg')"/>
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Esta vez no nos vamos a entretener mucho, mostramos el c&oacute;digo comentado, y a continuaci&oacute;n se explicar&aacute; con un poco m&aacute;s de detalle:<br />
<br />
<div style="width:450px;background-color:#FFF; border:3px double #CCC;padding:7px; font-size:10px; color:#36F;">package {<br />
<div style="padding:0 10px">
    import flash.display.Bitmap;<br />
    import flash.display.BitmapData;<br />
    import flash.display.Loader;<br />
    import flash.events.Event;<br />
    import flash.net.URLRequest;<br />
    <br />
    import org.papervision3d.lights.PointLight3D;<br />
    import org.papervision3d.materials.BitmapFileMaterial;<br />
    import org.papervision3d.materials.BitmapMaterial;<br />
    import org.papervision3d.materials.shaders.PhongShader;<br />
    import org.papervision3d.materials.shaders.ShadedMaterial;<br />
    import org.papervision3d.objects.primitives.Sphere;<br />
    import org.papervision3d.view.BasicView;<br />
    <br />
    [SWF(width=&quot;800&quot;, height=&quot;600&quot;, backgroundColor=&quot;#000000&quot;)]<br />
    <br />
    public class TutoPV3D01 extends BasicView {
    <div style="padding:0 10px">
    private var esfera:Sphere;<br />
    private var luz:PointLight3D;<br />
    <strong><br />
    /* en el constructor establecemos la velocidad de fotogramas por segundo,<br />
    y llamamos a la funci&oacute;n que inicializa variables */</strong><br />
    <br />
    public function TutoPV3D01 (){
    <div style="padding:0 10px">
        stage.frameRate=42;<br />
        init();<br />
        startRendering();
    </div>
    }<br />
    <br />
    <strong>/* inicializamos algunos par&aacute;metros y a&ntilde;adimos listeners<br />
    que se ejecuten cuando se carguen las dos im&aacute;genes que se usan */</strong><br />
    <br />
    private function init():void{
    <div style="padding:0 10px">
        luz=new PointLight3D();<br />
        luz.y = 350;<br />
        luz.x = 200;<br />
        luz.z = -600;<br />
        scene.addChild(luz);<br />
        var imgLoader:Loader=new Loader();<br />
        imgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadImgComplete);<br />
        imgLoader.load(new URLRequest(&quot;assets/snowwhite.jpg&quot;));<br />
        var fondoLoader:Loader=new Loader();<br />
        fondoLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadFondoComplete);<br />
        fondoLoader.load(new URLRequest(&quot;assets/sky.jpg&quot;));
    </div>
    }<br />
    <br />
    <strong>// cuando se cargue la imagen de fondo, la a&ntilde;adimos a la escena</strong><br />
    <br />
    private function loadFondoComplete(e:Event):void{
    <div style="padding:0 10px">
        var fondo:Bitmap=e.target.content as Bitmap;<br />
        fondo.width=stage.width;<br />
        fondo.height=stage.height;<br />
        addChildAt(fondo,0);
      </div>
    }<br />
    <br />
    <strong>/*<br />
    Cuando se haya cargado la imagen que se usa como material para la esfera,<br />
    a&ntilde;adimos ese material, as&iacute; como un shader y un mapa de relieve<br />
    */</strong><br />
    <br />
    private function loadImgComplete(e:Event):void{
    <div style="padding:0 10px">
        var bitmap:Bitmap=e.target.content as Bitmap;<br />
        var bumpmap:BitmapData=new BitmapData(bitmap.width,bitmap.height);<br />
        bumpmap.perlinNoise(22,15,15,50,false,false,7,true);<br />
        var bitmapMat:BitmapMaterial=new BitmapMaterial(bitmap.bitmapData);<br />
        var shader:PhongShader=new PhongShader(luz,0xFF0000, 0x666666,0,bumpmap);<br />
        var shadeMat:ShadedMaterial=new ShadedMaterial(bitmapMat,shader);<br />
        esfera=new Sphere(shadeMat,350,32,24);<br />
        scene.addChild(esfera);
    </div>
    }<br />
    <br />
    <strong>// rotamos la esfera en cada render</strong><br />
    <br />
    override protected function onRenderTick(event:Event=null):void{
    <div style="padding:0 10px">
        if(esfera!=null){<br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;esfera.rotationY++;<br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;esfera.rotationX++;<br />
        }<br />
        super.onRenderTick();
    </div>
    }</div>
    }<br />
</div>
}</div><br />
]]></description><category>tutoriales</category><comments>http://www.whoarethispeople.com/blog/index.php?post=Tutorial-Papervision3D-(y-IV)</comments><pubDate>2010-06-06 00:29:21</pubDate></item><item><title>Gijón</title><link>http://www.whoarethispeople.com/blog/index.php?post=Gijon</link><description><![CDATA[
 Mientras voy refinando otras secciones y ampliando algunas cosas en el blog, hoy toca otro post de los que podr&iacute;amos considerar de relleno, al menos para que haya alguna nueva entrada en mayo. Y lo mejor para rellenar es otro post de fotos y paisajes, hoy uno de Gij&oacute;n.<br />
 <br />
 <img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sh01-gijon.jpg" width="450" height="216" alt="El cerro de Santa Catalina" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sh02-san-lorenzo-gijon.jpg" width="450" height="300" alt="La playa de San Lorenzo desde Cimadevilla" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sh03-elogio-del-horizonte.jpg" width="450" height="300" alt="Elogio del Horizonte" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sh04-cerro-santa-catalina.jpg" width="450" height="300" alt="Desde el cerro de Santa Catalina" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sh05-iglesia-san-lorenzo.jpg" width="450" height="300" alt="Vista de la iglesia de San Lorenzo" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sh06-gijon.jpg" width="450" height="300" alt="Vista desde la iglesia." />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sh07-san-lorenzo.jpg" width="450" height="300" alt="El mar Cant&aacute;brico azul verdoso" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sh08-calas-gijon.jpg" width="450" height="300" alt="Calas en Gij&oacute;n" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sh09-camino-cervigon.jpg" width="450" height="332" alt="Un poco antes del Camino del Cervig&oacute;n" />
]]></description><category>paisajes</category><comments>http://www.whoarethispeople.com/blog/index.php?post=Gijon</comments><pubDate>2010-05-23 13:11:21</pubDate></item><item><title>Paisaje fractal 3D</title><link>http://www.whoarethispeople.com/blog/index.php?post=Paisaje-fractal-3D</link><description><![CDATA[
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="400" height="342" id="FlashID" title="Threshold ::: Reproductor gen&eacute;rico con precarga"> 
  <param name="movie" value="../experimentos/ThrGenPlayer/genPlayer/ThrGenPlayerV1.swf?movie=../experimentos/ThrGenPlayer/swfs/fractalLandscape.swf" /> 
  <param name="quality" value="high" /> 
  <param name="allowFullScreen" value="true"> 
  <param name="wmode" value="transparent" /> 
  <param name="swfversion" value="10.0.0.0" /> 
  <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. --> 
  <!--[if !IE]>--> 
  <object type="application/x-shockwave-flash" data="../experimentos/ThrGenPlayer/genPlayer/ThrGenPlayerV1.swf?movie=../experimentos/ThrGenPlayer/swfs/fractalLandscape.swf" width="400" height="342" allowFullScreen="true"> 
    <!--<![endif]--> 
    <param name="quality" value="high" /> 
    <param name="wmode" value="transparent" /> 
    <param name="swfversion" value="10.0.0.0" /> 
    <param name="allowFullScreen" value="true"> 
    <!--[if !IE]>--> 
  </object> 
  <!--<![endif]--> 
</object> 
]]></description><category>3d</category><comments>http://www.whoarethispeople.com/blog/index.php?post=Paisaje-fractal-3D</comments><pubDate>2010-04-23 02:03:43</pubDate></item><item><title>Spring</title><link>http://www.whoarethispeople.com/blog/index.php?post=Spring</link><description><![CDATA[<a href="../gallery/actual/spring.jpg" target="_blank"><img src="http://www.whoarethispeople.com/blog/blogimages/spring.jpg" width="450" height="338" alt="T&iacute;tulo alternativo: T&iacute;a bizca con pelos feos y globos de colores" /></a>
]]></description><category>grafico</category><comments>http://www.whoarethispeople.com/blog/index.php?post=Spring</comments><pubDate>2010-04-17 05:15:24</pubDate></item><item><title>El conjunto de Mandelbrot en 3D</title><link>http://www.whoarethispeople.com/blog/index.php?post=El-conjunto-de-Mandelbrot-en-3D</link><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Poco que comentar, unas im&aacute;genes que surgieron jugando con un generador de fractales, concretamente con <a href="http://www.chaospro.de/" target="_blank">Chaos Pro</a>. La mayor parte se basan en el <a href="http://es.wikipedia.org/wiki/Conjunto_de_Mandelbrot" target="_blank">conjunto de Mandelbrot</a>.
<br />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/mandelbrot-01.jpg" width="450" height="333" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/mandelbrot-02.jpg" width="450" height="409" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/mandelbrot-03.jpg" width="417" height="387" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/mandelbrot-04.jpg" width="450" height="338" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/mandelbrot-05.jpg" width="450" height="342" />
<br />
]]></description><category>grafico</category><comments>http://www.whoarethispeople.com/blog/index.php?post=El-conjunto-de-Mandelbrot-en-3D</comments><pubDate>2010-04-11 23:36:26</pubDate></item><item><title>Senda Verde de Oviedo</title><link>http://www.whoarethispeople.com/blog/index.php?post=Senda-Verde-de-Oviedo</link><description><![CDATA[<iframe width="300" height="300" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=es&amp;geocode=&amp;q=oviedo,+espa%C3%B1a&amp;sll=37.0625,-95.677068&amp;sspn=49.444078,79.013672&amp;ie=UTF8&amp;hq=&amp;hnear=Oviedo,+Asturias,+Principado+de+Asturias,+Espa%C3%B1a&amp;t=h&amp;ll=43.32318,-5.90189&amp;spn=0.037465,0.051498&amp;z=13&amp;output=embed"></iframe><br /><small><a href="http://maps.google.com/maps?f=q&amp;source=embed&amp;hl=es&amp;geocode=&amp;q=oviedo,+espa%C3%B1a&amp;sll=37.0625,-95.677068&amp;sspn=49.444078,79.013672&amp;ie=UTF8&amp;hq=&amp;hnear=Oviedo,+Asturias,+Principado+de+Asturias,+Espa%C3%B1a&amp;t=h&amp;ll=43.32318,-5.90189&amp;spn=0.037465,0.051498&amp;z=13" style="text-align:left">Ver mapa más grande</a></small><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Hoy toca la <strong>Senda Verde de Oviedo</strong>, s&oacute;lo un peque&ntilde;o tramo, que se me hac&iacute;a de noche: desde <strong>El Caleyo </strong>hasta un poco antes de <strong>Fuso de la Reina</strong>. <br />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sg01-el-caleyo.jpg" width="450" height="300" alt="La Senda Verde a su paso por El Caleyo" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sg02-un-caballo-al-sol.jpg" width="450" height="234" alt="Un caballo atardeciendo al sol" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sg03-senda-el-fuso.jpg" width="350" height="525" alt="Vistas desde la senda" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sg04-atardecer-senda-el-fuso.jpg" width="450" height="300" alt="Atardeciendo" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sg05-el-fuso-atardeciendo.jpg" width="450" height="300" alt="Uno de los varios t&uacute;neles por los que pasa la senda" />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/sg06-tuneles-senda-el-fuso.jpg" width="450" height="300" alt="M&aacute;s t&uacute;neles en la senda" />
]]></description><category>paisajes</category><comments>http://www.whoarethispeople.com/blog/index.php?post=Senda-Verde-de-Oviedo</comments><pubDate>2010-03-22 20:55:37</pubDate></item><item><title>Carretera a La Nisal</title><link>http://www.whoarethispeople.com/blog/index.php?post=Carretera-a-La-Nisal</link><description><![CDATA[<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/se01-lada-la-felguera.jpg" width="450" height="280" alt="Lada y La Felguera desde la carretera a La Nisal" />
<br />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/sendas/se02-carretera-la-nisal.jpg" width="450" height="277" alt="Carretera a La Nisal" />
]]></description><category>paisajes</category><comments>http://www.whoarethispeople.com/blog/index.php?post=Carretera-a-La-Nisal</comments><pubDate>2010-03-15 17:34:05</pubDate></item><item><title>El enésimo lavado de cara</title><link>http://www.whoarethispeople.com/blog/index.php?post=El-enesimo-lavado-de-cara</link><description><![CDATA[
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pues eso, otro lavado m&aacute;s de cara al blog, esta vez uno que durar&aacute; bastante tiempo porque no tengo ganas de volver a rehacer esto en los pr&oacute;ximos meses... o a&ntilde;os.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Aunque esto no le intereser&aacute; a nadie, hay que escribir algo m&aacute;s en este post, as&iacute; que aprovecho y cuento algunos de los cambios, al margen de la parte gr&aacute;fica, que es evidente.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Aunque en versiones anteriores hab&iacute;a una cierta separaci&oacute;n de capas, todav&iacute;a quedaba alguna parte de la l&oacute;gica de negocio demasiado acoplada a la presentaci&oacute;n, as&iacute; que se ha reescrito todo completamente y ahora es 100% <a href="http://es.wikipedia.org/wiki/Modelo_Vista_Controlador" target="_blank">MVC</a>, con un <a href="http://en.wikipedia.org/wiki/Front_Controller_pattern" target="_blank">front controller</a> que gestiona todas las peticiones, via links, formularios o ajax, y delega en controladores espec&iacute;ficos. Por desgracia, esta web est&aacute; alojada en un hosting compartido que no me permite modificar <a href="http://httpd.apache.org/docs/1.3/howto/htaccess.html" target="_blank">.htaccess</a>, as&iacute; que se han tenido que implementar algunas, eh... <em>soluciones transversales </em>en el front controller para algunas cuestiones relativas a las uris, como los permalinks user friendly. Por la misma raz&oacute;n, tampoco he podido usar ning&uacute;n framework mvc para php, y adem&aacute;s la mayor&iacute;a requieren versiones m&aacute;s actuales de PHP que la que tiene mi servicio de hosting, as&iacute; que ha habido que escribirlo todo <em>a mano</em>. Ya har&eacute; alg&uacute;n tutorial alg&uacute;n d&iacute;a sobre esto, que eso siempre trae visitas.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp; La capa de datos ahora se apoya en <a href="http://php.net/manual/en/book.pdo.php" target="_blank">PDO</a>, y dentro del modelo hay varias capas de abstracci&oacute;n, con lo cual adem&aacute;s de desacoplarla completamente de las vistas, resuelvo algunos agujeros de seguridad relativos a inyecciones sql. No es que nadie se fuera a molestar en hackear esta web, pero ahora, adem&aacute;s de no tomarse la molestia, lo tendr&iacute;an m&aacute;s dif&iacute;cil.
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;En cuanto a las vistas, aparte de un minimotor de plantillas, en la parte cliente todo el javascript se ha migrado a <a href="http://jquery.com/" target="_blank">JQuery</a>. Bueno, casi todo, que a&uacute;n queda alguna funci&oacute;n que se mantiene, pero ya se ir&aacute; cambiando. Para los comentarios, se ha creado un peque&ntilde;o <a href="http://en.wikipedia.org/wiki/Online_rich-text_editor" target="_blank">RTE</a> que me dar&aacute; m&aacute;s de un dolor de cabeza, pero ya se ir&aacute;n resolviendo los posibles problemas que surjan.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;En cuanto a compatibilidad, se ha probado en distintas versiones de distintos navegadores (IExplorer, Chrome, Firefox, Opera, Safari) bajo Windows y Linux, y como era de esperar, en Internet Explorer 8 hay alguna peque&ntilde;a diferencia menor, alguna m&aacute;s en IE 7, y <strong>no funciona pr&aacute;cticamente nada en IE6</strong>, as&iacute; que esta web seguir&aacute; siendo<strong> incompatible con IE6</strong> y si se intenta ver con <em>esa cosa</em> redireccionar&aacute; a una p&aacute;gina que le invita a cambiar de navegador.
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Quedan unas cuantas cosillas por a&ntilde;adir, y sobre todo unas cuantas cosas que depurar por debajo (t&eacute;cnicas SEO, etc.), pero eso ya se ir&aacute; haciendo poco a poco y sin mucha prisa.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Como de costumbre, cualquier cr&iacute;tica o sugerencia ser&aacute; bienvenida.
]]></description><category>meta</category><comments>http://www.whoarethispeople.com/blog/index.php?post=El-enesimo-lavado-de-cara</comments><pubDate>2010-03-14 20:50:57</pubDate></item><item><title>Fuego y humo en 3dsMax, con minitutorial</title><link>http://www.whoarethispeople.com/blog/index.php?post=Fuego-y-humo-en-3dsMaxcommasign-con-minitutorial</link><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Hoy toca otra animaci&oacute;n con 3dsMax, esta vez fuego y humo generados con sistemas de part&iacute;culas, sin usar plugins externos.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tras la animaci&oacute;n, una explicaci&oacute;n breve y r&aacute;pida sobre c&oacute;mo crear este efecto, que ya hay muchos tutoriales de este estilo en internet, y mucho m&aacute;s completos.<br />
<br />
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="450" height="366" id="FlashID" title="Threshold ::: Reproductor gen&eacute;rico con precarga">
  <param name="movie" value="../experimentos/ThrGenPlayer/genPlayer/ThrGenPlayerV1.swf?movie=../experimentos/ThrGenPlayer/swfs/FireAndSmoke.swf" />
  <param name="quality" value="high" />
  <param name="allowFullScreen" value="true">
  <param name="wmode" value="transparent" />
  <param name="swfversion" value="10.0.0.0" />
  <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. -->
  <!--[if !IE]>-->
  <object type="application/x-shockwave-flash" data="../experimentos/ThrGenPlayer/genPlayer/ThrGenPlayerV1.swf?movie=../experimentos/ThrGenPlayer/swfs/FireAndSmoke.swf" width="450" height="366" allowFullScreen="true">
    <!--<![endif]-->
    <param name="quality" value="high" />
    <param name="wmode" value="transparent" />
    <param name="swfversion" value="10.0.0.0" />
    <param name="allowFullScreen" value="true">
    <!--[if !IE]>-->
  </object>
  <!--<![endif]-->
</object>
]]></description><category>tutoriales</category><comments>http://www.whoarethispeople.com/blog/index.php?post=Fuego-y-humo-en-3dsMaxcommasign-con-minitutorial</comments><pubDate>2010-02-15 00:00:00</pubDate></item><item><title>The book of Eli: burda propaganda religiosa</title><link>http://www.whoarethispeople.com/blog/index.php?post=The-book-of-Elicolonsign-burda-propaganda-religiosa</link><description><![CDATA[<img src="http://www.whoarethispeople.com/blog/blogimages/boe01.jpg" width="450" height="191" alt="Eli, difundiendo la palabra de Dios con sus balas." /><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;La sutilidad no es el punto fuerte de esta pel&iacute;cula. El mensaje ultrarreligioso es tan infantiloide, burdo y simplista que la cinta cae en el rid&iacute;culo m&aacute;s absoluto en la mayor parte del metraje.<br />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/boe02.jpg" width="450" height="191" alt="La Biblia: un libro por el que morir y matar, al parecer." /> <br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Atenci&oacute;n al argumento, que no tiene desperdicio. 
<strong>Denzel Washington </strong>encarna a <strong>Eli</strong>, un esquizofr&eacute;nico violento y homicida, que oye voces y... no, perd&oacute;n, quer&iacute;a decir un hombre en un futuro postapocal&iacute;ptico estilo Mad Max, al que Dios le habl&oacute; y le encomend&oacute; la misi&oacute;n de llevar la &uacute;nica biblia que queda en el mundo a un lugar seguro:<br />
<br />
<em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Es dif&iacute;cil de explicar. Parec&iacute;a venir de dentro de m&iacute;. Pero pod&iacute;a escucharla tan claro como a t&iacute;. Me gui&oacute; al lugar donde encontr&eacute; el libro, enterrado bajo los escombros. Y la voz me dijo que llevara el libro al oeste. Me dijo que encontrar&iacute;a el camino. Me dijo que ser&iacute;a protegido, y que nada ni nadie me detendr&iacute;a.&quot;</em><br />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/boe03.jpg" width="450" height="191" alt="Mila Kunis, lo m&aacute;s atractivo de la pel&iacute;cula." /> <br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Y a partir de tan veros&iacute;mil (?) explicaci&oacute;n, los infames <strong>hermanos Hugues</strong> dirigen una de tantas pel&iacute;culas ambientadas en un futuro postnuclear, en la que no faltan los t&oacute;picos habituales que los amantes de serie B agradecemos tanto, y que tanto deben al western, como el apoderado del pueblo y los escasos recursos que tiraniza a los dem&aacute;s, encarnado por <strong>Gary Oldman</strong> con su habitual histrionismo,
o los duelos en inferioridad num&eacute;rica del jinete solitario y de pocas palabras (Eli, el &quot;protegido por Dios&quot;), de los que saldr&aacute; victorioso con un m&iacute;nimo esfuerzo.<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tambi&eacute;n se sugiere de pasada, seg&uacute;n cuenta el protagonista en una escena, que la guerra nuclear (es un suponer, dice &quot;tras el flash en el cielo...&quot;) tuvo como motivo, precisamente, la Biblia, y que despu&eacute;s se encargaron de quemar todos sus ejemplares, f&iacute;jate estos ateos que malos son. En fin, la propaganda fan&aacute;tico-religiosa no puede ser m&aacute;s burda.<br />
<br />
&nbsp;&nbsp;&nbsp; Por cierto, uno de los esbirros (por llamarlo de alguna manera) del personaje que interpreta Oldman, por cierto, tararea de vez en cuando la melod&iacute;a de Morricone para la espl&eacute;ndida Once Upon a Time in America, lo que no me queda claro es si pretende ser un gui&ntilde;o a Sergio Leone u otro capricho de los directores.<br />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/boe04.jpg" width="450" height="191" alt="Eli preparándose para predicar el amor y la concordia cristiana." /> <br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tambi&eacute;n merece la pena mencionar al personaje que interpreta <strong>Mila Kunis</strong>, nacida y crecida en un mundo desolado, en el que el agua es considerada un lujo por el que matar, y no digamos ya el champ&uacute; o el jab&oacute;n, sin haber podido aprender nunca a leer, se dir&iacute;a que por l&oacute;gica tendr&iacute;a que tener un aspecto embrutecido y semisalvaje, pero aparece toda la pel&iacute;cula con un look glamouroso propio de una ni&ntilde;a adinerada de Beberly Hills. No me quejo de esto. Por est&eacute;tica, son incoherencias que estoy dispuesto a asumir.<br />
<br />
<img src="http://www.whoarethispeople.com/blog/blogimages/boe06.jpg" width="450" height="191" alt="Mila Kunis de nuevo, casi lo mejor de la pel&iacute;cula." />]]></description><category>cine</category><comments>http://www.whoarethispeople.com/blog/index.php?post=The-book-of-Elicolonsign-burda-propaganda-religiosa</comments><pubDate>2010-02-12 00:00:00</pubDate></item><item><title>Ejemplo con Glaze: motor de física para as3</title><link>http://www.whoarethispeople.com/blog/index.php?post=Ejemplo-con-Glazecolonsign-motor-de-fisica-para-as3</link><description><![CDATA[
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Hoy toca un ejemplo con <a href="http://code.google.com/p/glaze/" target="_blank">Glaze</a>, otro de los varios motores 2D de f&iacute;sica de cuerpos r&iacute;gidos que existen para actionscript. Como es habitual en estas librer&iacute;as, apenas existe documentaci&oacute;n as&iacute; que no hay m&aacute;s remedio que ir un poco a ciegas e intentar entender algo del c&oacute;digo de los ejemplos de la demo que trae, estos con bastantes comentarios, eso s&iacute;.<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Por alg&uacute;n motivo, en el ejemplo que hice las bolas desaparecen cuando colisionan entre ellas, pero bueno, como primer acercamiento ya vale. Si m&aacute;s adelante hago algo m&aacute;s vistoso, ya subir&eacute; las fuentes.<br />
<br />
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="450" height="600" id="FlashID" title="Ejemplo con Glaze">
  <param name="movie" value="../experimentos/expfiles/EjemploGlaze.swf" />
  <param name="quality" value="high" />
  <param name="wmode" value="transparent" />
  <param name="swfversion" value="10" />
  <!--[if !IE]>-->
  <object type="application/x-shockwave-flash" data="../experimentos/expfiles/EjemploGlaze.swf" width="450" height="600">
    <!--<![endif]-->
    <param name="quality" value="high" />
    <param name="wmode" value="transparent" />
    <param name="swfversion" value="10" />
  </object>
  <!--<![endif]-->
</object>
]]></description><category>curiosidades</category><comments>http://www.whoarethispeople.com/blog/index.php?post=Ejemplo-con-Glazecolonsign-motor-de-fisica-para-as3</comments><pubDate>2010-01-26 00:00:00</pubDate></item><item><title>Rain fall</title><link>http://www.whoarethispeople.com/blog/index.php?post=Rain-fall</link><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; Seguimos haciendo chorradas en <strong>3dsmax</strong>, ahora un video con lluvia usando el <strong>sistema de part&iacute;culas spray</strong>.<br />
<br />
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="450" height="375" id="FlashID" title="Threshold ::: Reproductor gen&eacute;rico con precarga">
  <param name="movie" value="../experimentos/ThrGenPlayer/genPlayer/ThrGenPlayerV1.swf?movie=../experimentos/ThrGenPlayer/swfs/RainFall.swf" />
  <param name="quality" value="high" />
  <param name="allowFullScreen" value="true">
  <param name="wmode" value="transparent" />
  <param name="swfversion" value="10.0.0.0" />
  <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. -->
  <!--[if !IE]>-->
  <object type="application/x-shockwave-flash" data="../experimentos/ThrGenPlayer/genPlayer/ThrGenPlayerV1.swf?movie=../experimentos/ThrGenPlayer/swfs/RainFall.swf" width="450" height="375" allowFullScreen="true">
    <!--<![endif]-->
    <param name="quality" value="high" />
    <param name="wmode" value="transparent" />
    <param name="swfversion" value="10.0.0.0" />
    <param name="allowFullScreen" value="true">
    <!--[if !IE]>-->
  </object>
  <!--<![endif]-->
</object>
<hr/>
]]></description><category>3d</category><comments>http://www.whoarethispeople.com/blog/index.php?post=Rain-fall</comments><pubDate>2010-01-20 00:00:00</pubDate></item></channel></rss>