2010年11月19日金曜日

Untitled

It has been a while since last I posted :D


I have done several massive crowd simulation tests with Thinking Particles these days.

You can watch my R&D video here.(About over 200 Agents in this Video)


TP has a potential to simulate and control over on massive crowd agents , in most of case it works very well and easy to control but if the situation becomes complex , for instance if you want a group of agents(here let me call they Blues ) to react with behaviors of other group agents(Reds) , that might be your nightmare , you should build all your own behavior rules into TP that will become very very pain in the ass and consume you a lot of times.

Due to I haven't a experience of using Massive which software was designed to force on simulate huge amount of crowd with distinct complex behavior on echo agent , I can't compare between Massive and TP . Does Massive can make things more easily on this case?


Here is a another video.


Try to figure out the difference between different SystemScale Value , and to see how it affect on result of simulation and rendering.

2010年9月6日月曜日

Implement Python Threading Module in Maya

I had run several funny experimental scripts on MAYA with Python's threading module.

The result was very very impressive.

First , a test with 1000000(1 Million) loop and without any extra print command.
0.219s (With Single-Threading)
0.078s (With Multi-Threading)
Multi was about 3x times faster than Single.

Second, a test with 8000 loop and with extra print command.
115.187 (With Single-Threading)
60.001 (With Multi-Threading)
Multi was about 2x times faster than Single.

Only strange thing was, apparently if you attempt to use “maya.cmds” directly in a python “class” scope that will return a error message to you.(like cmds.ls)

My issue is using OpenMaya API instead of “maya.cmds” , some like this
import maya.OpenMaya as OpenMaya
instead of
import maya.cmds as cmds

Maybe I did some wrong , if anyone know other issue can fix or avoid it , please let me know , thanks in advance.

So , my next To-do list will be writing a custom plug-ins with Python's threading module , that can allow me to export Maya's Fluid data(like Density , Velocity and so on) to Krakatoa. Ya, you can use Maya's fluidVoxelInfo command, but if with a higher resolution that will become you nightmare ;)

2010年7月5日月曜日

Houdini 30Million Particle Test

I have done a test for dealing with multi-million particles in Houdini.

In this test , I generated approximate over 30,000,000 (30Million) particles when pass to render , if you familiar with Krakatoa's workflow , this approach just like that.
(Separated into 5 partitions and echo partition contained around 5-6 Million particles.)

Here's no way to display Particles like these huge amount all at once on Houdini's viewport , so I only grabbed a screen for 4million particles .


All particles was genearted in POP ,not any dynamic simulation involved.
It seems need more higher substeps for generating more smooth-moving particles in POP .

Hope u like it and feel free to leave a message :)

Test Rendering














Houdini's 30million Particles Test. One-5th parition
















After AfterEffect


Original

2010年6月28日月曜日

Learning Materials for English

Just a few minutes ago , I purchased two books via Amazon , one is Grammar Practice Book , and other one is Writing Practice for IELTS .

According to last TOEIC test , my English grammar is still terrible , this is the reason why I purchased grammar practice book and hope that can help me to enhance and improve my grammar as faster as I can.

In my opinion , while learn for foreign language (whatever which language), the biggest obstacle is vocabulary .

Because if you have nerve heard or learned vocabulary before that you have only a little chance to understand(maybe guess) what this vocabulary exactly meaning is , besides any writing / conversation is based on it.

According to one of mine friend and some learning materials I read before , 8000-10000 vocabularies is a key for English learner , it just like a gate if you can overcome it and across this gate that will provide you a whole new world you ever seen before.

I'm still working on it , try to learn and remember as much vocabularies as I can , I plan to finish the TOEFL' vocabularies before the ending of August ,that can provide me more than 2000 vocabularies to acquire .

Fake Collision Solution On Complex Object In MAX

Ya, I'm still working on BOX3 Data OP and did several tests to seek how many potentials and possibilities in BOX3 ;)

