Cool, thanks. Great to have the overlay!
Attached is a lazy version which utilises the particle system to create a collision proxy.
Doesn't exactly make it faster but works and takes little time to set up.



On 14/08/12 7:46 PM, Jack Binks wrote:
Hey Frank,

Thanks man! Yeah, this'll be the convex hull thing - they can't model
concave shapes. Currently you have to split concave's up into roughly
convex parts and then, in the case of dynamics shapes, set them up as
compound so they stick together as one. If you switch on the solver
troubleshooting overlays you should see a rough approximation to the
physics world proxy shape. In the future there are avenues I can look
into with respect to making this convex decomposition happen
programmatically (although currently there's some hardcoded
assumptions about 1-1 Nuke geo object to physics shape which have to
be completely torn out to allow for this or fracture type bodies).

In the case where you're using Nuke shapes, then obviously its
slightly less easily to split up into sub sections, so instead I've
taken your cylinder and, from the point of view of the physics scene,
replaced it with a series of box collision shapes, forming the sides
of a cube (except the top). These are set to not render (so they just
offer a place for the sphere to drop into). The cylinder I've then
merged in after the solver node, so it appears in your render wrapped
around where the sphere lands.

Cheers
Jack


On 13 August 2012 23:34, Frank Rueter <[email protected]> wrote:
Indeed. I just  had a quick play and it seems pretty awesome.
Attached is the script I just threw together to get my feet wet (just a
sphere bouncing off two cards and onto a cylinder).
I'm actually trying to get the sphere drop into the cylinder in the end. Is
this possible Jack? Currently it bounces off it when it shouldn't.


Awesome work man, I'm very impressed!!!

Cheers,
frank




On 14/08/12 9:23 AM, Jose Fernandez de Castro wrote:

Great stuff, really amazed at how well the dynamic simulation works, really
nice performance! Thanks!

On Mon, Aug 13, 2012 at 10:28 AM, Jack Binks <[email protected]> wrote:
Thanks guys! Looking forward to checking out what people create with
the tools :)
J

On 12 August 2012 15:11, Ron Ganbar <[email protected]> wrote:
Fantastic stuff, Jack.
Thanks for sharing all your hard work!

Ron Ganbar
email: [email protected]
tel: +44 (0)7968 007 309 [UK]
      +972 (0)54 255 9765 [Israel]
url: http://ronganbar.wordpress.com/



On 12 August 2012 16:46, ArnoB <[email protected]> wrote:
very nice work! thanks!



On 10 aug 2012, at 09:55, Jack Binks wrote:

Hey All,

Just to let you know I've popped a 2.0 build of J_Ops for Nuke 6.3 up
on Nukepedia, adding a rigid body physics toolkit for Nuke's 3D
system, as well as a range of tweaks, improvements and fixes to the
existing tools.

Check out the dev blog for more info: http://major-kong.blogspot.com/

Enjoy!
Jack
_______________________________________________
Nuke-users mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
_______________________________________________
Nuke-users mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users


_______________________________________________
Nuke-users mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
_______________________________________________
Nuke-users mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users



--
Jose Fernandez de Castro


_______________________________________________
Nuke-users mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users



_______________________________________________
Nuke-users mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users


_______________________________________________
Nuke-users mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users

#! 
/Applications/Nuke6.3v8/NukeX6.3v8.app/../Nuke6.3v8.app/Contents/MacOS/Nuke6.3v8
 -nx
