Jump to content

Search the Community

Showing results for tags 'tops'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • General
    • Lounge/General chat
    • Education
    • Jobs
    • Marketplace
  • Houdini
    • General Houdini Questions
    • Effects
    • Modeling
    • Animation & Rigging
    • Lighting & Rendering
    • Compositing
    • Games
    • Tools (HDA's etc.)
  • Coders Corner
    • HDK : Houdini Development Kit
    • Scripting
    • Shaders
  • Art and Challenges
    • Finished Work
    • Work in Progress
    • VFX Challenge
    • Effects Challenge Archive
  • Systems and Other Applications
    • Other 3d Packages
    • Operating Systems
    • Hardware
    • Pipeline
  • od|force
    • Feedback, Suggestions, Bugs

Found 31 results

  1. Hi I'm spending the day figuring out how to use TOPS. How would I connect the Heightfield Output node to a wedge? I can override filename but it doesn't cause it to render. Cheers TOPStest.hiplc
  2. As you can see in the screenshot the rop composite is not outputting the correct file name (tralala is just a test lol) the three numbers you see in front of the filename '115' is the wedgenum attribute. i dont know where is that coming from. What am i doing wrong?
  3. COP - TOPS Wedging

    i have a very simple cop2net that processes an input image and i have turned this small setup into an HDA with some parameters exposed. i want to run the cop2net for every image from my pc directory, have the HDA parameters wedged and export each time the generated image. So far i have linked the wedged parameters with my HDA parameters. 1) But how and where do i fetch my images? 2) and how do i export the result?
  4. TOPs and Deadline

    Has any one been able to get TOPs and deadline working together? I've tried to send a couple of jobs with deadline scheduler but I was not getting any output... Deadline was also not returning any errors.
  5. I'm having an hard time telling my ROP Geometry Output to cache simulations one frame at a time. I did as the documentation says: check the "All Frames in One Batch" parameter, but once the first work (first frame) ends, the next ones take like 1 sec each and the output has 1KB.... I've switched to a ROP Fetch TOP pointing to a file cache SOP and set the "Evaluate Using ROP Node Configuration" parameter and it works fine (displays only one work and caches all frames sequentially). Am I doing something wrong?
  6. PDG - Cache only 1 wedge at a time

    Hey guys, I'm having this issue in TOPs: I have 9 wedges and the ropfetch is trying to run all 9 simulations at the same time. Is there a way to run 1 simulation at a time? The simulation is a bit heavy and I'm trying to simulate it in 1 machine (i dont have a farm). I know my machine can handle 1 of the sims running alone. It also works when I reduce the amount of particles Thank you PDG_Wedge_mp4_0102_odforce.hiplc
  7. I am trying to fetch textures from a folder run them through a COP2net process and export them back. Is there a way to automate this? Maybe Tops?
  8. I am wondering how to use File Remove TOP. I have created multiple simulations using Wedge TOP. The simulations have dependencies on each other. For example, the second and third simulations are dependent on each other, but the second and fourth are not. What I want to do is to delete part of the previous cache when that simulation is complete. Example process The first simulation & cache The second simulation & cache Removing 901-930 frames in the first simulation cache from disk 3rd Simulation & Cache Removing the 931-960 frames in the second cache from disk Thanks!
  9. Hi, I have very basic experience with PDG/TOPS and would appreciate some advice. I have a fairly computationally expensive setup we have been developing at work. I've tried to optimize it as much as I can but have seemed to hit a dead end. Some scenes could take up to 30 mins to compute and it doesn't seem to be maxing out my CPU most of the time. I was thinking if certain tasks especially for loops could be split up easily to run in parallel (compile nodes don't support some of the nodes we used which currently have no alternatives) that could drastically improve compute times. I've tried doing some simple tests with TOPS and conceptually it works but with significant overhead of loading and calculating the entire scene up to the point where I'm splitting tasks, and also I'm not sure if it's something with my setup, but even writing out small files from each tasks are quite slow. Anyone else experience this? So after explaining briefly my intentions I am hoping to get some suggestions from people with more PDG experience. - Is it possible to not have PDG process the entire scene up to the "start" point in the graph where the tasks are split? what would be the best approach to minimize load times, possibly have it calculate once, then split the tasks? - Is it mandatory for PDG task outputs to be written to disk? Is there a way to have sops merge the results without going through file caches? Thanks alot! /YG
  10. Hello everyone! I'm programmer starting in Houdini 17.5 and it's very confusing to me. I'm familiar with hadoop/spark, which is kind of similar to TOP. But boy, is TOP confusing to me! What I want to achieve: I a have geometry node dependent on time (for each frame, it loads Alembic from file sequence, processes it and stores again alembic). I'd like to parallelize this (the frames are independent). Local scheduler is fine (I have many cores on single machine and a lot of memory to spare). My tactics for achieving that: Create a TOP network: Wedge over frames to create work item for each frame Run geometry import with Frame = work item frame Run ROP Alembic Output for each work item The problem starts in step 1, where I do not know how to generate work items with different frames. In other words, I want to wedge across frames but cannot. I've tried to change the attribute to "pdg_frame", but the frame was still 0: Additional questions on TOPs: How do I debug which attributes are on work items? If I wedge across "MyAttribute", I cannot see it anywhere (info, task graph table), but if I export it as CSV Output, I can see it exists. Thank you all for your time!
  11. Hi I am trying to follow Ari's tutorial https://vimeo.com/323291527 for generating a side by side montage of some wedged Pyro sim, that i'm trying to test out. My TOP network seems to work fine except the final node: ffmpegencodevideo. I am not really sure how to set the correct path on windows, as Ari's version is for MAC, and have tried removing the C:, .exe and also using forward and backslashes. Do I even need to set the environment file to look at the FFMPEG? Quite confused on how to set this up correctly.
  12. TOPs, keep polling

    I'm trying to figure out if a TOP's/PDG network can be made to keep alive while waiting for data from a database. Basically I want something like a while loop in python that keeps the TOP network waiting for new items to appear in the data base and then start processing once a new work_item is available. Is TOPs/PDG even meant for such a thing? Thanks! -Johan
  13. Heyya, I'm currently developing our project-internal filecache node with a couple of fancy features for usability / productivity. The current workflow is starting a seperate Houdini instance with Juraj Tomori's Tool here: Background Render Now I also wrote a couple of scripts that update the progress of the currently ongoing cache by analyzing the output directory and showing the progress. (as well as some info on the output like time per frame and size). [This was primarily developed for the use within a TOPs-Render network, however, the background process variant turned out to be much superior for a variety of reasons.] Now what I built was a script in a seperate TOP-Network which is supposed to execute this analysis every couple of seconds for a given amount of time using the time.sleep(t) function. Now usually this does exactly what I want, keeping this process/sleeping in the BG and execute the analysis function while Houdini stays functional. However, the problem is that sometimes (quite unpredictably, but mostly when aborting/refreshing this TOP-network) this sleeping switches to the foreground, causing Houdini to freeze for however long the ticker was set. And this is game-breaking when you sometimes have to wait for five minutes. You get the point. Here is the (admittedly clumsy) bulk of code: import time import hou import os PARENT = hou.node("../../..") ticker_s = PARENT.parmTuple("ticker_s").eval() break_at_end = 0 node = hou.node("../../../mnp_cacher") fstart = node.parm("f1").eval() fend = node.parm("f2").eval() totalframes = int(fend - fstart) dir = PARENT.parm("outputfile").eval() dir = os.path.dirname(dir) def outputchecker(dur=20, tick=1, confirm=1): iterations = dur / tick warning_message = "Starting updateticker for {} seconds.".format(dur) if hou.ui.displayConfirmation( warning_message ): i=0 while i < iterations: i += 1 #print "Iteration: " + str(i) #SCAN OUTDIR LOCAL CODE ---------------------------- counter = 0; duration_list = [0] folder_size = 0 for (path, dirs, files) in os.walk(dir): for file in files: if ".hip" in file: #exception for backup #print str(counter) + ": SKIPPING" continue filename = os.path.join(path, file) folder_size += os.path.getsize(filename) # --- GET FOLDER SIZE mytime = os.path.getmtime(filename) # --- GET CACHE TIME counter += 1 if counter==1: counter #print str(counter) + ": EXCEPT" else: prevtime = os.path.getmtime(filename_prev) myduration = mytime - prevtime #print str(counter) + " - " + str(mydur) if myduration > 0: duration_list.append(myduration) filename_prev = filename #------------------------------------------------------------- scan end frame = fstart + (counter-1) allframes = fend-fstart curframes = frame-fstart progress = curframes/allframes percent = "{:.0%}".format(progress) # ----- SCAN OUTDIR AND UPDATE COMMENT scan = PARENT.hdaModule().scan_outdir(dir, 1) #print message running_message = "" running_message = "CACHING: {} (Fr.: {} / {})\n".format(percent, int(frame), int(fend)) running_message += scan running_message += " [Update Ticker: {} / {}]\n".format(i, iterations) PARENT.setComment(running_message) time.sleep(tick) outputchecker(ticker_s[0], ticker_s[1]) This looks something like this if executed properly, and I've fallen in love with the info I get from this: Now what I don't get is why this sleeping switches to the FG-process of Houdini. The python-script-TOP is set to evaluate In-Process, but when executing cleanly, it works in the BG nicely. I'm grateful for any clue or alternative approach. Thanks, Martin
  14. Hi there, I've got a ROPfetch that's rendered 4 wedges of 144 frames, 1152 frames total from (currently) two entries in a .csv file. I've got an ffmpeg node below it that's hell-bent on taking only the name of the first entry and rendering a mov of it 1152 times. I'm new to TOPs and only a few months into using Houdini, but have been going around in circles trying to partition by row (if that's even possible). What I'd like is: Column1, row1 = 144 frame mov of: wedge1.mov, wedge2.mov, wedge3.mov, wedge4.mov Column1, row2 = 144 frame mov of: wedge1.mov, wedge2.mov, wedge3.mov, wedge4.mov Ideas?
  15. Hi I am encountering an obscure error with PDG and looking for help of any sorts. Basically, I am trying to send a set of TOPs work items to farm using tractorscheduler which works fine with H17.5 and H18(localscheduler) but when I try the same setup in H18(tractorscheduler) I am receiving a ["Error Could not find scheduler type "tractorscheduler"] error in tractorscheduler node. Does anyone else encountered such thing yet? Has something changed between the versions of Houdini and I am missing something? Any kind of help towards the direction of solution would be appreciated. Best
  16. I left a TOPs network rendering some camera angles, but it's stopped with missing frames in one of the sequences (1-112 where it should be 1-144) Dirty and cook returns done. The caveat is I have 'Cook frames as single work item' on for post-processing nodes (ffmpeg and then some python in this case), when I deselect this I get all the frames and it picks up. How can I get it to check the frames, discover which are missing and pick up where it left off? OR would it be better to let it cook individual frames and then group the output by filename and push that into ffmeg?
  17. Hi! I am trying to use the wedge node "random sample" option in a TOP network, but I want the random to have a probability distribution so that the randomness is not evenly spread. There is no attribute random node in TOP networks, so I am not sure how I could fetch some values generated elsewhere? Any idea how to achieve that?
  18. Some strings in my CSV have white space (spacebar) and some have unusual characters that Windows and Houdini don't like, such as Å. In a TOPs network, how can I create an attribute `@cleanName` without these characters? ie: MY HÅT becomes MY_HAT Something like this, but dynamically. mystring.replace(" ", "_") If someone could help with the whitespace I can work out the rest. Thanks!
  19. Hey folks, I'm executing a Windows .bat file which is written out by a pythonprocessor TOPs node to run some things on another sever. Everything works if I hardcode the filename to the batch file, but I want it to generate and execute .bat files for each work item I'm trying to access `@filename`in the pythonprocessor, but not getting anywhere. How can I access the attribute so .format fills in the path correctly? PidginCode: outFile = `@filename` filePath = "path to directory/{}".format(outFile) The sample file docs are bereft of examples so I'm wondering if I'm going about it the wrong way. Thoughts? EDIT: I made a string parameter on the node I'm querying and pointed evalParm at it. Is that the most sensible way? node = hou.node('/obj/topnet1/nodeName') parmName = str(node.evalParm('parm'))
  20. So unclear whether this is a Houdini specific error or there is possibly something wrong with my Redshift materials. But when I simply try and cook a ROP Geometry Output node in TOPs I get lots of the following errors Similar to this error but I am not using HQUEUE or submitting to a farm https://www.sidefx.com/forum/topic/69162/
  21. Noob question In the sesi documentation it suggests to use __PDG_DIR__ instead of ${PDG_DIR} for filename paths. ok, I tried and only received errors in the graph when cooking ROP Geo Output. That's the first issue 2nd is a noob question on proper use of envirnment variables in TOPs What is the difference between ${PDG_DIR} $PDG_DIR/ and __PDG_DIR__ ? I'm on Linux (Ubuntu 18.04LTS)
  22. PDG Mutagen

    Anyone successfully install the PDG Mutagen shelf tool? https://www.sidefx.com/tutorials/pdg-mutagen-toolset-walkthrough/ If you're using PDG in a production environment is it useful? Any issues?
  23. Trying without much luck to recreate the video wedging mosaic demoed by Scott Keating here https://www.sidefx.com/products/pdg/ For some peculiar reason the video is not directly linkable and there is no .hip file but it is halfway down the page in the AUTOMATE section, Wedging video. I am trying to create the TOPs node graph in the attached but not sure what all the nodes are. In the left column green box of course is a ROP geometry output , and in the right column red box there are 5 nodes. #1 is ROP Fetch I think, #s 4 and 5 are Wait For All and I think FFMPEG Encode Video respectively. But what are numbers 2 and 3 in the right column, Generate_Contact_Sheet Wait_for_Entire_Sequence ? Also anyone know of a working example of TOPs based video mosaic for simulations?
  24. Hi Everyone, I'm trying to setup a TOPs network to cache out sims with multiple parameters being sent to the dop network. Seemingly basic stuff, however nothing I'm doing seems to be working how I think it's going to work. What I've tried: Using a wedge node to set a random attribute and trying to use that attribute in an exterior dop network - caches into a view able geo rop output but all the wedges were the same Rebuilding the pyro sim purely in the tops network - it makes something but when viewed all the frames appear empty Have the source inside the tops and the dop outside - same result as the first
  25. Hi there, I found exactly what I'm trying to achieve in the Houdini docs but no step by step guide how to achieve this: https://www.sidefx.com/docs/houdini/tops/looping.html "Imagine an RBD simulation where a jar is being filled with marbles, one handful at a time. The entire process could be run as a single simulation, however marbles at the bottom of the jar might become unstable and the numbered of simulated objects would keep growing. One way to manage this is to run the RBD simulation for the first handful of marbles and use its results as a static object in the second simulation. The result of the second sim and first sim combined would be static objects in the third sim, and so on. You can do this in TOPs using a feedback loop with a ROP Geometry in the loop block" can anyone shed some light on this please? cheers S