<?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>Coder-Studio &#187; SDL</title>
	<atom:link href="http://www.coder-studio.com/blog/tag/sdl/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.coder-studio.com/blog</link>
	<description></description>
	<lastBuildDate>Wed, 02 Mar 2011 22:17:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>OCaml et la 3D : CamlGL &amp; LablGL</title>
		<link>http://www.coder-studio.com/blog/276/</link>
		<comments>http://www.coder-studio.com/blog/276/#comments</comments>
		<pubDate>Wed, 29 Apr 2009 15:50:35 +0000</pubDate>
		<dc:creator>Alp Mestan</dc:creator>
				<category><![CDATA[Langages fonctionnels]]></category>
		<category><![CDATA[GlCaml]]></category>
		<category><![CDATA[LablGl]]></category>
		<category><![CDATA[ocaml]]></category>
		<category><![CDATA[ocamlsdl]]></category>
		<category><![CDATA[OpenGL]]></category>
		<category><![CDATA[SDL]]></category>

		<guid isPermaLink="false">http://www.coder-studio.com/blog/?p=276</guid>
		<description><![CDATA[Bonsoir, Comme demandé récemment par l'un des membres, il est tout à fait possible de faire de la 3D avec OpenGL en OCaml. Il y a principalement 2 bindings. LablGL GlCaml Inutile de commencer à donner un cours sur OpenGL, la plupart d'entre vous connaissant déjà, qui plus est il y a tout le nécessaire [...]]]></description>
			<content:encoded><![CDATA[<p>Bonsoir,</p>
<p>Comme demandé récemment par l'un des membres, il est tout à fait possible de faire de la 3D avec OpenGL en OCaml. Il y a principalement 2 bindings.</p>
<ul>
<li><a href="http://wwwfun.kurims.kyoto-u.ac.jp/soft/olabl/lablgl.html">LablGL</a></li>
<li><a href="http://glcaml.sourceforge.net/">GlCaml</a></li>
</ul>
<p><div id="attachment_277" class="wp-caption aligncenter" style="width: 657px"><a href="http://www.coder-studio.com/blog/wp-content/uploads/2009/04/glcaml.png"><img src="http://www.coder-studio.com/blog/wp-content/uploads/2009/04/glcaml.png" alt="Exemple d&#039;utilisation de GlCaml" title="glcaml" width="647" height="517" class="size-full wp-image-277" /></a><p class="wp-caption-text">Exemple d'utilisation de GlCaml</p></div><br />
Inutile de commencer à donner un cours sur OpenGL, la plupart d'entre vous connaissant déjà, qui plus est il y a tout le nécessaire pour OpenGL en C &#038; C++. Ces deux bibliothèques OCaml ne sont que des bindings, c'est à dire qu'elles appellent les fonctions C classiques en interfaçant par le biais de fonctions OCaml.</p>
<p>Juste pour vous donner une idée, voici un extrait du code correspondant au screenshot ci-dessus. Il s'agissait ici de montrer que ça existe, à quoi ça ressemble et où trouver le nécessaire pour s'y mettre.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p276code2'); return false;">View Code</a> OCAML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p2762"><td class="code" id="p276code2"><pre class="ocaml" style="font-family:monospace;"><span style="color: #06c; font-weight: bold;">let</span> draw_gl_scene <span style="color: #6c6;">&#40;</span><span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">=</span>
    glClear  <span style="color: #6c6;">&#40;</span>gl_color_buffer_bit lor gl_depth_buffer_bit<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>		 <span style="color: #5d478b; font-style: italic;">(* Clear The Screen And The Depth Buffer *)</span>
    glLoadIdentity  <span style="color: #6c6;">&#40;</span><span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>				 <span style="color: #5d478b; font-style: italic;">(* Reset The View*)</span>
&nbsp;
    glTranslatef <span style="color: #c6c;">0.0</span> <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">!</span>z <span style="color: #a52a2a;">;</span>                   <span style="color: #5d478b; font-style: italic;">(* move z units out from the screen. *)</span>
&nbsp;
    glRotatef <span style="color: #a52a2a;">!</span>xrot <span style="color: #c6c;">1.0</span> <span style="color: #c6c;">0.0</span> <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span>		 <span style="color: #5d478b; font-style: italic;">(* Rotate On The X Axis *)</span>
    glRotatef <span style="color: #a52a2a;">!</span>yrot <span style="color: #c6c;">0.0</span> <span style="color: #c6c;">1.0</span> <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span>		 <span style="color: #5d478b; font-style: italic;">(* Rotate On The Y Axis *)</span>
&nbsp;
    glBindTexture gl_texture_2d  texture<span style="color: #a52a2a;">.</span><span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">!</span>filter<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>    <span style="color: #5d478b; font-style: italic;">(* choose the texture to use. *)</span>
&nbsp;
    glBegin gl_quads <span style="color: #a52a2a;">;</span>		                 <span style="color: #5d478b; font-style: italic;">(* begin drawing a cube *)</span>
&nbsp;
     <span style="color: #5d478b; font-style: italic;">(* Front Face  note that the texture's corners have to match the quad's corners  *)</span>
    glNormal3f  <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>                               <span style="color: #5d478b; font-style: italic;">(* front face points out of the screen on z. *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Left Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Right Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Right Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Left Of The Texture and Quad *)</span>
&nbsp;
     <span style="color: #5d478b; font-style: italic;">(* Back Face *)</span>
    glNormal3f  <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>                               <span style="color: #5d478b; font-style: italic;">(* back face points into the screen on z. *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Right Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Right Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Left Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Left Of The Texture and Quad *)</span>
&nbsp;
     <span style="color: #5d478b; font-style: italic;">(* Top Face *)</span>
    glNormal3f  <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span>                               <span style="color: #5d478b; font-style: italic;">(* top face points up on y. *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Left Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Left Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Right Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Right Of The Texture and Quad *)</span>
&nbsp;
     <span style="color: #5d478b; font-style: italic;">(* Bottom Face   *)</span>     
    glNormal3f  <span style="color: #c6c;">0.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span>                              <span style="color: #5d478b; font-style: italic;">(* bottom face points down on y.  *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Right Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Left Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Left Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Right Of The Texture and Quad *)</span>
&nbsp;
     <span style="color: #5d478b; font-style: italic;">(* Right face *)</span>
    glNormal3f  <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span>                               <span style="color: #5d478b; font-style: italic;">(* right face points right on x. *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Right Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Right Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Left Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f  <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Left Of The Texture and Quad *)</span>
&nbsp;
     <span style="color: #5d478b; font-style: italic;">(* Left Face *)</span>
    glNormal3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span>                               <span style="color: #5d478b; font-style: italic;">(* left face points left on x. *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Left Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">0.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Bottom Right Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">1.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span>   <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Right Of The Texture and Quad *)</span>
    glTexCoord2f <span style="color: #c6c;">0.0</span>  <span style="color: #c6c;">1.0</span> <span style="color: #a52a2a;">;</span> glVertex3f <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span>   <span style="color: #c6c;">1.0</span>  <span style="color: #6c6;">&#40;</span><span style="color: #a52a2a;">-.</span>1<span style="color: #a52a2a;">.</span>0<span style="color: #6c6;">&#41;</span> <span style="color: #a52a2a;">;</span>	 <span style="color: #5d478b; font-style: italic;">(* Top Left Of The Texture and Quad *)</span>
&nbsp;
    glEnd  <span style="color: #6c6;">&#40;</span><span style="color: #6c6;">&#41;</span><span style="color: #a52a2a;">;</span>                                     <span style="color: #5d478b; font-style: italic;">(* done with the polygon. *)</span>
&nbsp;
    xrot <span style="color: #a52a2a;">:=</span> <span style="color: #a52a2a;">!</span>xrot <span style="color: #a52a2a;">+.</span> <span style="color: #a52a2a;">!</span>xspeed<span style="color: #a52a2a;">;</span>		                 <span style="color: #5d478b; font-style: italic;">(* X Axis Rotation	 *)</span>
    yrot <span style="color: #a52a2a;">:=</span> <span style="color: #a52a2a;">!</span>yrot <span style="color: #a52a2a;">+.</span> <span style="color: #a52a2a;">!</span>yspeed		                 <span style="color: #5d478b; font-style: italic;">(* Y Axis Rotation *)</span></pre></td></tr></table></div>

<p>PS : aucun des deux ne semble être encore maintenu, toutefois GlCaml prend en charge les versions d'OpenGL jusqu'à 2.1 + extensions ARB et spécifiques aux vendeurs. GlCaml embarque un binding minimal de la SDL, moins complet que OCamlSDL que j'ai présenté dans un post précédent.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.coder-studio.com/blog/276/feed/</wfw:commentRss>
		<slash:comments>5107</slash:comments>
		</item>
	</channel>
</rss>

