Use XEN for a non-interactive, machinima-like 3d application?

Jan 4, 2012 at 7:40 AM

Hi all, 

I am currently a CS PhD student and my research is on knowledge engineering and particularly on modelling film direction knowledge.

 For the purpose of conducting some experiments, I have been searching the web to find a high-level, open-source 3D engine/API, preferably for Java but any other suggestion would be useful, with fair documentation/tutorials and an active community, that will enable me to easily generate some basic "film scene" examples programmatically, without having to go in the deeps of 3D programming. And this has to be done through code, rather than in some 3D platform like 3DMax or Blender.

 For example I may need to generate a room, then place some objects (e.g. furniture, everyday-objects) and some human characters in it, and then create basic animations for the characters (e.g walk, sit on a chair or lie on a bed, bend, make simple gestures such as wave, point, hug or grab an object, etc). I will also need to move the characters around, so I need to be able to create motion paths (straight or curved) for translating the characters and the camera in space.

 I have spent a lot of time checking out a large number of 3d/game engines and the truth is I have got quite confused... I don’t have any experience in 3D programming and for that reason I need the API to be as high-level and easy-to-understand as possible. Note that I don’t care about audio, networking or high rendering quality. Also I don’t want this to be interactive at all (as opposed to games). I just need to generate a rendered clip through code, according to a number of specific directives.

 I came across XEN and it sounds really promising! But I am wondering whether XEN would be the optimal solution for what I need to do. Is it high-level enough to easily tackle this task? Does it have enough documentation/tutorials/examples for someone with no prior 3d programming experience to cope with?

Or maybe it would be overkill for what I want to do? And, in that case, should I be looking for a simpler, higher-level 3D/Game Engine, or maybe some other type of Virtual Reality API? Any specific suggestions?

 I will very much appreciate any help/tip/hint!

Jan 5, 2012 at 8:50 PM


Thanks for getting in contact,
Unfortunately, this project is now no longer being developed - I'm working full time for Sony and I made the decision a while back that I couldn't dedicate the time needed. So unfortunately there isn't an active community here. Depending on the scope of the project you are attempting, Xen may be ideal - think of it as a moderately low level wrapper on all the annoying bits of rendering - and to be honest, I built it mainly as a rapid prototyping tool for myself (for which I still use it). As a learning tool it may not be as appropriate as it does assume some modest understanding of the 3D graphics pipeline.

I do suggest you look into the Unity 3D engine - it's by far one of the best engines for content focused development, it's developed by a very large team and is used by teams that from hobby through to pro. However it's built more around content editing / WYSIWYG so it may not be appropriate for your project constraints.


Jan 6, 2012 at 9:27 AM
Edited Jan 11, 2012 at 1:16 PM

Hello and thanks for the useful advice,

You are right that my project's constraints prohbit me from using Unity3D (which otherwise I suppose it would have been perfect) because everything has to actually be done from code, rather than from a GUI. So this is what I am looking for; A high-level engine (e.g. like Unity3D) that will also give full access to the engine API. If you can think of anything that may be close to these prerequisites, I would be glad to hear it!

Thanks for the info!