<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>To Game or not to Game &#187; Linux</title>
	<atom:link href="http://www.aserrano.com/category/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.aserrano.com</link>
	<description>Hablando de juegos y de todo un poco</description>
	<lastBuildDate>Tue, 20 Jul 2010 15:10:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Tutorial Ogre3D: Creación de un proyecto paso por paso (III)</title>
		<link>http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/</link>
		<comments>http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 20:32:20 +0000</pubDate>
		<dc:creator>Antonio Serrano</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Juegos]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Motores 3D]]></category>
		<category><![CDATA[Ogre]]></category>
		<category><![CDATA[Desarrollo]]></category>
		<category><![CDATA[engine 3d]]></category>
		<category><![CDATA[ogre3d]]></category>

		<guid isPermaLink="false">http://www.aserrano.com/?p=183</guid>
		<description><![CDATA[Una vez inicializado Ogre Procederemos a la creación de la ventana y del SceneManager. Recordemos que el gestor del escenario es un plugin especializado según el tipo de escenario y pueden ser de los siguientes tipos: ST_GENERIC: Escenarios de propósito general ST_EXTERIOR_CLOSE: Escenarios de exteriores de visibilidad media ST_EXTERIOR_FAR: Practicamente no usado ST_EXTERIOR_REAL_FAR: Escenarios de [...]]]></description>
			<content:encoded><![CDATA[<p>Una vez inicializado Ogre Procederemos a la creación de la ventana y del SceneManager.</p>
<p>Recordemos que el gestor del escenario es un plugin especializado según el tipo de escenario y pueden ser de los siguientes tipos:</p>
<ul>
<li>ST_GENERIC: Escenarios de propósito general</li>
<li>ST_EXTERIOR_CLOSE:  Escenarios de exteriores de visibilidad media</li>
<li>ST_EXTERIOR_FAR: Practicamente no usado</li>
<li>ST_EXTERIOR_REAL_FAR: Escenarios de paisajes con grandes terrenos</li>
<li>ST_INTERIOR: Escenarios de interior, por ejemplo, edificios.</li>
</ul>
<p>Veamos ya como crearlo:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;">mRoot<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>initialise<span style="color: #008000;">&#40;</span><span style="color: #0000ff;">true</span>, <span style="color: #FF0000;">&quot;Mi Ventana&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>	
&nbsp;
RenderWindow<span style="color: #000040;">*</span> window <span style="color: #000080;">=</span> mRoot<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>getAutoCreatedWindow<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
SceneManager <span style="color: #000040;">*</span>sceneMgr <span style="color: #000080;">=</span> mRoot<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>createSceneManager<span style="color: #008000;">&#40;</span>ST_GENERIC<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></pre></div></div>

<p>A continuación crearemos la cámara que nos permitirá ver el escenario desde el ángulo y con la profundidad y distancia que queramos:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;">Camera<span style="color: #000040;">*</span> cam <span style="color: #000080;">=</span> sceneMgr<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>createCamera<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;Camara&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
cam<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>setNearClipDistance<span style="color: #008000;">&#40;</span><span style="color: #0000dd;">5</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
cam<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>setFarClipDistance<span style="color: #008000;">&#40;</span><span style="color: #0000dd;">1000</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
cam<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>setAspectRatio<span style="color: #008000;">&#40;</span>Real<span style="color: #008000;">&#40;</span><span style="color:#800080;">1.333333</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
&nbsp;
Viewport<span style="color: #000040;">*</span> vp <span style="color: #000080;">=</span> window<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>addViewport<span style="color: #008000;">&#40;</span>cam,<span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
vp<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>setBackgroundColour<span style="color: #008000;">&#40;</span>ColourValue<span style="color: #008000;">&#40;</span><span style="color: #0000dd;">1</span>, <span style="color: #0000dd;">0</span>, <span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></pre></div></div>

<p>Hemos definido para la cámara los valores de distincia mínima y máxima y su relación entre el tamaño x e y de la ventana que hemos creado, 800/600.</p>
<p>Además hemos añadido un viewport a la cámara con fondo de color rojo. Podremos tener tantos como queramos pero recuerda que se ordenan mediante el parámetro z-order y sólo puede existir uno por cada valor de z-order. Los viewport definen los rectángulos donde se visualizarán el rendererizado de la cámara.</p>
<p>Crearíamos ahora el listener que se encargará del renderizado de los frames:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;">MyFrameListener listener<span style="color: #008000;">&#40;</span>window<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
mRoot<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>addFrameListener<span style="color: #008000;">&#40;</span><span style="color: #000040;">&amp;</span>listener<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
mRoot<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>startRendering<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></pre></div></div>

<p>Es importante crear el listener antes de comenzar el renderizado de la aplicación o se nos colgará.</p>
<p><a href="http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/">Ogre3D Paso a paso II</a><br />
<a href="http://www.aserrano.com/2009/10/31/tutorial-ogre3d-creacion-de-un-proyecto-paso-por-paso-y-iv/">Ogre3D Paso a paso (y IV)</a></p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28III%29" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28III%29" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-diigo">
			<a href="http://www.diigo.com/post?url=http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28III%29&amp;desc=Una%20vez%20inicializado%20Ogre%20Procederemos%20a%20la%20creaci%C3%B3n%20de%20la%20ventana%20y%20del%20SceneManager.%0D%0A%0D%0ARecordemos%20que%20el%20gestor%20del%20escenario%20es%20un%20plugin%20especializado%20seg%C3%BAn%20el%20tipo%20de%20escenario%20y%20pueden%20ser%20de%20los%20siguientes%20tipos%3A%0D%0A%0D%0A%0D%0AST_GENERIC%3A%20Escenarios%20de%20prop%C3%B3sito%20general%0D%0AST_EXTERIOR_CLOSE%3A%20%20Escena" rel="nofollow" class="external" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/&amp;bm_description=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28III%29&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28III%29" rel="nofollow" class="external" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28III%29" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28III%29" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28III%29+-+http://b2l.me/7nam9&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ubuntu 9.10 el día 29</title>
		<link>http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/</link>
		<comments>http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 12:11:30 +0000</pubDate>
		<dc:creator>Antonio Serrano</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/</guid>
		<description><![CDATA[Ya está por llegar ubuntu 9.10 Subscribe to the comments for this post? Share this on del.icio.us Digg this! Post this on Diigo Post on Google Buzz Add this to Mister Wong Share this on Mixx Share this on Reddit Stumble upon something good? Share it on StumbleUpon Share this on Technorati Tweet This!]]></description>
			<content:encoded><![CDATA[<p>Ya está por llegar ubuntu 9.10<br />
<script type="text/javascript" src="http://www.ubuntu.com/files/countdown/display.js"></script></p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/&amp;title=Ubuntu+9.10+el+d%C3%ADa+29" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/&amp;title=Ubuntu+9.10+el+d%C3%ADa+29" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-diigo">
			<a href="http://www.diigo.com/post?url=http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/&amp;title=Ubuntu+9.10+el+d%C3%ADa+29&amp;desc=Ya%20est%C3%A1%20por%20llegar%20ubuntu%209.10%0D%0A" rel="nofollow" class="external" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/&amp;bm_description=Ubuntu+9.10+el+d%C3%ADa+29&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/&amp;title=Ubuntu+9.10+el+d%C3%ADa+29" rel="nofollow" class="external" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/&amp;title=Ubuntu+9.10+el+d%C3%ADa+29" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/&amp;title=Ubuntu+9.10+el+d%C3%ADa+29" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Ubuntu+9.10+el+d%C3%ADa+29+-+http://b2l.me/7m9gm&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.aserrano.com/2009/10/27/ubuntu-9-10-el-dia-29/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tutorial Ogre3D: Creación de un proyecto paso por paso (II)</title>
		<link>http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/</link>
		<comments>http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 19:50:46 +0000</pubDate>
		<dc:creator>Antonio Serrano</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Desarrollo]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Motores 3D]]></category>
		<category><![CDATA[Ogre]]></category>
		<category><![CDATA[engine 3d]]></category>

		<guid isPermaLink="false">http://www.aserrano.com/?p=174</guid>
		<description><![CDATA[El primero de los tres parámetros que toma la función es el fichero de configuración de plugins. Dicho fichero contiene los plugins que el engine 3D Ogre va a cargar en tiempo de ejecución por lo que mi recomendación es la de cargar sólo los que el proyecto vaya a usar. Veamos el fichero de [...]]]></description>
			<content:encoded><![CDATA[<p>El primero de los tres parámetros que toma la función es el fichero de configuración de plugins.</p>
<p>Dicho fichero contiene los plugins que el engine 3D Ogre va a cargar en tiempo de ejecución por lo que mi recomendación es la de cargar sólo los que el proyecto vaya a usar.</p>
<p>Veamos el fichero de los ejemplos que vienen con ogre:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;"><span style="color: #339900;"># Defines plugins to load</span>
&nbsp;
<span style="color: #339900;"># Define plugin folder</span>
PluginFolder<span style="color: #000080;">=</span>..<span style="color: #000040;">/</span>lib
&nbsp;
<span style="color: #339900;"># Define plugins</span>
<span style="color: #339900;"># Plugin=RenderSystem_Direct3D9</span>
<span style="color: #339900;"># Plugin=RenderSystem_Direct3D10</span>
 Plugin<span style="color: #000080;">=</span>RenderSystem_GL
 Plugin<span style="color: #000080;">=</span>Plugin_ParticleFX
 Plugin<span style="color: #000080;">=</span>Plugin_BSPSceneManager
 Plugin<span style="color: #000080;">=</span>Plugin_CgProgramManager
 Plugin<span style="color: #000080;">=</span>Plugin_PCZSceneManager
 Plugin<span style="color: #000080;">=</span>Plugin_OctreeZone
 Plugin<span style="color: #000080;">=</span>Plugin_OctreeSceneManager</pre></div></div>

<p>Vemos que carga el plugin que gestiona el renderizado OpenGL, el gestor de partículas, y 5 diferentes &#8220;Scene manager&#8221;, que serán los encargados de visualizar los escenarios y además cada uno está especializado en una forma de hacerlo diferente.</p>
<p>Además la línea pluginfolder indica de que directorios cargará dichos plugins que en este caso serán de la forma de una librería dinámica linux &#8220;.so&#8221;.</p>
<p>El tercer parámetro es del fichero de log de ogre muy útil para gestionar los posibles fallos de la aplicación que estamos desarrollando.</p>
<p>Si quisiesemos generar nuestro fichero de log sin usar este parámetro podríamos usar el siguiente código incluso antes de la inicialización de Ogre3D:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;">LogManager<span style="color: #000040;">*</span> logmanager <span style="color: #000080;">=</span> <span style="color: #0000dd;">new</span> LogManager<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
Log<span style="color: #000040;">*</span> <span style="color: #0000dd;">log</span> <span style="color: #000080;">=</span> LogManager<span style="color: #008080;">::</span><span style="color: #007788;">getSingleton</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>.<span style="color: #007788;">createLog</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;logogre.log&quot;</span>,<span style="color: #0000ff;">true</span>,tru,<span style="color: #0000ff;">false</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
&nbsp;
Root<span style="color: #000040;">*</span> mRoot<span style="color: #000080;">=</span><span style="color: #0000dd;">new</span> Root<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;plugins.cfg&quot;</span>,<span style="color: #FF0000;">&quot;ogre.cfg&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></pre></div></div>

<p>&#8230;<a href="http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/">Ogre3D Paso a paso I</a>&#8230;<br />
&#8230;<a href="http://www.aserrano.com/2009/10/28/ogre3d-creacion-de-un-proyecto-paso-por-paso-iii/">Ogre3D Paso a paso III</a>&#8230;</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28II%29" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28II%29" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-diigo">
			<a href="http://www.diigo.com/post?url=http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28II%29&amp;desc=El%20primero%20de%20los%20tres%20par%C3%A1metros%20que%20toma%20la%20funci%C3%B3n%20es%20el%20fichero%20de%20configuraci%C3%B3n%20de%20plugins.%0D%0A%0D%0ADicho%20fichero%20contiene%20los%20plugins%20que%20el%20engine%203D%20Ogre%20va%20a%20cargar%20en%20tiempo%20de%20ejecuci%C3%B3n%20por%20lo%20que%20mi%20recomendaci%C3%B3n%20es%20la%20de%20cargar%20s%C3%B3lo%20los%20que%20el%20proyecto%20vaya%20a%20usar.%0D%0A%0D%0AVeamos%20el%20fichero" rel="nofollow" class="external" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/&amp;bm_description=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28II%29&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28II%29" rel="nofollow" class="external" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28II%29" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28II%29" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28II%29+-+http://b2l.me/7nvj8&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cambio de dominio</title>
		<link>http://www.aserrano.com/2009/10/26/cambio-de-dominio/</link>
		<comments>http://www.aserrano.com/2009/10/26/cambio-de-dominio/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 08:34:58 +0000</pubDate>
		<dc:creator>Antonio Serrano</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.aserrano.com/?p=170</guid>
		<description><![CDATA[Pues eso, he actualizado el dominio del blog que pasa de www.aserrano.net a www.aserrano.com Subscribe to the comments for this post? Share this on del.icio.us Digg this! Post this on Diigo Post on Google Buzz Add this to Mister Wong Share this on Mixx Share this on Reddit Stumble upon something good? Share it on [...]]]></description>
			<content:encoded><![CDATA[<p>Pues eso, he actualizado el dominio del blog que pasa de www.aserrano.net<br />
  a www.aserrano.com</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.aserrano.com/2009/10/26/cambio-de-dominio/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.aserrano.com/2009/10/26/cambio-de-dominio/&amp;title=Cambio+de+dominio" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.aserrano.com/2009/10/26/cambio-de-dominio/&amp;title=Cambio+de+dominio" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-diigo">
			<a href="http://www.diigo.com/post?url=http://www.aserrano.com/2009/10/26/cambio-de-dominio/&amp;title=Cambio+de+dominio&amp;desc=Pues%20eso%2C%20he%20actualizado%20el%20dominio%20del%20blog%20que%20pasa%20de%20www.aserrano.net%0D%0A%20%20a%20www.aserrano.com" rel="nofollow" class="external" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.aserrano.com/2009/10/26/cambio-de-dominio/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.aserrano.com/2009/10/26/cambio-de-dominio/&amp;bm_description=Cambio+de+dominio&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://www.aserrano.com/2009/10/26/cambio-de-dominio/&amp;title=Cambio+de+dominio" rel="nofollow" class="external" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.aserrano.com/2009/10/26/cambio-de-dominio/&amp;title=Cambio+de+dominio" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.aserrano.com/2009/10/26/cambio-de-dominio/&amp;title=Cambio+de+dominio" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.aserrano.com/2009/10/26/cambio-de-dominio/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Cambio+de+dominio+-+http://b2l.me/7p3r9&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.aserrano.com/2009/10/26/cambio-de-dominio/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tutorial Ogre3D: Creación de un proyecto paso por paso (I)</title>
		<link>http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/</link>
		<comments>http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 08:32:06 +0000</pubDate>
		<dc:creator>Antonio Serrano</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Desarrollo]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ogre]]></category>
		<category><![CDATA[engine 3d]]></category>

		<guid isPermaLink="false">http://www.aserrano.net/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/</guid>
		<description><![CDATA[<p>Aunque CodeBlocks tiene un template para crear tu propio proyecto, lo que pretendemos es ver de forma detallada y comprender un poco mejor como hacerlo. ... Ambas las he bajado y compilado para poder usarlas, pero valdrían perfectamente el SDK, para el ogre, y el codeblocks que viene integrado en ubuntu.</p>
]]></description>
			<content:encoded><![CDATA[<p>Para la creación de un proyecto <a href="http://www.ogre3d.org" target="_blank">Ogre3D</a> paso a paso vamos a usar Ubuntu y Codeblocks.</p>
<p>Aunque CodeBlocks tiene un template para crear tu propio proyecto, lo que pretendemos es ver de forma detallada y comprender un poco mejor como hacerlo.</p>
<p>Yo en mi caso he usado una versión de desarrollo de Ogre3D y una versión de desarrollo también de Codeblocks.</p>
<p>Ambas las he bajado y compilado para poder usarlas, pero valdrían perfectamente el SDK, para el ogre, y el codeblocks que viene integrado en ubuntu.</p>
<p>Desde codeblocks creamos un nuevo proyecto de consola, si queréis el clásico Hello World, eliminamos el cout e incluimos las cabeceras de Ogre y su espacio de nombres.</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;"><span style="color: #339900;">#include &lt;Ogre.h&gt;;</span>
<span style="color: #0000ff;">using</span> <span style="color: #0000ff;">namespace</span> Ogre<span style="color: #008080;">;</span></pre></div></div>

<p>El primer paso en cualquier proyecto Ogre es la inicialización de las librerías en la forma</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;">&nbsp;
Root<span style="color: #000040;">*</span> mRoot<span style="color: #000080;">=</span><span style="color: #0000dd;">new</span> Root<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
Root<span style="color: #000040;">*</span> mRoot<span style="color: #000080;">=</span><span style="color: #0000dd;">new</span> Root<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;ogre.cfg&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
Root<span style="color: #000040;">*</span> mRoot<span style="color: #000080;">=</span><span style="color: #0000dd;">new</span> Root<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;ogre.cfg&quot;</span>,<span style="color: #FF0000;">&quot;plugins.cfg&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
Root<span style="color: #000040;">*</span> mRoot<span style="color: #000080;">=</span><span style="color: #0000dd;">new</span> Root<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;ogre.cfg&quot;</span>,<span style="color: #FF0000;">&quot;plugins.cfg&quot;</span>,<span style="color: #FF0000;">&quot;ogre.log&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
Root<span style="color: #000040;">*</span> mRoot<span style="color: #000080;">=</span><span style="color: #0000dd;">new</span> Root<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;&quot;</span>,<span style="color: #FF0000;">&quot;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></pre></div></div>

<p>Cualquiera de las anteriores opciones serían perfectamente válidas, aunque yo en mi caso prefiero usar la de tres parámetros para tener una completa perspectiva de cuales son mis ficheros de configuración en uso.</p>
<p>Veamos ahora el contenido del fichero ogre.cfg, que en mi caso lo tengo de la forma siguiente</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;">Render System<span style="color: #000080;">=</span>OpenGL Rendering Subsystem
&nbsp;
<span style="color: #008000;">&#91;</span>OpenGL Rendering Subsystem<span style="color: #008000;">&#93;</span>
Display Frequency<span style="color: #000080;">=</span><span style="color: #0000dd;">50</span> MHz
FSAA<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span>
Full Screen<span style="color: #000080;">=</span>No
RTT Preferred Mode<span style="color: #000080;">=</span>FBO
VSync<span style="color: #000080;">=</span>No
Video Mode<span style="color: #000080;">=</span><span style="color: #0000dd;">1024</span> x  <span style="color: #0000dd;">768</span>
sRGB Gamma Conversion<span style="color: #000080;">=</span>No</pre></div></div>

<p>Esta configuración siempre la podemos sobreescribir con una llamada al diálogo de configuración de ogre:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;">&nbsp;
<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span><span style="color: #000040;">!</span>mRoot<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>restoreConfig<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span>
<span style="color: #008000;">&#123;</span>
  mRoot<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>showConfigDialog<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
  mRoot<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>saveConfig<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
<span style="color: #008000;">&#125;</span></pre></div></div>

<p><a href="http://www.aserrano.com/2009/10/26/ogre3d-creacion-de-un-proyecto-paso-por-paso-ii/">Ogre3D Paso a paso II</a></p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28I%29" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28I%29" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-diigo">
			<a href="http://www.diigo.com/post?url=http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28I%29&amp;desc=Aunque%20CodeBlocks%20tiene%20un%20template%20para%20crear%20tu%20propio%20proyecto%2C%20lo%20que%20pretendemos%20es%20ver%20de%20forma%20detallada%20y%20comprender%20un%20poco%20mejor%20como%20hacerlo.%20...%20Ambas%20las%20he%20bajado%20y%20compilado%20para%20poder%20usarlas%2C%20pero%20valdr%C3%ADan%20perfectamente%20el%20SDK%2C%20para%20el%20ogre%2C%20y%20el%20codeblocks%20que%20viene%20integrado%20en%20ubuntu.%0D%0A" rel="nofollow" class="external" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/&amp;bm_description=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28I%29&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28I%29" rel="nofollow" class="external" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28I%29" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/&amp;title=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28I%29" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Tutorial+Ogre3D%3A+Creaci%C3%B3n+de+un+proyecto+paso+por+paso+%28I%29+-+http://b2l.me/7nkds&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.aserrano.com/2009/10/25/ogre3d-creacion-de-un-proyecto-paso-por-paso/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lua: breve tutorial de integración con C++</title>
		<link>http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/</link>
		<comments>http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/#comments</comments>
		<pubDate>Thu, 22 Oct 2009 20:18:23 +0000</pubDate>
		<dc:creator>Antonio Serrano</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Desarrollo]]></category>
		<category><![CDATA[Juegos]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Lua]]></category>
		<category><![CDATA[luabind]]></category>

		<guid isPermaLink="false">http://www.aserrano.net/?p=117</guid>
		<description><![CDATA[Para poder acelerar y mejorar los tiempos de desarrollo de tu aplicación C++ tienes la posibilidad de integrar algún lenguaje de script en la misma. Vamos por tanto a ver un breve tutorial de integración Lua, un lenguaje de script con una sintáxis bastante similar a C, y C++. El método más directo es usar [...]]]></description>
			<content:encoded><![CDATA[<p>Para poder acelerar y mejorar los tiempos de desarrollo de tu aplicación C++ tienes la posibilidad de integrar algún lenguaje de script en la misma.</p>
<p>Vamos por tanto a ver un breve tutorial de integración Lua, un lenguaje de script con una sintáxis bastante similar a C, y C++.</p>
<p>El método más directo es usar luabind, una librería que nos va a permitir dicha integración de una manera rápida y sin grandes dolores de cabeza.</p>
<p>Comentar que el tutorial ha sido desarrollado en Ubuntu 9.04. Ubuntu 9.04 viene con el paquete luabind versión 0.7 que es incompatible con lua 5.1, por tanto, deberemos descargar la última versión que a día de hoy es la 0.8.1 y compilarla.</p>
<p>Bajamos la última versión de luabind de <a title="Luabind en sourceforge" href="http://sourceforge.net/projects/luabind/" target="_blank">aquí</a>.</p>
<p>Luabind necesita de las librerías boost. Procedemos a instalarla:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> libboost1.35-dev
&nbsp;
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> boost-build</pre></div></div>

<p>Si no estuviera instalada la herramienta de compilación bjam:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> bjam</pre></div></div>

<p>Descomprimimos el paquete de luabind y lo compilamos:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> luabind-0.8.1
&nbsp;
bjam
&nbsp;
<span style="color: #c20cb9; font-weight: bold;">sudo</span> bjam <span style="color: #c20cb9; font-weight: bold;">install</span></pre></div></div>

<p>Luabind nos permite integrar en lua, casi de de forma integra cualquier elemento del lenguaje C++: clases, funciones, operadores, variables, etc.</p>
<p>Veamos como llamar una función desde un script LUA.</p>
<p>Incluimos las cabeceras de lua de la siguiente forma y definimos la función que formará parte de la librería:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;"><span style="color: #0000ff;">extern</span> <span style="color: #FF0000;">&quot;C&quot;</span> <span style="color: #008000;">&#123;</span>
&nbsp;
<span style="color: #339900;">#include &lt;lua5.1/lua.h&gt;</span>
&nbsp;
<span style="color: #008000;">&#125;</span>
&nbsp;
<span style="color: #339900;">#include &lt;stdio.h&gt;</span>
&nbsp;
<span style="color: #339900;">#include &lt;luabind/luabind.hpp&gt;</span>
&nbsp;
<span style="color: #0000ff;">void</span> sayHelloWorld<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
&nbsp;
<span style="color: #008000;">&#123;</span>
&nbsp;
<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;Hello World<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
<span style="color: #008000;">&#125;</span></pre></div></div>

<p>Añadimos también la función de inicialización de la librería:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;"><span style="color: #0000ff;">extern</span> <span style="color: #FF0000;">&quot;C&quot;</span> <span style="color: #0000ff;">int</span> init<span style="color: #008000;">&#40;</span>lua_State<span style="color: #000040;">*</span> L<span style="color: #008000;">&#41;</span>
<span style="color: #008000;">&#123;</span>
<span style="color: #0000ff;">using</span> <span style="color: #0000ff;">namespace</span> luabind<span style="color: #008080;">;</span>
&nbsp;
open<span style="color: #008000;">&#40;</span>L<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
&nbsp;
module<span style="color: #008000;">&#40;</span>L<span style="color: #008000;">&#41;</span>
<span style="color: #008000;">&#91;</span>
def<span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;sayHelloWorld&quot;</span>, <span style="color: #000040;">&amp;</span>amp<span style="color: #008080;">;</span>amp<span style="color: #008080;">;</span>amp<span style="color: #008080;">;</span>amp<span style="color: #008080;">;</span>amp<span style="color: #008080;">;</span>amp<span style="color: #008080;">;</span>sayHelloWorld<span style="color: #008000;">&#41;</span>
<span style="color: #008000;">&#93;</span><span style="color: #008080;">;</span>
&nbsp;
<span style="color: #0000ff;">return</span> <span style="color: #0000dd;">0</span><span style="color: #008080;">;</span>
<span style="color: #008000;">&#125;</span></pre></div></div>

<p>Compilamos la librería:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">gcc</span> -I<span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>local<span style="color: #000000; font-weight: bold;">/</span>include -I<span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>include<span style="color: #000000; font-weight: bold;">/</span>lua5.1 <span style="color: #660033;">-shared</span> <span style="color: #660033;">-fPIC</span> <span style="color: #660033;">-o</span> sayhello.so sayhello.cpp <span style="color: #660033;">-lluabindd</span> -llua5.1</pre></div></div>

<p>Ya sólo nos quedaría crear un programa en lua para usarlo. Mediante la función &#8220;loadlib&#8221; cargamos la librería y la inicializamos con la función C que hemos creado &#8220;init&#8221;:</p>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;">package.<span style="color: #007788;">loadlib</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">'./sayhello.so'</span>,<span style="color: #FF0000;">'init'</span><span style="color: #008000;">&#41;</span>
&nbsp;
sayHelloWorld<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span></pre></div></div>

<p>De forma análoga podríamos definir clases, estructuras, funciones, operadores sobrecargados, etc.</p>
<p>Veamos un ejemplo más complejo que refleja una clase, un operador de suma y una función para obtener el total:</p>

<div class="wp_syntax"><div class="code"><pre class="lua" style="font-family:monospace;">#include <span style="color: #66cc66;">&lt;</span>luabind<span style="color: #66cc66;">/</span>luabind.hpp<span style="color: #66cc66;">&gt;</span>
#include <span style="color: #66cc66;">&lt;</span>luabind<span style="color: #66cc66;">/</span>operator.hpp<span style="color: #66cc66;">&gt;</span>
&nbsp;
class Prueba
<span style="color: #66cc66;">&#123;</span>
int totalPrice<span style="color: #66cc66;">;</span>
public:
&nbsp;
Prueba<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span><span style="color: #66cc66;">&#125;</span>
Prueba<span style="color: #66cc66;">&#40;</span>int nume<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#123;</span>
totalPrice<span style="color: #66cc66;">=</span>nume<span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span>
Prueba operator+<span style="color: #66cc66;">&#40;</span>Prueba op2<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
&nbsp;
int getTotal<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #b1b100;">return</span> totalPrice<span style="color: #66cc66;">;</span> <span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">;</span>
&nbsp;
Prueba Prueba::operator+<span style="color: #66cc66;">&#40;</span>Prueba op2<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#123;</span>
Prueba temp<span style="color: #66cc66;">;</span>
&nbsp;
temp.totalPrice<span style="color: #66cc66;">=</span>totalPrice+op2.totalPrice<span style="color: #66cc66;">;</span>
&nbsp;
<span style="color: #b1b100;">return</span> temp<span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span>
&nbsp;
extern <span style="color: #ff0000;">&quot;C&quot;</span> int init<span style="color: #66cc66;">&#40;</span>lua_State<span style="color: #66cc66;">*</span> L<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#123;</span>
&nbsp;
using namespace luabind<span style="color: #66cc66;">;</span>
&nbsp;
open<span style="color: #66cc66;">&#40;</span>L<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
module<span style="color: #66cc66;">&#40;</span>L<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#91;</span>
class_<span style="color: #66cc66;">&lt;</span>Prueba<span style="color: #66cc66;">&gt;</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Prueba&quot;</span><span style="color: #66cc66;">&#41;</span>
.def<span style="color: #66cc66;">&#40;</span>constructor<span style="color: #66cc66;">&lt;</span>const int<span style="color: #66cc66;">&gt;</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
.def<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;getTotal&quot;</span>,<span style="color: #66cc66;">&amp;</span>amp<span style="color: #66cc66;">;</span>amp<span style="color: #66cc66;">;</span>amp<span style="color: #66cc66;">;</span>amp<span style="color: #66cc66;">;</span>amp<span style="color: #66cc66;">;</span>Prueba::getTotal<span style="color: #66cc66;">&#41;</span>
.def<span style="color: #66cc66;">&#40;</span>self + other<span style="color: #66cc66;">&lt;</span>Prueba<span style="color: #66cc66;">&gt;</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span>
<span style="color: #b1b100;">return</span> <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span></pre></div></div>

<p>Ya sólo nos queda ejecutarlo con Lua:</p>

<div class="wp_syntax"><div class="code"><pre class="lua" style="font-family:monospace;">Lua 5.1.4  Copyright <span style="color: #66cc66;">&#40;</span>C<span style="color: #66cc66;">&#41;</span> <span style="color: #cc66cc;">1994</span>-<span style="color: #cc66cc;">2008</span> Lua.org, PUC-Rio
package.<span style="color: #b1b100;">loadlib</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;./prueba.so&quot;</span>,<span style="color: #ff0000;">&quot;init&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
a<span style="color: #66cc66;">=</span>Prueba<span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">12</span><span style="color: #66cc66;">&#41;</span>
b<span style="color: #66cc66;">=</span>Prueba<span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">23</span><span style="color: #66cc66;">&#41;</span>
c<span style="color: #66cc66;">=</span>a+b
<span style="color: #b1b100;">print</span><span style="color: #66cc66;">&#40;</span>c:getTotal<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #cc66cc;">35</span></pre></div></div>



<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/&amp;title=Lua%3A+breve+tutorial+de+integraci%C3%B3n+con+C%2B%2B+" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/&amp;title=Lua%3A+breve+tutorial+de+integraci%C3%B3n+con+C%2B%2B+" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-diigo">
			<a href="http://www.diigo.com/post?url=http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/&amp;title=Lua%3A+breve+tutorial+de+integraci%C3%B3n+con+C%2B%2B+&amp;desc=Para%20poder%20acelerar%20y%20mejorar%20los%20tiempos%20de%20desarrollo%20de%20tu%20aplicaci%C3%B3n%20C%2B%2B%20tienes%20la%20posibilidad%20de%20integrar%20alg%C3%BAn%20lenguaje%20de%20script%20en%20la%20misma.%0D%0A%0D%0AVamos%20por%20tanto%20a%20ver%20un%20breve%20tutorial%20de%20integraci%C3%B3n%20Lua%2C%20un%20lenguaje%20de%20script%20con%20una%20sint%C3%A1xis%20bastante%20similar%20a%20C%2C%20y%20C%2B%2B.%0D%0A%0D%0AEl%20m%C3%A9todo%20m%C3" rel="nofollow" class="external" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/&amp;bm_description=Lua%3A+breve+tutorial+de+integraci%C3%B3n+con+C%2B%2B+&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/&amp;title=Lua%3A+breve+tutorial+de+integraci%C3%B3n+con+C%2B%2B+" rel="nofollow" class="external" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/&amp;title=Lua%3A+breve+tutorial+de+integraci%C3%B3n+con+C%2B%2B+" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/&amp;title=Lua%3A+breve+tutorial+de+integraci%C3%B3n+con+C%2B%2B+" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Lua%3A+breve+tutorial+de+integraci%C3%B3n+con+C%2B%2B++-+http://b2l.me/7pcak&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.aserrano.com/2009/10/22/lua-breve-tutorial-de-integracion-con-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux: Libre competencia ya</title>
		<link>http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/</link>
		<comments>http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/#comments</comments>
		<pubDate>Sat, 17 Oct 2009 18:58:17 +0000</pubDate>
		<dc:creator>Antonio Serrano</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[sistemas operativos]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.aserrano.net/?p=109</guid>
		<description><![CDATA[Leía hoy un artículo sobre &#8220;¿Por qué fracasan Ubuntu y Linux?&#8220;. En este artículo se insinúa que una posible causa del fracaso de Linux podría ser que le falta un algo especial para triunfar, esa cosa que hace que te fijes en un producto y lo compres. Seamos serios, yo me voy a comprar un [...]]]></description>
			<content:encoded><![CDATA[<p>Leía hoy un artículo sobre &#8220;<a href="http://www.muylinux.com/2009/10/13/%C2%BFpor-que-fracasan-ubuntu-y-linux/" target="_blank">¿Por qué fracasan Ubuntu y Linux?</a>&#8220;.</p>
<p>En este artículo se insinúa que una posible causa del fracaso de Linux podría ser que le falta un algo especial para triunfar, esa cosa que hace que te fijes en un producto y lo compres.</p>
<p>Seamos serios, yo me voy a comprar un coche y al llegar me dice el vendedor que tengo dos modelos de motores por coche, &#8220;ultimamente incluso tres, el híbrido&#8221;, diesel y gasolina.</p>
<p>Acto seguido este señor me explica las ventajas de ambos modelos y opto por gasolina si pienso hacer pocos kilómetro o diesel si pienso hacer muchos, pero tengo una elección y un señor me ha explicado las capacidades de uno y de otro y sus precios.</p>
<p>Pasemos a una tienda de ordenadores, ¿quien te vende un ordenador con linux?, nadie, o casi nadie, no existe campaña de marketing de ciento de millones de dolares a favor de linux, y existe una compañía como microsoft impidiendo que grandes compañías vendan ordenadores con linux preinstalados, tema ya bastante sabido, que microsoft incentiva a los fabricantes, e incluso penaliza, para que instalen su sistema operativo&#8230;.</p>
<p>En el mundo del ordenador personal, el de casa, no la informática empresarial que tan bien conozco, el linux simplemente no existe porque las grandes compañías se han encargado de que desaparezcan.</p>
<p>Linux tiene las mismas capacidades, ya no entro en si es mejor o no, que tienen Windows y tiene Mac OS X y no le falta ningún &#8220;nada&#8221; especial.</p>
<p>Lo único que le falta a Linux es &#8220;LIBRE COMPETENCIA&#8221;. No sé a que espera la unión europea para exigir la libre competencia en el sector de los sistemas operativos. Una vez que haya libre competencia se verá si linux triunfa o no, mientras tanto será la lucha de David contra Goliat. Una lucha desigual, demasiado desigual.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/&amp;title=Linux%3A+Libre+competencia+ya" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/&amp;title=Linux%3A+Libre+competencia+ya" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-diigo">
			<a href="http://www.diigo.com/post?url=http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/&amp;title=Linux%3A+Libre+competencia+ya&amp;desc=Le%C3%ADa%20hoy%20un%20art%C3%ADculo%20sobre%20%22%C2%BFPor%20qu%C3%A9%20fracasan%20Ubuntu%20y%20Linux%3F%22.%0D%0A%0D%0AEn%20este%20art%C3%ADculo%20se%20insin%C3%BAa%20que%20una%20posible%20causa%20del%20fracaso%20de%20Linux%20podr%C3%ADa%20ser%20que%20le%20falta%20un%20algo%20especial%20para%20triunfar%2C%20esa%20cosa%20que%20hace%20que%20te%20fijes%20en%20un%20producto%20y%20lo%20compres.%0D%0A%0D%0ASeamos%20serios%2C%20yo%20me%20voy%20a%20comprar%20u" rel="nofollow" class="external" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/&amp;bm_description=Linux%3A+Libre+competencia+ya&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/&amp;title=Linux%3A+Libre+competencia+ya" rel="nofollow" class="external" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/&amp;title=Linux%3A+Libre+competencia+ya" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/&amp;title=Linux%3A+Libre+competencia+ya" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Linux%3A+Libre+competencia+ya+-+http://b2l.me/7nx45&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.aserrano.com/2009/10/17/linux-libre-competencia-ya/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fedora 10</title>
		<link>http://www.aserrano.com/2008/11/10/fedora-10/</link>
		<comments>http://www.aserrano.com/2008/11/10/fedora-10/#comments</comments>
		<pubDate>Mon, 10 Nov 2008 18:30:56 +0000</pubDate>
		<dc:creator>Antonio Serrano</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.aserrano.net/?p=48</guid>
		<description><![CDATA[Ya mismo llegará Fedora 10 Subscribe to the comments for this post? Share this on del.icio.us Digg this! Post this on Diigo Post on Google Buzz Add this to Mister Wong Share this on Mixx Share this on Reddit Stumble upon something good? Share it on StumbleUpon Share this on Technorati Tweet This!]]></description>
			<content:encoded><![CDATA[<p>Ya mismo llegará <a href="http://fedoraproject.org/" target="_blank">Fedora 10</a></p>
<p><script id="fedora-banner" src="http://fedoraproject.org/static/js/release-counter-ext.js?lang=es" type="text/javascript"></script></p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.aserrano.com/2008/11/10/fedora-10/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.aserrano.com/2008/11/10/fedora-10/&amp;title=Fedora+10" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.aserrano.com/2008/11/10/fedora-10/&amp;title=Fedora+10" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-diigo">
			<a href="http://www.diigo.com/post?url=http://www.aserrano.com/2008/11/10/fedora-10/&amp;title=Fedora+10&amp;desc=Ya%20mismo%20llegar%C3%A1%20Fedora%2010%0A%0A" rel="nofollow" class="external" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.aserrano.com/2008/11/10/fedora-10/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.aserrano.com/2008/11/10/fedora-10/&amp;bm_description=Fedora+10&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://www.aserrano.com/2008/11/10/fedora-10/&amp;title=Fedora+10" rel="nofollow" class="external" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.aserrano.com/2008/11/10/fedora-10/&amp;title=Fedora+10" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.aserrano.com/2008/11/10/fedora-10/&amp;title=Fedora+10" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.aserrano.com/2008/11/10/fedora-10/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Fedora+10+-+http://b2l.me/7qtuc&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.aserrano.com/2008/11/10/fedora-10/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Terrenos en Torque usando L3DT</title>
		<link>http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/</link>
		<comments>http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/#comments</comments>
		<pubDate>Sun, 13 Apr 2008 08:53:18 +0000</pubDate>
		<dc:creator>Antonio Serrano</dc:creator>
				<category><![CDATA[Blender]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Juegos]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Motores 3D]]></category>
		<category><![CDATA[Torque]]></category>
		<category><![CDATA[3d Engine]]></category>
		<category><![CDATA[L3DT]]></category>
		<category><![CDATA[terrain]]></category>
		<category><![CDATA[terrenos]]></category>

		<guid isPermaLink="false">http://www.aserrano.net/?p=23&#038;language=es</guid>
		<description><![CDATA[Vamos a hablar de como generar rapidamente terrenos para Torque en Torque Game Engine Advanced 1.7.0. TGEA 1.7.0 incluye ahora un nuevo sistema de megaterrenos llamado MegaTerrain. Megaterrain nos permite incluir varios terrenos individuales dentro de las misiones de Torque. Pero nosotros vamos a ver como exportar un terreno para al anterior sistema Atlas 2 [...]]]></description>
			<content:encoded><![CDATA[<p>Vamos a hablar de como generar rapidamente terrenos para Torque en Torque Game Engine Advanced 1.7.0.</p>
<p>TGEA 1.7.0 incluye ahora un nuevo sistema de megaterrenos llamado MegaTerrain. Megaterrain nos permite incluir varios terrenos individuales dentro de las misiones de Torque.</p>
<p>Pero nosotros vamos a ver como exportar un terreno para al anterior sistema Atlas 2 usando la herramienta <a href="http://www.bundysoft.com/L3DT/" target="_blank">Large 3D Terrain</a> de bundysoft. Decir que la herramienta tiene dos versiones y la que se compra en <a href="http://www.garagegames.com/products/105/" target="_blank">GarageGames</a> cuesta unos 35$ y lleva el plugin de exportación para Atlas.</p>
<p>Esta herramienta provee un tutorial muy interesante que nos hará un terreno en pocos minutos. Seguidlo y generar un terreno de 1024&#215;1024 pixeles, como se ve en las imágenes.</p>
<p><img src="http://www.aserrano.net/wp-content/uploads/image/new-terrain.jpg" alt="" width="298" height="303" /><img src="http://www.aserrano.net/wp-content/uploads/image/new-terrain2.jpg" alt="" width="316" height="398" /></p>
<p>Una vez finalizado el tutorial grabar el proyecto y usar la opción de exportación File&#8211;&gt;Export&#8211;&gt;To torque Atlas(garagegames plugin). Este plugin tiene todavia algunos bugs con terrenos grandes.</p>
<p><a href="http://www.aserrano.net/wp-content/uploads/image/generated-terrain.jpg" target="_blank"><img src="http://www.aserrano.net/wp-content/uploads/image/generated-terrain.jpg" alt="" width="150" height="114" /></a></p>
<p>Con el terreno generado es hora de ponerlo en Torque  en nuestro fichero de misión con el siguiente código:</p>
<p>new AtlasInstance(NewTerrain) {<br />
canSaveDynamicFields = &#8220;1&#8243;;<br />
Enabled = &#8220;1&#8243;;<br />
position = &#8220;0 0 0&#8243;;<br />
rotation = &#8220;1 0 0 0&#8243;;<br />
scale = &#8220;1 1 1&#8243;;<br />
atlasFile = &#8220;scriptsAndAssets/data/export/miterreno.atlas&#8221;;<br />
lightmapDimension = &#8220;256&#8243;;<br />
};</p>
<p>Truco: si no veis el terreno, seleccionadlo con &#8220;World Editor inspector&#8221; y haceis un drop selection.</p>
<p><a href="http://www.aserrano.net/wp-content/uploads/image/terrain-editor.jpg" target="_blank"><img src="http://www.aserrano.net/wp-content/uploads/image/terrain-editor.jpg" alt="" width="150" height="116" /></a><a href="http://www.aserrano.net/wp-content/uploads/image/terrain-big.jpg" target="_blank"><img src="http://www.aserrano.net/wp-content/uploads/image/terrain-big.jpg" alt="" width="150" height="70" /><br />
</a></p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/&amp;title=Terrenos+en+Torque+usando+L3DT" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/&amp;title=Terrenos+en+Torque+usando+L3DT" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-diigo">
			<a href="http://www.diigo.com/post?url=http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/&amp;title=Terrenos+en+Torque+usando+L3DT&amp;desc=Vamos%20a%20hablar%20de%20como%20generar%20rapidamente%20terrenos%20para%20Torque%20en%20Torque%20Game%20Engine%20Advanced%201.7.0.%0A%0ATGEA%201.7.0%20incluye%20ahora%20un%20nuevo%20sistema%20de%20megaterrenos%20llamado%20MegaTerrain.%20Megaterrain%20nos%20permite%20incluir%20varios%20terrenos%20individuales%20dentro%20de%20las%20misiones%20de%20Torque.%0A%0APero%20nosotros%20vamos%20a%20" rel="nofollow" class="external" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/&amp;bm_description=Terrenos+en+Torque+usando+L3DT&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/&amp;title=Terrenos+en+Torque+usando+L3DT" rel="nofollow" class="external" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/&amp;title=Terrenos+en+Torque+usando+L3DT" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/&amp;title=Terrenos+en+Torque+usando+L3DT" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Terrenos+en+Torque+usando+L3DT+-+http://b2l.me/7phas&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.aserrano.com/2008/04/13/terrains-in-torque-using-l3dt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Aprendiendo de juegos comerciales</title>
		<link>http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/</link>
		<comments>http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/#comments</comments>
		<pubDate>Thu, 21 Feb 2008 14:50:48 +0000</pubDate>
		<dc:creator>Antonio Serrano</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Desarrollo]]></category>
		<category><![CDATA[Juegos]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Motores 3D]]></category>

		<guid isPermaLink="false">http://www.aserrano.net/2008/02/21/aprendiendo-de-juegos-comerciales/</guid>
		<description><![CDATA[Dicen que la experiencia es la madre de todas las ciencias. Hoy voy a hablar sobre desarrollos comerciales cuyos códigos fuentes han sido liberados a toda la comunidad para su aprendizaje. El primero de ellos es el simcity (micropolis). En este blog tenéis toda la información y el código fuente disponible. Además vamos a hablar [...]]]></description>
			<content:encoded><![CDATA[<p>Dicen que la experiencia es la madre de todas las ciencias.  </p>
<p>Hoy voy a hablar sobre desarrollos comerciales cuyos códigos fuentes han sido liberados a toda la comunidad para su aprendizaje.  </p>
<p>El primero de ellos es el simcity (micropolis).  </p>
<p>En este <a href="http://weblogs.asp.net/bsimser/archive/2008/01/10/simcity-source-code-released-to-the-wild-let-the-ports-begin.aspx" target="_blank">blog</a> tenéis toda la información y el código fuente disponible.  </p>
<p>Además vamos a hablar de otro de los clásicos por excelencia: Quake III&#8230;ni horas que he pasado yo jugando al Quake III&#8230;  El código fuente está disponible en la página oficial de ID Software en la siguiente <a href="ftp://ftp.idsoftware.com/idstuff/source/quake3-1.32b-source.zip" title="Código fuente Quake III" target="_blank">URL</a>  </p>
<p>Parte de esta información ha sido extraída de una página web que os recomiendo a todos pues habla de <a href="http://aigamedev.com/" title="AIGameDev">Inteligencia Artifical</a> aplicada al desarrollo de juegos.</p>
<p>¡Que lo disfrutéis!</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr">
<ul class="socials">
		<li class="shr-comfeed">
			<a href="http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/&amp;title=Aprendiendo+de+juegos+comerciales" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/&amp;title=Aprendiendo+de+juegos+comerciales" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-diigo">
			<a href="http://www.diigo.com/post?url=http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/&amp;title=Aprendiendo+de+juegos+comerciales&amp;desc=Dicen%20que%20la%20experiencia%20es%20la%20madre%20de%20todas%20las%20ciencias.%20%20%0AHoy%20voy%20a%20hablar%20sobre%20desarrollos%20comerciales%20cuyos%20c%C3%B3digos%20fuentes%20han%20sido%20liberados%20a%20toda%20la%20comunidad%20para%20su%20aprendizaje.%20%20%0AEl%20primero%20de%20ellos%20es%20el%20simcity%20%28micropolis%29.%20%20%0AEn%20este%20blog%20ten%C3%A9is%20toda%20la%20informaci%C3%B3n%20y%20el%20c%C3%B3digo%20f" rel="nofollow" class="external" title="Post this on Diigo">Post this on Diigo</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-misterwong">
			<a href="http://www.mister-wong.com/addurl/?bm_url=http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/&amp;bm_description=Aprendiendo+de+juegos+comerciales&amp;plugin=sexybookmarks" rel="nofollow" class="external" title="Add this to Mister Wong">Add this to Mister Wong</a>
		</li>
		<li class="shr-mixx">
			<a href="http://www.mixx.com/submit?page_url=http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/&amp;title=Aprendiendo+de+juegos+comerciales" rel="nofollow" class="external" title="Share this on Mixx">Share this on Mixx</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/&amp;title=Aprendiendo+de+juegos+comerciales" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/&amp;title=Aprendiendo+de+juegos+comerciales" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-technorati">
			<a href="http://technorati.com/faves?add=http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/" rel="nofollow" class="external" title="Share this on Technorati">Share this on Technorati</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Aprendiendo+de+juegos+comerciales+-+http://b2l.me/7qdtp&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.aserrano.com/2008/02/21/aprendiendo-de-juegos-comerciales/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
