Page 2 of 3

Re: PyLuxCore Tool Error ( v2.4, all scenes)

Posted: Mon Sep 07, 2020 2:14 pm
by gecko
Dade wrote: Mon Sep 07, 2020 11:25 am Your .blend works fine here, where your PyLuxCore Tool come from ?
In most cases it's the download link on the luxcorerender home page, but I also tried it with the daily 2.5 build that you linked me to (launched pyluxcoretool from inside blender in this case. 2.4 I typically unzip in to a directory and launch directly from the executable).

Re: PyLuxCore Tool Error ( v2.4, all scenes)

Posted: Mon Sep 07, 2020 2:36 pm
by Dade
gecko wrote: Mon Sep 07, 2020 2:14 pm In most cases it's the download link on the luxcorerender home page
You can not mix different versions: the .bcf is created by the BlendLuxCore installed in Blender and then read by the PyLuxCore Tool you are lunching. Be sure to use binaries coming from the same version.

Re: PyLuxCore Tool Error ( v2.4, all scenes)

Posted: Mon Sep 07, 2020 10:12 pm
by gecko
Dade wrote: Mon Sep 07, 2020 2:36 pm
gecko wrote: Mon Sep 07, 2020 2:14 pm In most cases it's the download link on the luxcorerender home page
You can not mix different versions: the .bcf is created by the BlendLuxCore installed in Blender and then read by the PyLuxCore Tool you are lunching. Be sure to use binaries coming from the same version.
Yes, I know... I originally posted the issue using the 2.4 package downloaded and installed from the homepage. Ive now done this on 3 different computers, all of which give me the same error.

