<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-34782466</id><updated>2011-11-28T01:49:11.552+01:00</updated><category term='Progreso'/><category term='General'/><category term='XNA'/><title type='text'>¡Creando un videojuego?</title><subtitle type='html'>Este es el diario de desarrollo que TODOS estábamos esperando. Al menos todos los que estamos en mi cabeza</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>13</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-34782466.post-7922815334227298781</id><published>2010-01-18T00:12:00.002+01:00</published><updated>2010-01-18T00:20:49.104+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XNA'/><category scheme='http://www.blogger.com/atom/ns#' term='Progreso'/><title type='text'>Implementando la colisión con el terreno</title><content type='html'>Otra versión&lt;br /&gt;&lt;br /&gt;Para poder aplicar el algoritmo de colisión de los objetos físicos con la lista de triángulos que componen el terreno, es necesario almacenar la lista de triángulos de cada nodo del componente de terreno. Actualmente el terreno está dividido en 1024 nodos de 512 triángulos cada uno. Los tests de colisión serán demasiado costosos aun usando el Quadtree para buscar el nodo concreto.&lt;br /&gt;&lt;br /&gt;He comenzado trasladando la lógica de creación del Quadtree del terreno a una librería de contenidos, para que todo sea almacenado previamente en el Content Pipeline. De esta forma más adelante se podrán crear archivos de terreno con los nodos creados manualmente.&lt;br /&gt;&lt;br /&gt;El siguiente paso es hacer un método de búsqueda dentro del Quadtree más eficiente del que ya hay, para encontrar rápidamente los triángulos involucrados en la colisión.&lt;br /&gt;&lt;br /&gt;La versión actual se puede descargar de &lt;a href="http://tanksgame.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=38943#DownloadId=101786"&gt;aquí &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-7922815334227298781?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/7922815334227298781/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=7922815334227298781&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/7922815334227298781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/7922815334227298781'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2010/01/implementando-la-colision-con-el.html' title='Implementando la colisión con el terreno'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-8515865883682276026</id><published>2010-01-13T13:24:00.003+01:00</published><updated>2010-01-13T13:27:39.102+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XNA'/><category scheme='http://www.blogger.com/atom/ns#' term='Progreso'/><title type='text'>Versión con físicas</title><content type='html'>Tiempos ha que no escribo aquí, pero he estado haciendo cosas.&lt;br /&gt;&lt;br /&gt;Tengo un sistema de detección / reacción de colisión entre vehículos y un piloto automático que te permite volar por el mapa entre objetivos.&lt;br /&gt;&lt;br /&gt;Se pueden descargar de &lt;a href="http://tanksgame.codeplex.com/SourceControl/changeset/view/36654#"&gt;Codeplex&lt;/a&gt;, espero que guste.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-8515865883682276026?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/8515865883682276026/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=8515865883682276026&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/8515865883682276026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/8515865883682276026'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2010/01/version-con-fisicas.html' title='Versión con físicas'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-5384504231638633271</id><published>2007-05-02T23:52:00.001+02:00</published><updated>2010-01-13T13:15:45.269+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XNA'/><category scheme='http://www.blogger.com/atom/ns#' term='Progreso'/><title type='text'>Problemas de rendimiento</title><content type='html'>Volvemos por aquí.&lt;br /&gt;&lt;br /&gt;Estos días he estado implementando colisión utilizando Oriented Bounding Boxes. Los resultados son muy buenos y la verdad es que la cosa ha sido bastante sencilla. Lo malo es que a la hora de probar el comportamiento con muchos vehículos (50) han salido unos indeseables problemas de rendimiento. Mala suerte.&lt;br /&gt;&lt;br /&gt;Los he localizado en la función que testea la intersección entre un vector y un triángulo. Esta función es llamada cuando se tiene que hayar el triángulo sobre el que se asienta el vehículo en el terreno para establecer la altura e inclinación del mismo. La intersección entre triángulo y vector sigue sin existir en el XNA Framework, aunque en la versión Refresh han añadido más métodos a algunas de las estructuras de representación de geometría. Así pues, estamos trabajando en ello.&lt;br /&gt;&lt;br /&gt;Además de la colisión ha habido una reorganización del código para facilitar el crecimiento del mismo, y he añadido un piloto automático. Este piloto lleva un vehículo hasta un punto especificado sobre el terreno. La cosa queda bastante realista también, pero paciencia, son sólo los primeros pasos para comenzar a meterse en un motor de físicas.&lt;br /&gt;&lt;br /&gt;En otro orden de cosas, acabo de ver el discurso de &lt;a href="http://video.google.es/videoplay?docid=3014637678488153340"&gt;Steve Jobs&lt;/a&gt; a los estudiantes graduados de Stanford y ciertamente me ha hecho pensar. Me ha llegado al alma. Esta gente sabe hablar. Es digno de ver, ahora mismo lo veo como algo que es necesario haber visto antes de los treinta. Me salvo por poco.&lt;br /&gt;&lt;br /&gt;De todas las cosas que dice la que más me ha hecho pensar es esta: "Si vives todos los días como si fuera el último, algun día acabarás teniendo razón"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-5384504231638633271?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/5384504231638633271/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=5384504231638633271&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/5384504231638633271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/5384504231638633271'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2007/05/problemas-de-rendimiento.html' title='Problemas de rendimiento'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-4389684791135292001</id><published>2007-04-17T23:38:00.000+02:00</published><updated>2007-04-18T00:09:13.122+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XNA'/><category scheme='http://www.blogger.com/atom/ns#' term='Progreso'/><title type='text'>Animación</title><content type='html'>Hay nueva versión. Esta trata sobre animación.&lt;br /&gt;&lt;br /&gt;Utilizando la demo de &lt;a href="https://creators.xna.com/Headlines/developmentaspx/archive/2007/02/13/Simple-Animation-Sample.aspx" target="blank"&gt;animación simple del XNA Creators Club&lt;/a&gt;, he conseguido implementar un controlador de animación bastante sencillo y muy fácil de incluir en el proyecto original.&lt;br /&gt;&lt;br /&gt;Se trata de una lista de transformaciones parciales que se añaden a las ya existentes en la estructura de nodos de un modelo. La lista de animaciones se inicializa usando los nombres de los nodos de los que modifican la transformación. Por ahora sólo he implementado dos tipos de transformación, la rotación libre en torno a un eje, y la rotación limitada en torno a un eje.&lt;br /&gt;&lt;br /&gt;Del mismo modo que se añaden las animaciones se añaden también las posiciones posibles de una cámara en un modelo. Estas posiciones simplemente suministran una matriz de vista que representa una cámara fija a un nodo del modelo. Si modificamos la posición del nodo, la cámara se mueve también.&lt;br /&gt;&lt;br /&gt;Durante el desarrollo me he dado cuenta de que si modificaba directamente las transformaciones de los nodos, tal y como se plantea en la demo de animación simple del XNA Creators Club, las transformaciones se apreciaban en todas las instancias del mismo modelo. Para evitar este comportamiento, en lugar de modifcar directamente los nodos (ModelBone.Transform), el controlador de rotación únicamente se ocupa de almacenar la rotación que debe añadirse, y en el momento de copiar las transformaciones absolutas a una lista de matrices, en el método draw, aplicarlas sobre la lista resultante. Esta lista es la usada para informar la matriz mundo del efecto de dibujado.&lt;br /&gt;&lt;br /&gt;El código fuente está en esta dirección: &lt;a href="http://www.codeplex.com/tanksgame/Release/ProjectReleases.aspx?ReleaseId=3452"&gt;http://www.codeplex.com/tanksgame/Release/ProjectReleases.aspx?ReleaseId=3452&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Este es un ejemplo del prototipo usado para implementar la animación:&lt;br /&gt;&lt;p align="center"&gt;&lt;a href="http://2.bp.blogspot.com/_JYwnycQOIeA/RiVEksCgxdI/AAAAAAAAACA/Dy2JxSZIOfI/s1600-h/Dibujo.PNG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5054521553880925650" style="CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_JYwnycQOIeA/RiVEksCgxdI/AAAAAAAAACA/Dy2JxSZIOfI/s400/Dibujo.PNG" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;Y este es el aspecto del juego:&lt;br /&gt;&lt;p align="center"&gt;&lt;a href="http://4.bp.blogspot.com/_JYwnycQOIeA/RiVE0MCgxeI/AAAAAAAAACI/gtvPOAYoFtM/s1600-h/5thRelease1.PNG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5054521820168898018" style="CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_JYwnycQOIeA/RiVE0MCgxeI/AAAAAAAAACI/gtvPOAYoFtM/s400/5thRelease1.PNG" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-4389684791135292001?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.codeplex.com/tanksgame' title='Animación'/><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/4389684791135292001/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=4389684791135292001&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/4389684791135292001'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/4389684791135292001'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2007/04/animacin.html' title='Animación'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_JYwnycQOIeA/RiVEksCgxdI/AAAAAAAAACA/Dy2JxSZIOfI/s72-c/Dibujo.PNG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-1441108720241348724</id><published>2007-04-02T23:11:00.000+02:00</published><updated>2007-04-02T23:23:09.597+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XNA'/><category scheme='http://www.blogger.com/atom/ns#' term='Progreso'/><title type='text'>La cosa marcha</title><content type='html'>Después de todo el trabajo va dando sus frutos.&lt;br /&gt;&lt;br /&gt;He publicado los primeros prototipos en codeplex en inglés horrible, pero parece que la gente se va interesando.&lt;br /&gt;&lt;br /&gt;Esta es la dirección: &lt;a href="http://www.codeplex.com/tanksgame"&gt;www.codeplex.com/tanksgame&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Hay una versión del componente de terreno, que permite conducir un tanque por él. Implementa un sistema muy simple de carga por Quadtrees y cálculo de Nivel de Detalle. A primera vista se ven los agujeros entre las junturas de Quad y Quad. Espero solucionarlo más adelante. Este es el aspecto que tiene la versión:&lt;br /&gt;&lt;br /&gt;&lt;p align="center"&gt;&lt;a href="http://2.bp.blogspot.com/_JYwnycQOIeA/RhFytR41NxI/AAAAAAAAAB4/ktdTcwmQPjQ/s1600-h/4threlease.PNG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5048942779480487698" style="CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_JYwnycQOIeA/RhFytR41NxI/AAAAAAAAAB4/ktdTcwmQPjQ/s400/4threlease.PNG" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;Se puede descargar usando este link: &lt;a href="http://www.codeplex.com/tanksgame/Release/ProjectReleases.aspx?ReleaseId=2714"&gt;alpha 4&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Además he colgado varios prototipos que he utilizado para implementar algunos componentes del juego:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Una prueba con Quaternions&lt;/li&gt;&lt;li&gt;Una prueba de renderizado con niveles de detalle&lt;/li&gt;&lt;li&gt;Una prueba de animación simple&lt;/li&gt;&lt;/ul&gt;Se pueden descargar desde esta página: &lt;a href="http://www.codeplex.com/tanksgame/Release/ProjectReleases.aspx?ReleaseId=2781"&gt;prototipos&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-1441108720241348724?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/1441108720241348724/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=1441108720241348724&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/1441108720241348724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/1441108720241348724'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2007/04/la-cosa-marcha.html' title='La cosa marcha'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_JYwnycQOIeA/RhFytR41NxI/AAAAAAAAAB4/ktdTcwmQPjQ/s72-c/4threlease.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-4811924092291682396</id><published>2007-03-05T15:42:00.000+01:00</published><updated>2007-03-05T15:55:53.241+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XNA'/><category scheme='http://www.blogger.com/atom/ns#' term='Progreso'/><title type='text'>Codeplex</title><content type='html'>Han pasado muchos días desde que actualicé el blog por última vez, pero no he estado inactivo. Intenté escribir un post sobre rotación con quaternions con código y todo, pero el trabajo que me supuso incluir el código y el aspecto final me hicieron echarme atrás.&lt;br /&gt;&lt;br /&gt;El motor de físicas no llegó a cuajar, aún no he encontrado ninguno que me convenza, así que he desistido de ese camino. Me he decantado por el terreno. Ahora mismo he hecho muchos progresos en cuanto al uso de quadtrees para dibujar espacios abiertos, y actualmente estoy implementando el renderizado usando niveles de detalle según la distancia. Los resultados se puede ver publicados en &lt;a href="http://www.codeplex.com/tanksgame"&gt;http://www.codeplex.com/tanksgame&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;También, en otro orden de cosas, he encontrado dos ejemplos muy interesantes en la recién publicada &lt;a href="http://creators.xna.com"&gt;http://creators.xna.com&lt;/a&gt; que tratan de animación y billboards.&lt;br /&gt;&lt;br /&gt;El ejemplo de billboards es un procesador de contenidos que crea billboards en un terreno de forma aleatoria, y que los dibuja utilizando un efecto especial que se encarga de simular el movimiento del viento. Muy bueno, y el aspecto es increíble.&lt;br /&gt;&lt;br /&gt;Pero es mucho mejor el otro ejemplo, porque es un controlador de animación muy simple, que carga un modelo fbx de un tanque, y anima la torreta, las ruedas y una compuerta superior. Justo lo que necesito hacer yo. Mejor no se pueden presentar las cosas.&lt;br /&gt;&lt;br /&gt;En codeplex he añadido cuatro &lt;a href="http://www.codeplex.com/tanksgame/WorkItem/List.aspx"&gt;issues&lt;/a&gt; para que la comunidad vote por el siguiente paso a dar. Pero me tengo que decidir entre el controlador de animación del tanque, que me llama un montón, o continuar con el terreno, que es muy necesario.&lt;br /&gt;&lt;br /&gt;Ya veremos a ver que hago.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-4811924092291682396?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.codeplex.com/tanksgame' title='Codeplex'/><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/4811924092291682396/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=4811924092291682396&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/4811924092291682396'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/4811924092291682396'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2007/03/codeplex.html' title='Codeplex'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-2550821414065896011</id><published>2007-02-05T15:52:00.000+01:00</published><updated>2007-02-05T16:14:50.794+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XNA'/><category scheme='http://www.blogger.com/atom/ns#' term='Progreso'/><title type='text'>Problemas con la rotación</title><content type='html'>Tengo graves problemas con la rotación. He estado trabajando para conseguir que los vehículos se posicionen sobre el terreno de una forma realista. Como se puede ver en la imágen del post anterior, el objetivo está más o menos conseguido, pero en algunos casos el resultado es penoso.&lt;br /&gt;&lt;br /&gt;El problema de falta de realismo ocurre cuando los triángulos sobre los que se asienta el vehículo son demasiado grandes o la geometría es un poco extraña. El vehículo atraviesa en algunos casos el terreno. Esto se puede corregir haciendo el terreno menos irregular o aumentando el número de triángulos sobre los que se asienta el vehículo. Todo esto pasando por limitar los movimientos de los vehículos en velocidad, grado máximo de inclinación, etc.&lt;br /&gt;&lt;br /&gt;He utilizado un método bastante tosco para calcular la inclinación de un vehículo sobre el terreno. Utilizando el bounding box del modelo, obtengo las normales de los triángulos sobre los que se asientan los 4 vértices bajos de la caja, y con ellas, obtengo la media. Este vector normalizado es el nuevo vector "Up" del vehículo. He publicado en los &lt;a href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=846&amp;SiteID=1"&gt;foros de MSDN sobre XNA&lt;/a&gt; un &lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1187025&amp;SiteID=1"&gt;hilo&lt;/a&gt; con los problemas que me está dando esta solución, ya que soy bastante ignorante en temas de matrices y quaternions (en este último temas más).&lt;br /&gt;&lt;br /&gt;Ahora me estoy planteando seriamente el utilizar un sistema de físicas para hacer todos estos cálculos. Ayer por la noche estuve mirando el "&lt;a href="http://www.ode.org/"&gt;Open Dynamics Engine&lt;/a&gt;" y tiene buena pinta. A ver si puedo sacar tiempo esta tarde para echarle un vistazo y hacer alguna prueba.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-2550821414065896011?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/2550821414065896011/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=2550821414065896011&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/2550821414065896011'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/2550821414065896011'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2007/02/problemas-con-la-rotacin.html' title='Problemas con la rotación'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-8585457597232926314</id><published>2007-01-22T09:45:00.001+01:00</published><updated>2010-01-13T13:16:05.790+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XNA'/><category scheme='http://www.blogger.com/atom/ns#' term='Progreso'/><title type='text'>Fase de prototipos</title><content type='html'>Como dijo en su día Don Jose María Aznar, estamos trabajando en ello...&lt;br /&gt;&lt;br /&gt;No puedo decir que haya avanzado mucho, pero la cosa está tomando buen color.&lt;br /&gt;&lt;br /&gt;Estas semanas he estado haciendo los primeros bocetos y prototipos. Hasta ahora tengo un controlador de cámara, un controlador de movimiento de modelos 3D y un generador de terrenos con mapas de alturas. Tienen buena pinta y su código además es muy simple, lo cual está muy bien. Lo malo es que me ha surgido otro proyecto intermedio, este serio y con intereses económicos, y me faltan las horas para todo.&lt;br /&gt;&lt;br /&gt;Con estos prototipos he encontrado algunas carencias en la primera versión de XNA SGE. La más importante es la ausencia del cáculo de intersección entre un vector y un triángulo (o un plano), que considero esencial para, por ejemplo, poner un vehículo en el terreno con la inclinación y altura correctas. Por lo que he leído en los foros de MSDN, es una funcionalidad que se va a añadir en próximas versiones, así que no me voy a matar la cabeza con esto. El siguiente objetivo es la detección de colisión entre los modelos.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-8585457597232926314?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/8585457597232926314/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=8585457597232926314&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/8585457597232926314'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/8585457597232926314'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2007/01/fase-de-prototipos.html' title='Fase de prototipos'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-115951759732106154</id><published>2006-09-29T10:05:00.000+02:00</published><updated>2006-09-29T10:13:17.336+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><category scheme='http://www.blogger.com/atom/ns#' term='Progreso'/><title type='text'>Reflexionando</title><content type='html'>Lo primero que tengo que hacer es saber lo que quiero, y después definirlo. He comenzado haciendo una navegación de pantallas y las he llenado de anotaciones que poco a poco voy clasificando.&lt;br /&gt;&lt;br /&gt;Estoy enumerando los elementos que tendré que construir, y más tarde valoraré si podré construirlos o habrá que cambiar de planes.&lt;br /&gt;&lt;br /&gt;Me siento satisfecho, he trabajado algo, ya no tendré que castigarme, pero es que la vida social me quita mucho tiempo. Por otro lado, si no tuviera vida social seguro que encontraría alguna otra cosa.&lt;br /&gt;&lt;br /&gt;Pronto empezaré a publicar mis primeros bocetos, en cuanto dejen de darme vergüenza. He pensado si debería publicar solo que haya dado resultado o cada una de las cosas que se me vayan ocurriendo. Ya veremos sobre la marcha.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-115951759732106154?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/115951759732106154/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=115951759732106154&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/115951759732106154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/115951759732106154'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2006/09/reflexionando.html' title='Reflexionando'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-115934949174463405</id><published>2006-09-27T11:11:00.001+02:00</published><updated>2010-01-13T13:21:28.150+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Progreso'/><title type='text'>Los comienzos son difíciles</title><content type='html'>Hay un dicho en la tierra de donde vengo que dice: "ningún gitano quiere a su hijo con buenos principios". Viene a decir que no por empezar mal una empresa tiene que acabar en un desastre, sino todo lo contrario.&lt;br /&gt;&lt;br /&gt;Opiniones inter-raciales a parte, es cierto que normalmente, cualquier cosa que hagas empieza despacio y a trompicones, pero en cuanto se ven los primeros resultados, por malos que sean, se empieza a ver la luz (esta debe ser la psicología de los seguidores del athlético de madrid, benditos sean...)&lt;br /&gt;&lt;br /&gt;Y así estamos. Aunque no he dado un palo al agua con el análisis que me impuse el domingo por la noche (soy muy blando conmigo mismo), he estado realmente en fase de descargas compulsivas. Si, descargas compulsivas de todo fichero que lleve XNA en el nombre. La verdad es que ha valido la pena, porque la &lt;a href="http://msdn.microsoft.com/directx/xna/faq/" target="_blank"&gt;plataforma de desarrollo&lt;/a&gt; promete, y mucho...&lt;br /&gt;&lt;br /&gt;Ayer estuve con un amigo en un bar dentro de un centro comercial. Estamos planeando hacer un videojuego sencillo (no éste) para colgarlo por internet y ver como va el tema de las donaciones por PayPal. Él no tiene mucha idea de programación actual, hace mucho que no teclea nada y está desactualizado. Le estuve contando cosas de la santísima XNA, y de las facilidades que dará cuando salga. Recordé que cuando estaba haciendo el proyecto de fin de carrera, estuve prácticamente 3 meses hasta conseguir que la primera pantallita azul del programa se comportara como yo quisiera. Con la primera demo de la XNA todo ese trabajo está hecho en un solo componente, y hacerlo funcionar es tan sencillo como arrastrar, soltar y ejecutar. Alucinante.&lt;br /&gt;&lt;br /&gt;Por eso ayer me fui a la cama pensando que estos comienzos no serán tan difíciles, porque parece muy probable que empiece a ver resultados rápidamente, y podré concentrarme en problemáticas diferentes a las del uso de una API como DirectX.&lt;br /&gt;&lt;br /&gt;...o eso espero&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-115934949174463405?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/115934949174463405/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=115934949174463405&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/115934949174463405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/115934949174463405'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2006/09/los-comienzos-son-difciles.html' title='Los comienzos son difíciles'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-115913101384951910</id><published>2006-09-24T22:21:00.000+02:00</published><updated>2006-09-24T22:50:13.956+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Dudas existenciales</title><content type='html'>El programa que es el videojuego, ¿qué es?, ¿cómo funciona?&lt;br /&gt;&lt;br /&gt;Esta es una pregunta que nunca me he atrevido a hacer en ningún foro de desarrolladores. Corría el riesgo de que los listos muy listos me tomaran por gilipollas y dejaran de contestar mis posts.&lt;br /&gt;&lt;br /&gt;Pero no hay mal que por bien no venga, y esta es una pregunta que con un poco de lectura se responde sola.&lt;br /&gt;&lt;br /&gt;Por lo que he podido experimentar sobre el tema, un programa de este tipo no es más que un cargador de recursos y un conjunto de librerías que mueven estos recursos conforme a ciertas reglas físicas y de inteligencia artificial.&lt;br /&gt;&lt;br /&gt;¿De qué recursos estoy hablando? pues hablo de imágenes y geometría. Aunque es cierto que los profesionales son capaces de complicarse la vida muchísimo más con scripts y shaders, en mi caso obviaré eso (más que nada para subirme la moral)&lt;br /&gt;&lt;br /&gt;El cargador de recursos es algo muy complejo. Para crear recursos hay una gama bastante bien surtida de aplicaciones. Se trata de seleccionar la más versátil, o sencilla, o potente, o barata, y de hacer que el cargador de recursos sea capaz de importarla para que el programa la pueda utilizar. Aquí es donde nos perdemos en el mundo de las especificaciones y estandarizaciones de cada formato de fichero, el mundo que a mi me gusta llamar, el país de esto es así porque así te va a costas más hacer que funcione. En este país parece ser que el turismo tiene sus días contados gracias a &lt;a href="http://blogs.msdn.com/xna/archive/2006/09/18/761355.aspx" target="_blank"&gt;los chavales de la XNA&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;El mayor problema que he tenido a la hora de programar el cargador de recursos es que nunca he tenido claro qué tipo de recursos tengo que cargar y, claro está, con qué aplicaciones los debería generar. Que ruina!!!&lt;br /&gt;&lt;br /&gt;Este pensamiento que un día descubres en tu cabeza, probablemente después de haber tecleado unas diez mil inútiles líneas de código, es el que te hace darte cuenta de que una vez más, el análisis es importante.&lt;br /&gt;&lt;br /&gt;Así pues, como mis ideas sobre el juego han cambiado tantísimas veces, seré prudente y antes de volver a entrar en un estado de codificación catatónica, analizaré y diseñaré de nuevo este proyecto (qué fácil y rápido se dicen estas cosas los domingos a última hora).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-115913101384951910?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/115913101384951910/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=115913101384951910&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/115913101384951910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/115913101384951910'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2006/09/dudas-existenciales.html' title='Dudas existenciales'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-115894090512250012</id><published>2006-09-22T17:19:00.000+02:00</published><updated>2006-09-22T18:03:07.126+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Lo que más me gusta hacer</title><content type='html'>En la industria de los videojuegos se han hecho muchas cosas. Experimentos de todo tipo con más o menos fortuna. Existen juegos de estrategia, de simulación, arcade, de aventuras. De pensar, de sudar, de aprender. Para adultos, para niños, para perros!!!&lt;br /&gt;&lt;br /&gt;Todo esto al alcance de cualquiera. Superventas y fracasos en toda clase de soportes y para todas las plataformas. Pero yo quiero hacer una distinción:&lt;br /&gt;&lt;br /&gt;Hay dos grandes grupos de jugadores, los que usan el teclado del ordenador y los que no. Videojuegos para un rato en frente de la tele, o videojuegos para todas las tardes del mes que viene y del siguiente, frente al monitor del PC.&lt;br /&gt;&lt;br /&gt;Yo soy de los segundos. Prefiero el ordenador para jugar, porque los juegos de PC que yo consumo suelen tener más posibilidades que los "mata mata" de las consolas, y porque desde siempre he preferido los juegos para pensar. Por razones de interfaz con el usuario, estos juegos son prácticamente inexsistentes en el mundo de las consolas.&lt;br /&gt;&lt;br /&gt;Me encanta la estrategia, y cuanto más realista mejor. Y si además es por turnos, muchísimo mejor. Ya se puede uno arriesgar a decir qué tipo de juego estoy haciendo, ¿no?&lt;br /&gt;&lt;br /&gt;¿Antiguo? Sí, ¿pasado de moda?, No!!. Y es que hay algo que puede pasar desapercibido, pero que creo que está ahí. Mis hijos tendrán acceso a juegos mil veces más avanzados de los que yo usé. Pero eso no implica que los juegos que a mí me gustaron no le apasionen también a ellos.&lt;br /&gt;&lt;br /&gt;Los adelantos en gráficos 3D han dado un enfoque a la industria del videojuego que a mí personalmente me ha entristecido bastante. Se le ha dado una gran importancia al realismo y la espectacularidad. Toda la carga está en los gráficos, y hay verdaderas obras de arte que son tan aburridas como jugar solo al tres en raya. ¿De qué me sirve que a mi heroína se le marquen los pezones, si la inteligencia artifical de los malos hace que se peguen contra la pared?&lt;br /&gt;&lt;br /&gt;Hce un tiempo leí en &lt;a href="http://www.meristation.com/v3/PC_noticias.php" target="_blank"&gt;meristation&lt;/a&gt; que las compañias iban a centrarse más en la jugabilidad y la diversión que en la gráfica. A mí me parece un gran acierto. Lo que busco es que me impresionen por la historia, la inteligencia artificial o el trasfondo, que me den posibilidades y no me cierren puertas. Si quiero ver unos buenos efectos especiales me pondré el DVD del Señor de los Anillos.&lt;br /&gt;&lt;br /&gt;Por ello, en su momento quise hacer un videojuego de estratgia por turnos, aun cuando el mercado estaba flipando por los FPSs y los RTSs&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-115894090512250012?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.youtube.com/watch?v=N7BSJO1r7y4' title='Lo que más me gusta hacer'/><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/115894090512250012/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=115894090512250012&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/115894090512250012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/115894090512250012'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2006/09/lo-que-ms-me-gusta-hacer.html' title='Lo que más me gusta hacer'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34782466.post-115882213857476436</id><published>2006-09-21T08:54:00.000+02:00</published><updated>2006-09-21T09:02:18.583+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Por lo que nace el blog</title><content type='html'>He visto la necesidad, creo&lt;br /&gt;&lt;br /&gt;Llevo ya unos años en el mundo del desarrollo de software empresarial, y como a muchos de nosotros, los programadores pseudo analistas españoles, la informática nos está decepcionando.&lt;br /&gt;&lt;br /&gt;Si, ya sé, es una afirmación muy generalista, pero no es este el tema que quiero tratar en este blog, gracias a dios, hay alternativas.&lt;br /&gt;&lt;br /&gt;¿Por qué se me ocurrió la idea de crear un videojuego? Bueno, a quién no se le ha ocurrido alguna vez algo así... Juegas a la consola y dices "si se pudiera hacer esto sería la leche", y acto seguido ya estás pensando en como sería tal y cual juego si lo decidieras tú. Seguro que muchos lo hemos sentido así, pero en mi caso, la idea no nació porque ya estaba allí cuando la busqué.&lt;br /&gt;&lt;br /&gt;Mi proyecto de fin de carrera fue un videojuego, y esta es mi mayor tarea pendiente, terminarlo&lt;br /&gt;&lt;br /&gt;Por esto nace este blog, porque "necesito" terminar el juego, como apuesta personal, y este blog, quiera o no quiera, me va a ayudar.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34782466-115882213857476436?l=devagame.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://devagame.blogspot.com/feeds/115882213857476436/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34782466&amp;postID=115882213857476436&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/115882213857476436'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34782466/posts/default/115882213857476436'/><link rel='alternate' type='text/html' href='http://devagame.blogspot.com/2006/09/por-lo-que-nace-el-blog.html' title='Por lo que nace el blog'/><author><name>selinux</name><uri>http://www.blogger.com/profile/02285056612177912541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_JYwnycQOIeA/SRdYK_eftGI/AAAAAAAAAR8/q64yI8XI2J0/S220/ultraheroe.jpg'/></author><thr:total>0</thr:total></entry></feed>
