LuxusCore Carrara
LuxCore is the engine that LuxRender 2.0 will be run on. LuxRender 2.0 is not done yet, but LuxCore is at a usable state.
Luxus is the exporter to LuxRender and will remain so. LuxRender and Luxus are in no way obsoleted.
LuxusCore is the direct link to LuxCore.
The biggest advantages are pure GPU rendering and IPR.
Here is a video of LuxusCore doing its thing.
-> http://www.youtube.com/watch?v=dNJoPLQ2QNE
Here is a build that will work till the end of the month. Win64 only at this time.
-> http://sphericlabs.com/preview/win64/LuxusCore.zip
You do not need any other software for this to work, except Carrara 8 or 8.5.
This should be considered experimental. Save often and expect crashes if you use the LuxusCore stuff.
Comments
WOW, It is real time and super fast :)
Thanks!
Saying so here.. this looks awsome! Thank you. I got to make some time to play
If it can be used for animation, it sounds as if Sci-Fi Funk may have another tool in his arsenal. Does replication work better in Lux (as an abbreviation) than it reportedly does in Octane? By that I mean, from what I have read, Octane can replicate, but not replications of replications, meaning in theory you couldn't replicate a forest of Carrara trees as the trees use a replication method to generate the leaves.
Replicated replication seems to work.
Fantastic news. Research reveals that LuxCore is not unbiased, so while it is much faster than LuxRender, it technically cannot be compared with Octane that can perform at these speeds while remaining fully unbiased. Still, if it produces results that are in the ball park with unbiased expectations then most people won't care about a little bit of well hidden bias under the hood. I am curious to see how performance of LuxCore will be once it is unbiased. Looking forward to the next step.
Replicated replication seems to work.
My suggestion is that when this is final, you stress that aspect when promoting your plugin as I think that could be a huge selling point for Carrara users. I know if I had the hardware to support either Lux or Octane, that would be a huge factor in tipping my decision towards Lux.
This isn't nearly as bad as it seems. I am working exclusively with trees but I have long ago converted those trees to obj models. True, Carrara trees in their native primitive format are an issue for Octane, but once you've finished exporting and uv mapping and all of that you are left with a tree that works just the same in any application, including Octane. The idea of losing further editing options might seem like a criminal act, but I don't find it so off-putting to simply convert the thing into a mesh.
What I've always liked about LuxRender is that it does seem to handle replications along multiple generations quite well. Again, if LuxCore can provide UNBIASED results in these short render times then Octane will indeed lose some of its luster. Exciting times.
LuxCore is being developed rather rapidly and is converging in on being ready for LuxRender 2.0. LuxCore in its current form has the following render engines:
* LIGHTCPU:
* PATHOCL:
* PATHCPU:
* BIDIRCPU:
* BIDIRHYBRID:
* CBIDIRHYBRID:
* BIDIRVMCPU:
* RTPATHOCL:
* PATHHYBRID:
* BIASPATHCPU:
* BIASPATHOCL:
* RTBIASPATHOCL:
LuxusCore is using PATHOCL, as opposed to a bias one, but this forum post says you can introduce bias in PATHOCL to reduce render times..
-> http://www.luxrender.net/forum/viewtopic.php?f=8&t=11407
This isn't nearly as bad as it seems. I am working exclusively with trees but I have long ago converted those trees to obj models. True, Carrara trees in their native primitive format are an issue for Octane, but once you've finished exporting and uv mapping and all of that you are left with a tree that works just the same in any application, including Octane. The idea of losing further editing options might seem like a criminal act, but I don't find it so off-putting to simply convert the thing into a mesh.
What I've always liked about LuxRender is that it does seem to handle replications along multiple generations quite well. Again, if LuxCore can provide UNBIASED results in these short render times then Octane will indeed lose some of its luster. Exciting times.
While editing the trees would be nice, that wasn't my concern. I used trees as an obvious example of replications of replications. I can envision many scenarios where nested replicators would be needed to achieve a certain effect that would otherwise be difficult to do with a single object.
Above I mentioned that editing the trees wasn't a main issue for me. Well, it occurred to me while I was typing that, if you were using the graphics card for a fast, un-biased rendering of an outdoor animation, then perhaps you would wish to retain the tree as a native plant, as you can animate wind and leaves rustling using the plant editor.
It's all an intellectual exercise for me at this point anyway, as I don't have the hardware or Carrara version to use Octane or Lux.
LuxCore is being developed rather rapidly and is converging in on being ready for LuxRender 2.0. LuxCore in its current form has the following render engines:
* LIGHTCPU:
* PATHOCL:
* PATHCPU:
* BIDIRCPU:
* BIDIRHYBRID:
* CBIDIRHYBRID:
* BIDIRVMCPU:
* RTPATHOCL:
* PATHHYBRID:
* BIASPATHCPU:
* BIASPATHOCL:
* RTBIASPATHOCL:
LuxusCore is using PATHOCL, as opposed to a bias one, but this forum post says you can introduce bias in PATHOCL to reduce render times..
-> http://www.luxrender.net/forum/viewtopic.php?f=8&t=11407
Spheric,
Thanks for explaining that a bit. When the 1.4 was released the page talked about LuxCore being an rgb renderer only and therefore incapable of spectral rendering which I understood as a form of bias. With the rapid pace of development however there is a good chance this is no longer the case. I'm really glad to know we are still in unbiased territory.
Looks great!! I downloaded and installed, but haven't been able to get it to work yet, It mostly just crashes to the desktop. I'm guessing that I'm just missing an important step, or maybe I need to add something into the configuration text box to exclude a GPU (I am using a laptop with "two" GPU's, the integrated Intel, and an Nvidia 670M).
I installed LuxusCore in the extensions directory in a folder called LuxusCore (just copied the folder from the unzipped file)
When I open Carrara I start with a blank new scene, insert a ball, delete the default light, and add the LuxusCore infinite light. I change the renderer to LuxusCore. At this point if I open the LuxusCore IPR Carrara crashes. If I change the material on the ball to a LuxCore material (just at the top level), then start LuxusCore IPR Carrara doesn't crash, but I get a blank IPR window with an error message at the bottom of the window about an unknown material (changing the drop down from Stop to Render has no effect on the blank window). If I change the material to Luxcore Matte I get and error message stating there is no light source in the scene (even thought a Luxcore infinite light is in the scene). Now if I delete the Luxcore infinite light (with IPR closed), then add the Luxcore Sky Light, when I start the IPR Carrara creashes to the desktop.
Any ideas as to what I might be doing wrong would be greatly appreciated (I've watched the video several times, but I may have missed something simple).
Thanks in advance!
EP,
Intellectual exercise only up until the moment you do have the cash to upgrade your system, at which point the answers to these questions really will be the deciding factor. I'm an Octane lover thru and thru no doubt, but LuxRender has always enchanted me for its being free for everyone, as well as being super awesome as a renderer. Free is usually sucky compared to purchased applications, but not in the case of LuxRender. With speed becoming less of a point of contention, other ideals become more important such as multiple levels of replicators working as they should.
Sorry, I thought you meant in relation to trees specifically. Indeed, it takes little imagination to find circumstances where retaining the native format could be useful or even essential.
Experimental. I suspect it is probably choosing your intel card as opposed to the NVDIA one.
Perhaps a scene I know works for me would be helpful.
-> http://sphericlabs.com/scratch/LuxusScene.zip
Also you can render in the regular Carrara way. Ctrl-R or clicking render, you just can't make edits as it renders.
Experimental. I suspect it is probably choosing your intel card as opposed to the NVDIA one.
Perhaps a scene I know works for me would be helpful.
-> http://sphericlabs.com/scratch/LuxusScene.zip
Also you can render in the regular Carrara way. Ctrl-R or clicking render, you just can't make edits as it renders.
Thanks for the quick response!
Unfortunately this scene crashes in both C8.1 and C8.5. It may be selecting the wrong card, or both?
Thanks for the quick response!
Unfortunately this scene crashes in both C8.1 and C8.5. It may be selecting the wrong card, or both?
Hmm. If you don't mind trying the following:
- Load that scene.
- put the following line into the Config Settings:
opencl.devices.select = "01"
- click render button, not IPR
If that does not work, how updated are you video drivers? NVIDIA has improved OpenCL support alot lately.
Carrara didn't crash, the render I got (just a bunch of 1's) is attached. The Nvidia drivers should be the latest (or close - 344.75), I updated them a couple of weeks ago to support the latest version of Octane.
Carrara didn't crash, the render I got (just a bunch of 1's) is attached. The Nvidia drivers should be the latest (or close - 344.75), I updated them a couple of weeks ago to support the latest version of Octane.
I should have added that Carrara crashes when hitting the render button without the line added to the Config Settings.
I should have added that Carrara crashes when hitting the render button without the line added to the Config Settings.
Hmm maybe try this in the config settings:
renderengine.type = PATHCPU
After playing with this a little I ran into something strange.
It seems to work great at lots of things, but when I tried it on a Genesis figure I started to get strange results.
I made some simple textures for the limbs, face and torso and when I try to render it seems to mix them up. Attached are some quick samples.
Any ideas on what might cause this?
Not off the top of my head. I will certainly fix it.
Does it do the same when you Render using LuxCore, as opposed to IPR?
Good to see IPR possibility in Carrara. Replication of replicator sounds good.
Xeon 5670 12GRAM Titan.
Fumbled around at first, hit and miss. When IPR didn't behave (I didn't load Luxus Surface at first), native Render Ctrl R does work sometimes. Decided to keep it simple. Only focusing on testing iPR.
Loaded LuxusSxene.car afresh. Works as expected with no tweaking. Nice caustics, fireflies banished around 3 minutes.
Loaded Genesis basic female next. Skin seems too bright. Delete Light 1. Add Luxcore Infinite, same bright skin (dark red dress was bright but still closer to normal). Switch to Luxcore Sun Sky. Works.
CPU fan started going immediately (at Reality4 rate). I was hoping that this LuxusCore is leaning towards GPU.
My hope is LuxusCore IPR has Daz Studio style AuxVeiwport with complete 3D navigation tools, and render and stop are separate buttons. Animation friendliness would be really really cool, a very wanted feature this season.
Keep up the good works!
I should have added that Carrara crashes when hitting the render button without the line added to the Config Settings.
Hmm maybe try this in the config settings:
renderengine.type = PATHCPU
That worked! So that narrowed it down to a GPU problem, and no doubt the integrated Intel GPU (Intel 4000). Unfortunately on this system I can't disable it.
I ran accross this post which shows how to disable the integrated GPU with Luxcore (http://www.luxrender.net/forum/viewtopic.php?f=34&t=11317&start=20), I tried using the values shown with the fist config statement you gave me (opencl.devices.select = "01"). With the value set to 010, Carrara crashed. With the value set to 100, Luxcore worked (woohoo), but it was about half the speed of the render using renderengine.type = PATHCPU (0.84M vs 1.4M) , and all four cores on the CPU were maxed as well (odd - I'm guessing this was the integrated GPU). With the value set to 001, I got what looked like the proper GPU, rendering at 2.14M s/s with no associated spike in the CPU activity (WOOHOO!!!).
Of course this is in the Render Room, and IPR still crashes. Maybe it will help with configuring the IPR (or possibly the IPR could use the congig setting in the render room?).
I use OpenHardwareMonitor to see what my GPU load is and it always is pegged at 99% when I render, of course I don't have a Titan. 5.5Million samples per second on 3/4 million triangles seems really good to me.
The IPR window is constantly refreshing so try rendering with the Render button. Also using the Render button you can try the following "config settings" which should turn off using cpu for rendering:
opencl.cpu.use = 0
But I think that is the default.
Hmm maybe try this in the config settings:
renderengine.type = PATHCPU
That worked! So that narrowed it down to a GPU problem, and no doubt the integrated Intel GPU (Intel 4000). Unfortunately on this system I can't disable it.
I ran accross this post which shows how to disable the integrated GPU with Luxcore (http://www.luxrender.net/forum/viewtopic.php?f=34&t=11317&start=20), I tried using the values shown with the fist config statement you gave me (opencl.devices.select = "01"). With the value set to 010, Carrara crashed. With the value set to 100, Luxcore worked (woohoo), but it was about half the speed of the render using renderengine.type = PATHCPU (0.84M vs 1.4M) , and all four cores on the CPU were maxed as well (odd - I'm guessing this was the integrated GPU). With the value set to 001, I got what looked like the proper GPU, rendering at 2.14M s/s with no associated spike in the CPU activity (WOOHOO!!!).
Of course this is in the Render Room, and IPR still crashes. Maybe it will help with configuring the IPR (or possibly the IPR could use the congig setting in the render room?).
Of course, because the CPU counts as an OpenCL device. Good job, that does help. I think lots of people will have 3. I will get a way to configure the IPR devices. Probably should disable the intel one by default if an AMD or NVIDIA one exists.
New build, small changes:
* If the active renderer is LuxusCore then the config settings also apply to IPR.
* Render and Stop button as opposed to drop down.
* Small progress line. If it gets to the end of the window it means you hit 1000 samples per pixel, but the rendering will continue.
Same link, Win64 only still:
-> http://sphericlabs.com/preview/win64/LuxusCore.zip
The default is the METROPOLIS sampler. If you want to try the SOBOL sampler(faster but dumber), just add the following in your config settings.
sampler.type = SOBOL
Thanks for the new build.
I still get the same problem when I use a luxcore texture on a genesis figure (either LuxCore or IPR).
Interestingly I don't get the problem using the basic genesis textures unmodified. Sample attached.
I tried the same thing as you and it worked. Would you mind sending me the scene, the color blocked one. PM or something?
Thanks,
I sent you a pm, It's probably that I don't know what I am doing, since that is my normal problem :)
Its my bug. The 5_Eyelash did not have a shader, so the Shading Domains are shifted. I will fix it, but for now make sure every Shading Domain has a shader.
WOW! That was fast! Both the IPR and rendering via LuxusCore in the render room work with both CPU and GPU now. Just one quick note, the text string that works to make the GPU render properly is:
opencl.devices.select = 001
Note that this doesn't have the quotes around the 001. Drove me nuts for a while because I couldn't get it to work with the quotes. The I bagan to wonder if maybe I had inadvertently deleted the quotes. To my surprise, I removed the quotes and it worked perfectly.
Thanks, this looks like it will be a great addition to Carrara!