Jump to content


Popular Content

Showing most liked content since 05/25/2019 in Posts

  1. 6 points
    Hello, friends! Finally, after 19 months of work, I finish my first Houdini project. This is a music video for my friend I did to learn Houdini. Rendered with 3x3 sampling on my laptop that`s why it`s so noisy. Working on the project, I develop an abstract production pipeline for Houdini called "Eve". It is a project management tool which can handle a large amount of data: https://github.com/kiryha/Houdini Thank you all for your support, it would not be done without your help! Cheers!
  2. 5 points
  3. 4 points
    WOWOWOWOWOW It's again been a hot minute since I posted anything here I recently gave a talk at the LA Houdini User Group on writing your own vex based polywire SOP, and figured it would be worth sharing here! I also recently redid my website so go check that out here as well: jakerice.design Love you fools <3 Jake
  4. 3 points
    Try give a look at the hipfile attached. There are some issues in the way you built your constraints and try to break them. Of course is good that you separated them in strong, weak for the frames etc... but glue constraints are not going to break if there aren't any forces applied to them that are stronger than their strength, gravity is not enough. If you have everything connected to everything, nothing is going to move. That's why we need to use metaballs or some other magic tricks to initialize the simulation, breaking some constraints so the simulation can start and propagate. If you just delete all constraints in a certain area, of course the whole structure is going to collapse and you are not going to have any big pieces. In scenarios like that is useful to give some conditions (for example using the name of the constraints) and break just some of them. That's why preparing as much as possible in SOP is going to make it easier later on. If you want to break a different type of constraint, just change the name in the SOP solver to match it. testtOd_00.hipnc
  5. 3 points
    I have used BVH files from both OSU and CMU. Also CG Speed has some of those same BVH file processed to various degrees. (Choose MotionBuilderSet) You can preview BVH files using BVHacker (free). Here is a basic workflow. 1.)Decide on a BVH file. 2.) Convert to the .bvh file to a .bclip file and companion .cmd file using Houdini's command line tool named mcbiovision. EXAMPLE .bat file for Windows to convert a BVH to a .bclip and .cmd companion file set. (Adjust path to your Houdini\bin folder) "C:\Program Files\Side Effects Software\Houdini 15.5.480\bin\mcbiovision.exe" -n 2 "C:\Users\Mitzumi\Documents\Mocap\cmuconvert-daz-60-75\60\60_01.bvh" "C:\Program Files\Side Effects Software\Houdini 15.5.480\bin\mcbiovision.exe" -n 2 "C:\Users\Mitzumi\Documents\Mocap\cmuconvert-daz-60-75\60\60_02.bvh" "C:\Program Files\Side Effects Software\Houdini 15.5.480\bin\mcbiovision.exe" -n 2 "C:\Users\Mitzumi\Documents\Mocap\cmuconvert-daz-60-75\60\60_03.bvh" 3.) Run the resulting .cmd file inside Houdini to re construct the BVH skeleton as a Houdini FK based skeleton. File/Run Script... 4.) Dive into the chop network, that will be built by the .cmd file, locate the File node and browse to the .bclip file which will finally cause the bones to move. The .bclip drives the associated bone network. Once you have an imported .BVH file, you can re-target it to another rig using the Goldfarb technique, here.
  6. 3 points
    https://github.com/kiryha/Houdini/wiki/vex-snippets http://lex.ikoon.cz/vex-snippets/ https://tosinakinwoye.com/2017/01/23/houdini-vex-snippets/ https://vfxbrain.wordpress.com/2016/10/02/vex-snippets/ you gonna find a version .
  7. 3 points
    And Librarian in Action ...play with this some Dude posted long long time a ago......You have fibonacci inside so play explore... noiseee.hipnc
  8. 3 points
    I wanted to share a music video that I directed with a bunch of CGI that I did in Houdini and rendered with Redshift. The concept is based on the idea of a future where a sort of Turing test is administered to humans as opposed to the other way around. Most of the compositing was done as a combination of Aftereffects, Fusion and Resolve. We shot the footage against green screen and then created all of the CGI assets for the environment through a mix of modeling and kit bashing. There is a brief behind-the-scenes video link in the description. I hope you enjoy watching it as much as I enjoyed making it!
  9. 2 points
    Amazing stuff, relay nice work.
  10. 2 points
  11. 2 points
    Hey folks, proud to present LYNX Tools, a collection of production proven open source tools to accelerate your workflows! All mentioned tools are free to download via the links below and are licensed with a full HoudiniFX license. Download them at: Website: https://www.lucascheller.de/resources/ Git: Repository: https://github.com/LucaScheller/VFX-LYNX Lastest stable release: https://github.com/LucaScheller/VFX-LYNX/releases Please give them a test drive, so we can improve them further Roadmap | https://trello.com/b/f8Pgip7s/lynxpipeline So far there are three tools: LYNX_force_general | Tweak your sims with this all purpose & intuitive force field. Built to mimic force fields in other DCC applications, but with support for more features and a natural Houdini user experience. https://www.lucascheller.de/vfx/2019/03/24/vfx-lynx-houdini-force-general-asset/ LYNX_fabric | Create fabric/weave patterns with ease. Perfect for creating that holiday sweater you never wanted. https://www.lucascheller.de/vfx/2019/03/16/vfx-lynx-houdini-fabric-asset/ LYNX_velocity | Get control of your velocities via an intuitive UI or groom them for absolute fine tuned control. https://www.lucascheller.de/vfx/2018/11/01/vfx-lynx-houdini-velocity-asset/ More info on my website: https://www.lucascheller.de/blog/ Houdini User Group Munich Presentation: https://vimeo.com/334887452
  12. 2 points
    This is more comedy than horror, but might give you some ideas. Need a better way to stick the worms to the character, right now I'm just doing a lowbrow 'find the closest point and head there, plus up a bit', so the worms throw themselves in a rather madcap way. I'm sure you or someone else can improve on this! vellum_worm_guy.hip
  13. 2 points
    Looks great. and fun. Huge project for one person! My last project I worked as Tech anim/CFX artist and just can not keep on looking at all those floating charters and feet intersections... Other than that looks really great. Good job.
  14. 2 points
    the ray sop either shoots a ray in some direction (default is normal) or chooses the closest point on a surface. extrudesop_002.hipnc
  15. 2 points
    You can 'remote-control' and repeatedly call the clipping SOP with python verbs.
  16. 2 points
    Hi. yes you should use a sopsolver dop to break glue constrains with a pop metaball force dop. Here is file with one of many approaches how to do that. metaball_test_01.hipnc
  17. 2 points
    Hi there. I have finished my 2nd year in uni and I'm looking to build a killer FX reel by the time I graduate next year. I would greatly appreciate advice on what to work on in the next year and criticism on my current showreel. For the next year at uni, we have to make a short film for which I'll be doing the fx.It is currently centred around a snow leopard in a Mongolian landscape. I was planning to create a custom material point snow solver and am currently learning c++ and the HDK. My current showreel is available here: Thank you and have a good day
  18. 2 points
    Just a tip from some one watching x amount of reels every month... Tone down or drop the music.
  19. 2 points
    you can for example age your Geometry or ConstraintGeometry using POP or Geometry Wrangle using f@age += @TimeInc; then in Vellum Constraint Property DOP either use float age = point(1, "age", @ptnum); restscale = 1 + age*.5; if you have @age only on points of the geometry (see example file) or if you have f@age on primitives of ConstraintGeometry you can do directly restscale = 1 + f@age*.5; anim_rest_scale_age_v001_fix.hip
  20. 2 points
  21. 2 points
    Houdini Tutorial Monument Construction Time-Lapse Download Houdini Project File - https://gum.co/timlapse Available for free: https://www.youtube.com/playlist?list=PLtCPgCB2Kw05gvrIR3CPCe8VhzCzl2HBd&fbclid=IwAR137yDe7ftp_aQtK3LoOCODQKVaJLa6d9AP7_wDjVVDAR1rDmLAUirto3k - Chapter 1 Dividing Geometry Into Bloks - Chapter 2 Gradual Emergence of Pieces - Chapter 3 Procedural Animation of The Crane - Chapter 4 Modeling The Crane - Chapter 5 Metal Scaffolding Download Houdini Project File - https://gum.co/timlapse Explore my products: https://gumroad.com/rart Follow me for updates on what I am creating: - Artstation https://www.artstation.com/raducius - YouTube https://www.youtube.com/channel/UC1Avewug9ZPCLx1URXVEw4g - Instagram https://www.instagram.com/raducius
  22. 2 points
    Hi BiZz, Vellum constraints can be very tricky and you can run into all sorts of problems setting up custom ones outside of the vellum constraint nodes when you are in DOPs. I gave you problem a go myself using a couple of wrangles and I managed to get a stable result working. For a longer explanation and a hip file is on my blog: https://zybrand.xyz/vellumcontinuous-emit-with-dynamic-constraints#more-324
  23. 2 points
    Hello, Tried to make some snow using Vellum grains. What do you guys think? https://danielezannone.tumblr.com/post/185340123069/houdini-vellum-solver Learned a great deal from Steven Knipping https://vimeo.com/297116432 Cheers!
  24. 2 points
    Here is a quick example of how you could achieve this kind of effect with the grain solver. If you wanted to get fancy with this, you could constrain pairs of grains together to more accurately represent the bee body shape. bees.hip
  25. 2 points
    you can convert it to set and back uniqueV = list(set(v))
  26. 2 points
    Another approach might be to skin the line, by placing a circular mesh around it then reference the points of the mesh inside a Gas Wrangle on the velocity update of the pyro solver. This way you can create a custom drag that reduces velocity the farther from the central line, that the smoke travels. The cage is not a collision mechanism, it merely offers a reference @P for the smoke to compare against. ap_SmokeAlongCurve.hiplc You will probably need to dial in the distance values of the fit to achieve the best look. vector p1 = point(0, "P", 0); float dis = distance(p1, @P); //Change fit range and resulting values to dial it in. // Get half as fast, the farther out it travels. @vel *= fit(dis, 0.5, 1, 1, 0.5); NOTE: Because the wrangle has no input, the point fetched, from input #0 is actually defined under the Inputs tab (which points to the mesh cage SOP) of the wrangle, this is a little different than standard SOP manipulations of input 0.
  27. 2 points
    Hey, On June 3rd I will be teaching an advanced Houdini masterclass at the Effects America conference in Montreal. I will be covering growth systems. Should be good fun: https://www.effects-events.com/en/master-classes/ Description: During this advanced Houdini masterclass you will learn how to create an art-directable growth system. Digitally constructing things can be as challenging if not more challenging than destruction, this class will focus on the former. The class is split into two main sections. The first section of the class will dive into building the growth solver prototype tool. This covers solvers, some vector math, chaos theory, 2d & 3d growth, custom forces and tool development. The second section of the class dives into using the tools to grow a 2d and 3d pattern that is procedurally animated and prepared for rendering. This covers path finding, procedural animation, combining 2d and 3d patterns, custom attributes and aovs/render passes for comp. Take away: Understand the algorithm and concepts for building a growth solver. Build a user-friendly and efficient tool that can scale from small scale single growth to growing large datasets for entire vfx sequences. Understanding and making use of Houdini’s data acceleration structures. Gaining insight into the art-direction and approval process for both the grown pattern as well as the procedural animation. The audience: This course is intended for intermediate to advanced Houdini users. Users should have a working understanding of the Houdini interface and overall data flow (contexts, attributes, datatypes). Houdini Apprentice can be used for this class. Hope to see you there or perhaps at the conference, Peter
  28. 2 points
    Tried to get mud surface effect with some reaction to the geometry without heavy simulations. iskalvlup_heightfields_mud_worms.hip
  29. 2 points
    My Vimeo Profile is online too for Tutorials https://vimeo.com/user95633319
  30. 2 points
    Here's my try at it. I reversed the faces of the bubbles, then merge them with the main/outer fluid mesh. cola.hipnc
  31. 2 points
    This is really great.The effects of these loops are exquisite and ingenious
  32. 2 points
    Not sure if I understand correctly, but if you want to bake in COPs point attribute in uv space, then VEX works as usual: vector uv = set(X, Y, 0); vector clr = uvsample("op:/obj/geo/geometry", "Cd", "uv", uv); R = clr.x; G = clr.y; B = clr.z; Copy this (replacing path and attribute name) into Snippet VOP inside vopcop2filter and you should have the attribute baked into texture.
  33. 2 points
    Hey all, here's a shot I've been working on! Speed Tree, Houdini and Redshift. Have a good one
  34. 2 points
    Hello, here is some of my attempts to do something similar. But I can't get a similar level of detalization in mantra. If somebody can suggest some tips it wound be amazing volume is still a little bit blurry, I guess it could be because of texture resolution vol-0001_volume_v01.hip
  35. 2 points
    You can use maketransform(): http://www.sidefx.com/docs/houdini/vex/functions/maketransform Put this in a pointwrangle and make sure to set all scale values to 1. int trs = chi('transformation_order'); int xyz = chi('rotation_order'); vector t = chv('translation'); vector r = chv('rotation'); vector s = chv('scale'); vector p = chv('pivot'); matrix m = maketransform(trs, xyz, t, r, s, p); @P *= m;
  36. 1 point
    Love it! очень хорошо
  37. 1 point
    Thanks for pointing me in the right direction. The issue arises after installing the Game Development Toolset. The old path was HOUDINI_PATH = $HOUDINI_PATH;$APPDATA\SideFX\GameDevToolset\17.5\1.163;& I modified it to be: HOUDINI_PATH = $APPDATA\SideFX\GameDevToolset\17.5\1.173;$HOUDINI_PATH; Everything works as expected now.
  38. 1 point
    Hello, I hope somebody can help me out as I have run into a problem when linking ramps via script that I have been unable to solve for more than a week now. What I would like to achieve is exactly the same effect that using "Copy Parameter" / "Paste Relative References" does when doing this from the user interface. I tried both python and hscript. The problem is that once the ramps are linked, when I add new control points to the parent, the child gets the control points but doesn't get the positions (ramp#pos) and values (ramp#value). In python I simply tried to set one float ramp parm to the other like this: hou.parm("/obj/node_B/ramp_B").set(hou.parm("/obj/node_A/ramp_A")) This seemed like the most simple and straightforward way of doing this but it failed so I reported it to the SideFX guys and they confirmed that python is not feature-complete for linking ramps with the .set() command - first they logged it as Bug #97192 then it was reconsidered to be an RFE with the same ID. After this SideFX suggested to use hscript opmultiparm which I proceeded to do but the ramp linking failed this time too. I am fairly confident using python but not so much with hscript so I am hoping it's my inability to use hscript properly this time rather than another bug - this is what I did: opmultiparm /obj/node_B/ 'ramp_B#pos' '/obj/node_A/ramp_A#pos' 'ramp_B#value' '/obj/node_A/ramp_A#value' 'ramp_B#interp' '/obj/node_A/ramp_A#interp' What I noticed in the "Edit Parameters" interface is if I manually type in the path to link the ramps then it does work the same as "Copy Parameter" / "Paste Relative References" - see below. I wonder if this field is exposed to python or hscript somewhere and maybe I should try to set this? Other than the above I also used both opscript and .asCode() after setting up the ramps links manually to see if it gives me the proper code and even if I run the code I get back from these the ramp linking still fails. Has anybody ever found a reliable solution for linking ramps in script? Anybody got any ideas where to go from here?:) EDIT: I found the solution on the SideFX forum by user jsmack in this post: https://www.sidefx.com/forum/topic/59899
  39. 1 point
    Hi, take a look at attachment, maybe it helps. At this site and sidefx there are lots of information and examples about for-each loop but it might take some time to understand that. MultipleMorphsAndForEach_01.hipnc
  40. 1 point
    A new entry to the above list. An open source renderfarm manager donated by Sony to the Academy Software Foundation. https://github.com/AcademySoftwareFoundation/OpenCue No Houdini support at the moment.
  41. 1 point
    Look at the local scheduler it defines where the working directory and such are pointing. https://www.sidefx.com/docs/houdini/nodes/top/localscheduler.html
  42. 1 point
    Hey friends! It's been another long while since the last Stable release, but I finally have a new one available. The changelist is pretty big so I'll only link to it here, but there are a few new toys to play with, many modifications to existing ones, and a TON of bugfixes and reliability improvements. I hope you'll spend the time to take a look! https://github.com/toadstorm/MOPS/releases/tag/v0.1.52 As always, any questions, comments, feature requests, or donations are immensely appreciated.
  43. 1 point
    Going thru a tutorial on L-Systems and OMG, just seems like an overly complicated system for creating results that aren't necessarily that organic looking. Does anyone actually use L-systems in the real world?
  44. 1 point
    Hello Everyone, This is a video recorded by the Instructor Corbin Mayne explaining the content of the VEX FOR HOUDINI ARTISTS workshop and showing a preview of the final slime fx rendered. Start date: June 20th 2019 https://rebelway.net/vex-for-houdini-artists/ Please feel free to PM me here if you have any questions or send us an email to rebelwayinfo@gmail.com Regards Saber
  45. 1 point
    With the help of both the Redshift community and resources here, I finally figured out the proper workflow for dealing with Redshift proxies in Houdini. Quick summary: Out of the box, Mantra does a fantastic job automagically dealing with instanced packed primitives, carrying all the wonderful Houdini efficiencies right into the render. If you use the same workflow with Redshift, though, RS unpacks all of the primitives, consumes all your VRAM, blows out of core, devours your CPU RAM, and causes a star in nearby galaxy to supernova, annihilating several inhabited planets in the process. Okay, maybe not that last one, but you can't prove me wrong so it stays. The trick is to use RS proxies instead of Houdini instances that are in turn driven by the Houdini instances. A lot of this was based on Michael Buckley's post. I wanted to share an annotated file with some additional tweaks to make it easier for others to get up to speed quickly with RS proxies. Trust me; it's absolutely worth it. The speed compared to Mantra is just crazy. A few notes: Keep the workflow procedural by flagging Compute Number of Points in the Points Generate SOP instead of hard-coding a number Use paths that reference the Houdini $HIP and/or $JOB variables. For some reason the RS proxy calls fail if absolute paths are used Do not use the SOP Instance node in Houdini; instead use the instancefile attribute in a wrangle. This was confusing as it doesn’t match the typical Houdini workflow for instancing. There are a lot of posts on RS proxies that mention you always need to set the proxy geo at the world origin before caching them. That was not the case here, but I left the bypassed transform nodes in the network in case your mileage varies The newest version of Redshift for Houdini has a Instance SOP Level Packed Primitives flag on the OBJ node under the Instancing tab. This is designed to basically automatically do the same thing that Mantra does. It works for some scenarios but not all; it didn't work for this simple wall fracturing example. You might want to take that option for a spin before trying this workflow. If anyone just needs the Attribute Wrangle VEX code to copy, here it is: v@pivot = primintrinsic(1, “pivot”, @ptnum); 3@transform = primintrinsic(1, “transform”, @ptnum); s@name = point(1, “name_orig”, @ptnum); v@pos = point(1, “P”, @ptnum); v@v = point(1, “v”, @ptnum); Hope someone finds this useful. -- mC Proxy_Example_Final.hiplc
  46. 1 point
    Use a Geometry Wrangle or a POP Wrangle if you're dealing with particles, and use an expression like this: if(len(v@v) < ch("min_speed")) { removepoint(0, @ptnum); } Or use a SOP Solver in your DOP network to delete the points using any of the SOP-based methods listed above.
  47. 1 point
    extremely easy............once you know how that is.... (in your case...you may have to select more than 1 groups because of 2 islands....so probably border__0 and border__1) Just in case youtoobe plays up and you can't watch...the gist of it is: 01) in your group select unshared edges...make sure you tick Create Boundary Groups, then if you have a 'normal' boundary plus 2 inside holes...=> you'd have 3 Boundary Groups 02) in your next group select, in the dropdown list you'd see border__0, border__1, border__2, ....border__0 should be the outside one...the other 2 would be the holes..you can go nuts with all sorts of permutation/combinations with your group selections... Now you know how easy it is....just say OMG !!!
  48. 1 point
    I hope this setup can give you ideas. It worked for me. I deleted the file caches between the different steps, so it's going to take about 2 min to cook raspberry.hip
  49. 1 point
    I would avoid slow for each loop whenever it's possible. Voronoi Pieces will generate name attribute. You can set group membership (with padding) with primitive wrangle like this: string group_name = sprintf("piece_%04d",opdigits(@name)); setprimgroup(0, group_name, @primnum, 1, "set"); s@name = group_name; //update name It's much faster. But if you don't have to, just use that attribute directly.
  50. 1 point
    Is it possible to define cvex shader in VOP network and call it by path?