Mac OS

Discussion related to the LuxCore functionality, implementations and API.
robbrown
Developer
Developer
Posts: 63
Joined: Mon Sep 03, 2018 1:04 am

Re: Mac OS

Post by robbrown »

Still working out the Artifact delivery process (Mac OS Applications, and Blender plugins, etc. pre-packaged) with build scripts. At this point, that's just rpath and packaging though so I could manually do that for the alpha4 if you'd like.

As far as how the Artifact Delivery process is going:

I originally set out to mimic the old Lux Jenkins build script in MacOSCompile repo for the release artifacts, as usual, the development process has improved since then and I figured out cmake has stuff for the application bundles now. So, I may have another PR for LuxCore on the way depending on how that part works out. Either way in progress...
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Mac OS

Post by Dade »

robbrown wrote: Fri Sep 28, 2018 6:45 am Still working out the Artifact delivery process (Mac OS Applications, and Blender plugins, etc. pre-packaged) with build scripts. At this point, that's just rpath and packaging though so I could manually do that for the alpha4 if you'd like.
As you want, there is no hurry.

Can BlendLuxCore be installed like it is on other platforms ? Trough just a .zip (unpacked by blender in a directory) ? Or the OS require some specific step (like registering libraries, etc.) ? This point is also related to BlendLuxCore feature to upgrade/downgrade from the plugin and may require some change in BlendLuxCore code.
Support LuxCoreRender project with salts and bounties
robbrown
Developer
Developer
Posts: 63
Joined: Mon Sep 03, 2018 1:04 am

Re: Mac OS

Post by robbrown »

The blender plugin install process remains the same with the zip file used in the blender add-ons menu.

The only difference for BlendLuxCore I've had to do is add some symbolic links and change the rpath for linking the pyluxcore.so to Blender's OpenMP dynamic library. I'm thinking it makes sense to do all of that in the MacOSCompile repo since it's just rpath and zip.

If BlendLuxCore is the only part you're looking for in the alpha4 release I have a plugin I can provide for release already. Primary Mac OS dependent packaging is luxcorui, luxcoreconsole, pyutils, API for coding against, etc.
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Mac OS

Post by Dade »

robbrown wrote: Fri Sep 28, 2018 5:52 pm If BlendLuxCore is the only part you're looking for in the alpha4 release I have a plugin I can provide for release already.
It may be good to let's start the ball rolling, people usually find a lot of small quirks here and there when you release some software for the first time on a new platform. Everyone have different configurations, pattern of use, etc.
Support LuxCoreRender project with salts and bounties
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: Mac OS

Post by B.Y.O.B. »

robbrown wrote: Fri Sep 28, 2018 5:52 pm If BlendLuxCore is the only part you're looking for in the alpha4 release I have a plugin I can provide for release already. Primary Mac OS dependent packaging is luxcorui, luxcoreconsole, pyutils, API for coding against, etc.
Maybe we should include Mac OS support in the addon's updater before releasing the first package.
It needs to be added here: https://github.com/LuxCoreRender/BlendL ... te.py#L126
The system_mapping maps the output of platform.system() to the suffix we use in the zip package names for the corresponding system.
I think on Mac OS platform.system() returns "Darwin". How we call the zip package suffix is up to us (should be something user-friendly).

So if we for example say we call the Mac OS packages "BlendLuxCore-v2.1alpha4-mac64-opencl.zip", the system_mapping should be:

Code: Select all

        system_mapping = {
            "Linux": "linux64",
            "Windows": "win64",
            "Darwin": "mac64",
        }
I could be wrong, but I think that's all we need to change in the updater.
robbrown
Developer
Developer
Posts: 63
Joined: Mon Sep 03, 2018 1:04 am

Re: Mac OS

Post by robbrown »

That's a good point, we should definitely get the update information in there.

Based on looking at the code without trying it that looks accurate. platform.system() does return 'Darwin' on my machine.

I can validate the update process works before making a PR.
robbrown
Developer
Developer
Posts: 63
Joined: Mon Sep 03, 2018 1:04 am

Re: Mac OS

Post by robbrown »

When is the next release, I'm assuming I should hold off until the next alpha to cut releases since tags would be off a bit from latest PRs?

Testing the Blender plugin on my laptop the Intel HD Graphics kept crashing at OpenCL kernel compiling so not sure if that's my machine or an OpenCL compatibility thing. From what I've been reading about people having issues with the Intel HD Cards in their MacBooks and MacBookPros it could be either.
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Mac OS

Post by Dade »

robbrown wrote: Mon Oct 01, 2018 9:03 pm When is the next release, I'm assuming I should hold off until the next alpha to cut releases since tags would be off a bit from latest PRs?
The current sources have received only a fix for Bloom OpenCL plugin since alpha4 release.We can release a MacOS alpha4 based on the current source code, it is really a minor difference.
robbrown wrote: Mon Oct 01, 2018 9:03 pm Testing the Blender plugin on my laptop the Intel HD Graphics kept crashing at OpenCL kernel compiling so not sure if that's my machine or an OpenCL compatibility thing. From what I've been reading about people having issues with the Intel HD Cards in their MacBooks and MacBookPros it could be either.
I think the only Intel GPU vaguely capable to run LuxCore is the HD4400 and probably work only with very simple scenes.
Support LuxCoreRender project with salts and bounties
robbrown
Developer
Developer
Posts: 63
Joined: Mon Sep 03, 2018 1:04 am

Re: Mac OS

Post by robbrown »

Dade wrote: Mon Oct 01, 2018 10:51 pm The current sources have received only a fix for Bloom OpenCL plugin since alpha4 release. We can release a MacOS alpha4 based on the current source code, it is really a minor difference.
Sounds good, I did find one oddity while cutting the release, the scenes in the LuxCore repo throw an error if you load them from the luxcoreui menu:

Code: Select all

[SDL][43.513] Reading scene: scenes/cornell/cornell.scn
RenderConfig loading error:
Unable to open properties file: scenes/cornell/cornell.scn
Loading by calling the same files from command line interface works just fine though ./luxcoreui scenes/cornell/cornell.cfg

The test ones from LuxCoreTestScenes repo seem to work from the luxcoreui menu.
Dade wrote: Mon Oct 01, 2018 10:51 pm I think the only Intel GPU vaguely capable to run LuxCore is the HD4400 and probably work only with very simple scenes.
Yeah, I'm not surprised. Cornell box in the luxcore scenes works with the Intel Graphics HD4000, although I won't be making a habit out of that with how warm my laptop got. :lol:
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: Mac OS

Post by B.Y.O.B. »

robbrown wrote: Tue Oct 02, 2018 1:34 am I did find one oddity while cutting the release, the scenes in the LuxCore repo throw an error if you load them from the luxcoreui menu:
This is a known problem, see https://github.com/LuxCoreRender/LuxCore/issues/87
Post Reply