Jump to content


  • Content count

  • Joined

  • Last visited

  • Days Won


ikoon last won the day on October 28

ikoon had the most liked content!

Community Reputation

112 Excellent


About ikoon

  • Rank

Contact Methods

  • Website URL

Personal Information

  • Name
    Jiri Miratsky
  • Location
    Czech Republic

Recent Profile Visitors

1,915 profile views
  1. smooth shaded through python

    Hi, try to follow this F1's code: This should work: import hou settings = hou.ui.curDesktop() \ .paneTabOfType(hou.paneTabType.SceneViewer) \ .curViewport() \ .settings() dispset = settings.displaySet(hou.displaySetType.DisplayModel) dispset.setShadedMode(hou.glShadingType.Smooth) More about display models here: http://www.sidefx.com/docs/houdini/hom/hou/GeometryViewportDisplaySet.html Please note, that there are different settings for the top level (OBJ) and different settings when you are inside GEO node: markersDisplayModel = settings.displaySet(hou.displaySetType.DisplayModel) # when inside "/obj/geosomething" markersSceneObject = settings.displaySet(hou.displaySetType.SceneObject) # when in top level "/obj"
  2. Unfortunately I have almost none experience with Gitlab/Github. I have tried to upload it here: https://github.com/ikoon-cz/qq If you tell me to do anything better, I will.
  3. Here is a solution made by Guillaume J: A small video about it: https://vimeo.com/242470411 You can download it for free here: http://cgtoolbox.com/houdini-expression-editor/
  4. switch in vex?

    You could evaluate those conditions in a detail wrangle and then write an expression in the switch "Select input": detail("../attribwrangle1/","result",0) It references the result of the wrangle. Compilable solution, using spare input: switch-compilable.hiplc
  5. I did a little python toolset to speed up my VEX writing. It replaces "code shortcuts" into "code snippets" and also updates the parm interface (default values, channel ranges from comments, ramps are generated from custom library). You can build your own libraries of snippets with specific channel ranges and defaults. I am really python newbie, so it is "alpha". The code is not prepared for exceptions, it is not exemplary, but I hope it would help somebody. It helps me already so I will debug it on the fly. The initial idea comes from here, Matt Estela: http://www.tokeru.com/cgwiki/index.php?title=HoudiniUserInterfaceTips#customise_right_click_menus qqReplace.py rampCollect.py updateInterfaceFromComments.py
  6. When I run the external editor (Sublime), I understand that Houdini freezes and waits for the update from the external editor. That is probably necessary. But can I somehow set Houdini to not go fullscreen white? Is there any Houdini / Windows parameter, please?
  7. @jkunz07 this 'vcomment' is great, thank you! Anybody, please, is it possible to set anything similar, independent on camera?
  8. Set Display Options in Python

    I use this one to toggle Display of points on/off: pane = hou.ui.curDesktop().paneTabOfType(hou.paneTabType.SceneViewer) settings = pane.curViewport().settings() markersDisplayModel = settings.displaySet(hou.displaySetType.DisplayModel) markersSceneObject = settings.displaySet(hou.displaySetType.SceneObject) # Toggle the markers (visible when inside /obj/...) markersDisplayModel.showPointMarkers(not markersDisplayModel.isShowingPointMarkers()) # Unify with the scene (visible when in top level "/obj") markersSceneObject.showPointMarkers(markersDisplayModel.isShowingPointMarkers()) More to read is here in docs: http://www.sidefx.com/docs/houdini/hom/hou/GeometryViewportDisplaySet For example: setShadedMode(shaded_mode) #wireframe, hidden lines, shaded with primitive face normals, outlined polygons...
  9. The Area CHOP doesn't care about keyframes. You can wrangle almost anything, also with the "if" statement, but you probably don't have the list of keyframes? Probably Python iteration is needed here? http://www.sidefx.com/docs/houdini/hom/hou/Parm hou.Parm.keyframes() → tuple of hou.BaseKeyframe Returns the keyframes on this parameter.
  10. update variable inside custom function (vex)

    Gabriel thank you very much!
  11. Please, in vex, is it possible to define a custom function, which will update the variable, without classic a = function(a) assignment? For example: f@big = 1.5; clamp01(f@big); // function clamps between 0 and 1 f@result = f@big; // result is 1.0 I found nothing, but I am newbie, sorry. Is this technique called "pass by reference", or also "pass a pointer"? Probably not possible in vex?
  12. I also like to use Trigger to "find" beats above some threshold and generate "new beats" generated by this node's specifications. Another nice chop is Area ... I use it to drive noise's offset. With Area CHOP, the offset then doesn't go forth and back, but goes on and on ... each beat the noise travels a bit ... which is nice. Also Spring, Jiggle (needs three channels, but you can fake it), Delay (creates Echo). I have used few of them here, you can investigate:
  13. F1 you are an angel! Thank you so so so much!
  14. Creating VEX libraries

    F1 Thank you very much! Also thank you for the PRO wrangle in the file! Now I understand the system much more! I thought that we need some header of the wrangle SOP, for it to be able to evaluate the button, I was disoriented.
  15. I would like to define custom vex function and use it in my wrangles. It will just return interpolated 0-1 value, a fade in a time range. My problem is, that I would like to define it in a duplicate way (and that I am too newbie to do it). float fade(float actualtime, float fromtime, float endtime, string mode="linear") float fade(float actualtime, float fromtime, float endtime, string mode="nameofchramp") The mode="nameofchramp" ... I mean for example UI chramp name "my_bezier_ease_out". Please, can the function read from "external UI" chramp? How should I define this duplicity in the custom .h/.vfl file? I dont mind if I have to create the ramp manually.