<?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:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>3DMon</title>
	<atom:link href="http://3dmon.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://3dmon.wordpress.com</link>
	<description>Le blog 3D du Dr. Goulu</description>
	<pubDate>Sat, 10 May 2008 07:35:55 +0000</pubDate>
	<generator>http://wordpress.org/?v=MU</generator>
	<language>fr</language>
			<item>
		<title>Generation of high quality bitmap fonts</title>
		<link>http://3dmon.wordpress.com/2008/05/10/generation-of-high-quality-bitmap-fonts/</link>
		<comments>http://3dmon.wordpress.com/2008/05/10/generation-of-high-quality-bitmap-fonts/#comments</comments>
		<pubDate>Sat, 10 May 2008 07:35:55 +0000</pubDate>
		<dc:creator>Dr. Goulu</dc:creator>
		
		<category><![CDATA[2D]]></category>

		<category><![CDATA[LUA]]></category>

		<category><![CDATA[gui]]></category>

		<category><![CDATA[imagemagick]]></category>

		<category><![CDATA[textures]]></category>

		<category><![CDATA[fonts]]></category>

		<category><![CDATA[graphics]]></category>

		<guid isPermaLink="false">http://3dmon.wordpress.com/?p=59</guid>
		<description><![CDATA[here is how to quickly and automatically generate bitmap fonts with an alpha channel, providing a perfect anti-aliasing on any background. Any vector font can be used and combined with an infinity of graphic effects.
The software that does 99% of the job is ImageMagick, a free, open-source image processing tool that I consider as a [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="text-align:left;">here is how to quickly and automatically generate bitmap fonts with an alpha channel, providing a perfect anti-aliasing on any background. Any vector font can be used and combined with an infinity of graphic effects.<a href="http://3dmon.files.wordpress.com/2008/05/test.jpg"><img class="alignnone size-full wp-image-57 aligncenter" src="http://3dmon.files.wordpress.com/2008/05/test.jpg?w=480&h=288" alt="" width="480" height="288" /></a></p>
<p style="text-align:left;">The software that does 99% of the job is <a href="http://www.imagemagick.org/" target="_blank">ImageMagick</a>, a free, open-source image processing tool that I consider as a &#8220;GUI-less Photoshop&#8221; : as powerful as Adobe&#8217;s product, ImageMagick is used only from another program, or even from the shell. Install it urgently.</p>
<p style="text-align:left;">Below is the small batch file that creates a few files containing words including the font.png with the &#8220;font&#8221; text used in the image above :</p>
<p><code>@echo off<br />
rem Function:	Create transparent background, aliased texts from a list of words<br />
rem Author:	Philippe Guglielmetti<br />
rem Requires:	ImageMagick v.6 or later (www.imagemagick.org)<br />
set texts=OK Abort Cancel font &#8220;This is Great !&#8221;<br />
set params=-background none -font Bauhaus-93 -pointsize 72 -density 300 -fill blue -blur 0&#215;5<br />
for %%a in (%texts%) do convert.exe  %params% label:%%a %%a.png<br />
set texts=<br />
set params=</code></p>
<p>&#8220;params&#8221; define the font to create:</p>
<ul>
<li>-background none is mandatory to draw the font on a transparent background (alpha channel)</li>
<li>-font Bauhaus-93 defines the vector font to use (its name is sometimes not the same as the one displayed in Windows &#8220;Fonts&#8221; folder&#8230;)</li>
<li>-pointsize 72 -density 300 specifies the font should be 72pt high on a 300dpi device. The bitmap size will therefore be larger on screen, but it can be printed or used as a texture in a 3D game or a Demoniak3D demo with a perfect quality.</li>
<li>
<p style="text-align:center;"><img class="alignright alignnone size-full wp-image-58" style="float:right;margin:3px;" src="http://3dmon.files.wordpress.com/2008/05/zoomo.png?w=320&h=200" alt="" width="320" height="200" /></p>
<p>-fill blue -blur 0&#215;5 are two basic effects : the symbol is filled with blue, and its contour (1 pixel of black by default) is slightly blured on 5 pixels. This creates semi-transparent pixels at the symbols borders, which enables a perfect superimposition whatever the background color, as shown on the zoom right:</p>
<p style="text-align:center;">
</li>
</ul>
<p>To superimpose the text on a background texture for a quality check, another ImageMagick is called:</p>
<p><code>composite.exe -tile back.png -compose Dst_Over font.png test.jpg</code></p>
<p>Once the test passed, we can generate all the chars of the font. When only a few symbols are required, we could re-use the batch file above, definining for exemple</p>
<p><code>set texts=0 1 2 3 4 5 6 7 8 9<br />
</code></p>
<p>This can be cumbersome for a complete font, and for application programming reasons it might be useful to name the files by the ASCII code of each char. As this is not possible to code in Windows batch language, we have to code it in a real language such as LUA:</p>
<p><code>params="-background none -font Bauhaus-93 -pointsize 72 -density 300 -fill white -blur 0x5 "<br />
for i=32,167 do<br />
os.execute(&#8221;convert.exe &#8220;..params..&#8221;label:&#8221;..string.char(i)..&#8221; &#8220;..i..&#8221;.png&#8221;)<br />
end</code></p>
<p>These 4 lines automatically generate 130 files of nice symbols ready to be loaded as textures in your game. Note that these files total about 10 Mb au total, more than ImageMagick. It might therefore be worth to consider including ImageMagick in your product and use it at insall time to generate the required fonts instead of creating a heavy distribution</p>
<p>Now, if the fonts above are a bit rough for you, have a look at  <a href="http://www.imagemagick.org/Usage/fonts/" target="_blank">this page</a> which will give you some idea of the possible effects, and explore <a href="http://www.imagemagick.org/Usage/" target="_blank">this one</a> for the full picture.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3dmon.wordpress.com/59/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3dmon.wordpress.com/59/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3dmon.wordpress.com/59/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3dmon.wordpress.com/59/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3dmon.wordpress.com/59/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3dmon.wordpress.com/59/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3dmon.wordpress.com/59/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3dmon.wordpress.com/59/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3dmon.wordpress.com/59/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3dmon.wordpress.com/59/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3dmon.wordpress.com/59/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3dmon.wordpress.com/59/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3dmon.wordpress.com&blog=1476048&post=59&subd=3dmon&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3dmon.wordpress.com/2008/05/10/generation-of-high-quality-bitmap-fonts/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/goulu-128.jpg" medium="image">
			<media:title type="html">Dr. Goulu</media:title>
		</media:content>

		<media:content url="http://3dmon.files.wordpress.com/2008/05/test.jpg" medium="image" />

		<media:content url="http://3dmon.files.wordpress.com/2008/05/zoomo.png" medium="image" />
	</item>
		<item>
		<title>Génération de polices bitmap de haute qualité</title>
		<link>http://3dmon.wordpress.com/2008/05/10/generation-de-polices-bitmap-de-haute-qualite/</link>
		<comments>http://3dmon.wordpress.com/2008/05/10/generation-de-polices-bitmap-de-haute-qualite/#comments</comments>
		<pubDate>Sat, 10 May 2008 07:11:29 +0000</pubDate>
		<dc:creator>Dr. Goulu</dc:creator>
		
		<category><![CDATA[2D]]></category>

		<category><![CDATA[LUA]]></category>

		<category><![CDATA[gui]]></category>

		<category><![CDATA[imagemagick]]></category>

		<category><![CDATA[textures]]></category>

		<category><![CDATA[caractères]]></category>

		<category><![CDATA[graphisme]]></category>

		<guid isPermaLink="false">http://3dmon.wordpress.com/?p=56</guid>
		<description><![CDATA[Voici comment générer rapidement et automatiquement des polices de caractères bitmap avec canal alpha, donnant un anti-aliasing parfait quel que soit la texture de fond utilisée. Toutes les polices vectorielles peuvent être utilisées et combinées avec une infinité d&#8217;effets graphiques.
Le logiciel réalisant 99% du travail est ImageMagick, un programme de traitement d’images open-source gratuit que [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="text-align:left;">Voici comment générer rapidement et automatiquement des polices de caractères bitmap avec canal alpha, donnant un anti-aliasing parfait quel que soit la texture de fond utilisée. Toutes les polices vectorielles peuvent être utilisées et combinées avec une infinité d&#8217;effets graphiques.<a href="http://3dmon.files.wordpress.com/2008/05/test.jpg"><img class="alignnone size-full wp-image-57 aligncenter" src="http://3dmon.files.wordpress.com/2008/05/test.jpg?w=480&h=288" alt="" width="480" height="288" /></a></p>
<p style="text-align:left;">Le logiciel réalisant 99% du travail est <a href="http://www.imagemagick.org/" target="_blank">ImageMagick</a>, un programme de traitement d’images open-source gratuit que je considère comme un &#8220;Photoshop sans GUI&#8221; : aussi puissant que l&#8217;outil d&#8217;Adobe, ImageMagick s&#8217;utilise uniquement depuis un autre programme, voire simplement la ligne de commande du shell. A installer d&#8217;urgence.</p>
<p style="text-align:left;">Voici par exemple le petit fichier batch qui crée quelques fichiers contenant des mots, dont le fichier font.png contenant le mot &#8220;font&#8221; de l&#8217;image ci-dessus :</p>
<p><code>@echo off<br />
rem Function:	Create transparent background, aliased texts from a list of words<br />
rem Author:	Philippe Guglielmetti<br />
rem Requires:	ImageMagick v.6 or later (www.imagemagick.org)<br />
set texts=OK Abort Cancel font &#8220;This is Great !&#8221;<br />
set params=-background none -font Bauhaus-93 -pointsize 72 -density 300 -fill blue -blur 0&#215;5<br />
for %%a in (%texts%) do convert.exe  %params% label:%%a %%a.png<br />
set texts=<br />
set params=</code></p>
<p>Les &#8220;params&#8221; définissent la police à réaliser:</p>
<ul>
<li>-background none est essentiel pour dessiner la police sur un fond transparent (canal alpha)</li>
<li>-font Bauhaus-93 définit la police vectorielle à utiliser (dont le nom n&#8217;est parfois pas identique à celui apparaissant dans le dossier &#8220;Fonts&#8221; de Windows&#8230;)</li>
<li>-pointsize 72 -density 300 spécifient que la police doit faire 72pt de haut à 300dpi. La taille du bitmap sera donc supérieure à l&#8217;écran, mais il pourra être imprimé ou utilisé comme texture dans un jeu 3D ou une démo Demoniak3D avec un résultat d&#8217;excellente qualité</li>
<li>
<p style="text-align:center;"><img class="alignright alignnone size-full wp-image-58" style="float:right;margin:3px;" src="http://3dmon.files.wordpress.com/2008/05/zoomo.png?w=320&h=200" alt="" width="320" height="200" /></p>
<p>-fill blue -blur 0&#215;5 sont deux petits effets de base : on remplit le caractère en bleu, et on adoucit le tracé de la lettre, qui est d&#8217;un pixel de noir par défaut. Ceci crée des pixels semi-transparents au bord des caractères, ce qui permet une découpe parfaite des caractères quel que soit le fond, comme on le voit sur le zoom ci-contre:<br />
<a href="http://3dmon.files.wordpress.com/2008/05/zoomo.png"></a></p>
<p style="text-align:center;">
</li>
</ul>
<p>Pour placer la police sur la texture de fond afin de vérifier sa qualité, on utilise un autre module d&#8217;ImageMagick;</p>
<p><code>composite.exe -tile back.png -compose Dst_Over font.png test.jpg</code></p>
<p>Une fois ce test réalisé, on peut s&#8217;attaquer à la génération de tous les caractères de la police. Si seuls quelques caractères sont nécessaires, on peut utiliser le batch ci-dessus en définissant par exemple</p>
<p><code>set texts=0 1 2 3 4 5 6 7 8 9<br />
</code></p>
<p>Mais ceci est fastidieux pour une police complète, et pour des raisons de programmation de l&#8217;application finale, il peut être utile de nommer les fichiers d&#8217;après le code ASCII de chaque caractère. Comme cette fonctionnalité n&#8217;est pas disponible dans le langage de commande Windows, il faut programmer ceci dans un langage évolué. Par exemple en LUA:</p>
<p><code>params="-background none -font Bauhaus-93 -pointsize 72 -density 300 -fill white -blur 0x5 "<br />
for i=32,167 do<br />
os.execute(&#8221;convert.exe &#8220;..params..&#8221;label:&#8221;..string.char(i)..&#8221; &#8220;..i..&#8221;.png&#8221;)<br />
end</code></p>
<p>Ces 2 lignes génèrent automatiquement 130 fichiers de belles lettres prêtes à être utilisées comme textures dans votre jeu. A noter que ces fichiers pèsent déjà 10 Mb au total, soit plus que l&#8217;exécutable d&#8217;ImageMagick : il peut donc être intéressant d&#8217;inclure ImageMagick à votre produit et de l&#8217;utiliser pour créer les polices nécessaires lors de l&#8217;installation plutôt que d&#8217;alourdir votre distribution&#8230;</p>
<p>Enfin, si vous trouvez les polices ci-dessus un peu trop carrées, visitez <a href="http://www.imagemagick.org/Usage/fonts/" target="_blank">cette page</a> qui vous donnera une petite idée des effets possibles, et explorez <a href="http://www.imagemagick.org/Usage/" target="_blank">celle-ci</a> pour une vision plus complète.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3dmon.wordpress.com/56/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3dmon.wordpress.com/56/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3dmon.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3dmon.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3dmon.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3dmon.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3dmon.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3dmon.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3dmon.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3dmon.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3dmon.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3dmon.wordpress.com/56/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3dmon.wordpress.com&blog=1476048&post=56&subd=3dmon&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3dmon.wordpress.com/2008/05/10/generation-de-polices-bitmap-de-haute-qualite/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/goulu-128.jpg" medium="image">
			<media:title type="html">Dr. Goulu</media:title>
		</media:content>

		<media:content url="http://3dmon.files.wordpress.com/2008/05/test.jpg" medium="image" />

		<media:content url="http://3dmon.files.wordpress.com/2008/05/zoomo.png" medium="image" />
	</item>
		<item>
		<title>Historique du hardware 3D</title>
		<link>http://3dmon.wordpress.com/2008/05/08/historique-du-hardware-3d/</link>
		<comments>http://3dmon.wordpress.com/2008/05/08/historique-du-hardware-3d/#comments</comments>
		<pubDate>Thu, 08 May 2008 12:19:40 +0000</pubDate>
		<dc:creator>Dr. Goulu</dc:creator>
		
		<category><![CDATA[gpu]]></category>

		<category><![CDATA[web]]></category>

		<category><![CDATA[ATI]]></category>

		<category><![CDATA[DirectX]]></category>

		<category><![CDATA[nVidia]]></category>

		<category><![CDATA[OpenGL]]></category>

		<guid isPermaLink="false">http://3dmon.wordpress.com/?p=55</guid>
		<description><![CDATA[En préparant ma prochaine présentation au Microclub, j&#8217;ai créer un historique du hardware 3D intitulé &#8220;History of 3D hardware and software&#8221; sur Dipity, un site permettant de créer des &#8220;timelines&#8221;.
Ca se présente comme ça:

Comme Dipity est un site &#8220;web 2.0&#8243;, vous pouvez compléter cette timeline si vous le souhaitez 
      [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>En préparant ma prochaine présentation au Microclub, j&#8217;ai créer un <a href="http://www.dipity.com/user/goulu/timeline/history_of_3D_hardware_Software" target="_blank">historique du hardware 3D intitulé &#8220;History of 3D hardware and software&#8221;</a> sur <a href="http://www.dipity.com/" target="_blank">Dipity</a>, un <a href="http://web200x.wordpress.com/2008/05/08/chronologies-webifiees/" target="_blank">site permettant de créer des &#8220;timelines&#8221;</a>.</p>
<p>Ca se présente comme ça:</p>
<p style="text-align:center;"><a href="http://www.dipity.com/user/goulu/timeline/history_of_3D_hardware_Software" target="_blank"><img class="alignnone size-medium wp-image-50 aligncenter" src="http://web200x.files.wordpress.com/2008/05/dipitysample.png?w=300&h=152" alt="" width="300" height="152" /></a></p>
<p>Comme Dipity est un site &#8220;web 2.0&#8243;, vous pouvez compléter cette timeline si vous le souhaitez <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3dmon.wordpress.com/55/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3dmon.wordpress.com/55/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3dmon.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3dmon.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3dmon.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3dmon.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3dmon.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3dmon.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3dmon.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3dmon.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3dmon.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3dmon.wordpress.com/55/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3dmon.wordpress.com&blog=1476048&post=55&subd=3dmon&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3dmon.wordpress.com/2008/05/08/historique-du-hardware-3d/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/goulu-128.jpg" medium="image">
			<media:title type="html">Dr. Goulu</media:title>
		</media:content>

		<media:content url="http://web200x.files.wordpress.com/2008/05/dipitysample.png?w=300" medium="image" />
	</item>
		<item>
		<title>3D impossible</title>
		<link>http://3dmon.wordpress.com/2008/04/17/3d-impossible/</link>
		<comments>http://3dmon.wordpress.com/2008/04/17/3d-impossible/#comments</comments>
		<pubDate>Thu, 17 Apr 2008 07:09:23 +0000</pubDate>
		<dc:creator>Dr. Goulu</dc:creator>
		
		<category><![CDATA[modelisation]]></category>

		<category><![CDATA[raytracing]]></category>

		<category><![CDATA[éclairage]]></category>

		<category><![CDATA[3D]]></category>

		<category><![CDATA[illusions d'optique]]></category>

		<guid isPermaLink="false">http://3dmon.wordpress.com/?p=54</guid>
		<description><![CDATA[Trouvé quelques magnifiques images sur Mighty Optical Illusions :

 
Il s&#8217;agit d&#8217;illusions d&#8217;optique assez classiques, mais traitées d&#8217;une façon assez remarquable : comment les auteurs ont-il réussi à faire de l&#8217;ombrage, voire du ray-tracing sur des objets impossibles à construire en 3D ???
Encore faut-il être sur que ces &#8220;objets&#8221; ne sont réellement pas modélisables : [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="text-align:left;">Trouvé quelques magnifiques images sur <a href="http://www.moillusions.com/2008/04/magnificent-cg-impossible-objects.html" target="_blank">Mighty Optical Illusions :<br />
</a></p>
<p style="text-align:center;"><div><embed src='http://widget-47.slide.com/widgets/slideticker.swf' type='application/x-shockwave-flash' quality='high' scale='noscale' salign='l' wmode='transparent' flashvars='site=widget-47.slide.com&#038;channel=792633534432450887&#038;cy=wp&#038;il=1' width='500' height='396' name='flashticker' align='middle' /><div style='width: 500px;text-align:left;'><a href='http://www.slide.com/pivot?ad=0&#038;tt=0&#038;sk=0&#038;cy=wp&#038;th=0&#038;id=792633534432450887&#038;map=1' target='_blank'><img src='http://widget-47.slide.com/p1/792633534432450887/wp_t000_v000_a000_f00/images/xslide1.gif' border='0' ismap='ismap' /></a> <a href='http://www.slide.com/pivot?ad=0&#038;tt=0&#038;sk=0&#038;cy=wp&#038;th=0&#038;id=792633534432450887&#038;map=2' target='_blank'><img src='http://widget-47.slide.com/p2/792633534432450887/wp_t000_v000_a000_f00/images/xslide2.gif' border='0' ismap='ismap' /></a></div></div></p>
<p style="text-align:left;">Il s&#8217;agit d&#8217;illusions d&#8217;optique assez classiques, mais traitées d&#8217;une façon assez remarquable : comment les auteurs ont-il réussi à faire de l&#8217;ombrage, voire du ray-tracing sur des objets impossibles à construire en 3D ???</p>
<p style="text-align:left;">Encore faut-il être sur que ces &#8220;objets&#8221; ne sont réellement pas modélisables : cette <a href="http://www.moillusions.com/2006/05/impossible-objects-category.html">liste d&#8217;objets impossible</a> montre que l&#8217;impossibilité est souvent une question de point de vue, ce que j&#8217;ai déjà montré sur la page consacrée au maitre de cet art : <a rel="bookmark" href="../2007/05/19/escher/">Escher</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3dmon.wordpress.com/54/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3dmon.wordpress.com/54/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3dmon.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3dmon.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3dmon.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3dmon.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3dmon.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3dmon.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3dmon.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3dmon.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3dmon.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3dmon.wordpress.com/54/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3dmon.wordpress.com&blog=1476048&post=54&subd=3dmon&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3dmon.wordpress.com/2008/04/17/3d-impossible/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/goulu-128.jpg" medium="image">
			<media:title type="html">Dr. Goulu</media:title>
		</media:content>
	</item>
		<item>
		<title>DiRT, le meilleur jeu de bagnoles</title>
		<link>http://3dmon.wordpress.com/2008/04/12/dirt-le-meilleur-jeu-de-bagnoles/</link>
		<comments>http://3dmon.wordpress.com/2008/04/12/dirt-le-meilleur-jeu-de-bagnoles/#comments</comments>
		<pubDate>Sat, 12 Apr 2008 09:15:00 +0000</pubDate>
		<dc:creator>Dr. Goulu</dc:creator>
		
		<category><![CDATA[Games]]></category>

		<category><![CDATA[jeu video]]></category>

		<category><![CDATA[PC]]></category>

		<category><![CDATA[voitures]]></category>

		<guid isPermaLink="false">http://3dmon.wordpress.com/?p=53</guid>
		<description><![CDATA[Après le très médiocre Need for Speed ProStreet, je cherchais un nouveau jeu de bagnoles pour me défouler et je l&#8217;ai trouvé. Colin McRae DIRT est un excellent jeu de rallye extrêmement réaliste et varié. On y conduit toutes sortes de voitures, de buggy et même de camions sur toutes sortes de pistes plus ou [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="text-align:left;"><img class="alignleft" style="float:left;margin:3px;" src="http://img.jeuxvideopc.com/images/jeux_boites/grandformat/10915.jpg" alt="" width="267" height="384" />Après le très médiocre Need for Speed ProStreet, je cherchais un nouveau jeu de bagnoles pour me défouler et je l&#8217;ai trouvé. <a href="http://www.codemasters.fr/dirt/index2.php?territory=French" target="_blank">Colin McRae DIRT</a> est un excellent jeu de rallye extrêmement réaliste et varié. On y conduit toutes sortes de voitures, de buggy et même de camions sur toutes sortes de pistes plus ou moins poussiéreuses dans toutes sortes de courses.</p>
<p style="text-align:left;">Côté réalisme, outre une qualité graphique à couper le souffle, c&#8217;est surtout la physique des véhicules qui m&#8217;a estomaqué.</p>
<p style="text-align:left;">L&#8217;adhérence sur les différentes surfaces est parfaitement simulée en considérant séparément chacune des roues. De plus, les dégâts aux véhicules sont aussi très bien gérés :  non seulement la carrosserie conserve les traces des touchettes, mais la physique et les performances du véhicule sont altérées en cas de chocs. Un nid de poule un peu profond fausse légèrement la direction, mais une sortie de route peut sérieusement diminuer la tenue de route voire la puissance de votre voiture.</p>
<p style="text-align:center;"><span style="text-align:center; display: block;"><a href="http://3dmon.wordpress.com/2008/04/12/dirt-le-meilleur-jeu-de-bagnoles/"><img src="http://img.youtube.com/vi/Y4sxvs3S-9s/2.jpg" alt="" /></a></span></p>
<p style="text-align:left;">Un excellent jeu, indispensable si vous avez un volant branché à votre PC.</p>
<p style="text-align:left;">
<p style="text-align:center;">
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3dmon.wordpress.com/53/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3dmon.wordpress.com/53/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3dmon.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3dmon.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3dmon.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3dmon.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3dmon.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3dmon.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3dmon.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3dmon.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3dmon.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3dmon.wordpress.com/53/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3dmon.wordpress.com&blog=1476048&post=53&subd=3dmon&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3dmon.wordpress.com/2008/04/12/dirt-le-meilleur-jeu-de-bagnoles/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/goulu-128.jpg" medium="image">
			<media:title type="html">Dr. Goulu</media:title>
		</media:content>

		<media:content url="http://img.jeuxvideopc.com/images/jeux_boites/grandformat/10915.jpg" medium="image" />

		<media:content url="http://img.youtube.com/vi/Y4sxvs3S-9s/2.jpg" medium="image" />
	</item>
		<item>
		<title>librairie GLua</title>
		<link>http://3dmon.wordpress.com/2008/03/20/librairie-glua/</link>
		<comments>http://3dmon.wordpress.com/2008/03/20/librairie-glua/#comments</comments>
		<pubDate>Thu, 20 Mar 2008 15:52:10 +0000</pubDate>
		<dc:creator>Dr. Goulu</dc:creator>
		
		<category><![CDATA[GLSL]]></category>

		<category><![CDATA[LUA]]></category>

		<category><![CDATA[demoniak]]></category>

		<category><![CDATA[maths]]></category>

		<guid isPermaLink="false">http://3dmon.wordpress.com/?p=52</guid>
		<description><![CDATA[GLua est une librairie open source qui offre au programmeurs LUA des classes et functions qui singent celles disponibles en GLSL, le &#8220;OpenGL Shading Language&#8221;.
GLua a été spécialement conçue comme librairie de base pour Demoniak3D, pour fournir un ensemble cohérent avec les shaders GLSL.
Contenu:

vec3.lua : vecteurs et arithmétique 3D
mat3.lua : matrice et arithmétique 3D
vec4.lua : [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>GLua est une librairie open source qui offre au programmeurs LUA des classes et functions qui singent celles disponibles en GLSL, le &#8220;OpenGL Shading Language&#8221;.</p>
<p>GLua a été spécialement conçue comme librairie de base pour Demoniak3D, pour fournir un ensemble cohérent avec les shaders GLSL.</p>
<h3>Contenu:</h3>
<ul>
<li>vec3.lua : vecteurs et arithmétique 3D</li>
<li>mat3.lua : matrice et arithmétique 3D</li>
<li>vec4.lua : vecteurs et arithmétique 3D</li>
<li>glsl.lua : fonctions génériques suivant les prototypes glsl comme définis dans le livre &#8220;OpenGL Shading Language&#8221; by Randi J. Rost</li>
<li>test.X.lua : tests unitaires du module X</li>
</ul>
<h3>Utilisation et exemples:</h3>
<p>L&#8217;utilisation des classes et fonctions est relativement simple.</p>
<p>Regardez les fichiers test.X.lua pour plus de détails et d&#8217;exemples.</p>
<h3>Téléchargement:</h3>
<p>GLua est disponible sur <a href="http://luaforge.net/projects/glua/" target="_blank">http://luaforge.net/projects/glua/</a> sous licence LGPL.</p>
<h3>Détails d&#8217;implémentation:</h3>
<ul>
<li>les classes sont basées sur class.lua, décrite ici: <a href="http://lua-users.org/wiki/SimpleLuaClasses">http://lua-users.org/wiki/SimpleLuaClasses</a></li>
<li>glsl.lua offre des fonctions génériques fonctionnant sur les nombres et tables LUA, et donc avec toutes les classes matrice/vecteur. Elle utilise intensivement la &#8220;programmation fonctionnelle&#8221; pour ce faire:
<ul>
<li>la fonction &#8220;apply&#8221; est définie comme suit:<br />
<code>--- applies a function to a table of parameters<br />
&#8211; @param f : function to apply to each element in v<br />
&#8211; @param v : (vector of) parameter(s) to f function<br />
&#8211; @return  : (vector of) result(s) of f(v)<br />
function apply(f,v)<br />
if type(v)==&#8221;number&#8221; then return f(v) end<br />
if type(v)==&#8221;table&#8221; then<br />
local res={}<br />
for i,x in ipairs(v) do res[i]=f(x) end<br />
return res<br />
end<br />
error(&#8221;apply &#8220;..f..&#8221;(&#8221;..type(v)..&#8221;) not implemented&#8221;)<br />
end</code></li>
<li>ainsi, les fonctions peuvent facilement être définies pour accepter des nombres, vecteurs et tables:<code><br />
function sin(rad)<br />
return apply(math.sin,rad)<br />
end</code></li>
</ul>
</li>
<li>le produit scalaire est implanté de 2 manières distinctes :
<ul>
<li>dans l&#8217;opérateur &#8220;exposant&#8221; ^ des classes</li>
<li>comme fonction générique dot(p1,p2) dans glsl.lua</li>
</ul>
</li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3dmon.wordpress.com/52/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3dmon.wordpress.com/52/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3dmon.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3dmon.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3dmon.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3dmon.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3dmon.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3dmon.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3dmon.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3dmon.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3dmon.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3dmon.wordpress.com/52/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3dmon.wordpress.com&blog=1476048&post=52&subd=3dmon&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3dmon.wordpress.com/2008/03/20/librairie-glua/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/goulu-128.jpg" medium="image">
			<media:title type="html">Dr. Goulu</media:title>
		</media:content>
	</item>
		<item>
		<title>GLua library</title>
		<link>http://3dmon.wordpress.com/2008/03/20/glua-library/</link>
		<comments>http://3dmon.wordpress.com/2008/03/20/glua-library/#comments</comments>
		<pubDate>Thu, 20 Mar 2008 15:32:59 +0000</pubDate>
		<dc:creator>Dr. Goulu</dc:creator>
		
		<category><![CDATA[GLSL]]></category>

		<category><![CDATA[LUA]]></category>

		<category><![CDATA[demoniak]]></category>

		<category><![CDATA[maths]]></category>

		<guid isPermaLink="false">http://3dmon.wordpress.com/?p=51</guid>
		<description><![CDATA[GLua is an open source library which provides LUA programmers with classes and functions that mimic those available in GLSL, the OpenGL Shading Language.
GLua was especially designed as a base library for the Demoniak3D real-time engine, as it provides a consistent framework with GLSL shaders.
Contents:

vec3.lua : 3D vectors and arithmetic
mat3.lua : 3D matrix and arithmetic
vec4.lua [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>GLua is an open source library which provides LUA programmers with classes and functions that mimic those available in GLSL, the OpenGL Shading Language.</p>
<p>GLua was especially designed as a base library for the Demoniak3D real-time engine, as it provides a consistent framework with GLSL shaders.</p>
<h3>Contents:</h3>
<ul>
<li>vec3.lua : 3D vectors and arithmetic</li>
<li>mat3.lua : 3D matrix and arithmetic</li>
<li>vec4.lua : 4D vectors and arithmetic</li>
<li>glsl.lua : generic functions following glsl prototypes as defined in book &#8220;OpenGL Shading Language&#8221; by Randi J. Rost</li>
<li>test.X.lua : unit test of module X</li>
</ul>
<h3>Usage &amp; Samples:</h3>
<p>Usage of the classes and functions is pretty straightforward.</p>
<p>Check the test.X.lua modules for more details or examples</p>
<h3>Download:</h3>
<p>GLua is available on <a href="http://luaforge.net/projects/glua/" target="_blank">http://luaforge.net/projects/glua/</a> under LGPL licence.</p>
<h3>Implementation details:</h3>
<ul>
<li>the classes are based on class.lua, described on <a href="http://lua-users.org/wiki/SimpleLuaClasses">http://lua-users.org/wiki/SimpleLuaClasses</a></li>
<li>glsl.lua offers generic function that work on LUA numbers and tables, and therefore all vector / matrix classes. It makes extensive use of functional programming to achieve this:
<ul>
<li>the &#8220;apply&#8221; function is defined as follows:<br />
<code>--- applies a function to a table of parameters<br />
&#8211; @param f : function to apply to each element in v<br />
&#8211; @param v : (vector of) parameter(s) to f function<br />
&#8211; @return  : (vector of) result(s) of f(v)<br />
function apply(f,v)<br />
if type(v)==&#8221;number&#8221; then return f(v) end<br />
if type(v)==&#8221;table&#8221; then<br />
local res={}<br />
for i,x in ipairs(v) do res[i]=f(x) end<br />
return res<br />
end<br />
error(&#8221;apply &#8220;..f..&#8221;(&#8221;..type(v)..&#8221;) not implemented&#8221;)<br />
end</code></li>
<li>then, functions can easily be defined to support numbers, vectors, or matrices:<code><br />
function sin(rad)<br />
return apply(math.sin,rad)<br />
end</code></li>
</ul>
</li>
<li>dot product is implemented in 2 different ways :
<ul>
<li>through the &#8220;power&#8221; ^ operator in classes</li>
<li>as a generic dot(p1,p2) function in glsl.lua</li>
</ul>
</li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3dmon.wordpress.com/51/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3dmon.wordpress.com/51/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3dmon.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3dmon.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3dmon.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3dmon.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3dmon.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3dmon.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3dmon.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3dmon.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3dmon.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3dmon.wordpress.com/51/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3dmon.wordpress.com&blog=1476048&post=51&subd=3dmon&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3dmon.wordpress.com/2008/03/20/glua-library/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/goulu-128.jpg" medium="image">
			<media:title type="html">Dr. Goulu</media:title>
		</media:content>
	</item>
		<item>
		<title>Phun - bac à sable de physique 2D</title>
		<link>http://3dmon.wordpress.com/2008/03/13/phun-bac-a-sable-de-physique-2d/</link>
		<comments>http://3dmon.wordpress.com/2008/03/13/phun-bac-a-sable-de-physique-2d/#comments</comments>
		<pubDate>Thu, 13 Mar 2008 13:50:06 +0000</pubDate>
		<dc:creator>Dr. Goulu</dc:creator>
		
		<category><![CDATA[2D]]></category>

		<category><![CDATA[Games]]></category>

		<category><![CDATA[physique]]></category>

		<guid isPermaLink="false">http://3dmon.wordpress.com/?p=50</guid>
		<description><![CDATA[Une autre petite appli sympa de physique en temps réel : Phun. 
 
On peut la télécharger ici, et partager des fichiers d&#8217;exemple ici. Il y a même une combine pour faire des engrenages. Vais essayer de faire un échappement d&#8217;horlogerie (le test qui tue&#8230;)
       ]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Une autre petite appli sympa de physique en temps réel : <a href="http://www.phun.at/">Phun. </a></p>
<p align="center"> <span style="text-align:center; display: block;"><a href="http://3dmon.wordpress.com/2008/03/13/phun-bac-a-sable-de-physique-2d/"><img src="http://img.youtube.com/vi/0H5g9VS0ENM/2.jpg" alt="" /></a></span></p>
<p>On peut la télécharger <a href="http://phun.cs.umu.se/wiki/Download" target="_blank">ici</a>, et partager des fichiers d&#8217;exemple <a href="http://phun.cs.umu.se/scenes.php" target="_blank">ici</a>. Il y a même <a href="http://www.codebot.org/articles/?doc=9516" target="_blank">une combine pour faire des engrenages.</a> Vais essayer de faire un échappement d&#8217;horlogerie (le test qui tue&#8230;)</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3dmon.wordpress.com/50/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3dmon.wordpress.com/50/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3dmon.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3dmon.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3dmon.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3dmon.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3dmon.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3dmon.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3dmon.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3dmon.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3dmon.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3dmon.wordpress.com/50/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3dmon.wordpress.com&blog=1476048&post=50&subd=3dmon&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3dmon.wordpress.com/2008/03/13/phun-bac-a-sable-de-physique-2d/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/goulu-128.jpg" medium="image">
			<media:title type="html">Dr. Goulu</media:title>
		</media:content>

		<media:content url="http://img.youtube.com/vi/0H5g9VS0ENM/2.jpg" medium="image" />
	</item>
		<item>
		<title>Visualisation de Molécules</title>
		<link>http://3dmon.wordpress.com/2008/02/19/visualisation-de-molecules/</link>
		<comments>http://3dmon.wordpress.com/2008/02/19/visualisation-de-molecules/#comments</comments>
		<pubDate>Tue, 19 Feb 2008 07:58:17 +0000</pubDate>
		<dc:creator>Dr. Goulu</dc:creator>
		
		<category><![CDATA[CUDA]]></category>

		<category><![CDATA[GLSL]]></category>

		<category><![CDATA[gpgpu]]></category>

		<category><![CDATA[physique]]></category>

		<category><![CDATA[realtime]]></category>

		<guid isPermaLink="false">http://3dmon.wordpress.com/?p=49</guid>
		<description><![CDATA[Tombé par hasard sur VMD - Visual Molecular Dynamics, un logiciel scientifique Open Source disponible sur Windows, Linux et MacOS-X. Il permet de visualiser en 3D temps réel des molécules complexes et se combine avec de nombreux plugins et autres logiciels pour réaliser des rendus assez spectaculaires :
 
     
La modélisation [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Tombé par hasard sur <a href="http://www.ks.uiuc.edu/Research/vmd/" target="_blank">VMD - Visual Molecular Dynamics</a>, un logiciel scientifique Open Source disponible sur Windows, Linux et MacOS-X. Il permet de visualiser en 3D temps réel des molécules complexes et se combine avec de nombreux plugins et autres logiciels pour réaliser des <a href="http://www.ks.uiuc.edu/Research/vmd/spotlight/" target="_blank">rendus assez spectaculaires</a> :</p>
<p><a href="http://www.ks.uiuc.edu/images/ofmonth/2007-11a/large.jpg" class="clear"> </a></p>
<p align="center"><a href="http://www.ks.uiuc.edu/images/ofmonth/2007-11a/large.jpg"><img src="http://www.ks.uiuc.edu/images/ofmonth/2007-11a/trematode-small.jpg" height="197" width="200" /></a> <a href="http://www.ks.uiuc.edu/images/ofmonth/2007-10b/riboions.jpg"><img src="http://www.ks.uiuc.edu/images/ofmonth/2007-10b/riboions-small.jpg" height="193" width="222" /></a> <img src="http://www.ks.uiuc.edu/Research/vmd/spotlight/images/HDL-AO-thumb.jpg" height="200" width="200" /> <img src="http://www.ks.uiuc.edu/Research/vmd/spotlight/images/cpmd.jpg" height="150" width="200" />  <img src="http://www.ks.uiuc.edu/Research/vmd/spotlight/images/stmv.jpg" height="208" width="210" /></p>
<p align="left">La modélisation des molécules demande énormément de puissance de calcul car il faut simuler les attractions/répulsions électrostatiques entre de très nombreux atomes pour trouver les positions de chacun. L&#8217;équipe de développement de VMD a beaucoup <a href="http://www.ks.uiuc.edu/Research/gpu/" target="_blank">utilisé les GPU pour accélérer</a> ces simulations, et <a href="http://www.ks.uiuc.edu/Research/vmd/cuda/" target="_blank">CUDA en particulier</a> (seulement sur Linux pour l&#8217;instant).</p>
<p align="left">L&#8217;article &#8220;<a href="http://www.scimag.com/ShowPR.aspx?PUBCODE=030&amp;ACCT=3000000100&amp;ISSUE=0801&amp;RELTYPE=PR&amp;ORIGRELTYPE=HPCC&amp;PRODCODE=00000000&amp;PRODLETT=C&amp;CommonCount=0" target="_blank">GPGPUs: Neat Idea or Disruptive Technology?</a>&#8221; sur ce sujet est très intéressant : l&#8217;auteur montre que les GPU peuvent apporter un gain d&#8217;un facteur 10 en puissance de calcul, mais que ce n&#8217;est pas suffisant pour changer radicalement la face de l&#8217;informatique.</p>
<p align="left">VMD supporte <a href="http://www.ks.uiuc.edu/Research/vmd/plugins/molfile/" target="_blank">une ribambelle de formats de fichier de représentation des molécules</a> dont certains, comme PDB, sont des fichiers textes, donc potentiellement importables dans d&#8217;autres logiciels &#8230;</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3dmon.wordpress.com/49/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3dmon.wordpress.com/49/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3dmon.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3dmon.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3dmon.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3dmon.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3dmon.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3dmon.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3dmon.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3dmon.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3dmon.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3dmon.wordpress.com/49/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3dmon.wordpress.com&blog=1476048&post=49&subd=3dmon&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3dmon.wordpress.com/2008/02/19/visualisation-de-molecules/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/goulu-128.jpg" medium="image">
			<media:title type="html">Dr. Goulu</media:title>
		</media:content>

		<media:content url="http://www.ks.uiuc.edu/images/ofmonth/2007-11a/trematode-small.jpg" medium="image" />

		<media:content url="http://www.ks.uiuc.edu/images/ofmonth/2007-10b/riboions-small.jpg" medium="image" />

		<media:content url="http://www.ks.uiuc.edu/Research/vmd/spotlight/images/HDL-AO-thumb.jpg" medium="image" />

		<media:content url="http://www.ks.uiuc.edu/Research/vmd/spotlight/images/cpmd.jpg" medium="image" />

		<media:content url="http://www.ks.uiuc.edu/Research/vmd/spotlight/images/stmv.jpg" medium="image" />
	</item>
		<item>
		<title>Fractales IFS, Flame, Moutons Electriques et GPU</title>
		<link>http://3dmon.wordpress.com/2008/02/01/fractales-ifs-flame-moutons-electriques-et-gpu/</link>
		<comments>http://3dmon.wordpress.com/2008/02/01/fractales-ifs-flame-moutons-electriques-et-gpu/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 19:32:39 +0000</pubDate>
		<dc:creator>Dr. Goulu</dc:creator>
		
		<category><![CDATA[GLSL]]></category>

		<category><![CDATA[LUA]]></category>

		<category><![CDATA[fractals]]></category>

		<category><![CDATA[gpu]]></category>

		<guid isPermaLink="false">http://3dmon.wordpress.com/?p=47</guid>
		<description><![CDATA[Un &#8220;système de fonctions itérées&#8221; ou &#8220;Iterated function system&#8221; (IFS) permet de produire des &#8220;fractales autosimilaires&#8221; ressemblant parfois à des feuilles, comme cette fougère calculée par Paul Nylander en Mathematica.
Les fractales &#8220;flamme&#8221; sont une généralisation des IFS inventée par Scott Draves. Son algorithme est décrit en détail ici. Ils produisent des motifs plus abstraits mais [...]]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><img src="http://bugman123.com/Fractals/Fern.gif" align="right" hspace="5" vspace="5" />Un &#8220;<a href="http://fr.wikipedia.org/wiki/Syst%C3%A8me_de_fonctions_it%C3%A9r%C3%A9es" target="_blank">système de fonctions itérées</a>&#8221; ou &#8220;<a href="http://en.wikipedia.org/wiki/Iterated_function_system" target="_blank">Iterated function system</a>&#8221; (IFS) permet de produire des &#8220;<a href="http://raphaello.univ-fcomte.fr/ig/Fractales/Fractales.htm" target="_blank">fractales autosimilaires</a>&#8221; ressemblant parfois à des feuilles, comme cette <a href="http://nylander.wordpress.com/2004/10/16/barnsley%e2%80%99s-fern/" target="_blank">fougère calculée par Paul Nylander en Mathematica.</a></p>
<p>Les fractales &#8220;flamme&#8221; sont une généralisation des IFS inventée par <a href="http://draves.org/" target="_blank">Scott Draves</a>. Son <a href="http://flam3.com/flame.pdf" target="_blank">algorithme est décrit en détail ici</a>. Ils produisent des motifs plus abstraits mais plus colorés, qu&#8217;il est possible de faire varier progressivement pour créer des animations spectaculaires.</p>
<p>Les &#8220;flame fractals&#8221; ont été popularisées par le superbe screen saver &#8220;<a href="http://electricsheep.org/" target="_blank">Electric Sheep</a>&#8221; que j&#8217;ai <a href="http://drgoulu.wordpress.com/2006/12/24/electric-sheep-le-screen-saver/" target="_blank">utilisé un temps</a> avant de me rendre compte que c&#8217;était en réalité un simple player de vidéos téléchargées munies d&#8217;un système de vote. En effet, le calcul des &#8220;moutons électriques&#8221; est très lent même sur un processeur puissant, et c&#8217;est un autre logiciel,  <a href="http://www.apophysis.org/" target="_blank">Apophysis</a>  qui est utilisé pour les générer.</p>
<p>Serait-il possible de calculer des &#8220;flame fractals&#8221; sur un GPU, voire même en temps réel ? Jusqu&#8217;ici, trois tentatives ont été faites:</p>
<ol>
<li>Simon G. Green, de nVidia, a présenté &#8220;<a href="http://www.geocities.com/simesgreen/gpuflame/">GPUflame - a GPU-accelerated IFS fractal renderer</a>&#8220;au SIGGraph 2005. Son executable pour Windows avec un shader en Cg (ne fonctionnant donc pas avec une carte ATI&#8230;) est disponible. Sur une GeForce 6600, il tourne à 2 fps environ. Exemple de résultat:
<div style="text-align:center;"><img src="http://www.geocities.com/simesgreen/gpuflame/sphere.jpg" height="400" width="400" /></div>
</li>
<li>RapidMind a réalisé un &#8220;<a href="http://www.rapidmind.net/case-electricsheep.php" target="_blank">Electric Sheep&#8221; sur GPU</a> sur la base de leur framework C++ dont j&#8217;ai parlé <a href="http://3dmon.wordpress.com/2008/01/30/programmation-des-gpu-en-c/">ici</a>. Il fonctionne à 10 fps environ sur une GeForce 8800, soit 60x plus vite  que sur un Intel Duo 6700. Ce programme n&#8217;est hélas pas disponible, on ne peut qu&#8217;admirer la video:
<div align="center"><span style="text-align:center; display: block;"><a href="http://3dmon.wordpress.com/2008/02/01/fractales-ifs-flame-moutons-electriques-et-gpu/"><img src="http://img.youtube.com/vi/oAAEcnSOgaE/2.jpg" alt="" /></a></span></div>
</li>
<li>Christopher Emory Moore a codé &#8220;<a href="http://web.engr.oregonstate.edu/~moorchri/hobby/flamefractal/" target="_blank">GPU Flame Fractal</a>&#8221; en GLSL + LUA, sur la base de son surprenant <a href="http://web.engr.oregonstate.edu/%7Emoorchri/hobby/glush/" target="_blank">GL Lua Shell</a> qui lui permet de tourner sur Mac, PC, et Linux. Et le code source est disponible! Il produit des flammes de 16&#8242;000 points à 85fps en faisant 20 itérations par frame. Le résultat est un peu brut, mais quand ça bouge c&#8217;est très joli:
<div style="text-align:center;"><a href="http://web.engr.oregonstate.edu/~moorchri/hobby/flamefractal/pics/6.jpg" target="_blank"><img src="http://web.engr.oregonstate.edu/~moorchri/hobby/flamefractal/pics/6.jpg" height="300" width="480" /></a></div>
</li>
</ol>
<p>reste plus qu&#8217;à en faire une version pour <a href="http://3dmon.wordpress.com/category/demoniak/">Demoniak3D</a> &#8230;</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3dmon.wordpress.com/47/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3dmon.wordpress.com/47/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3dmon.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3dmon.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3dmon.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3dmon.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3dmon.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3dmon.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3dmon.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3dmon.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3dmon.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3dmon.wordpress.com/47/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3dmon.wordpress.com&blog=1476048&post=47&subd=3dmon&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3dmon.wordpress.com/2008/02/01/fractales-ifs-flame-moutons-electriques-et-gpu/feed/</wfw:commentRss>
	
		<media:content url="http://a.wordpress.com/avatar/goulu-128.jpg" medium="image">
			<media:title type="html">Dr. Goulu</media:title>
		</media:content>

		<media:content url="http://bugman123.com/Fractals/Fern.gif" medium="image" />

		<media:content url="http://www.geocities.com/simesgreen/gpuflame/sphere.jpg" medium="image" />

		<media:content url="http://img.youtube.com/vi/oAAEcnSOgaE/2.jpg" medium="image" />

		<media:content url="http://web.engr.oregonstate.edu/~moorchri/hobby/flamefractal/pics/6.jpg" medium="image" />
	</item>
	</channel>
</rss>