Belong to BOX3's sample scene , that provide a efficient way to do some collision jobs without any physical engine. I try to keep the explanation simply , in this sample the data flow do only 3 things to calculate final results for all particles.
1.Fetch Z component from particle.
2.Calculate particle shape's volume(of cause it's approximately) and use this value to avoid the particle penetrate into Deflector.
3.Reorder the data flow , ensure the Collision OP still work correctly.

Of cause , collision solution like this doesn't very precise as other physical engine does. But still useful and very very fast and cheap cost ;)

I learned the sample and extend it to have a ability to calculate on complex object , yeah!~

For now , I'm trying to achieve it on Houdini's VOPPOP , but I'm a complete newbie against Houdini's VOP :( , if I have any progress on it I will post here.

まだまだBOX3のテストをやってます。どこまで可能なのかを探ってみたい :)

MAYA,MAX,Houdiniでは、Particleの衝突計算は全部Particleの中心から計算されてるせいで、特殊な方法を使わない限り、地面に貫いたりすることがしばしば

BOX3のサンプルシーンでCollisionAsBodyというシーンがあって、Particleを地面に衝突して、Rigid Bodyっぽくなるシーンです。が、このシーンがすごくシンプルなオブジェクトだけ計算可能なので、もっと複雑な形にしたオブジェクトをしたいので、自ら新たに作ってみました。

MAXで成功したけど、HoudiniのVOPPOPにも出来るような気がしますが、今のとこ進展なし…Orz

2010年6月25日金曜日

Molecular Animation for H2O

Today , I found a topic which posted on Orbaz General Discussion forum , in this topic someone try to make a molecular animation for H2O(Water) , and follower suggested him try to use a BOX2's feature – PhysX Glue for achievement.

I'm pretty sure that PhysX Glue will do it's job very well , but I don't think so using of PhysX Glue is a efficient way to achieve for this purpose ,besides PhysX engine doesn't stable enough (at least on my working environment ).

So for this reason , I made a H2O-like molecular animation with BOX3 Data OP.


今日、Orbazの掲示板で「水の分子動画を作りたい」というトピックが投稿されて、ちょっと興味があったので、中身を覗いてみました。

トピックの中に「PhysX Glueを使えば、簡単に出来ますよ」の返事があって、まぁ確かにGlueを使えば出来ると思いますけど、問題は大量なオブジェクトをお互い衝突し合って、かなりの計算の量になりそう、そしてPhysXエンジンは私の作業環境でそんなに安定していません。

この故、完全にBOX3Data Opで作成できないかと試みました。

作成したアニメーションは下のVimeoをクリックするとHDサイズで見れます。

Here is the model of hydrogen bonds between molecules of water(From wikipedia)

(Click on video to see HD size)


Some recent R&D Works

Recently , I have spent a lot of time for research and try to understand how Box3's Data flow work.

Unfortunately, in some case BOX2&BOX3 doesn't integrate each others enough as I assumed as.

In Houdini any time if you want , you can use a DOP import node any where that provide you a way of using simulated shape data.

Maybe my method was wrong , I had tried several times that attempt to figure out or find a way of passing BOX2's Phys X particle shape to BOX3 , but in BOX3 even used particle proxy sub-op node that still couldn't fetch any particle shape information from BOX2 , so sad ;( Maybe this is a limitation of BOX2&BOX3 , who knows ...

Also , BOX2's Phys X is fast but not very stable on my system , sometimes even get some steps on time slider that cause whole Max's crashing.

But in other hand , BOX2&BOX3 still provide you a very flexible environment of creating your own particle rule/system .

And here is some my R&D jobs , some was done with Max's Particle Flow and others was done with Houdini's DOP+POP .


(You can click White Viemo Text right-below the video and see it on Vimeo website with HD size ;) )

1. Cultivate some sunflowers in the ground when object passed.
Full Controlled by PFlow BOX3 Data OP




2. Create particles with square , full controlled by BOX3 Data OP



3. Max Debris Generation Test


4. Houdini Debris Generation Test


5. Fume R&D