Download

Online

Gallery

Blog

  Index  | Recent Threads  | List Attachments  | Search
 Welcome Guest  |  Register  |  Login
Login Name  Password
 

Sweet Home 3D Forum



No member browsing this thread
Thread Status: Active
Total posts in this thread: 8
[ Jump to Last Post ]
Post new Thread
Author
Previous Thread This topic has been viewed 19373 times and has 7 replies Next Thread
db4tech
Advanced Member



UK
Joined: May 3, 2010
Post Count: 223
Status: Offline
Reply to this Post  Reply with Quote 
Different '3D view' rendering qualities to accommodate different...

Hello development team,

Hope you are all keeping well.

Firstly I would like to say thank you for such a truly amazing program!

My request is for different '3D view' rendering qualities to accommodate different levels of computers.

Something similar to how many 3D programs (Art of illusion plus many others) give the choice of Wireframe (with hidden line removal), Shaded (grey scale), Textured and so on. If none of that is possible then maybe a preferences setting that can be set to display very lo-res textures for just the '3D view' while having no effect on the final 'Create photo' rendering

As an example I have access to a powerful computer and Sweet Home 3D is very fast and smooth on that machine but I would also like to model and/or navigate plus show other people a 3D room on a slower computer/s such as a Netbook (with 2GB of memory) for my very first model I have built a 2 floor complex building and the 3D view is too slow and jerky on slower computers, especially a Netbook (Windows 7 with all the latest hardware drivers and DirectX updates)


PS: Have tried the DirectX rendering and it is slower on the Netbook plus produces some '3D view' render errors.

Thought it might also help others who might have slower computers and find the display is jerky (when viewing complex models) and navigating or altering rooms by having different levels of display quality for the '3D view'

Thank you for your time and once again for the amazing Sweet Home 3D software.

