Ecosystem in TouchDesigner

Hello everybody!
I’m doing a Master final project - 360 degree video installation, CineChamber compatible.
It’s includes an ecosystem, so now it is written in Processing and it’s 2D, not a big deal to turn it to 3D, but how it is better to port to TD? First I was thinking just to send all data from Processing to TD to use TD as a graphical engine only but I guess it is not the best way…

Now I see 2 ways:

  1. rewrite it completely in TD - will be difficult as my knowledge of TD is minimal and the logic I guess is very different between Processing and TD. And there is absolutely no information on this sort of projects written in TD I can find.
  2. rewrite ecosystem in OpenFrameworks and use it in TD/CPlusPlus TOP to control objects.

It’s sort of underwater ecosystem, includes about 5 types of creatures with DNA, few plants, various zones affecting behaviours of creatures. Based on Daniel Shiffman’s Nature of Code. The representation of creatures and plants now are looks like particles with few parameters (size, colour, speed, shape, behaviours etc.). Later I want to turn them to sort of very simple fractal/recursive bodies with very simple skeletons and add more types.

  1. can I use somehow Processing code in the same way as C++ directly in TD?
  2. any experience with ecosystems in TD?
  3. I have seen very fast particle engine on CUDA in TD ([url]http://vimeo.com/groups/touchdesigner/videos/16103344[/url]), also not clear how to use CUDA power? Is it possible to use Tesla cards as an extra power directly from TD or the code have to be written in CUDA toolkit? Anyway what is this on the video and how it works?

I might be completely wrong in some thoughts above - please if anyone have ideas regarding some of my questions?
Thanx in advance!
:nerd:

What are Python chops like?

???

I dont usually use the C++ operators, because of my lack of C++ skill, but I know you program those externally, then make a dll, which you load into TouchDesigner. So it’s not a fully real-time programming inside of TouchDesigner, but more-so like extending TouchDesigner functionality by building your own Operators and operations. At that point, you might as well just send data back and forth between your already finished work in Processing and TouchDesigner over OSC or TCP.

What I meant in the above post is are you good at Python? When I went through that book and just flipped stuff into Python when I was experimenting. I put my code into Execute DATs in the Frame Start section, and then replaced all the drawing codes with actual TOPs whose parameters I controlled from the Execute DAT.

heh, when you said ‘python chop’ I thot you meant Python ‘CHOP’, and I’m thinking : huh? :smiley:

Thank you for the answer!
hehe - yeh me too, I thought you talking about Python CHOP)))

My Python knowledge is zero ((

So: there is no point to rewrite it in C++, but if I rewrite it in Python I can use it directly in TD and it will make a real difference (productivity/integration)? Am I correct?

Uff, no… or put it in Python and then start to reorganize it to actual TD yeh? Then there is no point to rewrite it in Python as well… Ehhh - I realize I do not completelly understand the concept of TD :blush:

Python knowledge really boosts what you can do in TouchDesigner, I think. I use it even in the simplest applications.

I would personally say no point in re-writing in C++, but maybe others who use the C++ operators regularly might think differently.

You can run Python code natively inside of TouchDesigner, so if you rewrite in Python, you can do it write in TouchDesigner and pretend TouchDesigner is a visual IDE with extra stuff. If you’re not familiar with Python you may want to do the codeacademy Python code really quickly and try to get going with it.

Otherwise I’d say just use your Processing patch, and send all the data you need via OSC, and visualize everything inside of TouchDesigner, using CHOPs to manage the data, and TOPs and SOPs to display things.

Exactly - I will go for now with that way! Thank you! And later will see regarding Python :wink:
The only question now is productivity - will go to Hardware section now.

And thank you again for explaining the idea of Python inside TD, so TD written entirely in Python? Is it the “core” language???

No TD is not written in Python, (C? C++?, can’t remember)
Pythyon is your scripting language inside TD(besides Tscript), you can use it all over the place for all kinds of things inside TD.(sry, bad explanation I guess)

C++