Question

I have some experience with Blender such that I can make a semitransparent cylinder of specified dimensions and small spheres. I want to (for a chemistry tutorial video explaining temperature and heat concepts) write a program that will:

  1. Set up the cylinder and some spheres in a coordinate space
  2. Set up a camera and lighting
  3. Get the spheres moving around in random directions while keeping track of their positions and making them bounce when necessary (this I can figure out given a coordinate space; and I'm not going to get bone-crunchingly accurate trying to do accelerations, taking "mass" into account, etc. just going to send balls in another direction at the "speed" all the balls are going)
  4. Record what this would look like through the camera for a set amount of time (thinking command line option in seconds)

In other words, by #4, this program doesn't even need to be GUI at all. I just want the program to make a video.

It may take me a very long time to actualize this because though I have a lot of experience with C, C++, and Java, I don't know how to take a 3D model file and programmatically control it. I don't even know the infrastructure of libraries and accompanying API to control 3D objects and record the camera to a file.

Are there any tutorials that would go from starting with some 3D models to programmatically setting up a scene (objects, camera, lights), programmatically moving the objects in the coordinate space, and recording the video to a file?

Was it helpful?

Solution

Knowing some programming already, I want to point you to Unity, www.unity3d.com

Unity is a 3d game engine, though it can be used for a number of different things, including this program you have in mind.

It's programmed with C# or Javascript, and I think you could pick these languages up easily enough.

Basically what you described in your last paragraph is exactly what Unity does.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top