Can Gephi become an explorer for 3D worlds / virtual realities?

[I am far from being an expert in 3D / virtual reality / vector shapes so feel free to send a tweet @seinecle for corrections if you spot mistakes below]

Soon possible in Gephi? source:
Soon possible in Gephi? source:

Yesterday I wrote a plugin that imports vector shapes of country maps (originally in .shp format) into Gephi. It is easy to think that not just 2D shapes like maps, but 3D, dynamic (time evolving) shapes could also be easily imported in Gephi. Because Gephi handles x, y and z coordinates, and handles time-dependent attributes too. So we’ve got all we need to view 3D worlds in Gephi. Here is how I would do it:

– write a parser of 3D shapes formats (DXF, X3D…).
– add the shapes to the graph. Each vector is two nodes and an edge connecting them. Putting that into Gephi is as simple as:

Edge edge = new Edge(node1,node2);

Possible extensions

Yes, the code above would just give you wireframes. Already a good start. I am out of my league here, but I think that new shaders can be written and added to Gephi’s JOGL engine to accomodate for textures, etc. No?

We also need to write some code for mouse movements, to allow for the exploration of the scene in 3D. Not trivial, but this has been implemented in many languages already, so that should be easy to port.

Also, there is no video export function to record animations made in Gephi at the moment, and that’s a pity because movies of 3D animations of vector shapes in Gephi would then become possible. But that’s something that will arrive at some point.

Why would it be interesting?

Well, Gephi is a free even for commercial use, open source, solidly architectured and extensible, multi OS, memory efficient (check here) desktop app. That makes it a robust platform to reach users.

I am up for this project, and at this stage I would appreciate any feedback on the general perspective. Reach me @seinecle on Twitter.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s