Hi,
We are currently designing our futur house, and would like to optimize the windows position and size.
I'm new to SweetHome3D, and I would like to know if it is possible to simulate the sun position, according to the date and time, and have the lights/shadows visible in the house? Is it possible to implement such feature through the plugins mecanism?
Another way could be to design the house in SweetHome3D, export it, re-import it in Blender, and write a script for Blender (as I'm a python developer, this last step would be easier for me, but I don't know if the export/import step is easy or not).
Note that we don't need a very high level of details, but only the volumes of the room and furnitures...
Thanks for any suggestion!
Simulate sun position and lights/shadows
This topic has been viewed 64489 times and has 4 replies
Re: Simulate sun position and lights/shadows
Playing with SH3D, I found it automatically adds several lights to illuminate the scene.
Is there a way to manage these lights through a plugin, before rendering?
Is there a way to manage these lights through a plugin, before rendering?
Frédéric
Re: Simulate sun position and lights/shadows
No yetis it possible to simulate the sun position, according to the date and time, and have the lights/shadows visible in the house?
You could create a plugin based on the existing PhotoPanel and PhotoRenderer classes, then change the sundir direction depending on your wish. If you want to see where will go the sun through window panes, you should also modify PhotoRenderer class in such a way it doesn't create any SunFlow object for panes because SunFlow isn't able to compute light going through panes yet.Is it possible to implement such feature through the plugins mecanism?
This can be achieved easily. At line 313, replace:
Code: Select all
if (appearance != null) {
texCoordGeneration = appearance.getTexCoordGeneration();
appearanceName = "shader" + uuid;
boolean mirror = shapeName != null
&& shapeName.startsWith(ModelManager.MIRROR_SHAPE_PREFIX);
exportAppearance(appearance, appearanceName, mirror, noConstantShader);
}Code: Select all
if (appearance != null) {
if (shapeName != null
&& shapeName.startsWith(ModelManager.WINDOW_PANE_SHAPE_PREFIX)
&& isDoorOrWindowChild(shape)) {
return;
}
texCoordGeneration = appearance.getTexCoordGeneration();
appearanceName = "shader" + uuid;
boolean mirror = shapeName != null
&& shapeName.startsWith(ModelManager.MIRROR_SHAPE_PREFIX);
exportAppearance(appearance, appearanceName, mirror, noConstantShader);
}Code: Select all
/**
* Returns <code>true</code> if the given <code>node</code>
* is a part of a door or a window.
*/
private boolean isDoorOrWindowChild(Node node) {
Object userData = node.getUserData();
if (userData instanceof HomePieceOfFurniture) {
return ((HomePieceOfFurniture)userData).isDoorOrWindow();
} else {
Node parent = node.getParent();
if (parent != null) {
return isDoorOrWindowChild(parent);
} else {
return false;
}
}
}Importing to Blender a home exported with 3D view > Export to 3D view menu item works well too.Another way could be to design the house in SweetHome3D, export it, re-import it in Blender, and write a script for Blender (as I'm a python developer, this last step would be easier for me, but I don't know if the export/import step is easy or not).
Have a look to user's guide for an example. [;)]
Emmanuel Puybaret, Sweet Home 3D creator
Re: Simulate sun position and lights/shadows
Thanks for your answer. I think I will switch to the french part of the forum to ask you more questions about this plugin...
Frédéric
Who is online
Users browsing this forum: No registered users and 2 guests