Difference between revisions of "LambdaCubeEngine"

From HaskellWiki
Jump to navigation Jump to search
(23 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
== Overview ==
== Lambda-Cube render engine ==
 
   
  +
[http://lambdacube3d.wordpress.com/ LambdaCube] is a Domain Specific Language for 3D graphics.
=== Overview ===
 
   
 
The main goal of this project is to provide a modern and feature rich graphical backend for various Haskell projects, and in the long run it is intended to be a practical solution even for serious purposes.
Lambda-cube is a 3D rendering engine entirely written in Haskell.
 
   
  +
== Download ==
It targets newer graphics hardware.
 
The engine uses [http://www.ogre3d.org Ogre3D]'s [http://www.ogre3d.org/docs/manual/manual_9.html#SEC12 mesh] and [http://www.ogre3d.org/docs/manual/manual_14.html#SEC23 material] file format.
 
The main goal of this project is to provide a modern and feature rich graphical backend for various haskell projects. (e.g. FRP libraries)
 
   
  +
[https://github.com/csabahruska/lc-dsl LambdaCube DSL repository at GitHub]
=== TODO ===
 
* make a cabalized version and upload it to hackage
 
   
=== Download ===
+
== History ==
  +
* 2012-08-15 - Started development [http://lambdacube3d.wordpress.com/ blog]
[http://code.google.com/p/lambdacube/ lambdacube-engine]
 
  +
* 2011-06-23 - The second big release which already includes a more advanced Bullet binding and the Stunts example; details in the [http://just-bottom.blogspot.com/2011/06/renewed-lambdacube-bullet-bindings-and.html announcement]
  +
* 2009-11-18 - The first release on Hackage: [http://hackage.haskell.org/package/lambdacube-engine engine] and [http://hackage.haskell.org/package/lambdacube-examples examples], plus a [http://hackage.haskell.org/package/lambdacube-bullet bullet example] that will eventually grow into a library
  +
* 2009-09-22 - The summer report was presented at the [http://ocaml.janestcapital.com/?q=node/68 JSSP meeting]
  +
* 2009-08-10 - Major public commit that went with the mid-summer report
  +
* 2009-05-12 - Project [http://ocaml.janestcapital.com/?q=node/63 announced] to be among the JSSP winners
  +
* 2009-03-31 - Application for [http://ocaml.janestcapital.com/?q=node/58 Jane Street Summer Project] sent in
  +
* 2009-01-?? - Development started
   
=== Screenshot ===
+
== Screenshots ==
   
  +
=== 2012-06 - LC DSL Q3 example ===
[[Image:Lambdacube1.jpeg]]
 
   
  +
[[Image:Lc-q3.png|800px|Quake3 example]]
=== License ===
 
The code is released under GPLv3.
 
I'm planning to switch to BSD3.
 
Or maybe a dual license.
 
   
  +
=== 2012-06 - LC DSL Stunts example ===
  +
  +
[[Image:Lc-stunts-1.png|800px|Stunts example]]
  +
  +
[[Image:Lc-stunts-2.png|800px|Stunts example]]
  +
  +
=== 2009-11 - Hackage release ===
  +
  +
[[Image:Lambdacube-basic.png|LambdaCube basic example]]
  +
  +
=== 2009-09 - JSSP meeting ===
  +
  +
Tile Racer track loader:
  +
  +
[[Image:Lambdacube-tileracer.png|800px|LambdaCube Tile Racer track loader example]]
  +
  +
Bullet physics integration:
  +
  +
[[Image:Lambdacube-physics.png|800px|LambdaCube and Bullet physics example]]
  +
  +
=== 2009-03 - Pre-summer mock-up ===
  +
 
[[Image:Lambdacube1.jpeg]]
   
=== Features ===
+
== Licence ==
* Mesh file format
 
** geometry is supported
 
** skeletal animation is in progress
 
   
 
The code is released under BSD3.
* [http://www.ogre3d.org/docs/manual/manual_14.html#SEC23 Material Script]
 
** [partly supported] material
 
** [partly supported] technique
 
** [partly supported] pass
 
** [partly supported] texture_unit
 
** [partly supported] vertex_program
 
** [partly supported] fragment_program
 
   
  +
The engine and the examples not using physics build out of the box on a fresh Haskell Platform install under Windows. If Bullet is installed, the Stunts example should also be possible to get running with cabal-install.
===Used Packages and programs===
 
* OpenGL
 
* GLFW
 
* STB-image
 
* HXT
 
* UULib
 
* Zip-Archive
 
* Alex
 
   
  +
[[Category:Applications]]
 
[[Category:3D]]
 
[[Category:3D]]

Revision as of 09:00, 8 September 2012

Overview

LambdaCube is a Domain Specific Language for 3D graphics.

The main goal of this project is to provide a modern and feature rich graphical backend for various Haskell projects, and in the long run it is intended to be a practical solution even for serious purposes.

Download

LambdaCube DSL repository at GitHub

History

  • 2012-08-15 - Started development blog
  • 2011-06-23 - The second big release which already includes a more advanced Bullet binding and the Stunts example; details in the announcement
  • 2009-11-18 - The first release on Hackage: engine and examples, plus a bullet example that will eventually grow into a library
  • 2009-09-22 - The summer report was presented at the JSSP meeting
  • 2009-08-10 - Major public commit that went with the mid-summer report
  • 2009-05-12 - Project announced to be among the JSSP winners
  • 2009-03-31 - Application for Jane Street Summer Project sent in
  • 2009-01-?? - Development started

Screenshots

2012-06 - LC DSL Q3 example

Quake3 example

2012-06 - LC DSL Stunts example

Stunts example

Stunts example

2009-11 - Hackage release

LambdaCube basic example

2009-09 - JSSP meeting

Tile Racer track loader:

LambdaCube Tile Racer track loader example

Bullet physics integration:

LambdaCube and Bullet physics example

2009-03 - Pre-summer mock-up

Lambdacube1.jpeg

Licence

The code is released under BSD3.

The engine and the examples not using physics build out of the box on a fresh Haskell Platform install under Windows. If Bullet is installed, the Stunts example should also be possible to get running with cabal-install.