PDA

View Full Version : Maya deformer : MG_collisionBulge


giordi
12-09-2012, 08:10 AM
Hi guys !
I wanted to share with you a little demo of the last deformer I have worked on lately.

https://vimeo.com/55176044

C&C appreciated .

SGIFreak
12-09-2012, 08:20 AM
Nice work. the deformation looks really good.

djx
12-09-2012, 11:12 AM
Very impressive Marco. Well done. There are so many times I could have used a deformer like that. I can get part way there with stretchmesh and soup, but nothing as good as what you have done there.

cheers
David

zoharl
12-09-2012, 07:57 PM
Cute. Could you please formally state your problem/objective and elaborate on the algorithm?

giordi
12-16-2012, 10:47 AM
thank you guys :)

@zoharl : the main problems I had was about the bulge algorithm , it took several tries to find out the right one , and from there optimize the code to improve the performances.

uiron
12-17-2012, 12:56 PM
I guess we all write something like this at some point:) Does it do self collision though? What about two soft bodies interacting? Python, C++ ?

EightBit
12-24-2012, 03:57 AM
I, for one, will never write anything like that at any point.
Friggin impressive!

Kuroyume0161
02-17-2013, 06:36 PM
Do you have a reference to your collision deformation algorithm or maths sources? I am in the process of writing a similar plugin for another 3D software and it has been difficult to find information for doing this - especially since the other software's SDK is not as mature as Maya's. So, I am needing to do even more work to implement it there.

Thanks,

giordi
02-20-2013, 08:08 PM
Do you have a reference to your collision deformation algorithm or maths sources? I am in the process of writing a similar plugin for another 3D software and it has been difficult to find information for doing this - especially since the other software's SDK is not as mature as Maya's. So, I am needing to do even more work to implement it there.

Thanks,

Hei man , so it all depends how you want to develop it .
This was my steps :

I first did a regular collision deformer which you can see here :
https://vimeo.com/57974694
as you can see was pretty simple and no fancy functions , check if your software gives you ray casting options.
I suggest you to get confortable with vector math first of all

What software you want to develop the deformer in?

giordi
02-20-2013, 10:00 PM
I guess we all write something like this at some point:) Does it do self collision though? What about two soft bodies interacting? Python, C++ ?


damm man sorry I didnt see your answer ,
by the way it does not have self collision , and it s c++ a deformer like this in python would be pretty slow

I did not understand the part about soft bodies can you explain a bit better?

Kuroyume0161
02-20-2013, 10:23 PM
Hei man , so it all depends how you want to develop it .
This was my steps :

I first did a regular collision deformer which you can see here :
https://vimeo.com/57974694
as you can see was pretty simple and no fancy functions , check if your software gives you ray casting options.
I suggest you to get confortable with vector math first of all

What software you want to develop the deformer in?

Hey giordi,

Mine is almost at that stage. Cinema 4D does have ray casting but it is not very great (there are anomalies). It also only works in one direction so I have to do two ray casts in opposite directions to get the same result (to know if there is interpenetration). But the Maya script that I am using as a template (jlCollisionDeformer) is really not giving me near the same results as the video for that. Having a stable deformation would go a long way to adding those fancy functions (such as bulging and so forth).

Thanks,
Robert

giordi
02-21-2013, 06:11 AM
Hey giordi,

Mine is almost at that stage. Cinema 4D does have ray casting but it is not very great (there are anomalies). It also only works in one direction so I have to do two ray casts in opposite directions to get the same result (to know if there is interpenetration). But the Maya script that I am using as a template (jlCollisionDeformer) is really not giving me near the same results as the video for that. Having a stable deformation would go a long way to adding those fancy functions (such as bulging and so forth).

Thanks,
Robert


mmm i dont think that the c4d api is the problem , trust me i had to mess a lot with the algorythm to find the correct solution , I had to chang it many times, also I dont think I was doing raycast on both directions

Kuroyume0161
02-21-2013, 08:31 AM
mmm i dont think that the c4d api is the problem , trust me i had to mess a lot with the algorythm to find the correct solution , I had to chang it many times, also I dont think I was doing raycast on both directions

Of course, then, it could be the exemplary solution that I am pursuing that is incorrect. But, as we know, there are many possible solutions. What solution did you take? I'd appreciate your experience in this very much.

Thanks,
Robert

Kuroyume0161
02-24-2013, 04:53 AM
One of the problems with the C4D SDK is that the only collision detection is ray-triangle collision (in one direction - you can opt for bi-directional rays in the Maya MMeshIntersector class). There are no broad-phase or other narrow-phase options - no AABB-trees, Quad-trees, KD-trees or any thing. I would have to code this myself (am thinking about implementing an AABB-tree since I only have basic AABB object testing and then some point inclusion tests within the AABBs). I know for certain that Maya has much more robust collision detection support, even in MEL python scripting.

I had though about using the Bullet library but it would be a long workout to make the interface between and learn the intricacies.

Wish me luck...

CGTalk Moderation
02-24-2013, 04:53 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.