version 6.3 v8
define_window_layout_xml {<?xml version="1.0" encoding="UTF-8"?>
<layout version="1.0">
    <window x="0" y="22" w="1862" h="1054" screen="0">
        <splitter orientation="1">
            <split size="1177"/>
            <splitter orientation="1">
                <split size="44"/>
                <dock id="" hideTitles="1" activePageId="Toolbar.1">
                    <page id="Toolbar.1"/>
                </dock>
                <split size="1129"/>
                <splitter orientation="2">
                    <split size="514"/>
                    <dock id="" activePageId="Viewer.1">
                        <page id="Viewer.1"/>
                    </dock>
                    <split size="514"/>
                    <dock id="" activePageId="DAG.1">
                        <page id="DAG.1"/>
                        <page id="Curve Editor.1"/>
                        <page id="DopeSheet.1"/>
                    </dock>
                </splitter>
            </splitter>
            <split size="681"/>
            <dock id="" activePageId="Properties.1">
                <page id="Properties.1"/>
            </dock>
        </splitter>
    </window>
</layout>
}
Root {
 inputs 0
 name /tmp/J_MulletTest_v03.nk
 project_directory "\[file dirname \[value name]]"
 frame 158
 last_frame 1000
 format "2048 1556 0 0 2048 1556 1 2K_Super_35(full-ap)"
 proxy_type scale
 proxy_format "1024 778 0 0 1024 778 1 1K_Super_35(full-ap)"
}
Card2 {
 inputs 0
 rows 1
 columns 1
 control_points {3 3 3 6 

1 {-0.5 -0.5 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0.1666666865 0} 0 {0 0 0} 0 
{0 0 0} 
1 {0 -0.5 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0.1666666865 0} 0 
{0 0 0} 0 {0.5 0 0} 
1 {0.5 -0.5 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0.1666666865 0} 0 {0 0 0} 0 
{1 0 0} 
1 {-0.5 0 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {0 0.5 0} 
1 {0 0 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {0.5 0.5 0} 
1 {0.5 0 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {1 0.5 0} 
1 {-0.5 0.5 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0 0} 0 {0 -0.1666666865 0} 0 
{0 1 0} 
1 {0 0.5 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0 0} 0 {0 
-0.1666666865 0} 0 {0.5 1 0} 
1 {0.5 0.5 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0 0} 0 {0 -0.1666666865 0} 0 
{1 1 0} }
 name Card4
 xpos 223
 ypos -395
}
Cylinder {
 inputs 0
 rows 10
 columns 10
 radius 2
 translate {0 -9.619999886 0.4199999869}
 name Cylinder1
 xpos 124
 ypos -462
}
Card2 {
 inputs 0
 image_aspect false
 rows 2
 columns 2
 translate {0 -10.68000031 0.4199999869}
 rotate {-90 0 0}
 uniform_scale 2.5
 control_points {3 3 3 6 

1 {-0.5 -0.5 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0.1666666865 0} 0 {0 0 0} 0 
{0 0 0} 
1 {0 -0.5 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0.1666666865 0} 0 
{0 0 0} 0 {0.5 0 0} 
1 {0.5 -0.5 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0.1666666865 0} 0 {0 0 0} 0 
{1 0 0} 
1 {-0.5 0 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {0 0.5 0} 
1 {0 0 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {0.5 0.5 0} 
1 {0.5 0 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {1 0.5 0} 
1 {-0.5 0.5 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0 0} 0 {0 -0.1666666865 0} 0 
{0 1 0} 
1 {0 0.5 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0 0} 0 {0 
-0.1666666865 0} 0 {0.5 1 0} 
1 {0.5 0.5 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0 0} 0 {0 -0.1666666865 0} 0 
{1 1 0} }
 name Card3
 xpos 3
 ypos -430
}
MergeGeo {
 inputs 2
 display textured+lines
 name MergeGeo1
 xpos 124
 ypos -430
}
push 0
ParticleEmitter {
 inputs 3
 emit_from faces
 emit_order uniformly
 rate 1060
 velocity 0.01
 size 1
 name ParticleEmitter1
 xpos 124
 ypos -369
}
ParticleMotionAlign {
 name ParticleMotionAlign1
 xpos 124
 ypos -345
}
ParticleToGeo {
 use_frame true
 name ParticleToGeo1
 xpos 124
 ypos -269
}
J_MulletBody {
 bodytype Static
 bodyrestitution 0.755
 coltype "Convex Hull"
 colcondeci false
 labelset true
 name J_MulletBody4
 label "\[value this.bodytype]-\[value this.coltype]"
 xpos 17
 ypos -178
}
Card2 {
 inputs 0
 translate {9.812683857e-07 -4.533580303 6.381818295}
 rotate {-73.60487789 180.000005 180.000005}
 uniform_scale 10
 control_points {3 3 3 6 

1 {-0.5 -0.5 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0.1666666865 0} 0 {0 0 0} 0 
{0 0 0} 
1 {0 -0.5 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0.1666666865 0} 0 
{0 0 0} 0 {0.5 0 0} 
1 {0.5 -0.5 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0.1666666865 0} 0 {0 0 0} 0 
{1 0 0} 
1 {-0.5 0 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {0 0.5 0} 
1 {0 0 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {0.5 0.5 0} 
1 {0.5 0 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {1 0.5 0} 
1 {-0.5 0.5 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0 0} 0 {0 -0.1666666865 0} 0 
{0 1 0} 
1 {0 0.5 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0 0} 0 {0 
-0.1666666865 0} 0 {0.5 1 0} 
1 {0.5 0.5 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0 0} 0 {0 -0.1666666865 0} 0 
{1 1 0} }
 name Card2
 xpos -88
 ypos -236
}
J_MulletBody {
 bodytype Static
 bodyrestitution 0.755
 labelset true
 name J_MulletBody3
 label "\[value this.bodytype]-\[value this.coltype]"
 xpos -88
 ypos -212
}
Sphere {
 inputs 0
 translate {0 2.880000114 -2.599999905}
 name Sphere1
 xpos 37
 ypos -55
}
J_MulletBody {
 bodyfriction 0.085
 bodyrestitution 1
 labelset true
 name J_MulletBody2
 label "\[value this.bodytype]-\[value this.coltype]"
 xpos 37
 ypos -31
}
Card2 {
 inputs 0
 rotate {-80 0 0}
 uniform_scale 10
 control_points {3 3 3 6 

1 {-0.5 -0.5 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0.1666666865 0} 0 {0 0 0} 0 
{0 0 0} 
1 {0 -0.5 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0.1666666865 0} 0 
{0 0 0} 0 {0.5 0 0} 
1 {0.5 -0.5 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0.1666666865 0} 0 {0 0 0} 0 
{1 0 0} 
1 {-0.5 0 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {0 0.5 0} 
1 {0 0 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {0.5 0.5 0} 
1 {0.5 0 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0.1666666716 0} 0 {0 
-0.1666666716 0} 0 {1 0.5 0} 
1 {-0.5 0.5 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0 0} 0 {0 -0.1666666865 0} 0 
{0 1 0} 
1 {0 0.5 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0 0} 0 {0 
-0.1666666865 0} 0 {0.5 1 0} 
1 {0.5 0.5 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0 0} 0 {0 -0.1666666865 0} 0 
{1 1 0} }
 name Card1
 xpos -228
 ypos -257
}
J_MulletBody {
 bodytype Static
 bodyrestitution 1
 labelset true
 name J_MulletBody1
 label "\[value this.bodytype]-\[value this.coltype]"
 xpos -228
 ypos -233
}
J_MulletForce {
 inputs 0
 to {0 -10 0}
 labelset true
 name J_MulletForce1
 label "\[value this.forcetype]"
 xpos -296
 ypos -82
}
Scene {
 inputs 5
 name Scene1
 xpos -145
 ypos -41
}
J_MulletSolver {
 name J_MulletSolver1
 xpos -155
 ypos 40
}
Viewer {
 frame 158
 frame_range 1-1000
 frame_range_lock true
 input_process false
 gl_lighting true
 grid_display false
 name Viewer1
 xpos -155
 ypos 102
}
_______________________________________________
Nuke-users mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users

Reply via email to