Jump to content


  • Content count

  • Donations

    10.00 CAD 
  • Joined

  • Last visited

  • Days Won


acey195 last won the day on September 18 2017

acey195 had the most liked content!

Community Reputation

126 Excellent

About acey195

  • Rank
  • Birthday 01/10/1991

Contact Methods

  • Website URL

Personal Information

  • Name
  • Location

Recent Profile Visitors

6,661 profile views
  1. Try Except in VEX alike in Python?

    yeah, ok I think I see what you mean now, I would also love stuff like: setpointattrib(0, attrib, @ptnum, point(0, attrib, otherSourcePt)); to work.. (I understand its ambiguous, but some auto casting of variables mid-code-line would still be nice) The functions from Thomas are workable they will result in almost 200 lines of code to make all checks, the strongly typed way (unfortunately I cannot share the code :/ )
  2. Try Except in VEX alike in Python?

    Vex is a highly multi threaded language, I think adding try-catch/except logic would seriously slow it down. most value errors at least, will just return 0, as VEX is strongly typed. (like Atom Mentioned) Rather than crashing the node, its probably better to compare your values to 0 in some cases (and if the expected value is non-0)
  3. Reverse curve direction not working

    to check the (counter-)clockwiseness, you can enclose the primitive (in the curve sop directly, in a primitive sop or an ends sop), then check if the primitive normal is up or down. (if your curve self intersects, there obviously may be issues with this or any method)
  4. The event was a blast to be to present at and Some people from Grendel Games made a nice write up of the event: https://www.grendel-games.com/procedural-generation/?lang=en

    not really an expert, or user of flip at all to be honest, but I did recall this showing up in the changelog, worth a try I guess?: Houdini 16.5.483 Reseeding in the flipsolver is now forced to be active when narrow band is active. This is important because the simulation can collapse with narrow band if the band of particles are not maintained properly. Thu. May 24, 2018
  6. you may also try promoting the attributes to vertex attribs, and then applying a vertexSplit node, if you actually need to split the primiitives (so you could use a connectivity sop later for instance) also continuing from 3Dome, you could also do both in one node: string grp = sprintf("cluster_%d", i@cluster); setprimgroup(0, grp, @primnum, 1);
  7. Rant about parameter expression syntax

    As I understand it, the backticks cast your value to a string. If you use backticks in a float field, it will be cast to a string and then interpreted again as a float; Because it will only accept those kind of values, but this is basically casting your value twice, so there is a risk of losing data in some cases. Since I'm one of those people of a "strongly-typed" persuasion, I kinda like how it is now But for the stuff where strongly typed is less well suited, there is always Python you can use. and you can also setup your default parameter language to Python as well.
  8. Boolean issue, non manifold edge...maybe

    Try disabling the de-triangulation feature on the first boolean SOP, or add a fuse, clean and divide sop between the first and the second one.
  9. no cross ?

    if you are doing more than one operation per line, always hard cast your variables, otherwise they will be considered as a float in some cases. This is especially true for functions that accept multiple data types. side topic, the {0,1,0} notation does not accept variables, so use set(0, x, 0) instead if you need to
  10. this was also a post of 2 years ago :P, a lot of us (including me) have already moved on to the new compilable-new-foreach-structure
  11. Dynamic Vex Variable Names?

    its possible with H14 and up using the http://www.sidefx.com/docs/houdini16.0/vex/functions/setprimattrib function along with http://www.sidefx.com/docs/houdini16.0/vex/functions/sprintf for example float angleVal; string attribName; for(int i = 0; i < 4; i++) { attribName = sprintf("angleDir_%d", i); angleVal = i; //do your math here setprimattrib(0, attribName, @primnum, angleVal); } in H13 and lower, the attributes have to exist before the setprimattrib or setpointattrib etc are used, with H14 and up, it will generate it for you or you can store them directly as an array attribute, but in some cases it may complain if the sizes of the array are not the same (at least in Python I think) in vex that would look something like this: float angleVals[], angleVal; string attribName; for(int i = 0; i < 4; i++) { angleVal = i; //do your math here append(angleVals, angleVal); } f[]@outAngles = angleVals;
  12. Houdini 17 Wishlist

    a toggle (or default) for the findshortestpath node, so when you do not output paths, that it does not delete the geometry when there are no points in the "Start Points" group, but instead sets the "Cost Attribute" value(s) to -1, like it does to all points it can normally not find a path to (when there is at least one point grouped as a start point) This behaviour is useful to do quick floodfill operations (to see if a certain point is connected by another point, while also taking into account directed primitives) Right now you have to add a: delete, switch and attribCreate node for every findShortest Path to do this safety check.
  13. Grid Subdivision Problem

    You can try overriding your crease value, and setting it to a high value (like 10) the other corners are fine, because they are convex corners, or they have split points I would think.
  14. about demo reels

    That depends on at least 2 things: what you mean by assets in this context? (models that are downloaded from online? Orbolt assets?) In both these cases its probably fine if you clearly say which parts you worked on yourself (and maybe give credit), and your own work clearly adds on top of the rest. what kind of job you are aiming for? If by assets you mean your own digital assets, then I would suggest showing them a little bit IF you are aiming for a technical job (tools/pipeline) for a more pure FX job, you can probably leave most of it out.
  15. [SOLVED]Make Fake Primitive Normal Real?

    wrangle over prims: ///// v@primNormal = prim_normal(0, @primnum, {0.5, 0.5, 0.5}); ///// then promote the attrib to points like you tried before