From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 387977F164 for ; Sun, 6 Mar 2016 12:14:38 +0100 (CET) IronPort-PHdr: 9a23:fOIPShViCgY8GS15nU0FxTfJq/bV8LGtZVwlr6E/grcLSJyIuqrYZh2Ot8tkgFKBZ4jH8fUM07OQ6PC/HzNRqszb+Fk5M7VyFDY9wf0MmAIhBMPXQWbaF9XNKxIAIcJZSVV+9Gu6O0UGUOz3ZlnVv2HgpWVKQka3CwN5K6zPF5LIiIzvjqbpq8KVPFQD3mD1SIgxBSv1hD2ZjtMRj4pmJ/R54TryiVwMRd5rw3h1L0mYhRf265T41pdi9yNNp6BprJYYAu3SNp41Rr1ADTkgL3t9pIiy7UGCHkOz4S48X2MaiBtLSyLC6xSyCpf8tCfgt+lVxC6COsywVbczQHKp6KI9GzHyjyJSHD4j8XrLjdRwgephqRyvrhh7wsaAS4GPNeFiebvdcJUgTGRPV8JVVgRcBIKiKpAGEe0AMKBWtd+u9BM1sRKiCFz0V6vUwThSiyqzhPVi3g== Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=Christophe.Raffalli@univ-savoie.fr; spf=SoftFail smtp.mailfrom=raffalli@univ-savoie.fr; spf=None smtp.helo=postmaster@raffalli.eu Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of Christophe.Raffalli@univ-savoie.fr) identity=pra; client-ip=192.162.68.177; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="raffalli@univ-savoie.fr"; x-sender="Christophe.Raffalli@univ-savoie.fr"; x-conformance=sidf_compatible Received-SPF: SoftFail (mail2-smtp-roc.national.inria.fr: domain of raffalli@univ-savoie.fr is inclined to not designate 192.162.68.177 as permitted sender) identity=mailfrom; client-ip=192.162.68.177; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="raffalli@univ-savoie.fr"; x-sender="raffalli@univ-savoie.fr"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@raffalli.eu) identity=helo; client-ip=192.162.68.177; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="raffalli@univ-savoie.fr"; x-sender="postmaster@raffalli.eu"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0CmBADPENxW/7FEosBdyRgQAQEBAQEBAQFjJ4ItghQBAQEDASMwJgULCxgJIQICDwVJiC0IBLA0jksiCIYXg0BRLIF2hUQrgQ8FlyqNYwqBY4REiFOOVTcrg2WKJgMBAQE X-IPAS-Result: A0CmBADPENxW/7FEosBdyRgQAQEBAQEBAQFjJ4ItghQBAQEDASMwJgULCxgJIQICDwVJiC0IBLA0jksiCIYXg0BRLIF2hUQrgQ8FlyqNYwqBY4REiFOOVTcrg2WKJgMBAQE X-IronPort-AV: E=Sophos;i="5.22,546,1449529200"; d="asc'?scan'208";a="206186070" Received: from vps29067.lws-hosting.com (HELO raffalli.eu) ([192.162.68.177]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/ADH-AES256-GCM-SHA384; 06 Mar 2016 12:14:37 +0100 Received: from localhost (bin73-1-78-240-16-62.fbx.proxad.net [78.240.16.62]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by raffalli.eu (Postfix) with ESMTPSA id 5852E3522286; Sun, 6 Mar 2016 12:14:36 +0100 (CET) Date: Sun, 6 Mar 2016 12:14:28 +0100 From: Christophe Raffalli To: Hendrik Boom Cc: caml-list@inria.fr Message-ID: <20160306111427.GA15764@delli7.univ-savoie.fr> References: <20160305231802.GA14665@delli7.univ-savoie.fr> <20160306004246.GA11238@topoi.pooq.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="yrj/dFKFPuw6o+aM" Content-Disposition: inline In-Reply-To: <20160306004246.GA11238@topoi.pooq.com> User-Agent: Mutt/1.5.24 (2015-08-30) X-Validation-by: christophe.raffalli@univ-savoie.fr Subject: Re: [Caml-list] Announce: ocaml bindings for gles 3 --yrj/dFKFPuw6o+aM Content-Type: text/plain; charset=utf-8 Content-Disposition: inline On 16-03-05 19:42:46, Hendrik Boom wrote: > Aren't there already bindings of OpenGL for OCaml? Yes, but not for recent version of Open LG (i.e. version 3 and 4) or GLES (any version). gles3 are bindings for GLES which is available on every platforms including cell phones and tablets. The bindings also try to be different. Let me recall some context to explain... There are also some discussions about teaching below ... In OpenGL 1 series, you could send the vertices of your object using one function call per vertex. There was a fixed pipeline processing your data using a lot of state variables. There was also a stack of matrices transformations. With the apparition of GLSL (the Open GL Shading Language). All this was not really used anymore, as the user is now free to do the computation - on CPU - on GPU, for each vertex - on GPU, for each fragment This is very flexible indeed. And the way to share data also improved with VBO. In GLES and Open 3 or 4, the fixed pipeline, the possibility to send vertices one by one, matrices stack, ... have all been removed. Shaders are mandatory if you want to render anything. To my knowledge there are no bindings for Open GL >= 3 or GLES from OCaml. So this is the first. One problem with recent Open GL is teaching ... From C this is very technical and almost unasable with students. The idea of my bindings is to have - lowlevel bindings that are already a bit easier than using C directly (more errors detected at typing and runtime). - highlevel bindings usable by students, but also more confortable for the general programmer. I actually used thess bindings with my students this year ... Not perfect yet, but better than C or old OpenGL OCaml bindings. I hope this clarify things ... > Might there be a reason to convert my rather feeble > video game to gles3? (I'm currently using glMlite) glMlite (from the web page) is OpenGL 1/2 with a sentence I do no get fully: "glMLite is ready to develop forward compatible OpenGL 3.X programs!" To know if should switch to gles3 .... you have to give it a try ... If you have improvment to gles3 that would make you switch, please contribute ! Cheers, Christophe --yrj/dFKFPuw6o+aM Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iEYEARECAAYFAlbcERMACgkQi9jr/RgYAS5TOQCeJDDzOXyQqpHNSdfzyX5y2GnS 4cUAoKHRasxQBPuN9dVxNfoKaxfaUHRd =Z8SE -----END PGP SIGNATURE----- --yrj/dFKFPuw6o+aM--