[Plugin] Slender - Baking textures in Sketchup with Blender
-
@qpik said:
Yes and no, the idea is to bake rendered scene in Blender and bring it back to SU.
I started with simple Environment Lighting (not exactly Ambient occlusion), but I plan on baking realistic sun shadows and possibly all kinds of lighting and materials (except live reflections and caustics). What I posted is just a couple days of work, re-learning Ruby and catching up on new SU API plus learning Blender and Python (amazing progress, I think the last time I looked at it was ca 10 years ago).
I just wonder if Unity or Unreal (haven't used them yet) are easy enough to make such plugin obsolete.
I've been investigating Unity and Unreal latelly from time to time.
What it seems to me is that Blender is capable of exporting 3d objects but the same is not happening with render engines.
You can have a baked lighting model inside Unity and Unreal for a great experience, but it would be very nice to have a baked lighting model inside Sketchup and use that in Layout for instance.
We have Lightup which is capable of a texture atlas and I believe it also can bake light in the model. However, Cycles is much more realistic.
There is also a plugin called BlendUp which seamlessly exports from SU to Blender and it does it very well. It doesn't bring back the model to SU though that can probably be done easily enough (I was never able to bring back a textured model myself...)
-
@jql said:
You can have a baked lighting model inside Unity and Unreal for a great experience, but it would be very nice to have a baked lighting model inside Sketchup and use that in Layout for instance.,
I guess it's worth a shot then.
@jql said:
We have Lightup which is capable of a texture atlas and I believe it also can bake light in the model. However, Cycles is much more realistic.
I've been using LightUp some time ago, but I also found it not realistic enough and the lightmap wasn;t actually baked into the SU model.
@jql said:
There is also a plugin called BlendUp which seamlessly exports from SU to Blender and it does it very well. It doesn't bring back the model to SU though that can probably be done easily enough (I was never able to bring back a textured model myself...)
I read about it but haven't tried. I always had the idea of Blender as this old, unfriendly Linux program and always used Kerkythea export. Cycles GPU was the thing that drew me to Blender now.
I added sun export/render.
-
So tell me one thing. Slender exports to blender does it all by itself and imports it back baked?
That is very cool.
I wonder if it is compatible with Thea for Blender.
-
@jql said:
So tell me one thing. Slender exports to blender does it all by itself and imports it back baked?
Exactly.
@jql said:
I wonder if it is compatible with Thea for Blender.
If only it can bake textures then I'd say yes. The plugin uses existing importers/exporters, so its main purpose is to automate unwrapping meshes and creating materials.
-
And how will you make the material assignement?
Material code names? Like Glass, Metal, Wood and the likes? Or you won't get into material properties?
-
@jql said:
And how will you make the material assignement?
Material code names? Like Glass, Metal, Wood and the likes? Or you won't get into material properties?
I don't know yet, maybe. Or a class for managing materials in SU and exported to COLLADA. Probably the first solution would be easier to extend with external material libraries.
Specularity/bump etc. are worth supporting but reflections/refraction can't be really baked, so its no use going too much into detail.
-
Well, I think it'll be nice if you pull it off. I wish you good luck and I'm following the thread.
-
@jql said:
Well, I think it'll be nice if you pull it off. I wish you good luck and I'm following the thread.
+1
Ciao,
Gio -
Hi qpik, this will definetely be a useful plugin and worth developing i believe.
Couple of things to note; i didn't know how to load a plugin via SU Console (assuming you meant Ruby Console?) and i found out i needed to type this with inverted commas: Load 'slender.rb'
You may consider to add info considering newbies to plugin world like me even at this stage to be able to test.@qpik said:
@jql said:
So tell me one thing. Slender exports to blender does it all by itself and imports it back baked?
Exactly.
That just didn't work for me.
I opened your file and run the plugin via Ruby console and received the 'true' result but there is no COLLADA (.dae) file in the folder (there are textures exported though). And seems nothing happened.
Am i doing something wrong? If you could demonstrate with .gif or video, that would be great. -
Have you unpacked the whole 'slender' folder from the zip file?
Do you have blender installed? Maybe the installation path is different than mine (C:\Program Files\Blender Foundation\Blender\blender.exe), check slender.bat in the 'slender' folder.
In sketchup open Ruby Console and typeload 'C;/../../slender/slender.rb'
with the actual path.
-
@qpik said:
Have you unpacked the whole 'slender' folder from the zip file?
Do you have blender installed? Maybe the installation path is different than mine (C:\Program Files\Blender Foundation\Blender\blender.exe), check slender.bat in the 'slender' folder.
In sketchup open Ruby Console and typeload 'C;/../..slender/slender.rb'
with the actual path.
Yes, unpacked, have Blender (2.78c) on default location.
But i found out that .dae and .log files are in my default plugin location (...\AppData\Roaming\SketchUp\SketchUp 2017\SketchUp\Plugins). So appearently my problem was copying 'slender.rb' file to that location in order to make the command (load 'slender.rb') work.Now i tried your new code line with my path and it did some CMD stuff and received 'true' result on Ruby Console. But seems there is no imported result in SU. I tried importing that 'overwritten' .dae file but they seem identical. What should i expect at this point? Is it going to import baked result to side of the original model (as you show in first post)?
-
@filibis said:
What should i expect at this point? Is it going to import baked result to side of the original model (as you show in first post)?
The result should be the same as after importing COLLADA, a model ready to be placed in SU, but with shadows baked.
If you addpause
at the end of slender.bat you should be able to see any blender errors.
-
Well, i got home and i tried on my laptop, it worked like a charm!
I will see tomorrow what causes problem in the office computer (only difference is that's Windows 7 64-bit).
Then i created my own scene, it worked pretty well too.
Except when i tried to experiment with some interior scenes. See attachment for faulty result. It's completely dark inside (with some light artifacts).
-
Simple triangulation issue in slender.rb (you should see HOLES NOT SUPPORTED in Blender console).
triangulated_faces => true
Fixed and reuploaded whole package. Result:
baked_result_comparison_v2013_qpik.skp
After tweaking slender.blend scene (Environment Lighting Raytrace -> Approximate) which you can try with your own settings:
baked_result_comparison_v2013_qpik_1.skp -
Hmm, i see now better.
So, can we say it's not that suitable for interior stuff? Or is it possible to add other light types in addition to sun into baking process? -
@filibis said:
Hmm, i see now better.
So, can we say it's not that suitable for interior stuff? Or is it possible to add other light types in addition to sun into baking process?It's all a matter of translating objects from SU to Blender, then everything is possible.
-
qpik, you're using cycles or is this blender internal?
-
fantastic idea. Can't get it going yet so subscribing so I can flag updates
-
-
Out of curiosity. I've seen great things coming from cycles and heard it's improving very fast.
Who knows where this plugin will lead so, maybe cycles would be a good bet.
Advertisement