Jump to content

All Activity

This stream auto-updates     

  1. Past hour
  2. Super crazy shit guys.. too awesome. Glad to be on the path of learning Houdini.
  3. Ok, here comes the nice and simple SOP solution: Segment the input line with a polycut node. Align the segments with a primitive node. Assign letters with another primitive node. paragraph.hipnc
  4. Frei Otto edge bundling algorithm?

    @Yundaz Tony - learn also this and just plugin into Solver by Junichiro Horikawa ... easy ...or buy a file of Bogdan for 175 cccccccccccccccccccccc..You have everything on google just warm upp the F chair ...
  5. Today
  6. Here is another (similar) solution using the copy node. line_break.hipnc
  7. while easily possible without coding, I just did a quick wrangle vector startP = chv("startP"); float width = chf("width"); float spacing = chf("spacing"); float length = chf("length"); int nlines = ceil(length/width); for(int i=0; i<nlines; i++){ float linewidth = min(length - i*width, width); vector linestartP = startP + {0,-1,0}*spacing*i; int pt0 = addpoint(0, linestartP); int pt1 = addpoint(0, linestartP + {1,0,0}*linewidth); addprim(0, "polyline", pt0, pt1); } ts_paragraph_line.hip
  8. Tool to run ordered file cache nodes

    A quick way to update all the filecaches can be using a PythonScript node as well , using it in TOPS is a good way ive found to trigger it in sequence . and unlike ROPFetchs in TOPs you dont need to create a explicit node for each filecache . import hou from nodesearch import parser # Create a matcher that finds nodes whose name contains filecache matcher = parser.parse_query("*filecache*") network = hou.node("/obj/") for node in matcher.nodes(network, recursive=True): node.parm('execute').pressButton() This looks for all nodes with "filecache" in their name and triggers their Save to Disk button ( execute ) . the nodesearch function can also do "match only on multiple" queries ( more details in the help https://www.sidefx.com/docs/houdini/hom/nodesearch.html ) as long as named your filecache nodes something like "flip_sim_filecache_01" and "whitewater_filecache_07" then you could have a string of Python nodes in TOPS searching for and caching all nodes of that type in order ( the first nodesearch looking for *flip* and *filecache* , then the next python node looking for the *whitewater* + *filecache* nodes ) . this was ideal for a project that has potentially lots of different filecaches that you dont want to explicitly path to .
  9. Yesterday
  10. Hi, I am wondering how you would do something like this. How would you get a line with one length parameter, that has a constraint after which it can go no further, and then it continues below, like a little 'paragraph', so you could create variations of that line on different 'cards'. Would really like to know how you could do something like that. Thanks
  11. Hi guys. I recently wacthed Fifty50 tutorial making a infection effect and now I'm trying to mesh the points but I couldn't achieve a better quality result. Btw I'm pretty new to houdini :{ My currently setup after points is Volume Rasterize Attributes> Vdb Smooth> ConvertVdb to polygons. Are there a better way to mesh those points? hip file attached, thank you in advance guys. RnD_Infection.v01.hip 001_Pedestal_high_poly.FBX
  12. HDA Error - Houdini 16.5

    Sorry to ask a dumb question but can you point me to a good tutorial for doing this? The HDA we are working from he's a lot of customization. Thanks
  13. HDA Error - Houdini 16.5

    Did you update Houdini versions? Or update a nested HDA? If you re-save your HDA it'll "forget" about those parms and the warning will go away.
  14. Moderator here. @ashu_tosh_m please attempt to do this work for yourself instead of just asking for hip files repeatedly with no attempts to do it yourself.
  15. CROWDS : Walking over other agents

    Hi, Some R&D about the Crowd system. Ultimately, I want to recreate a shot from World War Z (more or less a zombie pyramid, where they are crawling over each others, but "realistically", without too much interpenetration). For the time being I am testing a much more simpler setup to allow agents walking over other agents, using regular nodes and limited code. In this scene I try to recreate the AdaptGround Behavior of Golaem crowd system (http://golaem.com/content/doc/golaem-crowd-documentation/adaptground-behavior) : my "troops" agents can walk on dead / ragdoll agents. For the time being, the dead agents are only taken into account for terrain projection, not yet terrain adaptation / foot planting. If anyone has ideas about that - foot planting - , I would be happy to learn or explore these directions ! :-) I have opened the agent_util.h, terrain_adaptation.h, terrain_projection.h ... VEX code used by the crowd system, but foot planting remains complex and doesn't seem to be easily hacked... (by the way, I have used some code coming from there for this setup) MORE DETAILS ABOUT THIS SETUP : - In DOP, I duplicate the ground with a poly version of it (convert heightfield to poly) : this is an object that I call "offsetTerrain" - In DOP, I duplicate the crowd geometry and keep only the dead agents : inside the crowd object (allow editing of content) I add a fetch data and duplicate Geometry into standGuyGeometry. Then with a SOP Solver, I delete all the agents except the dead ones (that happens to be ragdolls, but would work with any other agents). - I use the DOP data "offsetGeometry" of the object "offsetTerrain" in a Geometry Wrangle to create an attribute (@offsetDead) on each point of the farthest distance of intersection with the standGuyGeometry. - Using another SOPSolver, I blur the @offsetDead attribute created above, to smooth the trajectory of my future agents when stepping on the dead agents. - In the stream of the crows state of the walking agents, I add a POP Wrangle to sample the "offsetTerrain" geometry (2nd input of the POPWrangle), and get the attribute created previously (@offsetDead) - In the agenTerrainProjection1 node, I go inside and change the VEX code of the POPWrangle : I change parms.offset = chf("../offset"); with : parms.offset = f@offsetDead; Therefore, each agent has its own offset and virtually walk over the dead. testWalkOverDeads_vMocapBiped.hip
  16. Evenly Distributed Hexagons On A Object

    Hi Konstantin, Thanks for your great suggestion ! However, When I follow those techniques and combined them together, the edges are getting cut. The surface is not fully consist of hexagons. It's not like the perfect evenly distributed hexagon grid. I'm trying to get a hexagon surface on a car geo, but I'm still not completely achieving what I want.
  17. Frei Otto edge bundling algorithm?

    Thank you guys! its close but wondering how I can get it even closer to the pretty more detailed version in the video I posted. Thanks!
  18. Need help with flip sim out of houdini

  19. Hi guys, I made this simple sim in Houdini and exported it to C4D to render with Octane V4 as alembic. The problem is that in the first frames, there are those weird polygons on the mesh, maybe normal problems? I didn't manage to fix it so I'm ask if anyone here had this problem before and knows a solution for it. I will attach the render and my hip filie below. Thanks in advance. RnD_Viscous.v0.hip lan_rnd_sorvete.mov Edit: I'm sorry admin I messed up with the replies.
  20. Frei Otto edge bundling algorithm?

    duble bubble nano second
  21. Frei Otto edge bundling algorithm?

    Learn this ..... Find than superformula here on the forum and have fun..
  22. Frei Otto edge bundling algorithm?

    You could take a look at this tutorial by Junichiro Horikawa
  23. Hi, Question about about viewing vdbs in the viewport. If you have a vdb, and turn up the anti aliasing samples, it causes the vdb to appear "open" in the viewport and you see square patches. The higher the samples the worse it gets. This only affects the viewport, it I convert it back to polygons everything is fine. This doesn't seems to happen in 16.5. Is this intended fuctionality? Thanks
  24. Python Panel hou.ui problem

    Hello, i am new to this and i don't understand why hou.ui functions stop working when you reopen a panel. Example video. The example code that i used: from PySide2 import QtWidgets class testUi(QtWidgets.QWidget): def __init__(self): QtWidgets.QWidget.__init__(self) button1 = QtWidgets.QPushButton() layout = QtWidgets.QVBoxLayout() layout.addWidget(button1) self.setLayout(layout) button1.clicked.connect(openSel) def openSel(): list1 = ["1","2","3"] sel1 = hou.ui.selectFromList(list1, exclusive=True) print sel1 def createInterface(): return testUi()
  25. PRM_TOGGLE help

    Thank you Symek, that fixed the crash! Although the checkbox doesn't do anything(I tried to translate some points if it's checked) Any ideas on that?
  26. shadow catcher material

    updating this example scene file to latest houdini version. shadow_catcher.hip
  27. Hi Alexander, Here is an example. Play with the thresholds on the various Group Expression nodes (it could have been made into one, but more clear to understand with 3) to select the spikes, expand the groups using the last group node with edge depth parameter, and smooth using Attrib Blur. By the way, if you don't need to do it on a lot of scanned objects, then don't do it procedurally, just paint your group and blur the group... Hope this helps smoothSpikes.hip
  28. Hey.. I want to reveal my mesh..using curve or attribute transfer...i dont know which method will work... i want to reveal my mesh in this way.... 1. at starting no mesh will be visible. 2.when the timeline move ...at certain frame ..the mesh will start revealing....and the revealing will followed by curve..or any other geometry.... sorry for bad english..but hope so u understand... Thanx.
  1. Load more activity