[cello-devel] Portacello 2
Kenny Tilton
ktilton at nyc.rr.com
Tue Mar 2 06:32:34 UTC 2004
After seeing the demos working again on both ACL and LW on win32 I
quickly just made a zip before I could be tempted to fuss with it even more.
The cello ftp site now contains portacello2.zip and pc2dll.zip. I could
not work out real quickly how to do the PGP signing cl.net wants, but
sometime tomorrow look for those to be replaced by signed versions.
First, a quick note: there is a "build.lisp" at the top level directory.
It is garbage.
As for the rest, still lots of hard-coded file paths and font names.
Look for "with-styles" and/or "gui-style-ftgl" for fonts, "dvx" (my new
development root) for paths.
The code has been carved up into components. Let's walk through
"cello-demo-build.lisp", the full build, to see the whole picture:
> ;; -*- mode: Lisp; Syntax: Common-Lisp; Package: cl-user; -*-
>
> (in-package :cl-user)
>
>
> ;; ----------------------------------------
> ;; ALERT:: Adjust all paths as necessary
> ;; ----------------------------------------
>
> #-asdf
> (load "/dvx/asdf.lisp")
not included
>
>
> #+build
>
> (let ((d-force nil))
> (load "/dvx/build-sys-kt.lisp")
> (build-sys d-force "c" "dvx" "uffi")
not included
>
> (build-sys d-force "c" "dvx" "ffi-extender")
> (build-sys d-force "c" "dvx" "cl-opengl")
The latter starts a pattern for components:
directory is dvx\cl-opengl.
that contains cl-opengl-build.lisp
and cl-opengl.asd
the source defines the package cl-opengl
the test function is: (cl-opengl::lesson-14)
oops. well, i wanted to give nehe credit. anyway, the pattern is
followed pretty tightly. The goal is also to make each module as
standalone as possible. So cl-opengl is just Lisp+OpenGL (via the glut
and the bindings rolled with my ffi-extender package.
aside: ffi-extender is a fun way to quickly get a bunch of bindings, but
it should probably be used instead as a utility to convert C headers
into vanilla UFFI source. future project.
> (load "/dvx/cl-ftgl/cl-ftgl.lisp")
This repeats the cl-opengl demo but with nice Ftgl fonts
> (build-sys nil "c" "dvx" "cl-magick")
background is pixel-drawn, escher cube (a bug, but a cool one) is a texture.
> (build-sys nil "c" "dvx" "cells")
> (build-sys nil "c" "dvx" "cellocore")
Widgets on nothing but OpenGl and the glut, hence crummy type.
>
> (build-sys t "c" "dvx" "cello")
cellocore + FTGL + ImageMagick
> (build-sys t "c" "dvx" "cello" "demo"))
>
> #+run
> (cello::cello-demo)
the lighting panel is great fun. turn up the alpha on the colors of the
shape to get brighter color, turn it down to watch it fade out.
interesting bug: too far left of the line width slider and the line
starts getting thicker. tip: the torus is the most fun. another lighting
tip. bring up diffusion and lower ambience for shading. Oh yeah: turn
down the rotations or the spinning will make you dizzy.
definitely pay with the number of rings etc in the torus and sphere.
more as i think of it. but as the name suggests, still not ready for
development. I plan to take a week now and just do new widgets and
menus. Just noticed an "overlay" cabability that might be great (fast)
for menus.
kt
--
http://tilton-technology.com
Why Lisp? http://alu.cliki.net/RtL%20Highlight%20Film
Your Project Here! http://alu.cliki.net/Industry%20Application
More information about the cello-devel
mailing list