Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

Clarified status of project and changed email.

  • Loading branch information...
commit 2a6f46a0baa84c4f311b04803c7549a5645be060 1 parent 71cdfd6
authored
28  README.org
Source Rendered
@@ -9,7 +9,9 @@
9 9
 * What is CL-HORDE3D?
10 10
 
11 11
   A CFFI[fn:1] wrapper for the Horde3D library. Display flashy 3D graphics
12  
-  with Common Lisp.
  12
+  with Common Lisp. I use it to visualize some AI experiments I enjoy
  13
+  to develop in my free time. Unfortunately I do not have very much 
  14
+  of it, so the progress on CL-HORDE3D is unlikely to be fast.
13 15
 
14 16
 * What is Horde3D?
15 17
 
@@ -51,7 +53,8 @@
51 53
 
52 54
   cl-horde3d currently works together with the
53 55
   Horde3D_SDK_1.0.0-beta4. It should also run with the community svn
54  
-  version, but last time I tried the Chicago Example failed.
  56
+  version, as the API is compatible, but currently it crashes right at
  57
+  the start in the native code at h3dInit().
55 58
 
56 59
   There is also a horde3d-beta3-branch in the GIT repository which
57 60
   contains an older version of cl-horde3d which should run with
@@ -73,10 +76,12 @@
73 76
             means a big render target buffer).  I need to look into
74 77
             this further.
75 78
   
76  
-  - Clisp :: Crashes in foreign code.
  79
+  - Clisp :: Like SBCL. 
77 80
 
78 81
   I would like to hear about success or failure with other lisps and
79  
-  operating systems.
  82
+  operating systems. I'm also grateful for tips how to debug this
  83
+  better. Attaching gdb to the lisp process did not yet give me the
  84
+  insight I needed.
80 85
 
81 86
 * Translating the Horde3D API from C to CL
82 87
   
@@ -107,7 +112,7 @@
107 112
   There is code in CL-HORDE3D for the terrain and the sound
108 113
   extension, but it is totally untested and might not run at all. It
109 114
   is therefore disabled by default. The organization of source files
110  
-  for the extension will very likely change in the near future.
  115
+  for the extension will very likely change in the future.
111 116
 
112 117
 * Running the examples
113 118
 
@@ -120,9 +125,10 @@
120 125
     'Horde3D' into the top level directory of cl-horde3d, or you
121 126
     adjust the *horde3d-home-directory* variable in src/examples.lisp
122 127
     to point to your Horde3D installation. The examples will load
123  
-    resources from there.
  128
+    resources and assets from there.
124 129
 
125  
-  - Load the horde3d-examples system with asdf.
  130
+  - Load the horde3d-examples system with asdf. (Use CCL, other Lisp
  131
+    implementations will not work right now.) 
126 132
 
127 133
   - run (horde3d-examples:knight) or (horde3d-examples:chicago) from
128 134
     the REPL. The example programs should have the same controls
@@ -130,13 +136,13 @@
130 136
 
131 137
 * Footnotes
132 138
 
133  
-[fn:1] http://common-lisp.net/project/cffi
  139
