Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

Posts posted by B.Walters

  1. The Arnold Standard shader has a feature I'd love to play with in Mantra: "Backlight".  The help reads, "This attribute computes the lighting from both sides of the face of the mesh...".  This is useful for leaves and other thin geometry - it really helps them feel like the light is passing through.  


    Does Mantra have anything native like the Backlight parameter?  Or how would you go about building one?



  2. I like how Arnold handles this - when a texture is requested that is not a ".tx" file, it checks if there is one in the same directory "foobar.exr -> foobar.tx". If there is a tx file, it then checks to see if the tx is outdated. If it is not outdated, it automatically uses the .tx file.  If it is out of dated (or missing), it creates one, and then uses that.


    I was really hoping there was a hidden preference to have Mantra do something similar... 

  3. From a few simple tests, just having Mantra render a large # of high res EXRs takes forever and uses a lot more RAM than having pre-converted the textures to rat files (EXRs - ZIP, Multi-scanline blocks).  So that makes me want to pre-convert all our textures to rat files automatically.


    I'm interested in how other places handle texutres in their Houdini pipelines.  Is there better ways to export out 


    Do you normally convert them to rat files and then render them?  How do you keep the rat and exr in sync?  Or do you let Mantra always do that for you? 




  4. Hey Grav--

    Long time no see! How's life treating you?

    And for a simple z-depth pass, if you don't mind it being in an extra raster/channel, you can simply go to your Mantra ROP, click the 'Deep Raster' tab, then for the 'Variable Name' box click the pop-up list and select 'Pz (Surface Depth)'. Voila - in addition to your RGB channels, there will be a fourth Z-depth channel.

  5. It's like RDG said "...it's the way simulations work". Particle sims are little more than cached geometry. And each POP Network is just a cache-- and you (sadly) can't copy stamp over a cache, it would overwrite itself.

    An alternative solution would be to have several popnetworks, and use the opdigits() expression to change start time, preroll, seed, etc.

    For example:


    --Preroll = opdigits('.')


    --Preroll = opdigits('.')


    --Preroll = opdigits('.')

    You'd then have 3 popnetworks with prerolls being 0, 1, or 2 seconds. Simply copy and pasting one of your popnetworks would give you another sim with 3 seconds of preroll.

    If you want random preroll for each sim, try: rand(opdigits('.'))

    Long live opdigits()!

  6. If the sphere doesn't have a velocity, try putting down a Trail SOP right before the sphere goes into the POP Networks. In the Trail SOP, select the trail type to be "Compute Velocity". And presto - your sphere will have a velocity attribute, and by default, your Source POP will (should) inherit the velocity of the sphere.

  7. Now we need someone whose better at chops than me, because this approach will work - but isn't too terribly clean/ideal:


    You'll notice I've made extensive use of the opdigits() function. If you're not familiar with it, look it up! It's a great asset to any Houdini artist.

  8. Yep, it's aproximatly this, I want apply that animation to the same geometry, in order to delete my DOP simulation...

    I will try your tips


    Well if its the same geometry, and the DOP sim is already cached - then the easiest way to get the geometry out of DOPs is with an Object Merge SOP.

    The path to extract the geometry has a bit weird syntax... it goes like this:


    The data you want will almost always be "Geometry"



    Wildcards also work, so you could do something like:



    The first example would extract all the geometry from your dopnetwork, and the second would extract any object that started with then name "Sphere_"

  9. Just to clarify, you have a DOP Simulation you're happy with (including curves you exported using Dynamics CHOP), and now you want to apply that animation to other geometry? (i.e. you simulated with a low-poly model, and now you want to render with a hi-poly model?)

    If so... I'm no CHOPs expert (so maybe someone else can think of a better way to get the data back into OBJ/SOP land) but you could use the chop function to extract the transformations from your DOP Sim and apply them to your objects. At the OBJ level (or on a Transform SOP), you would type for the tx something like:


    And then do the same for the remaining translation channels, the rotation channels, and the pivot channels. (Or to be more Houdini like, you could simply use: chop("/obj/chopnet1/dynamics1/rbdobject1:$CH") for all the parameters).

    Hope that helps.

  10. I was taught the first 5% of Houdini I know from the Savannah College of Art and Design - and the remaining 95% is mixed from self-taught, old video tutorials, and tips-and-tricks from friends. And I kind of get that feeling that only '5%' is all anyone can really 'teach' of Houdini. It's really a question of wrapping your mind around a procedural workflow.

    So depending on how much Houdini you know already depends on whether or not I'd recommend taking a formal class in Houdini.

    I don't know how the courses for Houdini in Vancouver or Bournemouth are. But if you're fairly new to Houdini - and you you have a decent level of experience with other 3d apps - I might recommend checking out Side Effects Software's Bootcamp.


    From their page:

    The Houdini Boot Camp is a comprehensive introduction to Houdini software. This intensive hands-on course provides a working knowledge of Houdini for production with 24 hours of instruction over 4 days. Learn the Houdini workflow and see how your skill-set and demand in the CG marketplace continue to grow!

    I had the privilege to be a T.A. for one of those classes back when I was an intern at Side Effects. And I can say Dave Robert, the instructor, will get you through the basics and answer any questions you may have.

  11. How can you get the path of all the current panes? I'd think the command 'panepath' would have an option for this, but alas, I can only set the path of panes.