When you suggested trying a 2.5 daily build, I did that as well - I uninstalled 2.4 on one of my systems, installed the 2.5 daily build, exported, and attempted to load the resulting bcf in pyluxcoretool launched directly from the blender interface (to make sure I wasn't mixing versions). This also did not work, though I can't confirm that it's the exact same error message, as the contents of pyluxcoretool's console windows are blank when launched from blender directly.

Re: PyLuxCore Tool Error ( v2.4, all scenes)

Posted: Tue Sep 08, 2020 8:47 am
by acasta69
I can confirm the same behaviour described by gecko (Windows 10 v1809, Blender 2.90, LuxCore 2.5 alpha as of commit 9a0caab from 2 days ago).
It happens with all binary exports, either with Blender language set to "English" or to "Automatic".
Also modifying decimal and thousand separator in Windows control panel does not change the behaviour (I have Italian settings in Windows, but I manually set decimal separator to point and thousand separator to comma - the standard Italian setting is problematic for me with some other software. Both settings show the problem).

The error messages look identical to those described in this old issue (which was Linux-specific by the way):
https://github.com/LuxCoreRender/LuxCore/issues/80

The problem is also present when using Blender 2.83.5, while exporting with Blender 2.82 seems to solve it (same identical BlendLuxCore version in all Blender versions).

More specifically, when using the bcf exported from Blender 2.82, the render process starts without problems. At the moment of clicking "Finish job" on PyLuxCoreTool NetConsole, this error is triggered (which seems to me unrelated to the one in this thread):

Code: Select all

[RenderFarmNodeThread-192.168.56.1:18018][2020-09-08 10:44:12,672] Sending seed: 1
[RenderFarmNodeThread-192.168.56.1:18018][2020-09-08 10:44:12,673] Waiting for node rendering start
[RenderFarmNodeThread-192.168.56.1:18018][2020-09-08 10:44:12,957] Node rendering started
[RenderFarmNodeThread-192.168.56.1:18018][2020-09-08 10:44:12,960] Node rendering statistics: [Elapsed time:   0sec][Samples    0][Avg. samples/sec  3.75M on 0.0K tris]
[RenderFarmNodeThread-192.168.56.1:18018][2020-09-08 10:44:22,967] Node rendering statistics: [Elapsed time:  10sec][Samples   17][Avg. samples/sec  3.58M on 0.0K tris]
[MainThread][2020-09-08 10:44:25,499] Stop current job
[MainThread][2020-09-08 10:44:25,500] -------------------------------------------------------
[MainThread][2020-09-08 10:44:25,500] Job stopped: C:/Dati/Various/Personal/Graphics/Work/LuxCoreRender/tests/pyluxcoretool_2.82_LuxCore/00001.bcf
[MainThread][2020-09-08 10:44:25,500] -------------------------------------------------------
[FilmMergeThread][2020-09-08 10:44:25,500] Film merge thread done
[MainThread][2020-09-08 10:44:25,501] Waiting for ending of: RenderFarmNodeThread-192.168.56.1:18018
[RenderFarmNodeThread-192.168.56.1:18018][2020-09-08 10:44:25,501] Receiving file: C:/Dati/Various/Personal/Graphics/Work/LuxCoreRender/tests/pyluxcoretool_2.82_LuxCore/00001-netrendering/RenderFarmNodeThread-192.168.56.1_18018-1.flm
[RenderFarmNodeThread-192.168.56.1:18018][2020-09-08 10:44:28,165] Transfered 17.17 Mbytes in 00:00:00 (153.20 Mbytes/sec)
[RenderFarmNodeThread-192.168.56.1:18018][2020-09-08 10:44:28,170] Node rendering statistics: [Elapsed time:  15sec][Samples   25][Avg. samples/sec  3.42M on 0.0K tris]
[RenderFarmNodeThread-192.168.56.1:18018][2020-09-08 10:44:28,170] Waiting for node rendering stop
[RenderFarmNodeThread-192.168.56.1:18018][2020-09-08 10:44:28,173] Node thread done
[MainThread][2020-09-08 10:44:28,174] No previous film to load
[MainThread][2020-09-08 10:44:28,174] Number of films to merge: 1
[MainThread][2020-09-08 10:44:28,174] Merging film: RenderFarmNodeThread-192.168.56.1:18018 (C:/Dati/Various/Personal/Graphics/Work/LuxCoreRender/tests/pyluxcoretool_2.82_LuxCore/00001-netrendering/RenderFarmNodeThread-192.168.56.1_18018-1.flm)
Traceback (most recent call last):
  File "C:\Users\xxx\AppData\Local\Temp\_MEI157202\pyluxcoretools.zip\pyluxcoretools\pyluxcorenetconsole\ui.py", line 402, in clickedFinishJob
  File "C:\Users\xxx\AppData\Local\Temp\_MEI157202\pyluxcoretools.zip\pyluxcoretools\renderfarm\renderfarm.py", line 154, in StopCurrentJob
  File "C:\Users\xxx\AppData\Local\Temp\_MEI157202\pyluxcoretools.zip\pyluxcoretools\renderfarm\renderfarmjobsingleimage.py", line 300, in Stop
  File "C:\Users\xxx\AppData\Local\Temp\_MEI157202\pyluxcoretools.zip\pyluxcoretools\renderfarm\renderfarmfilmmerger.py", line 101, in MergeAllFilms
RuntimeError: unregistered class
Edit: attached you can find the two bcf generated with Blender 2.82 and 2.90.

Re: PyLuxCore Tool Error ( v2.4, all scenes)

Posted: Tue Sep 08, 2020 11:21 am
by Dade
acasta69 wrote: Tue Sep 08, 2020 8:47 am The problem is also present when using Blender 2.83.5, while exporting with Blender 2.82 seems to solve it (same identical BlendLuxCore version in all Blender versions).
I installed Blender 2.83.5 and it continues to work fine on Linux so I assume it is a Windows only problem.

Re: PyLuxCore Tool Error ( v2.4, all scenes)

Posted: Tue Sep 08, 2020 7:40 pm
by acasta69
It happens also with text export, some material IDs are output with thousands separator (comma in my case), no matter the language setting in Blender:

Code: Select all

scene.materials.Material2294200882568.id = 3,364,224
scene.objects.22943803418800.id = 1,326,487,202

Re: PyLuxCore Tool Error ( v2.4, all scenes)

Posted: Tue Sep 08, 2020 8:30 pm
by gecko
acasta69 wrote: Tue Sep 08, 2020 7:40 pm It happens also with text export, some material IDs are output with thousands separator (comma in my case), no matter the language setting in Blender:

Code: Select all

scene.materials.Material2294200882568.id = 3,364,224
scene.objects.22943803418800.id = 1,326,487,202
Glad you could confirm I'm not crazy, thank you! Is it helpful to submit a bug report? Seems to be a recurrence of the same issue that Dade cited earlier, just more persistent. Let me know if there's something I can do to help make sure this gets fixed.

In the meantime, I would assume that it would be possible to semi-manually strip out inappropriate commas (eg with a regex find/replace). However, this would obviously only work with the text export not binary... and pyluxcoretool does not let me load the text export file - the file->open dialog box is locked to *.bcf files only. Is there a trick to doing this?

Re: PyLuxCore Tool Error ( v2.4, all scenes)

Posted: Wed Sep 09, 2020 3:31 pm
by acasta69
gecko wrote: Tue Sep 08, 2020 8:30 pm Is it helpful to submit a bug report?
Actually this issue has already been submitted:
https://github.com/LuxCoreRender/LuxCore/issues/390
gecko wrote: Tue Sep 08, 2020 8:30 pm In the meantime, I would assume that it would be possible to semi-manually strip out inappropriate commas (eg with a regex find/replace). However, this would obviously only work with the text export not binary... and pyluxcoretool does not let me load the text export file - the file->open dialog box is locked to *.bcf files only. Is there a trick to doing this?
I don't know if it's possible to mangle the binary file, I don't think so.
But if you can adjust the text files as you described, then I think you can load the scene with LuxCoreUI and export the binary from there.

Re: PyLuxCore Tool Error ( v2.4, all scenes)

Posted: Wed Sep 09, 2020 8:11 pm
by gecko
acasta69 wrote: Wed Sep 09, 2020 3:31 pm I don't know if it's possible to mangle the binary file, I don't think so.
But if you can adjust the text files as you described, then I think you can load the scene with LuxCoreUI and export the binary from there.
Well that worked for the default scene, and I can confirm that the stray commas are definitely the issue. Unfortunately LuxCoreUI crashes on the larger scene I'm working on even with commas removed. I suspect this is entirely unrelated - it gets to "Camera clipping plane disabled" and quits to desktop.

Actually, it appears that commas are never used in the .SCN file - so any commas found can just be stripped out, no need for regex. Can anyone confirm that commas are never used in the .SCN? I confirmed that even in my rather complex scene, there are no commas other than the ones that match [0-9],[0-9]{3} so assume those are all ones that need to be stripped out.

Do I need to check the .CFG or .PLY files for commas as well? The default scene does not have any, and the .CFG doesn't seem to have anything that would be prone to getting a comma. However, larger .PLY files do end up with commas (eg in the vertex count). Not sure if these need to be stripped out (or if it's even useful to do so, since the PLY also has a bunch of binary data beyond the header that I can't read).

Re: PyLuxCore Tool Error ( v2.4, all scenes)

Posted: Fri Sep 11, 2020 7:23 am
by acasta69
acasta69 wrote: Tue Sep 08, 2020 8:47 am The problem is also present when using Blender 2.83.5, while exporting with Blender 2.82 seems to solve it (same identical BlendLuxCore version in all Blender versions).
One more piece of info, hoping it helps finding a workaround.
The Interface-->Translation preference was slightly different in Blender 2.82: it was disabled by default (and was disabled in my previous test).
Enabling it as in the attached picture produces the same exact behaviour as the more recent Blender versions, no matter if language is set to "Automatic" or "English".
In the latest versions this setting is gone, translation is always enabled.