<?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-2473692677737958251</id><updated>2011-11-27T20:14:51.146-05:00</updated><category term='dominicano'/><category term='videojuegos'/><title type='text'>Desarrollo de Videojuegos en República Dominicana</title><subtitle type='html'>Blog acerca de la programación de videojuegos en la República Dominicana</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-997122265262560548</id><published>2011-07-20T20:28:00.006-04:00</published><updated>2011-07-20T20:59:33.587-04:00</updated><title type='text'>Diseño Iterativo</title><content type='html'>&lt;div&gt;En el diseño de videojuegos no hay manera de saber si una idea va a ser divertida o no, ya que lo que percibimos como diversión es algo muy particular de cada uno.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Para resolver este problema existe un método llamado &lt;b&gt;Diseño Iterativo&lt;/b&gt; que consiste en ir agregando nuevas ideas de manera progresiva y preguntando a los jugadores que les pareció.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;El proceso de diseño iterativo&lt;/b&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Iteracion 1: Idea -&amp;gt; Prototipo -&amp;gt; Prueba -&amp;gt; Retroalimentación&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;Iteracion 2: Idea -&amp;gt; Prototipo -&amp;gt; &lt;/span&gt;Prueba &lt;span class="Apple-style-span"&gt;-&amp;gt; &lt;/span&gt;Retroalimentación&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;Iteracion 3: Idea -&amp;gt; Prototipo -&amp;gt; &lt;/span&gt;Prueba &lt;span class="Apple-style-span"&gt;-&amp;gt; &lt;/span&gt;Retroalimentación&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;Iteracion 4: Idea -&amp;gt; Prototipo -&amp;gt; &lt;/span&gt;Prueba &lt;span class="Apple-style-span"&gt;-&amp;gt; &lt;/span&gt;Retroalimentación&lt;/div&gt;&lt;div&gt;Iteración ...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Idea:&lt;/b&gt; Las ideas por lo general son preguntas como ¿que tal si ahora el personaje salta? o ¿y si le agregamos un laser? Lo importante es ir agregando pequeñas ideas y no atarnos a ellas.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Prototipo:&lt;/b&gt;&lt;br /&gt;Existen prototipos físicos y prototipos en software.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Prototipos Físicos&lt;/u&gt;&lt;/div&gt;&lt;div&gt;Usando papel, lápiz, legos, piezas de otros juegos existentes. Estos prototipos sirven para aclarar ideas o comunicarlas.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Prototipos de Software&lt;/u&gt;&lt;/div&gt;&lt;div&gt;Se pueden crear en herramientas como Unity3D, Gamemaker o haciendo un MOD (modificación) de un juego conocido.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Prueba:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Al principio del proyecto se pueden hacer las pruebas con las mismas personas del equipo de trabajo, pero según el juego toma forma, conviene hacer las pruebas con personas que pertenezcan al público objetivo, es decir, que tengan algunas características del público al cual va enfocado el juego.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Retroalimentación:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;En esta etapa se le pregunta a los testers ¿que les pareció el juego hasta ahora?, ¿se divirtieron? ¿se aburrieron?, ¿fué fácil?, ¿difícil?, ¿que les gustó?, ¿que no les gustó?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Este proceso se lleva en la etapa de pre-producción, la cual termina cuando se han encontrado los aspectos más divertidos del nuevo juego.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-997122265262560548?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/997122265262560548/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=997122265262560548' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/997122265262560548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/997122265262560548'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2011/07/diseno-iterativo.html' title='Diseño Iterativo'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-8620636625441899233</id><published>2010-04-19T13:27:00.003-04:00</published><updated>2010-04-19T15:07:00.803-04:00</updated><title type='text'>Existirá en nuestro país algún artista que sepa trabajar con este estilo?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.armyoftrolls.co.uk/website/portfolio/march_update/MINICLIP_POSTER.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 238px; height: 168px;" src="http://www.armyoftrolls.co.uk/website/portfolio/march_update/MINICLIP_POSTER.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://fc00.deviantart.com/fs6/i/2005/035/d/5/Paper_Mario_Sprites_by_HavocQ.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 297px; height: 376px;" src="http://fc00.deviantart.com/fs6/i/2005/035/d/5/Paper_Mario_Sprites_by_HavocQ.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-8620636625441899233?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/8620636625441899233/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=8620636625441899233' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/8620636625441899233'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/8620636625441899233'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2010/04/existira-en-nuestro-pais-algun-artista.html' title='Existirá en nuestro país algún artista que sepa trabajar con este estilo?'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-7228213754169470504</id><published>2010-02-22T15:26:00.002-05:00</published><updated>2010-02-22T15:31:40.969-05:00</updated><title type='text'>Entytec busca artista para su nuevo juego.</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.c-sharpcorner.com/UploadFile/markjohnson/SpaceBreakOutMJ11122005040558AM/Images/sbgame.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 243px; height: 182px;" src="http://www.c-sharpcorner.com/UploadFile/markjohnson/SpaceBreakOutMJ11122005040558AM/Images/sbgame.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Estamos en las etapas finales del desarrollo de un juego tipo Breakout y estamos buscando a un artista gráfico que trabaje con nosotros.&lt;br /&gt;&lt;br /&gt;Por eso queremos que nos envíes una propuesta original para saber si tu estilo es el adecuado para nuestro proyecto.&lt;br /&gt;&lt;br /&gt;En este link verás una imagen con distintos ejemplos de juegos similares. &lt;a href="http://www.entytec.com/EntytecGames/Bricks.jpg"&gt;http://www.entytec.com/EntytecGames/Bricks.jpg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Si estás interesado, envía tu propuesta a los correos marco_tmp.no_spam@hotmail.com y joelmejiaganan.no_spam@mac.com&lt;br /&gt;&lt;br /&gt;Nota: Cuando copies los emails asegúrate de borrar el texto ".no_spam".&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.entytec.com/portal/node/22"&gt;Entytec busca artista para su nuevo juego&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-7228213754169470504?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/7228213754169470504/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=7228213754169470504' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/7228213754169470504'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/7228213754169470504'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2010/02/entytec-busca-artista-para-su-nuevo.html' title='Entytec busca artista para su nuevo juego.'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-1302713725732916498</id><published>2009-12-12T22:42:00.020-05:00</published><updated>2010-05-18T21:37:47.167-04:00</updated><title type='text'>Programación de juegos con componentes</title><content type='html'>He estado leyendo algunos artículos sobre programación de juegos utilizando componentes y vaya que me he quedado entusiasmado.&lt;br /&gt;&lt;br /&gt;Motores de juego como el Unity, TorqueX, Nebula 3 o el Cryengine, permiten crear objetos desde el GUI combinando componentes, lo cual reduce mucho la dependencia a la programación y además se adapta mejor al diseño iterativo de los juegos.&lt;br /&gt;&lt;br /&gt;Esto se logra, en vez de utilizando jerarquía de clases, utilizando composición.&lt;br /&gt;&lt;br /&gt;En este video se explica con más detalles:&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/auaqZzcjl-Y&amp;amp;hl=es_ES&amp;amp;fs=1&amp;amp;"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/auaqZzcjl-Y&amp;amp;hl=es_ES&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;También hay buena explicación en este artículo.&lt;br /&gt;&lt;a href="http://cowboyprogramming.com/2007/01/05/evolve-your-heirachy/"&gt;http://cowboyprogramming.com/2007/01/05/evolve-your-heirachy/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A este tipo de desarrollo se le conoce como data driven, ya que todos los objetos del juego se pueden crear leyendo la información desde archivos.&lt;br /&gt;&lt;br /&gt;Por ejemplo, para crear al player:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;Entity name="Player"&amp;gt;&lt;br /&gt;&amp;lt;component name="Mesh" file="player.md5"/&amp;gt;&lt;br /&gt;&amp;lt;component name="Position" x="0" y="0" z="0"/&amp;gt;&lt;br /&gt;&amp;lt;component name="Renderer"/&amp;gt;&lt;br /&gt;&amp;lt;component name="PhysicBody"/&amp;gt;&lt;br /&gt;&amp;lt;component name="PlayerController" camera="follow"/&amp;gt;&lt;br /&gt;&amp;lt;/Entity&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Luego de ver esto y analizar el código de &lt;a href="http://pushbuttonengine.com/"&gt;push button engine&lt;/a&gt; se me ocurrió la idea de crear una sencilla libreria para el lenguaje C++ (creanme que la he buscado pero no encuentro ninguna por ahí) que maneje entities. La idea es la siguiente:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_GZZVkdnTB0M/SyRo-rFadYI/AAAAAAAAABI/eiVDlxgJTK8/s1600-h/entity.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 211px; height: 159px;" src="http://3.bp.blogspot.com/_GZZVkdnTB0M/SyRo-rFadYI/AAAAAAAAABI/eiVDlxgJTK8/s200/entity.jpg" alt="" id="BLOGGER_PHOTO_ID_5414568077932787074" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Como ven en la imágen anterior, tendríamos las siguientes clases: (pseudocódigo)&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;class CEntityManager&lt;br /&gt;{&lt;br /&gt; List&amp;lt;CEntity&amp;gt; EntityList;&lt;br /&gt; bool createEntity(char* name);&lt;br /&gt; CEntity getEntityByName(char* name);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;class CEntity&lt;br /&gt;{&lt;br /&gt; List&amp;lt;CComponent&amp;gt; ComponentList;&lt;br /&gt; bool addComponent(CComponent);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;class CComponent: public IUpdate&lt;br /&gt;{&lt;br /&gt; //ocurre cuando el componente es agregado al entity&lt;br /&gt; void onAdd()&lt;br /&gt; {&lt;br /&gt;     UpdateManager.add(this);&lt;br /&gt; }&lt;br /&gt; void onUpdate(){}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;class CUpdateManager&lt;br /&gt;{&lt;br /&gt; List&amp;lt;IUpdate&amp;gt; componentList;&lt;br /&gt; void onUpdate()&lt;br /&gt; {&lt;br /&gt;     component = componentList.getFirst();&lt;br /&gt;     while (component != null)&lt;br /&gt;     {&lt;br /&gt;             obj.onUpdate();&lt;br /&gt;             component = componentList.next();&lt;br /&gt;     }&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Estamos hablando de que a esta libraría se le pueden crear componentes de cualquiera de las librerias utilizadas actualmente.&lt;br /&gt;&lt;br /&gt;Render3D: Ogre3D / Irrlicht / DirectX / OpenGL&lt;br /&gt;Physic: Physx / Newton GD / Havok / Bullet / etc...&lt;br /&gt;Sound: IrrKlang / FMOD / OpenAL&lt;br /&gt;AI: OpenSteer / FSM&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Si alguien está interesado en esta libraría o si desea ayudar, puede contactarme a marco_tmp.nospam@hotmail.com. Claro, debes quitarle el .nospam. ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-1302713725732916498?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/1302713725732916498/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=1302713725732916498' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/1302713725732916498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/1302713725732916498'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2009/12/programacion-de-juegos-con-componentes.html' title='Programación de juegos con componentes'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_GZZVkdnTB0M/SyRo-rFadYI/AAAAAAAAABI/eiVDlxgJTK8/s72-c/entity.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-6344743474431035476</id><published>2009-06-05T20:18:00.006-04:00</published><updated>2009-06-05T20:27:23.543-04:00</updated><title type='text'>Proyecto Natal Milo, Persojane 3D Interactivo</title><content type='html'>Peter Molyneaux nos enseña Milo, el cual usa el proyecto Natal para una interacción sorprendente con un personaje 3D.&lt;br /&gt;&lt;br /&gt;&lt;object width="300" height="242"&gt;&lt;param name="movie" value="http://www.youtube.com/v/CPIbGnBQcJY&amp;hl=es&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/CPIbGnBQcJY&amp;hl=es&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="450" height="273"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-6344743474431035476?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/6344743474431035476/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=6344743474431035476' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/6344743474431035476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/6344743474431035476'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2009/06/proyecto-natal-milo-persojane-3d.html' title='Proyecto Natal Milo, Persojane 3D Interactivo'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-7431332845930397814</id><published>2008-09-08T16:43:00.005-04:00</published><updated>2008-09-08T16:57:52.634-04:00</updated><title type='text'>StarUML</title><content type='html'>Hola amigos, hace un tiempo habia publicado el link a una aplicación muy básica (UML Pad) que te permite crear diagramas UML cuando necesites salir del paso.&lt;br /&gt;&lt;br /&gt;Aquí les envio el link a StarUML, que es una aplicación para crear diagramas UML bastante completa. Una de las ventajas de esta aplicación es que luego de crear el diagrama tienes la opción de crear el pseudocódigo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://sourceforge.net/dbimage.php?id=48463"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 431px; height: 283px;" src="https://sourceforge.net/dbimage.php?id=48463" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="https://sourceforge.net/project/showfiles.php?group_id=152825&amp;package_id=169190&amp;release_id=437438"&gt;Link&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-7431332845930397814?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/7431332845930397814/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=7431332845930397814' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/7431332845930397814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/7431332845930397814'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/09/staruml.html' title='StarUML'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-3798621783087780019</id><published>2008-06-09T16:20:00.004-04:00</published><updated>2008-06-09T16:27:24.702-04:00</updated><title type='text'>Libro Online: The Cg Tutorial</title><content type='html'>Los shaders se utilizan para crear los efectos especiales que ves en los juegos modernos. Si quieres iniciarte en el mundo de los Shaders, te recomiendo el libro The Cg Tutorial. Este libro da una introducción a los Shaders utilizando el lenguaje Cg (C for graphics)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://http.developer.nvidia.com/CgTutorial/Cg_book_Small_Cropped.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px;" src="http://http.developer.nvidia.com/CgTutorial/Cg_book_Small_Cropped.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Puedes leer el libro &lt;a href="http://http.developer.nvidia.com/CgTutorial/cg_tutorial_chapter01.html"&gt;aquí&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-3798621783087780019?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/3798621783087780019/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=3798621783087780019' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/3798621783087780019'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/3798621783087780019'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/06/libro-online-cg-tutorial.html' title='Libro Online: The Cg Tutorial'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-3013345197962710964</id><published>2008-04-29T00:47:00.004-04:00</published><updated>2008-04-29T00:54:55.161-04:00</updated><title type='text'>Sitios Recomendados</title><content type='html'>Si estas interesado en el desarrollo de videojuegos te recomiendo los siguientes sitios:&lt;br /&gt;&lt;br /&gt;GameDev&lt;br /&gt;&lt;a href="http://www.gamedev.net/"&gt;http://www.gamedev.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Gamasutra&lt;br /&gt;&lt;a href="http://www.gamasutra.com/"&gt;http://www.gamasutra.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;IGDA&lt;br /&gt;&lt;a href="http://www.igda.org/"&gt;http://www.igda.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;VJuegos&lt;br /&gt;&lt;a href="http://www.vjuegos.org/"&gt;http://www.vjuegos.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Game Maker&lt;br /&gt;&lt;a href="http://www.gamemaker.nl/"&gt;http://www.gamemaker.nl/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Irrlicht Graphics Engine&lt;br /&gt;&lt;a href="http://irrlicht.sf.net/"&gt;irrlicht.sf.net &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;OGRE 3D&lt;br /&gt;&lt;a href="http://www.ogre3d.org/"&gt;http://www.ogre3d.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;TORQUE&lt;br /&gt;&lt;a href="http://www.garagegames.com/"&gt;http://www.garagegames.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-3013345197962710964?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/3013345197962710964/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=3013345197962710964' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/3013345197962710964'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/3013345197962710964'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/04/sitios-recomendados.html' title='Sitios Recomendados'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-3823550252399122273</id><published>2008-04-28T23:50:00.017-04:00</published><updated>2008-04-29T00:43:27.245-04:00</updated><title type='text'>Programación de Juegos. Parte 3</title><content type='html'>- Otra pequeña revisión de los lenguajes de programación. -&lt;br /&gt;&lt;br /&gt;Los lenguajes de programación poseen las siguientes partes:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Indicadores:&lt;/strong&gt;&lt;br /&gt;Son palabras que representan variables, funciones, estructuras y clases.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Variables:&lt;/strong&gt;&lt;br /&gt;Son indicadores que se utilizan para representar espacios de memoria.&lt;br /&gt;&lt;br /&gt;Ejemplo C++:&lt;br /&gt;&lt;pre&gt;int numero = 20;&lt;br /&gt;char* texto = "Hola Mundo";&lt;br /&gt;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;Ejemplo Flash Actionscript:&lt;br /&gt;&lt;pre&gt;var numero:Number = 10;&lt;br /&gt;var texto:String = "Hola Mundo";&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;strong&gt;Funciones:&lt;/strong&gt;&lt;br /&gt;Son indicadores que se utilizan para agrupar comandos. Por lo general aceptan los parametros entre parentesis.&lt;br /&gt;&lt;br /&gt;Ejemplo C++:&lt;br /&gt;&lt;pre&gt;int sumaloca(int a, int b)&lt;br /&gt;{&lt;br /&gt;    a = a + 3;&lt;br /&gt;    b = b + 7;&lt;br /&gt;    return a+b;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;c = sumaloca(a, b);&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;strong&gt;Estructuras:&lt;/strong&gt;&lt;br /&gt;Son indicadores que se usan para agrupar variables y crear estructuras de datos.&lt;br /&gt;&lt;br /&gt;Ejemplo:&lt;br /&gt;&lt;pre&gt;struct sPlayer&lt;br /&gt;{&lt;br /&gt;    int x;&lt;br /&gt;    int y;&lt;br /&gt;    int vidas;&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;sPlayer player;&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;player.x = 10;&lt;br /&gt;player.y = 20;&lt;br /&gt;player.vidas = 100;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;strong&gt;Clases&lt;/strong&gt;&lt;br /&gt;son estructuras que agrupan variables y funciones.&lt;br /&gt;&lt;br /&gt;Ejemplo c++:&lt;br /&gt;&lt;pre&gt;class CPlayer&lt;br /&gt;{&lt;br /&gt;    // variables&lt;br /&gt;    int x;&lt;br /&gt;    int y;&lt;br /&gt;    int vidas;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;    //funciones&lt;br /&gt;    void mueveDerecha();&lt;br /&gt;    void mueveIzquierda();&lt;br /&gt;    void agregaVidas();&lt;br /&gt;}&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-3823550252399122273?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/3823550252399122273/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=3823550252399122273' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/3823550252399122273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/3823550252399122273'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/04/programacin-de-videojuegos-parte-3.html' title='Programación de Juegos. Parte 3'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-4983885552581668966</id><published>2008-04-12T22:53:00.006-04:00</published><updated>2008-04-28T23:41:48.661-04:00</updated><title type='text'>Programación de Juegos. Parte 2</title><content type='html'>Antes de ver los lenguajes de programación debemos terminar de entender cuales cosas debemos programar.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;MEMORIA&lt;/span&gt;&lt;br /&gt;Los procesadores controlan el flujo de información desde y hacia la memoria.&lt;br /&gt;&lt;br /&gt;La memoria debemos verla como un armario donde se puede guardar información. El armario posee una cantidad de gabetas, cada una con un número específico.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;En cada gabeta se puede almacenar un número entre 0 y 255, que puede representar una instrucción del procesador, un número o una letra.&lt;br /&gt;Estos datos tambien pueden representar toda una imágen o un modelo 3D de un juego.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;PUERTOS I/O&lt;/span&gt;&lt;br /&gt;Los procesadores tienen otra parte llamada puerto, que se utiliza para comunicarse con el mundo exterior. Por estos puertos se pueden enviar datos a cualquier dispositivo que esté conectado con el.&lt;br /&gt;&lt;br /&gt;En estos puertos es que se conectan el teclado, el mouse, la pantalla, el control, las bocinas, y cualquier otro dispositivo externo.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;ALU&lt;/span&gt;&lt;br /&gt;Unidad Lógica y Aritmética&lt;br /&gt;Esta unidad es la que se encarga de manejar todas las operaciones lógicas y aritméticas, es decir, puede calcular por ejemplo, la suma de dos números en memoria o también puede determinar cual de los dos números es mayor que otro.&lt;br /&gt;&lt;br /&gt;En esta unidad es que se calcula por ejemplo cuanta energía te quita un enemigo o si cruzaste la puerta sin ser tocado.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;UNIDAD DE CONTROL&lt;/span&gt;&lt;br /&gt;Esta unidad lee un dato de la memoria, lo interpreta como comando y lo ejecuta.&lt;br /&gt;&lt;br /&gt;Como funciona esta parte:&lt;br /&gt;El procesador lee un dato en memoria, lo coloca en esta unidad y lo busca en una tabla donde tiene anotado el significado de cada comando. Cuando lo encuentra, inicia la ejecución del mismo. Si por ejemplo es un comando de suma, el va a la memoria y busca los dos números que se van a sumar, los suma y coloca el resultado en otro lugar de la memoria. Cuando termina esta operación toma otro comando y lo ejecuta.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Sobre los Numeros Binarios, Hexadecimales, Decimales, Octales y Ascii.&lt;br /&gt;&lt;/strong&gt;Los procesadores funcionan con electricidad, por tanto solo puede saber si hay electricidad o no. Cada espacio de memoria contiene 8 casillas donde se puede colocar electricidad o no. Esto se representa con el numero 1=electricidad y 0=no electricidad.&lt;br /&gt;&lt;br /&gt;Los hex, dec, oct, son otros sistemas de numeración. Se puede ver el mismo número binario en hex, dec, oct y en ascii. Ej:&lt;br /&gt;&lt;br /&gt;El número binario 1000000 se puede representar de la siguiente manera:&lt;br /&gt;Binario = 1000000&lt;br /&gt;Hexadecimal = 41&lt;br /&gt;Octal = 82&lt;br /&gt;Decimal = 65&lt;br /&gt;Ascii = A&lt;br /&gt;&lt;br /&gt;Como ves, el dato que está en memoria es el número binario, pero la computadora podrá representar el valor de otras formas según se le indique en el programa.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Lenguaje de Programación&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Voy a utilizar el lenguaje C++ como ejemplo porque es el más popular para el desarrollo de videojuegos.&lt;br /&gt;&lt;br /&gt;En los lenguajes de programación tenemos comandos para realizar cualquiera de estas tareas.&lt;br /&gt;&lt;br /&gt;Para colocar un valor en memoria usamos variables:&lt;br /&gt;&lt;br /&gt;a = 5;&lt;br /&gt;b = 6;&lt;br /&gt;&lt;br /&gt;* Las variables son nombres que sirven para identificar espacios en memoria.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Para sumar dos valores usamos&lt;br /&gt;&lt;br /&gt;c = a + b; //ahora c es igual a 11. (5 + 6)&lt;br /&gt;&lt;br /&gt;Para enviar un dato a la pantalla usamos&lt;br /&gt;&lt;br /&gt;printf(c) ; //ahora aparece el número 11 en la pantalla.&lt;br /&gt;&lt;br /&gt;Si queremos indicarle a la unidad de control que comandos ejecutar podriamos usar un if:&lt;br /&gt;&lt;br /&gt;if (c&gt;10)&lt;br /&gt;{&lt;br /&gt;printf("mayor que 10");&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;printf("menor que 10");&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;en el ejemplo anterior, el programa verifica si c es mayor que 10, como en este caso es 11, se irá a la primera respuesta, pero si fuera menor, se iria a la instrucción que está despues del else y ejecutaria la segunda respuesta.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;En fin, estas han sido algunas pinceladas sobre los lenguajes de programación. Si desean saber más visiten el siguiente link.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.cplusplus.com/doc/tutorial/"&gt;http://www.cplusplus.com/doc/tutorial/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-4983885552581668966?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/4983885552581668966/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=4983885552581668966' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/4983885552581668966'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/4983885552581668966'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/04/programacin-de-juegos-parte-2.html' title='Programación de Juegos. Parte 2'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-8436858937988332696</id><published>2008-04-06T23:27:00.008-04:00</published><updated>2008-06-09T15:59:56.368-04:00</updated><title type='text'>Juego "Machea 3" versión dominicana</title><content type='html'>Acabo de hacer éste jueguito donde debes conectar 3 fichas para eliminarlas. Las imágenes son alusivas a la pelota dominicana.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.entytec.com/Juegos/Connect3_pelota.swf"&gt;Tamaño Completo&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" id="Connect3" align="middle" height="480" width="640"&gt;&lt;br /&gt;&lt;param name="allowScriptAccess" value="sameDomain"&gt;&lt;br /&gt;&lt;param name="movie" value="Connect3.swf"&gt;&lt;param name="quality" value="high"&gt;&lt;param name="bgcolor" value="#ffffff"&gt;&lt;br /&gt;&lt;embed src="http://www.entytec.com/Juegos/Connect3_pelota.swf" quality="high" bgcolor="#ffffff" name="Connect3" allowscriptaccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" align="middle" height="285" width="380"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-8436858937988332696?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/8436858937988332696/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=8436858937988332696' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/8436858937988332696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/8436858937988332696'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/04/juego-machea-3-versin-dominicana.html' title='Juego &quot;Machea 3&quot; versión dominicana'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-220771768084633761</id><published>2008-04-05T22:13:00.000-04:00</published><updated>2008-04-05T22:22:49.830-04:00</updated><title type='text'>UML Pad</title><content type='html'>UML Pad 2.1 es una aplicación gratuita para la creación de disgramas UML. El programa permite crear diagramas de clases, de secuencias, de estados y de actividades.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://web.tiscali.it/ggbhome/umlpad/umlpad.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://web.tiscali.it/ggbhome/umlpad/umlpad.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Descargalo aquí: &lt;a href="http://web.tiscali.it/ggbhome/umlpad/umlpad.zip"&gt;umlpad.zip&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-220771768084633761?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/220771768084633761/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=220771768084633761' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/220771768084633761'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/220771768084633761'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/04/uml-pad.html' title='UML Pad'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-5544678423917829775</id><published>2008-03-28T14:10:00.006-04:00</published><updated>2008-04-12T22:24:05.506-04:00</updated><title type='text'>Programación de Juegos. Parte 1</title><content type='html'>Este es el primero de una serie de tutoriales sobre programación de videojuegos.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;INTRODUCCION&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Para desarrollar un videojuego se necesitan cuatro areas básicas de conocimiento:&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Programación&lt;/li&gt;&lt;li&gt;Arte&lt;/li&gt;&lt;li&gt;Diseño de Juegos&lt;/li&gt;&lt;li&gt;Sonidos&lt;/li&gt;&lt;/ul&gt;Mi intención es hablarles un poco acerca de la programación.&lt;br /&gt;&lt;br /&gt;Para hablar de programación de juegos debemos hablar de programación de computadoras, y entonces, ¿que es una computadora?&lt;br /&gt;&lt;br /&gt;Una computadora es una maquina que sirve para recibir datos de entradas, procesarlos y presentar los resultados. Dicho en lenguaje de videojuegos, la computadora recibe información de las teclas, botones o mouse, ejecuta las reglas del juego e interactua con el jugador por medio de la pantalla y las bocinas. De este modo la programación de juegos es el proceso de indicar los pasos que la máquina debe dar para interactuar de forma divertida con el usuario.&lt;br /&gt;&lt;br /&gt;Bien, Los dispositivos que reciben datos son:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;El teclado&lt;/li&gt;&lt;li&gt;El mouse&lt;/li&gt;&lt;li&gt;El joystick&lt;/li&gt;&lt;li&gt;La pantalla touch screen&lt;/li&gt;&lt;li&gt;El wiimote&lt;/li&gt;&lt;li&gt;Etc.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Los dispositivos por donde salen los datos son:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;El monitor &lt;/li&gt;&lt;li&gt;Las bocinas&lt;/li&gt;&lt;li&gt;El Rumblepack, &lt;/li&gt;&lt;li&gt;El Forcefeedback, &lt;/li&gt;&lt;li&gt;Etc.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;El dispositivo que procesa las interacciones, (las reglas del juego) es el &lt;span style="color: rgb(102, 0, 0);"&gt;procesador&lt;/span&gt;. &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;EL PROCESADOR&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;a href="http://www.incredible.co.za/manager/clientfiles/connections/Cell%20Processor.jpg"&gt;&lt;img style="margin: 0px 0px 10px 10px; float: right; width: 200px;" alt="" src="http://www.incredible.co.za/manager/clientfiles/connections/Cell%20Processor.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Esta parte hay que tenerla en en cuenta porque es básica para poder programar computadoras.&lt;/p&gt;&lt;p&gt;El procesador es un dispositivo que ejecuta comandos. Estos comandos son números binarios (1001010101010) que son interpretados como ordenes por el procesador.&lt;br /&gt;Pero si las computadoras solo entienden esto "1010101001110101" :S, ¿¿¿como se supone que yo voy a programarlas???&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Un poco de historia...&lt;/p&gt;&lt;p&gt;Al principio se programaba con el lenguaje binario de 1 y 0, pero rápido inventaron un lenguaje llamado &lt;a href="http://es.wikipedia.org/wiki/Lenguaje_ensamblador"&gt;Ensamblador&lt;/a&gt; (Assembler en ingles) que permitia escribir los comandos binarios con letras. Ej: &lt;/p&gt;&lt;pre&gt;&lt;br /&gt;; Hola Mundo para Intel Assembler (MSDOS)&lt;br /&gt;&lt;br /&gt;mov ax,cs&lt;br /&gt;mov ds,ax&lt;br /&gt;mov ah,9&lt;br /&gt;mov dx, offset Hello&lt;br /&gt;int 21h&lt;br /&gt;xor ax,ax&lt;br /&gt;int 21h&lt;br /&gt;&lt;br /&gt;Hello:&lt;br /&gt; db "Hola Mundo!",13,10,"$"&lt;/pre&gt;&lt;p&gt;Luego surgieron los lenguajes de alto nivel, que permiten escribir programas en lenguajes más entendibles por nosotros como el C++, Basic, Java, etc. Ej:&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;//Hola Mundo para el lenguaje C&lt;br /&gt;main()&lt;br /&gt;{&lt;br /&gt;   printf("Hola Mundo\n");&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Continuando...&lt;/p&gt;&lt;p&gt;En fin, todos los procesadores manejan los siguientes tipos de comandos:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Lectura y Escritura (Input/Output)&lt;/li&gt;&lt;li&gt;Operaciones aritméticas (+,-,mul, ...)&lt;/li&gt;&lt;li&gt;Operaciones lógicas (&gt;, &lt;, and, or, ...)&lt;/li&gt;&lt;li&gt;Operaciones de control. Para saltar y moverse en la secuencia de comandos (jump, goto, etc)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;En el proximo capítulo conoceremos un poco más de los lenguajes de programación.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-5544678423917829775?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/5544678423917829775/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=5544678423917829775' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/5544678423917829775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/5544678423917829775'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/03/programacin-de-juegos-parte-1.html' title='Programación de Juegos. Parte 1'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-9049080783250752189</id><published>2008-03-27T22:44:00.001-04:00</published><updated>2008-04-08T22:25:06.184-04:00</updated><title type='text'>GPU Gems Online Gratis!!!</title><content type='html'>Así mismo, el famoso libro GPU Gems sobre gráficos de nueva generación usando shaders, está disponible para leer en linea y totalmente gratis!!!.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://developer.download.nvidia.com/books/HTML/gpugems/elementLinks/fig01-01.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://developer.download.nvidia.com/books/HTML/gpugems/elementLinks/fig01-01.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Para accesar haz clic en este &lt;a href="http://developer.download.nvidia.com/books/HTML/gpugems/gpugems_copyrightpg.html"&gt;link&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-9049080783250752189?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/9049080783250752189/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=9049080783250752189' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/9049080783250752189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/9049080783250752189'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/03/gpu-gems-online-gratis.html' title='GPU Gems Online Gratis!!!'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-2845128379540191547</id><published>2008-03-19T09:50:00.014-04:00</published><updated>2008-12-12T22:58:14.687-05:00</updated><title type='text'>Portafolio</title><content type='html'>&lt;div align="center"&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;strong&gt;&lt;br /&gt;Proyecto Irrlicht Game Shell. &lt;/strong&gt;(&lt;a href="http://gameshell.sourceforge.net/"&gt;Link&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;/div&gt;&lt;div align="left"&gt;Es un framework para desarrollar prototipos de juegos en 3D. Fue desarrollado en el lenguaje C++ usando las librerias Irrlicht, Newton, Lua y Audiere.&lt;/div&gt;&lt;div align="left"&gt;&lt;/div&gt;&lt;div align="left"&gt;Lamentablemente no he podido terminar este proyecto por falta de tiempo.&lt;/div&gt;&lt;div align="center"&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;/div&gt;&lt;img style="margin: 0px auto 10px; display: block; width: 320px; text-align: center;" alt="" src="http://sourceforge.net/dbimage.php?id=52830" border="0" /&gt; &lt;p align="center"&gt;Depuración de la física &lt;/p&gt;&lt;p align="center"&gt;&lt;/p&gt;&lt;img style="margin: 0px auto 10px; display: block; width: 320px; text-align: center;" alt="" src="http://sourceforge.net/dbimage.php?id=39796" border="0" /&gt; &lt;p align="center"&gt;Terreno&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;img style="margin: 0px auto 10px; display: block; width: 320px; text-align: center;" alt="" src="http://sourceforge.net/dbimage.php?id=58950" border="0" /&gt; &lt;p align="center"&gt;Phong Shading&lt;br /&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;strong&gt;Videojuegos para Internet&lt;/strong&gt;&lt;/p&gt;&lt;p align="left"&gt;Cuadrik:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="left"&gt;&lt;a href="http://www.entytec.com/Juegos/cuadrik_naranja.swf"&gt;Link&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" id="Cuadrik" align="middle" height="200" width="275"&gt;&lt;br /&gt;&lt;param name="allowScriptAccess" value="sameDomain"&gt;&lt;br /&gt;&lt;param name="movie" value="cuadrik_naranja.swf"&gt;&lt;param name="quality" value="high"&gt;&lt;param name="bgcolor" value="#ffffff"&gt;&lt;embed src="http://www.entytec.com/Juegos/cuadrik_naranja.swf" quality="high" bgcolor="#ffffff" name="Cuadrik" allowscriptaccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" align="middle" height="280" width="385"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="left"&gt;Puzzle:&lt;/p&gt;&lt;p align="left"&gt;&lt;br /&gt;&lt;a href="http://www.entytec.com/Juegos/Puzzle.swf"&gt;Link&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" id="Puzzle" align="middle" height="200" width="275"&gt;&lt;br /&gt;&lt;param name="allowScriptAccess" value="sameDomain"&gt;&lt;br /&gt;&lt;param name="movie" value="Puzzle.swf"&gt;&lt;param name="quality" value="high"&gt;&lt;param name="bgcolor" value="#ffffff"&gt;&lt;embed src="http://www.entytec.com/Juegos/Puzzle.swf" quality="high" bgcolor="#ffffff" name="Puzzle" allowscriptaccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" align="middle" height="280" width="385"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="left"&gt;"Machea 3" Dominicano:&lt;/p&gt;&lt;p align="left"&gt;&lt;br /&gt;&lt;a href="http://www.entytec.com/Juegos/Connect3_pelota.swf"&gt;Tamaño Completo&lt;/a&gt;&lt;br /&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" id="Connect3" align="middle" height="480" width="640"&gt;&lt;br /&gt;&lt;param name="allowScriptAccess" value="sameDomain"&gt;&lt;br /&gt;&lt;param name="movie" value="Connect3.swf"&gt;&lt;param name="quality" value="high"&gt;&lt;param name="bgcolor" value="#ffffff"&gt;&lt;br /&gt;&lt;embed src="http://www.entytec.com/Juegos/Connect3_pelota.swf" quality="high" bgcolor="#ffffff" name="Connect3" allowscriptaccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" align="middle" height="285" width="380"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;strong&gt;Proyecto Videojuego ITLA&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="left"&gt;En este proyecto participé como el coordinador, Director Tecnico y Lead Programmer. Hasta algo de arte tuve que hacer ;)&lt;/p&gt;El juego fue programado sobre la plataforma Torque Game Engine.&lt;br /&gt;&lt;br /&gt;&lt;p align="left"&gt;&lt;img id="BLOGGER_PHOTO_ID_5179457312746334882" style="margin: 0px auto 10px; display: block; text-align: center;" alt="" src="http://2.bp.blogspot.com/_GZZVkdnTB0M/R-Eg--eLaqI/AAAAAAAAAAM/Kqftj6TKo_U/s320/intro.jpg" border="0" /&gt;&lt;/p&gt;&lt;p align="center"&gt;Pantalla de Intro&lt;/p&gt;&lt;img id="BLOGGER_PHOTO_ID_5179457514609797810" style="margin: 0px auto 10px; display: block; text-align: center;" alt="" src="http://1.bp.blogspot.com/_GZZVkdnTB0M/R-EhKueLarI/AAAAAAAAAAU/p73xvDRGC30/s320/independencia.jpg" border="0" /&gt; &lt;p align="center"&gt;Pantalla de Juego&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-2845128379540191547?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/2845128379540191547/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=2845128379540191547' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/2845128379540191547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/2845128379540191547'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/03/portafolio.html' title='Portafolio'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_GZZVkdnTB0M/R-Eg--eLaqI/AAAAAAAAAAM/Kqftj6TKo_U/s72-c/intro.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-4435733964656867459</id><published>2008-03-10T09:20:00.000-04:00</published><updated>2008-03-10T10:02:49.986-04:00</updated><title type='text'>Asociacion Dominicana de Inteligencia Artificial</title><content type='html'>Esta noticia es del año pasado. En la actualidad la ADIA tiene ya un año en el pais, pero me encontré la noticia muy interesante.&lt;br /&gt;&lt;br /&gt;"El próximo 26 de abril se dará a conocer la creación de la Asociación Dominicana de Inteligencia Artificial (ADIA), con la iniciativa el país ingresará al grupo de países latinoamericanos que cuentan con una asociación de esta especialidad. "&lt;br /&gt;&lt;br /&gt;El ADIA es promovido por el científico mejicano José Luis Basulto.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://tecnologicodominicano.blogspot.com/2007/03/el-pas-va-rumbo-al-grupo-de.html"&gt;Noticia Completa&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-4435733964656867459?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/4435733964656867459/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=4435733964656867459' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/4435733964656867459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/4435733964656867459'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/03/asociacion-dominicana-de-inteligencia.html' title='Asociacion Dominicana de Inteligencia Artificial'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-5659898718040734084</id><published>2008-02-29T15:10:00.000-05:00</published><updated>2008-02-29T15:11:18.696-05:00</updated><title type='text'>Escribiendo Guiones para Juegos</title><content type='html'>Información sobre como escribir Guiones para videojuegos.&lt;br /&gt;&lt;a href="http://www.finegamedesign.com/script/index.html"&gt;http://www.finegamedesign.com/script/index.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-5659898718040734084?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/5659898718040734084/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=5659898718040734084' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/5659898718040734084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/5659898718040734084'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/02/escribiendo-guiones-para-juegos.html' title='Escribiendo Guiones para Juegos'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-8899039680141612760</id><published>2008-02-29T12:22:00.000-05:00</published><updated>2008-02-29T12:28:45.929-05:00</updated><title type='text'>State Driven Game Agent Design</title><content type='html'>En este &lt;a href="http://www.ai-junkie.com/architecture/state_driven/tut_state1.html"&gt;link&lt;/a&gt; podran ver el tema "State-Driven Game Agent Design" del libro Programming Game AI by Example.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-8899039680141612760?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/8899039680141612760/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=8899039680141612760' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/8899039680141612760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/8899039680141612760'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/02/state-driven-game-agent-design.html' title='State Driven Game Agent Design'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-5582493716096633174</id><published>2008-02-14T10:32:00.000-05:00</published><updated>2008-02-15T15:45:06.774-05:00</updated><title type='text'>Programación Orientada a Objetos</title><content type='html'>Encontré estas páginas que explican muy bien los principios de programación orientada a objetos que se necesitan para programar correctamente.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.oodesign.com/oo_principles/oo_principles/open_close_principle.html"&gt;Open Close Principle&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.oodesign.com/oo_principles/oo_principles/dependency_inversion_principle.html"&gt;Dependency Inversion Principle&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.oodesign.com/oo_principles/oo_principles/interface_sergregation_principle.html"&gt;Interface Sergregation Principle&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.oodesign.com/oo_principles/oo_principles/single_responsibility_principle.html"&gt;Single Responsibility Principle&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.oodesign.com/oo_principles/oo_principles/liskov"&gt;Liskov's Substitution Principle&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.vincehuston.org/dp/"&gt;Patrones de Diseño de Programas&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Por último, el diseño de un motor de juego de futbol utilizando Software Design Pattern. &lt;a href="http://www.codeguru.com/csharp/.net/net_general/patterns/article.php/c12083/"&gt;Football Engine&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-5582493716096633174?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/5582493716096633174/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=5582493716096633174' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/5582493716096633174'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/5582493716096633174'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/02/programacin-orientada-objetos.html' title='Programación Orientada a Objetos'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2473692677737958251.post-5649561540186351060</id><published>2008-01-09T15:26:00.000-05:00</published><updated>2008-01-09T15:38:13.659-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='videojuegos'/><category scheme='http://www.blogger.com/atom/ns#' term='dominicano'/><title type='text'>Videojuegos Criollos?</title><content type='html'>&lt;strong&gt;Se pueden hacer videojuegos criollos?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Claro que si!&lt;br /&gt;Para hacer un videojuego se necesitan tres cosas (tambien para hacer cualquier cosa en la vida): Creatividad, Conocimiento y Disposición.&lt;br /&gt;&lt;br /&gt;La creatividad es lo que sale de nuestra imaginación. Los dominicanos tenemos mucha creatividad, aunque nos falta impulso para hacerlo llegar más lejos.&lt;br /&gt;&lt;br /&gt;La disposición es el deseo de hacer las cosas. Conozco a algunos dominicanos que estan interesados en hacer carrera en la industria del videojuego.&lt;br /&gt;&lt;br /&gt;El conocimiento está por todos lados, está por internet, está en las universidades, solo nos falta creer que es posible y empezar a buscarlo!!!.&lt;br /&gt;&lt;br /&gt;Si logramos reunir estas tres cualidades, será posible crear videojuegos competitivos desde la República Dominicana.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2473692677737958251-5649561540186351060?l=marcotmp.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marcotmp.blogspot.com/feeds/5649561540186351060/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2473692677737958251&amp;postID=5649561540186351060' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/5649561540186351060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2473692677737958251/posts/default/5649561540186351060'/><link rel='alternate' type='text/html' href='http://marcotmp.blogspot.com/2008/01/videojuegos-criollos.html' title='Videojuegos Criollos?'/><author><name>marcotmp</name><uri>http://www.blogger.com/profile/04562623127845063372</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
