At H17.5, the Atmosphere node was deleted, it is no longer available. What is a reasonable way to create an atmosphere or fog in Houdini?
I want to approach the creation of such a shader, but I do not quite understand how this is possible at the moment. Does anyone have any thoughts on this?
https://ebruneton.github.io/precomputed_atmospheric_scattering/ [ebruneton.github.io]
https://github.com/Scrawk/Brunetons-Improved-Atmospheric-Scattering [github.com]
https://www.youtube.com/watch?v=yCKhQFHybLc [www.youtube.com]
Found 313 posts.
Search results Show results as topic list.
Technical Discussion » Precompture Atmosphere Scattering
-
- alexwheezy
- 319 posts
- Offline
Technical Discussion » Ragdoll advect by flipfluid
-
- alexwheezy
- 319 posts
- Offline
I understand that at the moment there are no other ways of influencing Ragdoll other than using forces or is it possible, but will you have to make a custom solver?
Technical Discussion » Ragdoll advect by flipfluid
-
- alexwheezy
- 319 posts
- Offline
Hello!
What is the way of interaction between ragdolls and flipobject? I have a ready-made water cache that is accepted and I would like the crowd to advected this cache.
What is the way of interaction between ragdolls and flipobject? I have a ready-made water cache that is accepted and I would like the crowd to advected this cache.
PDG/TOPs » PDG Afanasy Scheduler
-
- alexwheezy
- 319 posts
- Offline
chrisgreb
1)
“Expected Output” corresponds to the value that was set with workitem.addExpectedResultData() when the item was generated. It's used during the cook to check if the item's result can be loaded from cache instead of re-cooking.
2)
With regard to xmlrpclib. I'm not sure what you're asking, are you saying you would like pdgcmd.py to be able to function without xmlrpclib ?
The question is that at the moment all integrated shedulers use xmlrpclib server feedback to report on the completed work. If I do nothing, then at this place I get exceptions “httplib.BadStatusLine: ‘'” and the task falls with an error and is considered not completed. I want to understand at what stage I can add my code or fix it to catch exceptions. Because as I wrote above, I have at the moment to simply replace the pdgcmd.py file after sending the task so that everything works.
Thank’s!
PDG/TOPs » PDG Afanasy Scheduler
-
- alexwheezy
- 319 posts
- Offline
Hello!
I'm trying to implement a custom scheduler under the render manager CGRU Afanasy.
https://github.com/alexwheezy/python/tree/master/houdini/afanasy_scheduler [github.com]
But I still have some questions that I still don’t understand how to do.
1) For example, after the task is completed, the status of the task “Exepted output”. What does it mean? The task was counted, but not loaded after execution.
2) If the render manager does not support requests via xmlrpclib, how can I properly embed the pdgcmd.py file? Because now I just use a dirty hack in the form of its patch with a fixed file.
I'm trying to implement a custom scheduler under the render manager CGRU Afanasy.
https://github.com/alexwheezy/python/tree/master/houdini/afanasy_scheduler [github.com]
But I still have some questions that I still don’t understand how to do.
1) For example, after the task is completed, the status of the task “Exepted output”. What does it mean? The task was counted, but not loaded after execution.
2) If the render manager does not support requests via xmlrpclib, how can I properly embed the pdgcmd.py file? Because now I just use a dirty hack in the form of its patch with a fixed file.
PDG/TOPs » ropfetch not reading rendered files correctly
-
- alexwheezy
- 319 posts
- Offline
Hello! I ran into the same problem when writing my own task scheduler for a render farm, that when the task is completed, the node shows that the task state is complete, but the path to the cache still shows the expected output and this until you forcefully recook it.
What method or solution to recook node? I assumed that this onWorkItemSucceeded method should set the status of the work item correctly.
What method or solution to recook node? I assumed that this onWorkItemSucceeded method should set the status of the work item correctly.
Technical Discussion » What does the last candidate "vector&" in planepointdistance mean?
-
- alexwheezy
- 319 posts
- Offline
By default, C and C ++ pass arguments to a function using pass by value. This means that the function uses copies of the arguments, which prevents the possibility of modifying the arguments of the function. If it is required to provide functions with the ability to change the values of their variable arguments, then in C, parameters must be explicitly declared as pointers. Then the function will process the values of the called variables using the * operator. This may be somewhat more profitable if there is some large data array and you do not want to copy it completely into memory for these purposes. It is more convenient to use data transfer by reference & or pointer *.
Example,
vector temp = 0;
float dist = planepointdistance (0.5 * dir, dir, @P, temp);
And the function itself return the closest distance and closest position between the plane and the point.
Example,
vector temp = 0;
float dist = planepointdistance (0.5 * dir, dir, @P, temp);
And the function itself return the closest distance and closest position between the plane and the point.
PDG/TOPs » Custom Scheduler
-
- alexwheezy
- 319 posts
- Offline
PDG/TOPs » Custom Scheduler
-
- alexwheezy
- 319 posts
- Offline
Hello Everyone!
How can I create my own scheduler operator? With what can you create a new type of node?
How can I create my own scheduler operator? With what can you create a new type of node?
Technical Discussion » Invert Matrix
-
- alexwheezy
- 319 posts
- Offline
Maybe in the vex there is some kind of internal error of the data? Because the python strictly refers to this condition.
>>> hou.Matrix3([[1,2,3],[4,5,6],[7,8,9]]).inverted() Traceback (most recent call last): File "<console>", line 1, in <module> File "/opt/hfs17.0.497/houdini/python2.7libs/hou.py", line 39294, in inverted return _hou.Matrix3_inverted(*args) OperationFailed: The attempted operation failed.
Technical Discussion » Invert Matrix
-
- alexwheezy
- 319 posts
- Offline
Hello!
There is the following code and a very strange result which returns the function of inverts. How does the invert function actually work for zero determinant matrices?
There is the following code and a very strange result which returns the function of inverts. How does the invert function actually work for zero determinant matrices?
matrix3 matA = { {1,2,3}, {4,5,6}, {7,8,9} }; // Find the determinant of the matrix // If the determinant value is zero, then an inverted matrix cannot be found for such a matrix. int det = determinant(matA); // det == 0 matrix3 matB = invert(matA); // { {-0.75, 0.5, 0.25}, {-0.5, 0, -0.5}, {0.5833, 0.5, -0.083} }
Technical Discussion » OpenCL Functions
-
- alexwheezy
- 319 posts
- Offline
Hello! Tell me how you can find out information about any built-in functions on OpenСL?
How to find out what arguments this or that function accepts? For example, the function of determinant or transpose.
How to find out what arguments this or that function accepts? For example, the function of determinant or transpose.
Edited by alexwheezy - Feb. 21, 2019 06:10:33
Technical Discussion » Icon Strip Parm
-
- alexwheezy
- 319 posts
- Offline
Technical Discussion » Memory Limit
-
- alexwheezy
- 319 posts
- Offline
Is it possible to limit the use of RAM in Houdini? Because it is not always possible to cancel a process without hanging Houdini. Ideally, if you reach a threshold in memory, Houdini reported that the threshold value of the memory is reached and either canceled the process on its own or through an interface with the user.
Technical Discussion » Houdini 16 on Windows 7, Python Ctype not returning expected value
-
- alexwheezy
- 319 posts
- Offline
I propose such a solution.
To save a script somewhere on a disk and already from a disk through subprocesses to cause it.
Function call code
To save a script somewhere on a disk and already from a disk through subprocesses to cause it.
import ctypes def get_display_name(): GetUserNameEx = ctypes.windll.secur32.GetUserNameExW NameDisplay = 3 size = ctypes.pointer(ctypes.c_ulong(0)) GetUserNameEx(NameDisplay, None, size) nameBuffer = ctypes.create_unicode_buffer(size.contents.value) GetUserNameEx(NameDisplay, nameBuffer, size) return nameBuffer.value print get_display_name()
Function call code
import subprocess houdini_py = '%s\python27\python.exe' % hou.expandString("$HFS") file_path = r'C:\get_display_name.py' p = subprocess.Popen([houdini_py, file_path], stdout=subprocess.PIPE, shell=True) print p.communicate()[0]
Technical Discussion » Change Missing frame from report error to no geometry by default in File SOP
-
- alexwheezy
- 319 posts
- Offline
Click on the gear in the node and there set the parameter as “Save as Permanent Defaults”.
Technical Discussion » $YMAX not working
-
- alexwheezy
- 319 posts
- Offline
No, it does not work properly. In a python, you can not just write $YMAX and get the result of a local variable. For these purposes, there is a function called hou.lvar(“YMAX”) which will return any local variable for this node.
Technical Discussion » Parsing a keyframe from a string in Python
-
- alexwheezy
- 319 posts
- Offline
In what format should the result return? Write down how it should look after we've parsed the string.
Technical Discussion » Unable to compile sample SOP with hcustom
-
- alexwheezy
- 319 posts
- Offline
On Windows, you need Visual Studio to compile the plugins (download from Microsoft). It is absolutely important that you compile your HDK code using the same compiler version that built Houdini. One can determine by looking at the suffix of the installer file. Here is a quick list of the available Houdini Windows versions and which compiler is used to build each one:
Suffix Compiler
vc14 Microsoft Visual C++ 2015
Most likely you are using the wrong version of Visual Studio.
Suffix Compiler
vc14 Microsoft Visual C++ 2015
Most likely you are using the wrong version of Visual Studio.
Technical Discussion » Parsing a keyframe from a string in Python
-
- alexwheezy
- 319 posts
- Offline
Here's an option.
import re string = "hou.Keyframe t=0.4 expr='bezier()' lang=exprLanguage.Hscript v=0 s=0 auto_slopes=True in a=0.133333 out a=0.333333 use_accel_ratio=True" print re.search('\d{1,2}[\.]\d{1,2}', string).group()
-
- Quick Links