Simulate sun position and lights/shadows

This topic has been viewed 64491 times and has 4 replies
Thread status: Active
How can I do this? [img]http://www.sweethome3d.com/images/flags/en_small.gif[/img]
Post Reply New Topic
fma
Posts: 62
Joined: Mon Mar 15, 2010 8:14 am

Simulate sun position and lights/shadows

Post by fma »

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!
Frédéric
fma
Posts: 62
Joined: Mon Mar 15, 2010 8:14 am

Re: Simulate sun position and lights/shadows

Post by fma »

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?
Frédéric
User avatar
Puybaret
Posts: 9440
Joined: Mon Nov 07, 2005 12:00 pm
Country: Paris, France
Contact:

Re: Simulate sun position and lights/shadows

Post by Puybaret »

is it possible to simulate the sun position, according to the date and time, and have the lights/shadows visible in the house?
No yet
Is it possible to implement such feature through the plugins mecanism?
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.
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);
        }
by :

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);
        }
and add the following method:

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;
      }
    }
  }
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).
Importing to Blender a home exported with 3D view > Export to 3D view menu item works well too.
Have a look to user's guide for an example. [;)]
Emmanuel Puybaret, Sweet Home 3D creator
fma
Posts: 62
Joined: Mon Mar 15, 2010 8:14 am

Re: Simulate sun position and lights/shadows

Post by fma »

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
fma
Posts: 62
Joined: Mon Mar 15, 2010 8:14 am

Re: Simulate sun position and lights/shadows

Post by fma »

The french post is here...
Frédéric
Post Reply New Topic

Who is online

Users browsing this forum: No registered users and 2 guests