Difference between revisions of "LambdaCubeEngine"
Jump to navigation
Jump to search
DonStewart (talk | contribs) m (Fix indenting in text.) |
|||
(37 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
⚫ | |||
− | == Lambda-Cube render engine == |
||
+ | LambdaCube 3D is Haskell-like purely functional domain specific language for programming the GPU (graphics processing unit). |
||
⚫ | |||
+ | During the years the project had lot of rewrite and reconfiguration. |
||
− | Lamda-cube is a 3D rendering engine entirely written in Haskell. |
||
+ | It was a long journey from a Haskell OGRE clone to a graphics EDSL and finally to a standalone compiler. |
||
+ | Read more on [http://lambdacube3d.com/history project history] page. |
||
+ | Project homepage: [http://lambdacube3d.com/ http://lambdacube3d.com] |
||
− | 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) |
||
+ | == Download == |
||
− | I'd like to release a preview version soon (in end of March). |
||
+ | [https://github.com/lambdacube3d LambdaCube 3D on GitHub] |
||
− | === Screenshot === |
||
+ | == History == |
||
⚫ | |||
+ | * 2015-04-14 - New homepage: [http://lambdacube3d.com/ http://lambdacube3d.com] |
||
+ | * 2015-02-14 - First working DSL compiler |
||
+ | * 2014-11-?? - The focus turns for the DSL implementation |
||
+ | * 2012-08-15 - Started development [http://lambdacube3d.wordpress.com/ blog] |
||
+ | * 2012-03-?? - The project was reborn as an EDSL for GPU graphics programming |
||
+ | * 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 |
||
+ | == Screenshots of previous iterations == |
||
− | === License === |
||
+ | |||
⚫ | |||
+ | === 2012-06 - LC DSL Q3 example === |
||
+ | |||
+ | [[Image:Lc-q3.png|800px|Quake3 example]] |
||
+ | |||
+ | === 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 === |
||
+ | |||
⚫ | |||
+ | == Licence == |
||
⚫ | |||
− | === Features === |
||
− | * Mesh file format |
||
− | ** geometry is supported |
||
− | ** skeletal animation is in progress |
||
+ | 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. |
||
− | * [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 |
||
+ | [[Category:Applications]] |
||
− | ===Used Packages and programs=== |
||
+ | [[Category:3D]] |
||
− | * OpenGL |
||
− | * GLFW |
||
− | * STB-image |
||
− | * HXT |
||
− | * UULib |
||
− | * Zip-Archive |
||
− | * Alex |
Latest revision as of 14:13, 4 February 2016
Overview
LambdaCube 3D is Haskell-like purely functional domain specific language for programming the GPU (graphics processing unit).
During the years the project had lot of rewrite and reconfiguration. It was a long journey from a Haskell OGRE clone to a graphics EDSL and finally to a standalone compiler. Read more on project history page.
Project homepage: http://lambdacube3d.com
Download
History
- 2015-04-14 - New homepage: http://lambdacube3d.com
- 2015-02-14 - First working DSL compiler
- 2014-11-?? - The focus turns for the DSL implementation
- 2012-08-15 - Started development blog
- 2012-03-?? - The project was reborn as an EDSL for GPU graphics programming
- 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 of previous iterations
2012-06 - LC DSL Q3 example
2012-06 - LC DSL Stunts example
2009-11 - Hackage release
2009-09 - JSSP meeting
Tile Racer track loader:
Bullet physics integration:
2009-03 - Pre-summer mock-up
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.