Introduction to Maya - Rendering in Arnold
This course will look at the fundamentals of rendering in Arnold. We'll go through the different light types available, cameras, shaders, Arnold's render settings and finally how to split an image into render passes (AOV's), before we then reassemble it i
# 1 20-09-2011 , 11:08 PM
Registered User
Join Date: Sep 2011
Posts: 2

Writing a Plugin for Data Visualization

Hi guys,

Firstly i'm sorry if this post is in the wrong location. It's a bit of a strange one really. Not something that Maya is generally used for but here goes.

I recently came across an article on the excellent BLDGBLOG blogsite (check it out if you get a minute) about a Romanian visual artist called Alex Dragulescu who created 3D CG models that appear to structures using data generated by spam architecture! Amazing idea, here's a link if you're interested in having a look; https://www.sq.ro/spamarchitecture.php.

Anyways, i found out that he used MAYA to model the structures and he also created a plugin to take the information from a database, convert that information (words from the spam email) into data and feed that into MAYA. In turn maya generates these wonderful structures.

I would like to try something like this but have no experience in writing code. The idea of creating a plugin is a little beyond me.

I was hoping that someone may be able to point me in the right direction.

Thanks for reading, hope you enjoy the work of Mr. Dragulescu.

Dusti user added image

# 2 21-09-2011 , 04:21 AM
NextDesign's Avatar
Technical Director
Join Date: Feb 2004
Posts: 2,988
If you aren't comfortable with coding, then it's unlikely for you to create something like this. The Maya plugin API is extremely complicated, and is daunting to even an experienced C++ programmer.

The algorithms that he is using are also not trivial, and you would need either a strong background in mathematics and statistics, or computer modeling to achieve this with some accuracy.

Sorry to say, but if he doesn't provide the code, I think you're kind of out of luck on this one.

If you were going to do it however, completely implementing it as a Maya plugin would be overkill. I would suggest writing your own program in C++, without the Maya API, that would export a .mel file that could be parsed into Maya. This way you don't need to mess around with matrices and the like.


Imagination is more important than knowledge.
# 3 21-09-2011 , 09:58 PM
Registered User
Join Date: Sep 2011
Posts: 2
Thanks for your reply NextDesign. I kinda thought that would be the case, although i was kinda hopin' it wouldn't. I come from a design background and my experience of coding is somewhat patchy to say the least.

The idea was text created structures for a back-drop to a comic book i'm currently writing. It fits neatly with the theme and thought it would be and excellent visual accompaniment to the story.

Still intend to pursue it, i think i'll try C++ coding. It's a long term project with little time pressure. I might be cheeky and try and contact him to see if he can help me out. You never know. Nothing ventured, nothing gained.

Thanks very much for the advice, it's been most helpful.

Dusti.

# 4 28-09-2011 , 07:51 PM
Registered User
Join Date: Sep 2011
Posts: 1

I also am interested in using Maya for data visualization

So I'm curious to know how you proceed with your efforts. Frankly, I suspect that building the kind of visuals you are describing would be easier than building full-fledged realistic scenes, animations, human characters, etc. After all, you do not need to design alot of the meshes or NURBS objects on your own, because most of the data points are provided by the data set you are working on. Of course, each data point has to be translated into 3d coordinates and criteria have to be set up for defining edges and faces, but this can still be done largely algorithmically. What thing I would strongly recommend, however -- for whatever its worth, since I am far from a Maya expert but I do have alot of background in language development -- is that you design some sort of "Domain Specific Language" to express your specific data model. You could then design a backend to translate specific files in that language into either MEL or C++ code, rather than writing that code directly. If you've written HTML or XML, you could create an XML-based language. Myself, I've programmed in Lisp, so facing a similar project I designed a Lisp-like language. Actually, being a little biased in that direction, I would suggest that you look into Clojure, which is a Lisp-like language that runs with Java (and therefore is easy to integrate with Jython, for example). You could define your data structures in Clojure, which is easy to use for that, and then perhaps emit Python code -- I think Python works for Maya scripting as well as MEL. Since I'm doing similar work, I'd be happy to share ideas as we mutually proceed. Good luck!

Posting Rules Forum Rules
You may not post new threads | You may not post replies | You may not post attachments | You may not edit your posts | BB code is On | Smilies are On | [IMG] code is On | HTML code is Off

Similar Threads