Jump to content


Popular Content

Showing most liked content on 06/06/2019 in all areas

  1. 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
  2. 1 point
    A problem I've now had twice in production is NAN valued points in hi-res meshes generated from vdbs. Out of maybe 10 million point meshes per frame across 100 frames I'll get one or two meshes with 200ish bad primitives (prims with garbage points, so far NANs, but I bet infinite values wouldn't play nice either). These meshes look fine and render fine in Houdini and the bgeo's are the same size as the other frames. If you finish in Houdini, you'll never know there is a problem. The bad prims are tiny and just not drawn as they have no position. However, caching out .ass files results in silently truncated frames. There are no errors when writing out these .ass files from the in house tool. The corrupt frame gets rendered in Maya and no mesh shows up or it throws and error and I get an email about issues with my mesh which, again, look fine in the viewport. Files are about half the size they should be so truncation is clearly happening. If this sounds like something you're experiencing, consult the spreadsheet and sort your position values by any channel and if you have not-a-number values it'll look like this: If you're familiar with vex, you may know there is a NAN testing function called isnan() which will work on a float so we can test against each position channel and if any fail the test we have discovered our bad geo. A word of advice though- don't just delete the bad point, delete the bad primitive! For whatever reason, Arnold doesn't always find the geo well formed when culled by points in Houdini. You'll often get a vertex mismatch error during rendering and another email. So the safe solution is to walk over primitives in a wrangle and test the points of the current primitive. If any fail the NAN test, delete the entire prim: // PrimitiveWrangle code int cull_prim = 0; int pt; vector pos; for (int i=0; i<primvertexcount(0, @primnum); i++) { // convert the prim vertex -> linear vertex -> point number pt = vertexpoint(0, vertexindex(0, @primnum, i)); pos = point(0, "P", pt); if (isnan(pos.x) || isnan(pos.y) || isnan(pos.z)) { cull_prim = 1; break; } } if (cull_prim) removeprim(0, @primnum, 1); If anyone has a better solution, I'd love to hear it. I'm a bit disappointed by how brittle the Arnold/.ass combination is compared to Houdini's handling of floating point values. Vertex mismatches and NAN errors have wasted too much of my time. On the other-hand, Arnold renders look great! Cheers Shawn
  3. 1 point
    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
  4. 1 point
    This is possible with python callbacks. Take a look at my example file and see if helps. change_node_colors.hip
  5. 1 point
    Hi, you can create an attribute on template points i.e. i@id, turn on "Use Template Point Attribute" of the Copy Stamp and you get id attribute on your geometry. Then rename groups by using that id with wrangle or wherever you like. btw, you can get this circle primitive lines from a boolean SOP, just choose operation "Seam".
  6. 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.
  7. 1 point
    what you could try, is flattening the position (make the z position 0) before feeding it into the aanoise, if you want to make the noise more "2D"
  8. 1 point
    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
  9. 1 point
    the attached file shoud do the trick. hth. petz blerp_1.hiplc
  10. 1 point
    In the vein of thinking, sharing, and feedback, I'm gona break down a couple sections of pipeline as I understand it. I haven't had the free time to learn from the links yet, just skimmed em, the stuff is pretty good though. I wish they offered a class on this stuff where I went to school(s). Directory Structure This is a pretty common structure mod-ed a bit to be more conversational. I'm gona travel down one branch of this structure. Every day I need to cd into a directory like this; to get to my shot and setup my job environment( variables). Amazingly there is a lot of though put into this directory structure than I would have imagined. I found out more each time I see it being used differently. Plus it can be pretty flexible and tailorable from individual, small co, and big co. cd /m/cc/job/scns/1001/anim/block/v001/ben/ Usually I have a-couple aliases setup to dive me in faster than typing out the whole thing. A more descriptive option /parentDrive/projectAcronym/HumanVsMachine/Breakup/Shot/Department/DepartmentTask/Version/Artist/ So there are bout 5 major sections, and 4 always tailored parts after that. /m (Parent Drive)- This is the parent directory, and/or drive letter depending on OS. Usually 1 letter, symbolic of the company, or some random though. Like ddc for digital domain commercials, or s for Sony(haven't worked there). It usually avoids the lower alphabet like a, b, c. C since it is the default drive for windows based system. This allows for one level of aliasing and swap-ability above everything. Also can set company specific environment variables. /cc (Project)- This is the projects directory. This is usually a very short acronym for the project. There are allways multiple projects going on, either in dev, current, or old. You could have multiple Demo Reel pieces in process, multiple commercial, multiple features, etc. /job (Human Vs Machine)- This is a split up from human files and computer generated files, jobs and pixs, respectively. You could theoretically delete all of pixs at the end of the show and be able to hit render from the human files to rebuild pixs. Still in theory at most places, but with the right settup this is really useful. Job and pix is a parallel structure. The levels are quite often the same, but sometimes the use of that level of directory may be named something different. Most often pixs is where all your rendered images will, be this can often bloat to terabytes including images and ifds/ribs. So there a lot of scripts that will culls this info out, where as jobs you want to try and save your .hips, .ma, .nk, .shk, etc... /scns (Breakup)- I have no clue what to appropriately call this level of the directory. I feel like it could be removed, but it has proven useful, so I call it in-affectionately the Breakup. This is where scenes, assets, scripts(bin), users, resources, transfers. Scenes contains each shot the project, assets contains models or effects that are not tools that are common to multiple shots with their outlying parts. User is the slop directory where people can experiment with stuff in their own manner, but still have the ability to use it as part of the regular directory structure. Resources are project common useful things that haven't been rolled into something in-particular. Transfer is a project specific area for erroneous transfers, some one doesn't know where this fits into "grand scheme" they drop it here after an e-mail or the person next to you says hey buddy. /1001 (Shot)- This is the shot. I've scene and talked a lot about the different ways the shots are broken down and labeled or number, so there is no common thread. I would hope that a script locked down and you could break it down based on the script based on reels(20min time frames), or story marks or sequences. Usually they have a buffer between numbers for shots that get combined or split there is room. If you have ever done a script breakdown, and looked at the final script version with all it's color insert and banged up nature that is pretty much what happens at and below this level. Also below this level a software centric pipeline may take into effect like a maya studio may base the below structure on the default maya project directory (I personally do not like). /anim (Department) - This is the department. At a big studio this is usually well defined, but at a small studio or an individual project this is where stuff becomes more fluid. It is hard to wear multiple hats and do thing in parallel paths when you fluidly put something together. So I would define this for a small studio as something that has contractually been met for approval. Layout, Anim, FX, Lighting, Comp, Final. /block (Department Task) - This is the task of the department. For animation, it would be something like previz, block, anim, final. /v001 (Version) - This might be combined with task of the department to limit folder hierarchy. This is known as an output event. If you show something to your supervisor at dailies, or something to a co-worker that looks good. You save that version and go to the next version. Encase several versions latter your supervisor says go back to the older version. This is often confusing if you like to save often since a program crashes, like maya. Houdini will create a version in backup every time you save the file. This is a lot cleaner, it goes against instincts of maya/many users, but you can always just save your extra OCD saving in the backup directory. /ben (Artist) - I ain't a fan of this anymore, since it causes their to be an extra folder directory, and the constant potential to not work seamlessly with your co-workers by stomping on stuff and getting confused, especially when not working right next to each other. This structure is best scene from a nodal diagram(not just because we are Houdini users), but it's hard to visualize it as a whole any other way. Need more time to show that. The file names come next but are linked to the structure of where they come from. The pixs directory is heavily like this. And the asset directory is a solid parallel modification of this structure, and has a lot of nuances especially when tied up to otls, or references in maya.