Jump to content

acey195

Members
  • Content count

    533
  • Donations

    10.00 CAD 
  • Joined

  • Last visited

  • Days Won

    11

acey195 last won the day on October 17 2018

acey195 had the most liked content!

Community Reputation

150 Excellent

1 Follower

About acey195

Contact Methods

  • Website URL
    http://www.twandegraaf.nl/

Personal Information

  • Name
    Twan
  • Location
    France

Recent Profile Visitors

7,230 profile views
  1. You could suggest to this artist to put the tools made, on Orbolt too. There you can download any tool, in any kind of licence type, since that is Side-Effects, managed.
  2. Multiply vectors to a plane (Trigonometry questions)

    I'm quite fond of this function: http://www.sidefx.com/docs/houdini/vex/functions/planepointdistance.html pretty sure you would be able to use it in your case (not completely sure how it will operate at the corners, but on the straight bits I imagine it should work pretty well)
  3. 17.5 Launch Event Presentation

    Normally there's more available in indie than core (minus render resolution / profit cap) also if you are talking about PDG, they show demovideos of it in Unity, which would be an exact usecase for Houdini-Indie, so I would sure hope so (disclaimer: have yet to watch the video later today)
  4. Beginners question: Array attributes? What is binding?

    Hey! Yup, they are like n-dimensional vector attributes. Binding with @, will generate the attribute for the output if it did not already exist, or read it if it does. One difference between using binding, and using attribute import, is that you can update the attribute throughout the code multiple times with binding. On the other hand, using for example the point() expression, will always fetch the value of the attribute of the input (and not the intermediate value)
  5. if you average the cross products of the vector of the edge directions of the corners: cross(normalize(pos1-pos2), {0,1,0}) and cross(normalize(pos0-pos1), {0,1,0}), you should have your vector (or the anti vector not sure from the top of my head)
  6. Yeah Konstatin's version is basically a worked out version of my ramblings. Forgot to note that the dot product of 2 vectors is equal to the cosine of the angle between those vectors, making the code kind of convenient @konstantin magnus Just realised you got this technique from the genius himself too (in the other thread)
  7. that would work for the straight bits, but for the corners you would have to increase the magnitude by which you move them to maintain the angles. from the top of my head.. I think it was dividing the offset by either the cosine of the angle, or the cosine of half the angle. So an offset at the corner, at 45 degrees would be 1/cos(45deg) which is 1/0.70710678118 = 1.41421356237 if my memory serves me right. Which makes sense, as that is the square root of 2, and pythagoras and stuff
  8. Set N points to same Y position

    when running over points, you should be able to do this in a single line of a wrangle : v@P.y = floor(float(@ptnum)/3) * 2; //if you want 2 y units between every group.
  9. Change a curve basis in VEX?

    No probs, but yeah we would also make happy use of such improvements :), so thanks to you too!
  10. Change a curve basis in VEX?

    Hey, Also tried adjusting stuff similar to this with NURBS. My fear is, that the setprimintrinsic() function only actually works on a couple of the intrinsics, and not all of them unfortunately.
  11. Mesh Border Mask

    assuming the shape is flat (it has to have boundaries) you can also do the following: Use a divide sop to remove shared edges (toggle at the bottom), though it looks like on the left image this may already be the case. Put an "primitive" or "ends" SOP and set the mode to "unroll" (easier to find in the ends sop), you should now have the boundary line. then you can do the rest in an attribute VOP or wrangle, for example: (input the main geo in the first input, and the boundary in the second) f@falloff = xyzdist(1, v@P); v@Cd = f@falloff;
  12. Well for the scatter node, the density scale is measured per m^2, so if you use a measure SOP to measure the area (it will be set to perimeter by default) you can then use an attribute promote SOP to promote the area from primitive to detail, using the "sum" method. you now should have the total surface area as a detail attribute. Then you can fetch that attribute, and divide it by the size of your bark pieces, times some kind of smudge factor and put that as the density in you scatter node. That should give you a reasonable filling in
  13. This is a very complicated problem, if the data you start with is not already pretty good. If you can also make something like that work well at different resolution scales, you are a super genius. The most straightforward way would probably be to use a lot of smoothing (using various constraints) in combination with fuse nodes progressively increasing in fuse range.
  14. Lambda SOP

    This looks awesome But isn't this sort of what the invoke sop does? although that does have the constraint that you need to call a compiled block (with all the constraints of that)
  15. Hey All, Moving to H17 has been great so far, including a lot of the UI improvements that came in both H16.5 and H17 One thing does annoy me though, is the node information (or middlemouse button) of nodes with errors. Is there any way to get rid of this unused space in the UI? I don't really want to have to scroll down in the error message to read it, or to screenshot it, when I need to notify colleagues. (and if you use middle mouse button, you can not even do that) Thanks! Twan
×