Thursday, April 21, 2011

Unfortunately, I haven't had a chance to start porting any of the OpenGL SuperBible classes to either Java or Clojure yet.  Hopefully now that I've got a long weekend, I can focus some on it.  Also, my priorities have shifted a little somewhat.

At my work, I've been tinkering with the possibility of using JBoss's netty project to implement some of the things we need to do.  As it so happens, my little game project will also need some networking capability.  For example, it must have the ability to let connected users chat in a room, and also to update "figures" on a map.  I also think it would be useful for getting updates on the software itself.

Netty, though a well documented project, also has a bit of a learning curve.  One of the things I'd like to be able to do is to launch a subprocess in Java, capture that process's stdout, and redirect it to a Netty channel.  Hopefully, I can do this in clojure.  This of course also means I need to build my own version of clojure.contrib.shell-out, since that doesn't seem to do exactly what I need (though I probably should take a look at the source).

In other words, there's a lot of stuff I need to do:


  1. Reimplement my own version of clojure.contrib.shell-out
  2. Create a netty based async IO system I can use for:
    • Chatting between players/GM
    • Launch subprocess and redirect stdout to the netty channel
    • Update figures on a map
    • Download updates to the project
  3. Create a subprocess launcher that I have access to the stdout
  4. Start wrapping the SuperBible libraries (probably straight to clojure via lwjgl)

I've actually begun updating the sojourner project again, though none of the bullet points listed above are anywhere close to done.  I also want to lay down a little general project planning for sojourner rather than just tackle things on the fly like I have been doing.  Having a roadmap helps enforce goals and you can see where you are heading and how much farther you have to go.


No comments:

Post a Comment