Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won


Atom last won the day on June 2

Atom had the most liked content!

Community Reputation

683 Excellent

About Atom

  • Rank
    Grand Master

Personal Information

  • Name
  • Location
    Ready Player One

Recent Profile Visitors

8,292 profile views
  1. MTL To Redshift Material

    I have added support for an additional .MTL token, the map_Kn token. I came across a game based .OBJ/.MTL file that referenced companion normal maps to the diffuse maps. In this particular mesh, the normal map definition always followed the diffuse map definition. The extension to the material takes the form of a new rsTexture node being plugged into the rsBumpMap node. This disconnects the previous attempt to "auto-bump" a map by using a color correct node to create a greyscale image from the diffuse. The color correct node is still left in place, but the new rsTexture simply takes it's place for supplying the input of the rsBump map node. If no map_Kn token is found, the rsColorCorrect will remain in place. NOTE: For this to work you must have ObjParms applied to the object using this material and the checkbox for Compute Vertex Tangents From the object UV Map must be checked. The script does create the materials, but it does not auto-check the box on your object. The bump results can be a bit nicer using a normal map instead of a faked out greyscale of a diffuse.
  2. TrueBones MOCAP data

    I'll go ahead and post this here as well... My script is hard coded to Carnegie Mellon so it won't work with TrueBones. Recently I have had success using the freebies from MocapData.com. I have abandoned using a script to drive mocap at this time. I had a pretty good break through recently when SideFX staff goldfarb mentioned an easy way to link a rig to an imported mocap rig. Check out this link. https://www.sidefx.com/forum/topic/55681/#post-250676 Basically you use the BlendConstraint shelf tool, using his settings mentioned in the post, and map each mocap bone to each rig bone. It really does not take that long to manually link one up. About 10 minutes and your done. The results are great. Your character will move with the mocap and you can still swap the .bclip file to bring in new motion capture moves. Constraints scrub waayy better than the Python script having to update all bones on a frame change.
  3. Ubuntu 18.04 LTS "Bionic Beaver"

    Just out, Redshift 2.6.11 ("this one goes up to 11").
  4. Flip Fluid ignoring RBD Object Collision

    You collision object must be water tight and not have any holes. You can only use Volume based collision when working with fluids, so return to that method for all collision objects. Activate the collision guide on the fluidobject so you can see the actual result of the flip collision in the viewport, shown in magenta. In flip, particle separation is division size at the collision level so you may not have a low enough particle separation to create a collision surface without holes, even though you have previewed a nice collision inside of the StaticObject node. The collision represented by the StaticObjecct node, in BLUE, is not the collision that flip solver uses. Only the collision surface shown in MAGENTA is what the flip particles will collide with.
  5. Polywire shape adjustments

    Here is a possible setup. ap_curve on object.hipnc
  6. Try animating the distance on the polyextrude from zero to the required depth.
  7. Try setting the FileCache node Operation to Write Files and then simply play the timeline. Any animated switching you have should flow through and trigger the appropriate write. Remember to set the time line to play once so it does not loop around.
  8. I have an animation with multiple keyframes across a few objects. I like what I have, but I would like to double the length. Is there a way to rescale time so the existing keyframes in every object are repositioned in time by a new scaled amount?
  9. flipbook with simulation time

    You could parent a font object to the camera and use it to create a custom overlay. Paste this code into the font text field. `system("date +%X")`
  10. Ubuntu 18.04 LTS "Bionic Beaver"

    I'm getting a crash an errors with the new install of 16.5.496. My 16.5.378 still launches on Ubuntu 18.04 but the .496 is dead in the water. Does anyone know how to fix a "HOM_OperationFailed" error? UPDATE... My issue was a 3rd party render system, Redshift, was not compatible with the .496 release. Once I upgraded my Redshift to the latest version, which is matched to the H16.5.496 API, and altered my houdini.env to point to the new plug-in Houdini launched just fine. This API mis-match could be an issue for Arnold users as well.
  11. I do see an absolute path inside the geometry spreadsheet so I think $HIP is being converted correctly. I also tried an absolute path with both forward and back slashes and neither attempt produces geometry displayed in my viewport. All I see are the points. I did test that my geometry loads using a File node so I know the geometry is ok.
  12. I thought I knew how to leverage the s@instancefile attribute but it does not seem to work anymore. Using H16.5.378. int index = int(fit01(rand(@ptnum),0,3)); s@instancefile = sprintf('$HIP/geo/forest_rock_%03d',index); // Set particle scale. f@pscale = fit01(rand(@ptnum),10.75,110.75); Does anyone have an example of s@instancefile working? instancefile_broken.zip
  13. control fuel and temp by ramp

    An important thing to remember about ramps is that they need to be driven by a value in the range of 0-1. So you have to find a way to convert time to 0-1. This code shows an arbitrary decision to map time from 0-3 seconds into the 0-1 range. Then the ramp has meaning. // The ramp must be driven by a float index value in the range of 0-1. // Using @Time, remap the time of 0-3 seconds, not frames, which is $FPS*3, or 72 at 24 fps. // So the ramp represent change of the range of frames 1-72 with these settings. float ramp_index = fit(@Time, 0, 3, 0,1); f@fuel = chramp("fuel",ramp_index); So the final valid value for fuel is at frame #72. What ever value is at frame #72, that value will be supplied as fuel for the rest of the simulation. Just ramp down on the right side to insure all fuel is removed by then. In this setup I also linked temperature to fuel as the default shelf tools do. Not exactly sure if this is what want but take a look at the modified file. ap_fuel_temp_ramp_fire_v2.hiplc
  14. Try Except in VEX alike in Python?

    Interesting..divide by zero is just zero and not an error. float m = 100; f@n = m/0;