Jump to content

meshsmooth

Members
  • Content count

    269
  • Donations

    0.00 CAD 
  • Joined

  • Last visited

Community Reputation

-1 Poor

About meshsmooth

  • Rank
    Illusionist
  • Birthday 06/22/1979

Personal Information

  • Name
    Robert Kelly
  • Location
    Australia
  1. wrap deformer in Houdini

    cloth capture and cloth deform put together is one way to do it.
  2. Cache Simulation with deadline ?

    Hey Jordo, i am in Iloura now digging in your rewritten hrender_dl.py. lets see if i can make it behave. I have that same error that Doum is having and have found that I can't do a few key things. I don't know how much this is deadline's code and how much is you code, I expect you only made it better than it was. i can't have geo rops use takes because there is some script that changes the pre and post frame scripts. for some reason i can have linked parameters for the path of the bgeo out path that stops it working too. this will eventually work, not before sucking up way too much time.
  3. how compute dual can be remade

    looks like the file didnt attach the first time premote_mesh.hipnc
  4. I have remade compute dual! Pro Tip! don't remake existing tools if your short on time. when I first looked at using compute dual at making 1 point per primitive I missed the option to not pre triangulate the mesh so it looked like compute dual was not doing what i needed. So i rebuilt compute dual. Slower, More Complicated, Less Better! But you can probably learn a thing or two from my experiment.
  5. split POP problem

    When a trail particle is spawned if you can store the velocity of the parent particle in a parameter called something like parent_v. Then in sops make a vopsop that lets you mix the parent velocity and the actual velocity. This will enable you to control the motion blur without changing the animation. Try it and let us know how that works!
  6. Robert Kelly's sop-solver-tool

    I would say my tool is more of an interface fix of the sop solver so it's quick and easy to use at a whim, Rather than the status quo of having to go in 3 levels to edit the sops. when the sop solver is used inside sops it makes sense but when you only want the feedback feature it is an interruption in the workflow. I installed the feedback sop and it works but it's a bit raw and could use a few more settings to control it.
  7. Robert Kelly's sop-solver-tool

    If you come up with a good simple example file post it because i only have really complex cool examples that i cant release for other reasons.
  8. Robert Kelly's sop-solver-tool

    Hey Peeps! I am releasing my sop-solver-tool, making the sop solver easier than the for each sop! http://www.sidefx.com/exchange/info.php?fileid=695&versionid=695 No help no example files but it could be a while till I get around to those so i thought i should let the world have it sooner rather than later. The basic work flow is like this... In sops you have the geometry that is the first frame state, plug this into the first input. next press the button "Make New Sop Solver Feedback" this purple colored node will be the top of the feedback loop providing the geometry from the previous frame. the sops that you place between the feedback node and the second input are applied each frame. going back to frame one after changing the feedback loop will make the cached geometry recook again. Careful not to select or otherwise make the feedback sops display when you are trying to simulate the sop-solver-tool otherwise it will not feedback the geometry until you return to the first frame and only display the sop-solver-tool or any node after it. Any changes you make to the geometry in the feedback loop should be small because this will happen each frame and large movements will rapidly send your geometry far. A simple example is to get a poly sphere with a frequency of 9 and then pipe it into the first input of the sop-solver-tool. Next press the button "Make New Sop Solver Feedback" this purple colored node will be the top of the feedback loop providing the geometry from the previous frame. then after the feedback sop add a mountain sop with a very subtle height amount, followed by a smooth with 1 iteration. select and display the sop solver and hit play. it should bulge out over time. This is a simple task that doesn't do much more than what could be done with regular sops but i will leave that for you to discover, until I get around to making example files. Robert Kelly isstuff@gmail.com sop_solver_tool.otl
  9. I can see the example file working. My test had 3 attributes and 3 points and for each point i imported a different attribute and that is when it got stuck so i will have to test your file on 3 points to see how it behaves. at the moment is operates on only one point but a shite load of attributes. Thanks for the help by the way.
  10. this is the ugly code I ended up with if ($attrib_num == 0) $success = import($_attrib_0, $adata, $input_index, $ptnum); else if ($attrib_num == 1) $success = import($_attrib_1, $adata, $input_index, $ptnum); else if ($attrib_num == 2) $success = import($_attrib_2, $adata, $input_index, $ptnum); else if ($attrib_num == 3) $success = import($_attrib_3, $adata, $input_index, $ptnum); else if ($attrib_num == 4) $success = import($_attrib_4, $adata, $input_index, $ptnum); else if ($attrib_num == 5) $success = import($_attrib_5, $adata, $input_index, $ptnum); else if ($attrib_num == 6) $success = import($_attrib_6, $adata, $input_index, $ptnum); else if ($attrib_num == 7) $success = import($_attrib_7, $adata, $input_index, $ptnum); else if ($attrib_num == 8) $success = import($_attrib_8, $adata, $input_index, $ptnum); else if ($attrib_num == 9) $success = import($_attrib_9, $adata, $input_index, $ptnum); else if ($attrib_num == 10) $success = import($_attrib_10, $adata, $input_index, $ptnum); \\ all the way to 50 \\ I did have allong with some other code something much like what you had import(sprintf("closest_pt_curve_%s",i),pt,0); But it would only import the closest_pt_curve_0 attributes. As far as importing dynamic strings isn't happening. I have sprintf($yourFormattingHere,$yourIntHere) wrapped into a vop and then piped that into a parameter exporting the string and got closest_pt_curve_0, closest_pt_curve_1, closest_pt_curve_3... so it will make the srtings ok. Then I took that same calculated string and piped it into the import attribute but the same behaviour of getting the first string and then not updating it happened again. Even my second last bit of ugly code was.... if ($attrib_num == 0) $attrib_current = $_attrib_0; else if ($attrib_num == 1) $attrib_current = $_attrib_1; else if ($attrib_num == 2) $attrib_current = $_attrib_2; else if ($attrib_num == 3) $attrib_current = $_attrib_3; \\ all the way to 50 \\ $success = import($attrib_current, $adata, $input_index, $ptnum) This proved to get stuck on the first string as well. So i am thinking there is a Bug / feature that prevents the import attribute from updating the attribute that it imports.
  11. I have a vop sop and i am looking to import a list of int point attributes such as... closest_pt_curve_0 closest_pt_curve_1 closest_pt_curve_2 closest_pt_curve_3 closest_pt_curve_4 closest_pt_curve_? each attribute is needed to be tested against in a loop so if there are 18 attributes the first loop will need closest_pt_curve_0 and the last closest_pt_curve_17. the documentation is a bit lite on for vex arrays. I would probably would need to concatenate "closest_pt_curve_" with a number too which i am not confident will work ether? i can turn what ever vex code into a VOP node later but for now i need some documentation or even someone to propose an answer my guess in pseudo code (python meets vex) def importAttribNum( stem="closest_pt_curve_", attribNum=0): int data = 0 import(stem + attribNum , data, 0) return data any ideas Robert Kelly
  12. Releases

    I am on a Mac OSX 10.6 and I don't have the houdini sdk installed because it is not an option on the mac install. I my be out of luck. bullet is installed and I have compiled and ran the demos so that seems to be ok. I edited the shell script so it would get as far as it is now I had an error like that above In file included from SIM_SolverBullet.cpp:43: SIM_SolverBullet.h: At global scope: SIM_SolverBullet.h:151: error: extra qualification 'SIM_SolverBullet::' on member 'addBulletBody' SIM_SolverBullet.h:152: error: extra qualification 'SIM_SolverBullet::' on member 'removeDeadBodies' SIM_SolverBullet.h:153: error: extra qualification 'SIM_SolverBullet::' on member 'processSubData' SIM_SolverBullet.cpp: In member function 'virtual std::_Rb_tree_iterator<std::pair<const int, bulletBodystr> > SIM_SolverBullet::addBulletBody(SIM_Object*)': SIM_SolverBullet.cpp:380: error: no matching function for call to 'btMultiSphereShape::btMultiSphereShape(btVector3&, btVector3*&, btScalar*&, int&)' ../../bullet-trunk/src/BulletCollision/CollisionShapes/btMultiSphereShape.h:33: note: candidates are: btMultiSphereShape::btMultiSphereShape(const btVector3*, const btScalar*, int) ../../bullet-trunk/src/BulletCollision/CollisionShapes/btMultiSphereShape.h:27: note: btMultiSphereShape::btMultiSphereShape(const btMultiSphereShape&) SIM_SolverBullet.cpp:397: error: call of overloaded 'abs(fpreal)' is ambiguous so the impression i got from that advice was to edit the SIM_SolverBullet.cpp file and around the line 375 it was like this fallShape = new btMultiSphereShape( inertiaHalfExtents, sphereCentres, sphereRadii, nspheres); to look like this. fallShape = new btMultiSphereShape( sphereCentres, sphereRadii, nspheres); after that my compile output was. $ ./compile_example.sh Making debug version Install directory = '.' Linking with 'libLibBulletDynamics' Linking with 'libLibBulletCollision' Linking with 'libLibLinearMath' Making SIM_SolverBullet.o and ./SIM_SolverBullet.dylib from SIM_SolverBullet.cpp cc1plus: warning: command line option "-fobjc-gc-only" is valid for ObjC/ObjC++ but not for C++ In file included from SIM_SolverBullet.cpp:9: ../../bullet-trunk/src/BulletCollision/Gimpact/btGImpactShape.h: In copy constructor 'btGImpactCompoundShape::CompoundPrimitiveManager::CompoundPrimitiveManager(const btGImpactCompoundShape::CompoundPrimitiveManager&)': ../../bullet-trunk/src/BulletCollision/Gimpact/btGImpactShape.h:309: warning: base class 'class btPrimitiveManagerBase' should be explicitly initialized in the copy constructor ../../bullet-trunk/src/BulletCollision/Gimpact/btGImpactShape.h: In copy constructor 'btGImpactMeshShapePart::TrimeshPrimitiveManager::TrimeshPrimitiveManager(const btGImpactMeshShapePart::TrimeshPrimitiveManager&)': ../../bullet-trunk/src/BulletCollision/Gimpact/btGImpactShape.h:553: warning: base class 'class btPrimitiveManagerBase' should be explicitly initialized in the copy constructor In file included from SIM_SolverBullet.cpp:43: SIM_SolverBullet.h: At global scope: SIM_SolverBullet.h:151: error: extra qualification 'SIM_SolverBullet::' on member 'addBulletBody' SIM_SolverBullet.h:152: error: extra qualification 'SIM_SolverBullet::' on member 'removeDeadBodies' SIM_SolverBullet.h:153: error: extra qualification 'SIM_SolverBullet::' on member 'processSubData' SIM_SolverBullet.cpp: In member function 'virtual std::_Rb_tree_iterator<std::pair<const int, bulletBodystr> > SIM_SolverBullet::addBulletBody(SIM_Object*)': SIM_SolverBullet.cpp:396: error: call of overloaded 'abs(fpreal)' is ambiguous /usr/include/stdlib.h:146: note: candidates are: int abs(int) /usr/include/c++/4.2.1/cstdlib:174: note: long long int __gnu_cxx::abs(long long int) /usr/include/c++/4.2.1/cstdlib:143: note: long int std::abs(long int) SIM_SolverBullet.cpp:411: error: call of overloaded 'abs(fpreal)' is ambiguous /usr/include/stdlib.h:146: note: candidates are: int abs(int) /usr/include/c++/4.2.1/cstdlib:174: note: long long int __gnu_cxx::abs(long long int) /usr/include/c++/4.2.1/cstdlib:143: note: long int std::abs(long int) SIM_SolverBullet.cpp:412: error: call of overloaded 'abs(fpreal)' is ambiguous /usr/include/stdlib.h:146: note: candidates are: int abs(int) /usr/include/c++/4.2.1/cstdlib:174: note: long long int __gnu_cxx::abs(long long int) /usr/include/c++/4.2.1/cstdlib:143: note: long int std::abs(long int) Compile failed i am using the Dec 23 trunk of Bullet I am a bit out of my depth and fear I will have to take the time to understand the code before I can compile it.
  13. This time we are going to inform everyone in every forum and mailing group at the same time and with plenty of warning. The VHUG: Vancouver Houdini User's Group will be held in some downtown Vancouver pub on 2nd of February. The location will be decided closer to the date. Hope to see you there. You can join the facebook group "Vancouver Houdini User's Group" and be part of the Vancouver Houdini scene. Date: Tuesday, February 2, 2010 Time: 7:00pm - 9:00pm Location: some Pub in Downtown Vancouver Robert Kelly
  14. I am posting this from Khash's post from the Vancouver Houdini User's Group facebook event Khashayar Khalkhaly ...Vancouver Houdini User's Group.... I would like to start a monthly meeting every first Tuesday of the month. This will be the Vancouver version of the Toronto THUG. The nerds will show up and discuss how much Houidni sucks over a pint or two. We can call it . (VHUG?) and that is tonight at ... Yaletown Brewing Co 1111 Mainland St.Vancouver, BC V6B5P2 You are more than welcome to show up with your notebooks and show off new things. Hope to see you all there. Robert Kelly
  15. Hou Navigator 0.1

    I just found this after much searching and now here it is in odforce. Only i am running a mac at home and a Linux box at work, that i don't have the privileges to mess with, that much. so i am not that much ahead. My home mac is a dual boot into windows but i am only using that os for puter games. but nice to see someone making this. maybe now someone at sidefx can have a play with it and then integrate it into Houdini permanently.
×