Warning: Problem while synchronizing child node:
Warning: Skipping unrecognized parameter "firstpointcount".
Skipping unrecognized parameter "firstprimcount".
/obj/tube1/popnet/source_first_input/sopsolver1/attribwrangle1
Whenever I create a pop net, even in an empty scene, upon closing and opening the project file again, this error pops up.
Anybody else has the same problem?
Cheers
Popnet bug in 19.0.455
2300 4 1- Mykk
- Member
- 3 posts
- Joined: Sept. 2017
- Offline
- Enivob
- Member
- 2529 posts
- Joined: June 2008
- Offline
I'm using H19.0.455 Python 3.
Confirmed, I get that too. It's just a warning, I ignore them all the time.
It looks like a little sloppy coding inside the source_first_input sopsolver.
Here is the problem code:
The message box indicates it a problem with nprimitves, but the real problem is the assignment from the ch() function to the variable. My guess is when this HDA was authored, there was no strict vex type enforcement taking place. It looks like ch() defaults to returning a float, instead of returning the type of the parameter that it is referencing. "seed" is an integer, but ch("seed") returns a float. The simple fix is to explicitly fetch an integer to begin with.
This code change fixes the error message on load.
Use chi() instead.
Confirmed, I get that too. It's just a warning, I ignore them all the time.
It looks like a little sloppy coding inside the source_first_input sopsolver.
Here is the problem code:
#include <voptype.h> #include <voplib.h> int npts = ch("npts"); int seed = ch("seed"); float frame = ch("frame"); int firstpointcount = npoints(0); int firstprimcount = nprimitives(0);
This code change fixes the error message on load.
#include <voptype.h> #include <voplib.h> int npts = chi("npts"); int seed = chi("seed"); float frame = ch("frame"); int firstpointcount = npoints(0); int firstprimcount = nprimitives(0);
Edited by Enivob - Jan. 10, 2022 13:03:26
Using Houdini Indie 20.0
Ubuntu 64GB Ryzen 16 core.
nVidia 3050RTX 8BG RAM.
Ubuntu 64GB Ryzen 16 core.
nVidia 3050RTX 8BG RAM.
- Mykk
- Member
- 3 posts
- Joined: Sept. 2017
- Offline
- Chris Meyers
- Member
- 2 posts
- Joined: Jan. 2017
- Offline
I'm running into the same error and the popnet is not working. When I bring the nodes into 19.0.498 it works.
19.0.455 is the latest version of Vray so I need it.
I see the code fix in Enivob's post but I'm not sure where that code is found in order to edit it.
Can someone explain how to impliment that fix?
19.0.455 is the latest version of Vray so I need it.
I see the code fix in Enivob's post but I'm not sure where that code is found in order to edit it.
Can someone explain how to impliment that fix?
- thomas_glaesser
- Member
- 1 posts
- Joined: Feb. 2019
- Offline
Hi @inkbot,
check your error message - there you will find the path to the affected "popnet".
Dive into:
check your error message - there you will find the path to the affected "popnet".
Dive into:
- popnet
- popsource (right click -> allow editing of contents)
- sopsolver
- attribwrangle1 (perhaps the opdigit will vary, check the error message for that)
- check lines 4 and 5 and follow @Enivob's instructions
Enivob
...
It looks like a little sloppy coding inside the source_first_input sopsolver.
Here is the problem code:The message box indicates it a problem with nprimitves, but the real problem is the assignment from the ch() function to the variable. My guess is when this HDA was authored, there was no strict vex type enforcement taking place. It looks like ch() defaults to returning a float, instead of returning the type of the parameter that it is referencing. "seed" is an integer, but ch("seed") returns a float. The simple fix is to explicitly fetch an integer to begin with.#include <voptype.h> #include <voplib.h> int npts = ch("npts"); int seed = ch("seed"); float frame = ch("frame"); int firstpointcount = npoints(0); int firstprimcount = nprimitives(0);
This code change fixes the error message on load.Use chi() instead.#include <voptype.h> #include <voplib.h> int npts = chi("npts"); int seed = chi("seed"); float frame = ch("frame"); int firstpointcount = npoints(0); int firstprimcount = nprimitives(0);
-
- Quick Links