db4tech
[May 3, 2010, 6:13:22 PM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
Puybaret
Expert
Member's Avatar

France
Joined: Nov 7, 2005
Post Count: 9141
Status: Offline
Reply to this Post  Reply with Quote 
Re: Different '3D view' rendering qualities to accommodate different...

You would be astonished to know that 2 additional 3D drawing modes are already available in internal parameters of Sweet Home 3D. See the two following pictures of the same home as the one beside Sweet Home 3D logo.
Outline (wireframe) mode:


Fill and outline mode:


I never made them available in the user interface because I don't believe it's so useful.
I'm not against adding an option in the dialog used to modify the 3D view, but I don't have the means to test whether it will run better on each graphics card available out there. confused

If ever you're able to compile Sweet Home 3D sources, you can test these two modes quite easily by making the following changes in source code:
In the createObject3D method of HomeComponent3D class, replace the instantiation of HomePieceOfFurniture and Wall3D:

if (homeObject instanceof HomePieceOfFurniture) {
return new HomePieceOfFurniture3D((HomePieceOfFurniture)homeObject, this.home, true, waitForLoading);
} else if (homeObject instanceof Wall) {
return new Wall3D((Wall)homeObject, this.home, true, waitForLoading);
}

by:

if (homeObject instanceof HomePieceOfFurniture) {
return new HomePieceOfFurniture3D((HomePieceOfFurniture)homeObject, this.home, false, waitForLoading);
} else if (homeObject instanceof Wall) {
return new Wall3D((Wall)homeObject, this.home, false, waitForLoading);
}


At the end of the readObject method of HomeEnvironment class, add one of the following calls:

this.drawingMode = DrawingMode.OUTLINE;

or :

this.drawingMode = DrawingMode.FILL_AND_OUTLINE;


That's all! smile
----------------------------------------
Emmanuel Puybaret, Sweet Home 3D developer
[May 4, 2010, 8:30:20 AM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
ziolink32
Newbie
Member's Avatar


Joined: Feb 8, 2017
Post Count: 4
Status: Offline
Reply to this Post  Reply with Quote 
Re: Different '3D view' rendering qualities to accommodate different...

Hello,
I'm trying to develop a plugin to switch from one drawing mode to the other. The reason is that my pc is not so powerful, and the full 3d view is very laggy on my hardware, thus the wireframe mode will let me quickly build the whole floor, and then switch to the full 3d view to check the result.
I managed to dynamically change the drawingMode property in the HomeEnvironment class, but the walls and furniture instantiation seems to be hardcoded to ignore the drawing mode.
In the 5.3 version I found the 3d objects creation in the Object3DBranchFactory class:


[...]
if (item instanceof HomePieceOfFurniture) {
return new HomePieceOfFurniture3D((HomePieceOfFurniture)item, home, true, waitForLoading);
} else if (item instanceof Wall) {
return new Wall3D((Wall)item, home, true, waitForLoading);
[...]


So, is it possible to do this without rebuilding the whole project?
Maybe by cyclying through all the objects and somehow regenerating them?

Thanks
[Feb 19, 2017, 9:56:04 AM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
Puybaret
Expert
Member's Avatar

France
Joined: Nov 7, 2005
Post Count: 9141
Status: Offline
Reply to this Post  Reply with Quote 
Re: Different '3D view' rendering qualities to accommodate different...

A plug-in won't let you replace a 3D factory by another one.
The default Ant target of Sweet Home 3D project builds an executable Jar, so once you downloaded its source code, open it with Eclipse, change the few lines in program you noticed, just select the Run As > Ant Build menu item in the contextual menu of build.xml.
----------------------------------------
Emmanuel Puybaret, Sweet Home 3D developer
[Feb 20, 2017, 10:43:01 AM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
ziolink32
Newbie
Member's Avatar


Joined: Feb 8, 2017
Post Count: 4
Status: Offline
Reply to this Post  Reply with Quote 
Re: Different '3D view' rendering qualities to accommodate different...

Thank you Emmanuel. I recompiled the project and managed to use the other drawing modes.
[Feb 21, 2017, 7:31:42 PM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
r921vs
Newbie



Russia
Joined: Jan 30, 2018
Post Count: 5
Status: Offline
Reply to this Post  Reply with Quote 
Re: Different '3D view' rendering qualities to accommodate different...

Hello.
Contour mode (wireframe) is a very necessary tool!
Please add it to the user interface, it is very important to visualize the furniture.
Whether I can do it in the source code or do it on every new furniture.
If you know how to do it easier, please share?
[Oct 25, 2018, 10:11:14 AM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
r921vs
Newbie



Russia
Joined: Jan 30, 2018
Post Count: 5
Status: Offline
Reply to this Post  Reply with Quote 
Re: Different '3D view' rendering qualities to accommodate different...

Amendment:
How to do it in a simpler way?
[Oct 25, 2018, 10:14:42 AM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
enkonyito
Advanced Member
Member's Avatar


Joined: May 28, 2015
Post Count: 601
Status: Offline
Reply to this Post  Reply with Quote 
Re: Different '3D view' rendering qualities to accommodate different...

If you know how to do it easier, please share?
How to do it in a simpler way?

It is possible to modify the drawing mode and see the rendering of the 3D view without recompiling the source code.

First of all you have to use the JAR version of Sweet Home 3D with the command line
java -Dcom.eteks.sweethome3d.j3d.drawingModeEnabled=true -jar path/to/SweetHome3D-version.jar


Then add drawingMode='OUTLINE' after the <environment tag in the Home.xml file of your project.
To edit Home.xml, change the extension of your project ".sh3d" to ".zip".
You must repeat this step for each new project.
----------------------------------------
EnkoNyito
----------------------------------------
[Edit 1 times, last edit by enkonyito at Jan 28, 2019, 2:17:38 AM]
[Jan 28, 2019, 2:10:48 AM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
[ Jump to Last Post ]
Show Printable Version of Thread  Post new Thread

    Get Sweet Home 3D at SourceForge.net. Fast, secure and Free Open Source software downloads
   
© Copyright 2006-2024 eTeks - All rights reserved