Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
CFFI bindings to Ogre
Common Lisp C++ Other
branch: master
Failed to load latest commit information.
3rd-party/moc Just muffling a MINGW compiler warning.
bin Changes to make make-dist & co. work on Windows.
bindings-generator Janitorial duties.
cmake-modules Removed CEGUI support and salted the ground it walked on.
dist Removed CEGUI support and salted the ground it walked on.
doc Removed CEGUI support and salted the ground it walked on.
examples Minor change to make the script work with the Debian Ogre packages.
lib Initial version.
libmygui_okra Initial working MyGUI support.
libokra "Ogre.h" -> <Ogre.h>
src-bindings Janitorial duties.
src-common A better way to create aliases for functions.
src-mygui Initial working MyGUI support.
src
CMakeLists.txt Removed CEGUI support and salted the ground it walked on.
LICENSE Initial version.
README.md Update project status.
okra-bindings-generator.asd Removed all the noise functions in favour of using the Black Tie libr…
okra-bindings.asd Removed all the noise functions in favour of using the Black Tie libr…
okra-common.asd Removed all the noise functions in favour of using the Black Tie libr…
okra-mygui.asd Removed all the noise functions in favour of using the Black Tie libr…
okra.asd Removed all the noise functions in favour of using the Black Tie libr…

README.md

Okra

status: stalled

I do not see myself working on this project anymore. Game engines like Unity and Unreal Engine 4 have come so far these days that a more interesting approach would be to try and get Common Lisp support in there by using f.e. SICL.

Also, check out CLinch.

CFFI bindings to Ogre

   

Notes to self

Introduction

Okra provides CFFI bindings to the Ogre 3D graphics engine.

There's a video of the flock demo on YouTube.

License

This project is released under the simplified BSD license.

Documentation

See doc/Okra.html or doc/Okra.pdf for documentation.

To Do

In order of priority:

  1. Clean up the code (specfically code duplication)
  2. Document the code
  3. Make a more extensive Lisp layer on top of the direct bindings
  4. Slowly support more and more of the Ogre API
  5. Tests (lower priority since the examples suffice for now)

Platforms

The latest Git checkout has been tested on the following platforms:

  • CLISP 2.44.1 / Debian Linux 2.6.30 / Ogre 1.6.2 src
  • CLISP 2.48 / Debian Linux 2.6.30 / Ogre 1.6.2 src
  • Clozure CL 1.4-dev-r12681M-trunk / Debian Linux 2.6.30 / Ogre 1.6.2 src
  • SBCL 1.0.25.debian / Debian Linux 2.6.30 / Ogre 1.6.2 src
  • SBCL 1.0.31.0.debian / Debian Linux 2.6.30 / Ogre 1.6.2 src
  • Clozure CL ?.? / Windows XP 2 / Ogre 1.6.1 SDK
  • Clozure CL ?.? / Windows Vista / Ogre 1.6.1 SDK
  • SBCL 1.0.22 / Windows XP 2 / Ogre 1.6.1 SDK
  • SBCL 1.0.29 / Windows Vista / Ogre 1.6.1 SDK

Older Clozure CL checkouts had some strange problem with bugging out on a call to cl::sin both on Linux as well as on Windows.

Downloads

  • http://github.com/aerique/okra/downloads
  • Windows executables for Okra: okra-20090910.zip.
    This includes executables for SBCL and CCL with Okra included.
    note: You'll need to have the DirectX End-User Runtime installed!
  • A Windows executable for the Flock example: flock.zip
    Please download this, check it for virusses, try to run both flock-ccl.exe & flock-sbcl.exe and tell me how it went (and tell me your version of Windows).
    note: You'll need to have the DirectX End-User Runtime installed!
    note 2: I've included d3dx9_30.dll but I'm not sure if this is enough for people who don't have Direct3D installed. Comments are welcome.

Version numbering

Okra follows the Ogre version numbering with its own version number tagged on at the end. This way you can easily see which version of Ogre these bindings are written for and what the latest release of Okra itself is.

Related projects

  • Black Tie: A noise library in Common Lisp.
  • Buclet: Common Lisp bindings for the Bullet physics library.
  • clois-lane: Common Lisp bindings for the Object-Oriented Input System (OIS).
Something went wrong with that request. Please try again.