+[fn:1] [[http://common-lisp.net/project/cffi]]
134 140
 
135 141
 [fn:2] [[http://horde3d.org]]
136 142
 
137  
-[fn:3] http://code.google.com/p/lispbuilder/wiki/LispbuilderSDL
  143
+[fn:3] [[http://code.google.com/p/lispbuilder/wiki/LispbuilderSDL]]
138 144
 
139  
-[fn:4] http://www.libsdl.org
  145
+[fn:4] [[http://www.libsdl.org]]
140 146
 
141  
-[fn:5] http://www.eclipse.org/legal/epl-v10.html
  147
+[fn:5] [[http://www.eclipse.org/legal/epl-v10.html]]
142 148
 
2  examples/chicago.lisp
@@ -6,7 +6,7 @@
6 6
 ;;;  \___|_| |_|_|\___\__,_|\__, |\___/
7 7
 ;;;                         |___/
8 8
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
10 10
 ;;;
11 11
 
12 12
 (in-package :horde3d-examples)
2  examples/examples.lisp
@@ -6,7 +6,7 @@
6 6
 ;;;  \___/_/\_\__,_|_| |_| |_| .__/|_|\___||___/
7 7
 ;;;                          |_|
8 8
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
10 10
 ;;;
11 11
 
12 12
 
2  examples/knight.lisp
@@ -6,7 +6,7 @@
6 6
 ;;; |_|\_\_| |_|_|\__, |_| |_|\__|
7 7
 ;;;               |___/
8 8
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
10 10
 ;;;
11 11
 
12 12
 (in-package :horde3d-examples)
10  examples/package.lisp
... ...
@@ -1,13 +1,13 @@
1 1
 ;;; package.lisp --- package for the horde3d examples
2  
-;;;                   _                    
3  
-;;;  _ __   __ _  ___| | ____ _  __ _  ___ 
  2
+;;;                   _
  3
+;;;  _ __   __ _  ___| | ____ _  __ _  ___
4 4
 ;;; | '_ \ / _` |/ __| |/ / _` |/ _` |/ _ \
5 5
 ;;; | |_) | (_| | (__|   < (_| | (_| |  __/
6 6
 ;;; | .__/ \__,_|\___|_|\_\__,_|\__, |\___|
7  
-;;; |_|                         |___/      
  7
+;;; |_|                         |___/
  8
+;;;
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
8 10
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
10  
-;;; 
11 11
 
12 12
 (in-package :cl-user)
13 13
 
6  horde3d-examples.asd
@@ -4,9 +4,9 @@
4 4
   :description "The Horde3d examples ported to Common Lisp."
5 5
   :long-description "The Horde3d examples ported to Common Lisp.
6 6
 Run (horde3d-examples:knight) and (horde3d-examples:chicago)."
7  
-  :version "0.1"
8  
-  :author "Ole Arndt <ole@sugarshark.com>"
9  
-  :maintainer "Ole Arndt <ole@sugarshark.com>"
  7
+  :version "0.2"
  8
+  :author "Ole Arndt <anwyn@sugarshark.com>"
  9
+  :maintainer "Ole Arndt <anwyn@sugarshark.com>"
10 10
   :licence "EPL 1.0"
11 11
   :depends-on (:horde3d :lispbuilder-sdl)
12 12
   :components ((:static-file "horde3d-examples.asd")
6  horde3d.asd
@@ -3,9 +3,9 @@
3 3
 (defsystem :horde3d
4 4
   :description "CFFI bindings for the Horde3D rendering engine."
5 5
   :long-description "CFFI bindings for the Horde3D rendering engine."
6  
-  :version "0.1"
7  
-  :author "Ole Arndt <ole@sugarshark.com>"
8  
-  :maintainer "Ole Arndt <ole@sugarshark.com>"
  6
+  :version "0.2"
  7
+  :author "Ole Arndt <anwyn@sugarshark.com>"
  8
+  :maintainer "Ole Arndt <anwyn@sugarshark.com>"
9 9
   :licence "EPL 1.0"
10 10
   :depends-on (:cffi)
11 11
   :in-order-to ((test-op (load-op :horde3d-test)))
2  src/bindings-package.lisp
... ...
@@ -1,6 +1,6 @@
1 1
 ;;; bindings-package.lisp --- package definition and exported symbols
2 2
 ;;;
3  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
  3
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
4 4
 ;;;
5 5
 
6 6
 (in-package :cl-user)
2  src/bindings.lisp
@@ -6,7 +6,7 @@
6 6
 ;;; |_.__/|_|_| |_|\__,_|_|_| |_|\__, |___/
7 7
 ;;;                              |___/
8 8
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
10 10
 ;;;
11 11
 
12 12
 (in-package :horde3d-cffi)
10  src/enums.lisp
@@ -6,7 +6,7 @@
6 6
 ;;;  \___|_| |_|\__,_|_| |_| |_|___/
7 7
 
8 8
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
10 10
 ;;;
11 11
 
12 12
 (in-package :horde3d-cffi)
@@ -438,7 +438,7 @@
438 438
 
439 439
 (deftypedenum mesh-node-parameters
440 440
   "The available Mesh node parameters.
441  
-		
  441
+
442 442
  :mesh-material-resource - Material resource used for the mesh
443 443
  :mesh-batch-start       - First triangle index of mesh in Geometry resource of parent Model node [read-only]
444 444
  :mesh-batch-count       - Number of triangle indices used for drawing mesh [read-only]
@@ -464,7 +464,7 @@
464 464
 
465 465
 (deftypedenum light-node-parameters
466 466
   "The available Light node parameters.
467  
-		
  467
+
468 468
  :light-material-resource   - Material resource used for the light
469 469
  :light-radius              - Radius of influence (default: 100.0)
470 470
  :light-fov                 - Field of view (FOV) angle (default: 90.0)
@@ -487,7 +487,7 @@
487 487
 
488 488
 (deftypedenum camera-node-parameters
489 489
     "The available Camera node parameters.
490  
-		
  490
+
491 491
  :camera-pipeline-resource    - Pipeline resource used for rendering
492 492
  :camera-out-texture-resource - 2D Texture resource used as output buffer (can be 0 to use main framebuffer) (default: 0)
493 493
  :camera-out-buffer-index     - Index of the output buffer for stereo rendering (values: 0 for left eye, 1 for right eye) (default: 0)
@@ -514,7 +514,7 @@
514 514
 
515 515
 (deftypedenum emitter-node-parameters
516 516
   "The available Emitter node parameters.
517  
-		
  517
+
518 518
  :emitter-material-resource        - Material resource used for rendering
519 519
  :emitter-particle-effect-resource - ParticleEffect resource which configures particle properties
520 520
  :emitter-max-count                - Maximal number of particles living at the same time
2  src/horde3d.lisp
@@ -6,7 +6,7 @@
6 6
 ;;; |_| |_|\___/|_|  \__,_|\___|____/ \__,_|
7 7
 
8 8
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
10 10
 ;;;
11 11
 
12 12
 (in-package :horde3d)
2  src/libraries.lisp
@@ -6,7 +6,7 @@
6 6
 ;;; |_|_|_.__/|_|  \__,_|_|  |_|\___||___/
7 7
 
8 8
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
10 10
 ;;;
11 11
 
12 12
 (in-package :horde3d-cffi)
14  src/package.lisp
... ...
@@ -1,13 +1,13 @@
1 1
 ;;; packages.lisp --- package definition and exported symbols
2  
-;;;                   _                         
3  
-;;;  _ __   __ _  ___| | ____ _  __ _  ___  ___ 
  2
+;;;                   _
  3
+;;;  _ __   __ _  ___| | ____ _  __ _  ___  ___
4 4
 ;;; | '_ \ / _` |/ __| |/ / _` |/ _` |/ _ \/ __|
5 5
 ;;; | |_) | (_| | (__|   < (_| | (_| |  __/\__ \
6 6
 ;;; | .__/ \__,_|\___|_|\_\__,_|\__, |\___||___/
7  
-;;; |_|                         |___/           
  7
+;;; |_|                         |___/
  8
+;;;
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
8 10
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
10  
-;;; 
11 11
 
12 12
 (in-package :cl-user)
13 13
 
@@ -55,7 +55,7 @@
55 55
    #:create-texture-2d
56 56
    #:set-shader-preambles
57 57
    #:set-material-uniform
58  
-   #:set-material-sampler 
  58
+   #:set-material-sampler
59 59
    #:set-pipeline-stage-activation
60 60
    #:get-pipeline-render-target-data
61 61
 
@@ -79,7 +79,7 @@
79 79
    #:cast-ray
80 80
    #:get-cast-ray-result
81 81
    #:check-node-visibility
82  
-           
  82
+
83 83
    ;; Group-specific scene graph functions
84 84
    #:add-group-node
85 85
    #:add-model-node
18  src/sound-bindings.lisp
... ...
@@ -1,13 +1,13 @@
1 1
 ;;; sound-bindings.lisp --- bindings to the horde3d sound extension
2  
-;;;                            _       _     _           _ _                 
3  
-;;;  ___  ___  _   _ _ __   __| |     | |__ (_)_ __   __| (_)_ __   __ _ ___ 
  2
+;;;                            _       _     _           _ _
  3
+;;;  ___  ___  _   _ _ __   __| |     | |__ (_)_ __   __| (_)_ __   __ _ ___
4 4
 ;;; / __|/ _ \| | | | '_ \ / _` |_____| '_ \| | '_ \ / _` | | '_ \ / _` / __|
5 5
 ;;; \__ \ (_) | |_| | | | | (_| |_____| |_) | | | | | (_| | | | | | (_| \__ \
6 6
 ;;; |___/\___/ \__,_|_| |_|\__,_|     |_.__/|_|_| |_|\__,_|_|_| |_|\__, |___/
7  
-;;;                                                                |___/     
  7
+;;;                                                                |___/
  8
+;;;
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
8 10
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
10  
-;;; 
11 11
 
12 12
 (cl:defpackage #:horde3d-sound-cffi
13 13
   (:nicknames #:%h3d-sound)
@@ -17,7 +17,7 @@
17 17
                 #:eval-when
18 18
                 #:push
19 19
                 #:*features*)
20  
-  (:export 
  20
+  (:export
21 21
    #:open-device
22 22
    #:close-device
23 23
    #:get-open-device
@@ -143,7 +143,7 @@ The variables used in the calculations explained::
143 143
 
144 144
 ;;;; Group: Sound Extension
145 145
 
146  
-;;; Basic functions 
  146
+;;; Basic functions
147 147
 
148 148
 (defh3fun ("h3dOpenDevice" open-device) boolean
149 149
   "Opens a sound device for playback.
@@ -228,7 +228,7 @@ Returns:
228 228
 "
229 229
   (model distance-model))
230 230
 
231  
-;;;; Group: Listener-specific scene graph functions 
  231
+;;;; Group: Listener-specific scene graph functions
232 232
 
233 233
 
234 234
 ;;; NodeHandle addListenerNode( NodeHandle parent, const char *name );
@@ -277,7 +277,7 @@ Returns:
277 277
   (listener-node node))
278 278
 
279 279
 
280  
-;;;; Group: Sound-specific scene graph functions 
  280
+;;;; Group: Sound-specific scene graph functions
281 281
 
282 282
 ;;; NodeHandle addSoundNode( NodeHandle parent, const char *name, ResHandle soundRes );
283 283
 (defh3fun ("h3dAddSoundNode" add-sound-node) node
8  src/sound.lisp
... ...
@@ -1,13 +1,13 @@
1 1
 ;;; sound.lisp --- bindings to the horde3d sound extension
2  
-;;;                            _ 
  2
+;;;                            _
3 3
 ;;;  ___  ___  _   _ _ __   __| |
4 4
 ;;; / __|/ _ \| | | | '_ \ / _` |
5 5
 ;;; \__ \ (_) | |_| | | | | (_| |
6 6
 ;;; |___/\___/ \__,_|_| |_|\__,_|
7  
-                             
  7
+
  8
+;;;
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
8 10
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
10  
-;;; 
11 11
 
12 12
 
13 13
 ;;; Make symbols available in the horde3d package
22  src/terrain-bindings.lisp
... ...
@@ -1,13 +1,13 @@
1 1
 ;;; terrain-bindings.lisp --- bindings to the horde3d terrain extension
2  
-;;;  _                      _             _     _           _ _                 
3  
-;;; | |_ ___ _ __ _ __ __ _(_)_ __       | |__ (_)_ __   __| (_)_ __   __ _ ___ 
  2
+;;;  _                      _             _     _           _ _
  3
+;;; | |_ ___ _ __ _ __ __ _(_)_ __       | |__ (_)_ __   __| (_)_ __   __ _ ___
4 4
 ;;; | __/ _ \ '__| '__/ _` | | '_ \ _____| '_ \| | '_ \ / _` | | '_ \ / _` / __|
5 5
 ;;; | ||  __/ |  | | | (_| | | | | |_____| |_) | | | | | (_| | | | | | (_| \__ \
6 6
 ;;;  \__\___|_|  |_|  \__,_|_|_| |_|     |_.__/|_|_| |_|\__,_|_|_| |_|\__, |___/
7  
-;;;                                                                   |___/     
  7
+;;;                                                                   |___/
  8
+;;;
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
8 10
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
10  
-;;; 
11 11
 
12 12
 (cl:defpackage #:horde3d-terrain-cffi
13 13
   (:nicknames #:%h3d-terrain)
@@ -17,7 +17,7 @@
17 17
                 #:eval-when
18 18
                 #:push
19 19
                 #:*features*)
20  
-  (:export 
  20
+  (:export
21 21
    #:add-terrain-node
22 22
    #:create-geometry-resource))
23 23
 
@@ -50,13 +50,13 @@
50 50
 ;; NodeHandle addTerrainNode( NodeHandle parent, const char *name, ResHandle heightMapRes, ResHandle materialRes );
51 51
 (defh3fun ("h3dAddTerrainNode" add-terrain-node) node
52 52
   "Adds a Terrain node to the scene.
53  
-                
  53
+
54 54
 This function creates a new Terrain node and attaches it to the specified parent node.
55  
-                
  55
+
56 56
 Parameters:
57 57
         parent     - handle to parent node to which the new node will be attached
58 58
         name       - name of the node
59  
-        height-map - handle to a Texture2D resource that contains the terrain height information (must be square and POT) 
  59
+        height-map - handle to a Texture2D resource that contains the terrain height information (must be square and POT)
60 60
         material   - handle to the Material resource used for rendering the terrain
61 61
 
62 62
 Returns:
@@ -67,7 +67,7 @@ Returns:
67 67
 ;; ResHandle createGeometryResource( NodeHandle node, const char *resName, float meshQuality );
68 68
 (defh3fun ("h3dCreateGeometryResource" create-geometry-resource) resource
69 69
   "Creates a Geometry resource from a specified Terrain node.
70  
-                                
  70
+
71 71
 This function creates a new Geometry resource that contains the vertex data of the specified Terrain node.
72 72
 To reduce the amount of data, it is possible to specify a quality value which controls the overall resolution
73 73
 of the terrain mesh. The algorithm will automatically create a higher resoultion in regions where the
@@ -77,7 +77,7 @@ Parameters:
77 77
         node            - handle to terrain node that will be accessed
78 78
         resName         - name of the Geometry resource that shall be created
79 79
         meshQuality - constant controlling the overall mesh resolution
80  
-        
  80
+
81 81
 Returns:
82 82
          handle to the created Geometry resource or 0 in case of failure
83 83
 "
10  src/terrain.lisp
... ...
@@ -1,12 +1,12 @@
1 1
 ;;; terrain.lisp --- bindings to the horde3d terrain extension
2  
-;;;  _                      _       
3  
-;;; | |_ ___ _ __ _ __ __ _(_)_ __  
4  
-;;; | __/ _ \ '__| '__/ _` | | '_ \ 
  2
+;;;  _                      _
  3
+;;; | |_ ___ _ __ _ __ __ _(_)_ __
  4
+;;; | __/ _ \ '__| '__/ _` | | '_ \
5 5
 ;;; | ||  __/ |  | | | (_| | | | | |
6 6
 ;;;  \__\___|_|  |_|  \__,_|_|_| |_|
7  
-                                
  7
+
8 8
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
10 10
 
11 11
 (in-package :horde3d)
12 12
 
2  src/types.lisp
@@ -6,7 +6,7 @@
6 6
 ;;;  \__|\__, | .__/ \___||___/
7 7
 ;;;      |___/|_|
8 8
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
10 10
 ;;;
11 11
 
12 12
 (in-package :horde3d-cffi)
10  test/suite.lisp
... ...
@@ -1,13 +1,13 @@
1 1
 ;;; suite.lisp --- Main test suite for the horde3d wrappers
2  
-;;;            _ _       
3  
-;;;  ___ _   _(_) |_ ___ 
  2
+;;;            _ _
  3
+;;;  ___ _   _(_) |_ ___
4 4
 ;;; / __| | | | | __/ _ \
5 5
 ;;; \__ \ |_| | | ||  __/
6 6
 ;;; |___/\__,_|_|\__\___|
7  
-                     
  7
+
  8
+;;;
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
8 10
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
10  
-;;; 
11 11
 
12 12
 (defpackage :horde3d-test
13 13
   (:use :common-lisp :stefil :horde3d))
10  tools/gen-binding.lisp
... ...
@@ -1,13 +1,13 @@
1 1
 ;;; gen-binding.lisp --- generate the horde3d low level bindings
2  
-;;;                         _     _           _ _             
3  
-;;;   __ _  ___ _ __       | |__ (_)_ __   __| (_)_ __   __ _ 
  2
+;;;                         _     _           _ _
  3
+;;;   __ _  ___ _ __       | |__ (_)_ __   __| (_)_ __   __ _
4 4
 ;;;  / _` |/ _ \ '_ \ _____| '_ \| | '_ \ / _` | | '_ \ / _` |
5 5
 ;;; | (_| |  __/ | | |_____| |_) | | | | | (_| | | | | | (_| |
6 6
 ;;;  \__, |\___|_| |_|     |_.__/|_|_| |_|\__,_|_|_| |_|\__, |
7  
-;;;  |___/                                              |___/ 
  7
+;;;  |___/                                              |___/
  8
+;;;
  9
+;;; Copyright (C) 2009 Ole Arndt <anwyn@sugarshark.com>
8 10
 ;;;
9  
-;;; Copyright (C) 2009 Ole Arndt <ole@sugarshark.com>
10  
-;;; 
11 11
 
12 12
 (in-package :cl-user)
13 13
 

0 notes on commit 2a6f46a

Please sign in to comment.
Something went wrong with that request. Please try again.