# HG changeset patch # User Robert McIntyre # Date 1429441313 25200 # Node ID ebdedb039cbb208729148daedfde87bbc6f7ba9b # Parent 202c6d19acadf3107f2405a9483ab8a3907bcab0 add release. diff -r 202c6d19acad -r ebdedb039cbb org/ai-journal-review.org --- a/org/ai-journal-review.org Sun Mar 08 22:08:17 2015 -0700 +++ b/org/ai-journal-review.org Sun Apr 19 04:01:53 2015 -0700 @@ -1,4 +1,8 @@ #+title:Interesting Papers in Artificial Intelligence +#+author: Robert McIntyre +#+email: rlm@mit.edu +#+setupfile: ../../aurellem/org/setup.org +#+include: ../../aurellem/org/level-0.org I decided to read all of the /titles/ in the Artificial Intelligence journal, and found these interesting papers. The entire title-reading diff -r 202c6d19acad -r ebdedb039cbb org/capture-video.org --- a/org/capture-video.org Sun Mar 08 22:08:17 2015 -0700 +++ b/org/capture-video.org Sun Apr 19 04:01:53 2015 -0700 @@ -25,7 +25,7 @@ * Video recording requires a steady framerate ** The built-in =Timer= rushes to keep up. -#* Game-time vs. User-time vs. Video-time +# * Game-time vs. User-time vs. Video-time Standard JME3 applications use a =Timer= object to manage time in the simulated world. Because most JME3 applications (e.g. games) are @@ -59,7 +59,7 @@ # result, this policy ensures that the user will never be kept waiting # while the computer stops to make a complicated calculation. -#fast answers are more important than accurate ones. +# fast answers are more important than accurate ones. # A standard JME3 application that extends =SimpleApplication= or # =Application= tries as hard as it can to keep in sync with @@ -178,7 +178,7 @@ =./src/com/aurellem/capture/IsoTimer.java= -#+include ../../jmeCapture/src/com/aurellem/capture/IsoTimer.java src java +#+INCLUDE: "../../jmeCapture/src/com/aurellem/capture/IsoTimer.java" src java If an Application uses this =IsoTimer= instead of the normal one, we can be sure that every call to =simpleUpdate=, for example, @@ -202,8 +202,7 @@ this: =./src/com/aurellem/capture/video/VideoRecorder.java= -#+include ../../jmeCapture/src/com/aurellem/capture/video/VideoRecorder.java src java - +#+include: "../../jmeCapture/src/com/aurellem/capture/video/VideoRecorder.java" src java JME3 already provides exactly the class we need: the =SceneProcessor= class can be attached to any viewport and the methods defined therein @@ -221,7 +220,7 @@ of setup and teardown. =./src/com/aurellem/capture/video/AbstractVideoRecorder.java= -#+include ../../jmeCapture/src/com/aurellem/capture/video/AbstractVideoRecorder.java src java +#+include: ../../jmeCapture/src/com/aurellem/capture/video/AbstractVideoRecorder.java src java ** There are many options for handling video files in Java @@ -235,7 +234,7 @@ video file. =./src/com/aurellem/capture/video/XuggleVideoRecorder.java= -#+include ../../jmeCapture/src/com/aurellem/capture/video/XuggleVideoRecorder.java src java +#+include: ../../jmeCapture/src/com/aurellem/capture/video/XuggleVideoRecorder.java src java With this, we are able to record video! @@ -244,7 +243,7 @@ Randelshofer's]] excellent pure Java AVI file writer. =./src/com/aurellem/capture/video/AVIVideoRecorder.java= -#+include ../../jmeCapture/src/com/aurellem/capture/video/AVIVideoRecorder.java src java +#+include: ../../jmeCapture/src/com/aurellem/capture/video/AVIVideoRecorder.java src java This =AVIVideoRecorder= is more limited than the =XuggleVideoRecorder=, but requires less external dependencies. @@ -256,10 +255,7 @@ this information is lost when saving each frame to a file. =./src/com/aurellem/capture/video/FileVideoRecorder.java= -#+include ../../jmeCapture/src/com/aurellem/capture/video/FileVideoRecorder.java src java - - - +#+include: ../../jmeCapture/src/com/aurellem/capture/video/FileVideoRecorder.java src java * How to record videos yourself @@ -343,14 +339,13 @@ I've added support for this under a class called =com.aurellem.capture.Capture=. You can get it [[http://hg.bortreb.com/jmeCapture/][here]]. - ** Hello Video! example I've taken [[http://code.google.com/p/jmonkeyengine/source/browse/trunk/engine/src/test/jme3test/helloworld/HelloLoop.java][=./jme3/src/test/jme3test/helloworld/HelloLoop.java=]] and augmented it with video output as follows: -=./src/com/aurellem/capture/examples/HelloVideo.java= -#+include ../../src/com/aurellem/capture/examples/HelloVideo.java src java +=./src/com/aurellem/capture/examples/HelloVideoRecording.java= +#+include: ../../jmeCapture/src/com/aurellem/capture/examples/HelloVideoRecording.java src java The videos are created in the =hello-video= directory @@ -366,18 +361,17 @@ - [[http://www.youtube.com/watch?v=C8gxVAySaPg][hello-video-moving.flv]] #+BEGIN_HTML - #+END_HTML - [[http://www.youtube.com/watch?v=pHcFOtIS07Q][hello-video-static.flv]] #+BEGIN_HTML - - #+END_HTML @@ -391,8 +385,8 @@ simultaneous views of the same scene of cannonballs careening into a brick wall. -=./jme3/src/test/jme3test/helloworld/HelloPhysicsWithVideo.java= -#+include ./jme3/src/test/jme3test/helloworld/HelloPhysicsWithVideo.java src java +# =./jme3/src/test/jme3test/helloworld/HelloPhysicsWithVideo.java= +# #+include: ./jme3/src/test/jme3test/helloworld/HelloPhysicsWithVideo.java src java Running the program outputs four videos into the =./physics-videos= directory. @@ -590,7 +584,7 @@ [[http://youtu.be/5_4wyDFwrVQ][HelloTerrain.avi]] #+begin_html - @@ -600,7 +594,7 @@ [[http://www.youtube.com/watch?v=oGg-Q6k1BM4][HelloAssets.avi]] #+begin_html - @@ -610,7 +604,7 @@ [[http://www.youtube.com/watch?v=TuxlLMe53hA][HelloEffects]] #+begin_html - @@ -620,7 +614,7 @@ [[http://www.youtube.com/watch?v=GPlvJkiZfFw][HelloCollision.avi]] #+begin_html - @@ -630,27 +624,17 @@ [[http://www.youtube.com/watch?v=SDCfOSPYUkg][HelloAnimation.avi]] #+begin_html - #+end_html -** HelloNode -[[http://www.youtube.com/watch?v=pL-0fR0-ilQ][HelloNode.avi]] - -#+begin_html - -#+end_html - ** HelloLoop [[http://www.youtube.com/watch?v=mosZzzcdE5w][HelloLoop.avi]] #+begin_html -