Jump to content
[[Template core/front/profile/profileHeader is throwing an error. This theme may be out of date. Run the support tool in the AdminCP to restore the default theme.]]

Stalkerx777 last won the day on February 12 2021

Stalkerx777 had the most liked content!

Community Reputation

168 Excellent

About Stalkerx777

  • Rank
  • Birthday 03/02/1984

Contact Methods

  • Skype

Personal Information

  • Name
    Alex Rusev
  • Location
    Vancouver, Canada

Recent Profile Visitors

10,797 profile views
  1. Return Item name of ordered Menu

    It's easier to use a String type parameter (with a menu) for this instead of ordered menu. This way, eval() will return a string.
  2. why SDK C++ in the first place?

    Yeah you pretty much answered your own question, VEX can do A LOT these days. It wasn't that far ago when it could only iterate over points and that was it. Now you have vertex, primitive, detail, volume iteration. Wrangle SOPs also didn't exist then. These days, C++ operators are used primarily for proprietary studio data exchange. Over more than a decade, we at Imageworks wrote hundreds of custom DSOs for Houdini, many of which we still support out of necessity and artist habits, but we haven't written a single new C++ operator for the last ~5 years I think. One thing that you still C++ for is multidimensional sparse matrices for some advanced solver hackery, which are lacking in VEX.
  3. I suggest you to rethink what you're trying to do, because when you reach out to threading and hdefereval in Python SOP that's a red flag right there unless you're just toying around. Python runs on the main thread and other parts of Houdini can't see the result of it until it's completed. For example you could replace your for loop with ForEach-family of SOPs.
  4. Import external script to python panel

    Try using relative import istead. from . import projWindow
  5. I had issues with .asCode in the past not being able to correctly export node contents in full, but hscript opscript -rVG /path/to/operator worked great for me.
  6. How to change HDA asset name?

    Asset Manager -> Right Click-> Duplicate
  7. Noob Syntax question

    This is called casting in C/C++ more specifically a static upcast. This form is an old C style casing, C++ also adds static_cast syntax which does the same. parent = static_cast<OP_Network*>(OPgetDirector()->findNode("/obj")); Static means it's a compile time procedure and upcast means you get a pointer to the the parent base class which is higher in class hierarchy (therefore upcast). This is very common in C++.
  8. Houdini Engine as a javascript library?

    Houdini Engine is a C API, so it's possible to write a Node.js extension, but it won't be possible to use it in a browser because the engine uses Houdini dynamic libraries, and browsers can't load arbitrary user libraries. You would need to build a front end in JavaScript and a backend in any language that can talk to Houdini Engine.
  9. Getting Houdini Global Vars With Python

    Aaha, nice!
  10. Tree panel from HOU module

    hou.ui.selectFromTree() https://www.sidefx.com/docs/houdini/hom/hou/ui.html
  11. Getting Houdini Global Vars With Python

    I don't think there's a way to get the list of hip variables. A quick and dirty solution that comes in mind is parsing the text block of the hip file. In shell it would be: strings scene.hip | grep 'set -g' Same can be done from within Houdini with Python given the hip has been saved: import re with open(hou.hipFile.path(), 'rb') as f: for var, val in re.findall(r".*set -g (.+?)\s=\s\'(.*)\'", f.read()): print(var, val)
  12. OPmenu issue

    labelExpression should be used when you want to dynamically show/hide menu items, main script should go under scriptCode or scriptPath tags
  13. How to compile vfl library files to use in wrangles

    Drop a SOP/Attribute VOP and check out the Compiler parameter. All wrangle nodes compile you code once and it's very fast. You won't get any execution performance benefits from pre-compiling. I don't know the size of your code, but the one I once worked with was a couple of thousand LOC in a header file and wrangle nodes chewed them almost instantly. Cheers.
  14. How to compile vfl library files to use in wrangles

    cvex is sort of generalized context ( computational vex - not sure if it's real of I made this up ) it could be useful for some times to abstract from context (SOP, DOP, Shaders) but if you don't have a strong requirement to make it so general, just stick to regular functions, save them to a .h file and then #include it. Houdini will compile it for you. You won't get any benefits from pre-compile your code manually with vcc For reference: https://www.sidefx.com/forum/topic/41253/
  15. Howdy!

    Hey old-timers It's been 13 years since I joined, oh man, time flies huh?