/usr/share/common-lisp/source/mcclim/Backends/OpenGL/README is in cl-mcclim 0.9.6.dfsg.cvs20100315-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 | -How to use Free-CLIM with OpenGL backend version 0.1-
- Installation -
I've installed those bindings for CMUCL, and that needed a few changes in the source code.
The version that i've used is not the most recent (i used the 2000-09-18 release), because i did not need the bindings with GLUT library.
I think there are not many differences with these bindings for other Common Lisp releases.
1. Get OpenGL/MesaGL bindings
You can download it at this address :
ftp://ftp.cs.toronto.edu/pub/mann/Software/Lisp/
or find it in the Free-CLIM cvs directory : McCLIM/OpenGL/archives/
2. Untar the file
3. For CMUCL :
Open the "cmucl-interface-defpackage.lisp" file and change the "vector-data-address" by "array-data-address"
Open the "gl.lisp" file and add these few lines :
(foreign-function glgentextures (INT (POINTER INT)) VOID "glGenTextures")
(foreign-function glbindtexture (INT INT) VOID "glBindTexture")
(foreign-function glcopyteximage1d (INT INT INT INT INT INT INT) VOID "glCopyTexImage1D")
(foreign-function glcopyteximage2d (INT INT INT INT INT INT INT INT) VOID "glCopyTexImage2D")
(foreign-function glcopytexsubimage1d (INT INT INT INT INT INT) VOID "glCopyTexSubImage1D")
(foreign-function glcopytexsubimage2d (INT INT INT INT INT INT INT INT) VOID "glCopyTexSubImage2D")
4. Compile the bindings, according to the bindings README file.
- How to use the backend -
This backend is provided for OpenGL working with X Window System.
1. Start Lisp
2. Load the OpenGL bindings file :
(load "<OpenGL bindings directory>/defsystem.lisp")
(load-gl)
(load-xlib)
2. Load the system definition file:
(load "system-opengl.lisp")
3. Load the file patch-cmu.lisp
(load "patch-cmu.lisp")
4. Load the source code of the system:
(operate-on-system :clim :load :load-source-instead-of-binary t)
(operate-on-system :clim-opengl :load :load-source-instead-of-binary t)
(operate-on-system :clim-examples :load :load-source-instead-of-binary t)
5. Compile and load the system:
(operate-on-system :clim :compile)
(operate-on-system :clim-opengl :compile)
(operate-on-system :clim-examples :compile)
6. Load the compiled system:
(operate-on-system :clim :load)
(operate-on-system :clim-opengl :load)
(operate-on-system :clim-examples :load)
- Major thing to do -
* Implement the use of the clipping-region for opengl-medium
- BUGS -
Unfortunaly, there are lots of bugs.
They will be resolved little by little in the future.
This version could be considered as the beta-test version of the backend.
|