Mercurial > cortex
comparison org/vision.org @ 212:8e9825c38941
writing intro for vision.org
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Thu, 09 Feb 2012 07:39:21 -0700 |
parents | ac158a976443 |
children | 319963720179 |
comparison
equal
deleted
inserted
replaced
211:97b8caf66824 | 212:8e9825c38941 |
---|---|
7 #+INCLUDE: ../../aurellem/org/level-0.org | 7 #+INCLUDE: ../../aurellem/org/level-0.org |
8 #+babel: :mkdirp yes :noweb yes :exports both | 8 #+babel: :mkdirp yes :noweb yes :exports both |
9 | 9 |
10 * Vision | 10 * Vision |
11 | 11 |
12 I want to make creatures with eyes. Each eye can be independely moved | 12 |
13 and should see its own version of the world depending on where it is. | 13 Vision is one of the most important senses for humans, so I need to |
14 | 14 build a simulated sense of vision for my AI. I will do this with |
15 Here's how vision will work. | 15 simulated eyes. Each eye can be independely moved and should see its |
16 own version of the world depending on where it is. | |
17 | |
18 Making these simulated eyes a reality is fairly simple bacause | |
19 jMonkeyEngine already conatains extensive support for multiple views | |
20 of the same 3D simulated world. The reason jMonkeyEngine has this | |
21 support is because the support is necessary to create games with | |
22 split-screen views. Multiple views are also used to create efficient | |
23 pseudo-reflections by rendering the scene from a certain perspective | |
24 and then projecting it back onto a surface in the 3D world. | |
25 | |
26 #+caption: jMonkeyEngine supports multiple views to enable split-screen games, like GoldenEye | |
27 [[../images/goldeneye-4-player.png]] | |
28 | |
29 | |
16 | 30 |
17 Make the continuation in scene-processor take FrameBuffer, | 31 Make the continuation in scene-processor take FrameBuffer, |
18 byte-buffer, BufferedImage already sized to the correct | 32 byte-buffer, BufferedImage already sized to the correct |
19 dimensions. the continuation will decide wether to "mix" them | 33 dimensions. the continuation will decide wether to "mix" them |
20 into the BufferedImage, lazily ignore them, or mix them halfway | 34 into the BufferedImage, lazily ignore them, or mix them halfway |
322 | 336 |
323 - As a neat bonus, this idea behind simulated vision also enables one | 337 - As a neat bonus, this idea behind simulated vision also enables one |
324 to [[../../cortex/html/capture-video.html][capture live video feeds from jMonkeyEngine]]. | 338 to [[../../cortex/html/capture-video.html][capture live video feeds from jMonkeyEngine]]. |
325 | 339 |
326 | 340 |
327 * COMMENT code generation | 341 * COMMENT Generate Source |
328 #+begin_src clojure :tangle ../src/cortex/vision.clj | 342 #+begin_src clojure :tangle ../src/cortex/vision.clj |
329 <<eyes>> | 343 <<eyes>> |
330 #+end_src | 344 #+end_src |
331 | 345 |
332 #+begin_src clojure :tangle ../src/cortex/test/vision.clj | 346 #+begin_src clojure :tangle ../src/cortex/test/vision.clj |