Pedrollane

[Software] LDraw2Sunflow a rendering engine for LDraw

Recommended Posts

The same rotation step you should add for my parts as the stl export has not the same orientation as default ldraw one.

Share this post


Link to post
Share on other sites

How long do renders take generally in Sunflow? Longer than POV-Ray?

This question is meant to be a joke, right? :look::wacko::laugh:

LEGO project that would take to render several days nonstop (!!!) in POV-Ray would probably take 1 or 2 hours in SunFlow yet the quality is very comparable and in some (many...or even most) of the cases even better (...and I am speaking from my own experience)! :wink::tongue:

P.S.: I see and understand you are new here so you could not know but anyway I on the other hand could not help myself to answer this question in a way I did - I hope you did not take offence cos it was not meant like that (if you did then sorry, my friend :thumbup: )

Share this post


Link to post
Share on other sites

Is there something like a short guide on how this program is supposed to work?

I downloaded the archive, extracted it and the program is starting but none of the buttons seem to do anything. I could set the input file and the library paths, but that's it. Any hints?

Share this post


Link to post
Share on other sites

A tutorial would be good.

Also, can sunflow do orthographic renders?

It can be done but it is not in SunFlow original code (actually msx80 added such option to it for BlueRender)

Edited by bublible

Share this post


Link to post
Share on other sites

I am trying to render a model. It appears properly in the preview window. But it won't render. Here is the console log:

E:\Programs Windows\LDraw\LDraw2Sunflow_d>java -XX:MaxDirectMemorySize=512m -Xmx
1024m -Djava.library.path=./native/ -jar Ldraw2Sunflow.jar
Sep 20, 2015 12:00:42 AM java.util.prefs.WindowsPreferences <init>
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0
x80000002. Windows RegCreateKeyEx(...) returned error code 5.
Sep 20, 2015 12:00:42 AM org.ldraw2sunflow.ui.Ldraw2Sunflow <init>
INFO: en_US
Sep 20, 2015 12:00:51 AM org.ldraw2sunflow.converter.LdrawConverterMulti2 genera
teMesh
INFO: Parsing D:\Datsville\datsville\building_007_firecompany.ldr
Sep 20, 2015 12:00:51 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : stud.dat
Sep 20, 2015 12:00:51 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 4-4cyli.dat
Sep 20, 2015 12:00:51 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 1-4cyli.dat
Sep 20, 2015 12:00:51 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 1-4cyli.dat
Sep 20, 2015 12:00:51 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 1-4cyli.dat
Sep 20, 2015 12:00:51 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 1-4cyli.dat
Sep 20, 2015 12:00:51 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 4-4disc.dat
Sep 20, 2015 12:00:51 AM org.ldraw2sunflow.converter.LdrawConverterMulti2 genera
teMesh
INFO: # Processing time : 0.11 seconds
ok
LDraw2Sunflow preview 3.0.0b!
Sep 20, 2015 12:00:52 AM org.ldraw2sunflow.util.Shader logShaderError
SEVERE: Shader compile error :
Sep 20, 2015 12:00:52 AM org.ldraw2sunflow.util.Shader logShaderError
SEVERE: Shader compile error :
Sep 20, 2015 12:01:09 AM org.ldraw2sunflow.converter.LdrawConverterMulti2 genera
teMesh
INFO: Parsing D:\Datsville\datsville\building_007_firecompany.ldr
Sep 20, 2015 12:01:09 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : stud.dat
Sep 20, 2015 12:01:09 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 4-4cyli.dat
Sep 20, 2015 12:01:09 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 1-4cyli.dat
Sep 20, 2015 12:01:09 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 1-4cyli.dat
Sep 20, 2015 12:01:09 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 1-4cyli.dat
Sep 20, 2015 12:01:09 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 1-4cyli.dat
Sep 20, 2015 12:01:09 AM org.ldraw2sunflow.converter.OneMeshGenerator parseFile
INFO: Parse : 4-4disc.dat
Sep 20, 2015 12:01:09 AM org.ldraw2sunflow.converter.LdrawConverterMulti2 genera
teMesh
INFO: # Processing time : 0.0 seconds
Sep 20, 2015 12:01:10 AM org.ldraw2sunflow.converter.CommonPieceWriter writePiec
e
INFO: Parsing stud.dat
Sep 20, 2015 12:01:10 AM org.ldraw2sunflow.ui.impl.RenderPanel print
INFO: Module API : Unable to find a suitable parser for: "D:\Datsville\datsville
_sunflow\building_007_firecompany"

What is wrong?

Edited by Dilvish

Share this post


Link to post
Share on other sites

So, I did manage to get some renders out of this. Speed is very good, but I'm underwhelmed by the quality, it's nowhere near of what I'm getting out of POV-Ray. Are there any plans to make the light sources configurable?

What's also missing is the possibility to adjust the look-at point (already mentioned, but this is really important) and support for external submodels.

Share this post


Link to post
Share on other sites

@Dilvish

I download Datsville, I make some test and I tell you where is the problem.

Edit :

INFO: Module API : Unable to find a suitable parser for: "D:\Datsville\datsville _sunflow\building_007_firecompany"

Sunflow use the file extension to find a parser.You must had .sc to the output file.

You can make Orthographic render with Sunflow but by default some parameters (fov, aspect ratio, focus) could not be change.

I change this when I have some time.

@Nickless

Actually you can't configure source light in the application you need to open sc file. You can read bublible tutorial for Bluerender.

In the preview direction arrows move the look-at point up down Y axe, left right X axe no Z axis in this version ... :sceptic:

Edited by Pedrollane

Share this post


Link to post
Share on other sites

New version of LDraw2Sunflow :

Basic support of Darats files

How to use :

Download LGEO Library - Darats on Darats topics

Extract archive.

Create obj directory near LGEO Parts and STL Parts directory

Use Poseray to convert all STL Parts in obj files

Download primitives extract archive into obj/primitives directory

You need to configure LGEO Darats directory in Ldraw tab

Command line

You can use command line to change logger level or clear saved preferences

LOGGER=FINE -> more log

LOGGER=INFO -> default log

clearPref -> clear saved preferences

I need to go, I hope you can use it with my very short explications

Edited by Pedrollane

Share this post


Link to post
Share on other sites

@Dilvish

I download Datsville, I make some test and I tell you where is the problem.

Edit :

INFO: Module API : Unable to find a suitable parser for: "D:\Datsville\datsville _sunflow\building_007_firecompany"

Sunflow use the file extension to find a parser.You must had .sc to the output file.

Thanks. That worked.

@Nickless

Actually you can't configure source light in the application you need to open sc file. You can read bublible tutorial for Bluerender.

In the preview direction arrows move the look-at point up down Y axe, left right X axe no Z axis in this version ... :sceptic:

I would like to edit the SC file as well, and then render it. How do i do that?

Edited by Dilvish

Share this post


Link to post
Share on other sites

I would like to edit the SC file as well, and then render it. How do i do that?

I have udpate the last version you can redownload here.

-Extract archive and move into the lib directory

If you use a JDK :

JDK_PATH\bin\java -Xmx1G -server -jar sunflow.jar

If you use a JRE

JDK_PATH\bin\java -Xmx1G -jar sunflow.jar

-server option is faster than default -client

Share this post


Link to post
Share on other sites

Thanks.

Is there any documentation for all the different scene file commands?

[edit]

Here's my first test render.

0Us0DL8.png

I circled some problem areas. The tops of the circled bricks are the wrong color. I don't know why.

[edit]

You can also see some miscolored details on the yellow door.

Edited by Dilvish

Share this post


Link to post
Share on other sites

Could you make it so that there is an option to only create the model objects? That way I can include the models in a separate scene with lights, camera, etc.. Thanks.

Edited by Dilvish

Share this post


Link to post
Share on other sites

Hi there, sorry i missed this thread :) Good to see an LDraw Sunflow render too! I've seen you started from the "bluesunflow" version fo the renderer, which is great. There are already a lot of different forks of the program, we could try to keep a single one for "Lego related renderings" to add up our improvements :) As soon as i have some time i'll take a look at your changes and add them to the repository. I'm super busy lately :(

Share this post


Link to post
Share on other sites

Could you make it so that there is an option to only create the model objects? That way I can include the models in a separate scene with lights, camera, etc.. Thanks.

Sorry, actually I'm busy but thre is a solution.

If you use the button "Convert to SC file" application does not launch the rendering.

It's always possible edit generated SC file remove all before # START Ldraw color and all from camera.

@msx80

I publish my code when I have more time :)

Share this post


Link to post
Share on other sites

Any progress? I am interested in orthographic perspective, as well as the ability to build scenes in a text editor like you can in POV-Ray.

Edited by Dilvish

Share this post


Link to post
Share on other sites

I am playing with this program again.

Right now I am trying to convert a model, but the conversion seems to be stuck in the "preview model" phase.

K5J32kC.png

It is taking a long time.

Also, not all configuration options are visible on the third tab of the program.

x615Qc5.png

The error is:

...
...
...
Exception in thread "Thread-4" java.lang.UnsatisfiedLinkError: no lwjgl in java.
library.path
        at java.lang.ClassLoader.loadLibrary(Unknown Source)
        at java.lang.Runtime.loadLibrary0(Unknown Source)
        at java.lang.System.loadLibrary(Unknown Source)
        at org.lwjgl.LWJGLUtil.loadLibrarySystem(LWJGLUtil.java:337)
        at org.lwjgl.Sys.<clinit>(Sys.java:29)
        at org.ldraw2sunflow.lwjgl.PreviewOpenGL.run(PreviewOpenGL.java:160)
        at org.ldraw2sunflow.ui.impl.RenderPanel.convertFile(RenderPanel.java:11
7)
        at org.ldraw2sunflow.ui.impl.RenderPanel.access$000(RenderPanel.java:61)

        at org.ldraw2sunflow.ui.impl.RenderPanel$1.run(RenderPanel.java:85)

 

Has anyone come across this yet?

[edit]

I am now unable to open the converter any more. I get an error:

Jan 31, 2018 3:27:49 PM java.util.prefs.WindowsPreferences <init>
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0
x80000002. Windows RegCreateKeyEx(...) returned error code 5.
Jan 31, 2018 3:27:49 PM org.ldraw2sunflow.ui.Ldraw2Sunflow <init>
INFO: en_US
Exception in thread "AWT-EventQueue-0" java.lang.StringIndexOutOfBoundsException
: String index out of range: -1
        at java.lang.String.substring(Unknown Source)
        at org.ldraw2sunflow.util.PartFinder.loadColor(PartFinder.java:274)
        at org.ldraw2sunflow.util.PartFinder.setLDRAWDIR(PartFinder.java:172)
        at org.ldraw2sunflow.ui.impl.LDrawPanel.initPreferences(LDrawPanel.java:122)
        at org.ldraw2sunflow.ui.impl.LDrawPanel.<init>(LDrawPanel.java:47)
        at org.ldraw2sunflow.ui.Ldraw2Sunflow.<init>(Ldraw2Sunflow.java:80)
        at org.ldraw2sunflow.ui.Ldraw2Sunflow.lambda$main$10(Ldraw2Sunflow.java:114)
        at java.awt.event.InvocationEvent.dispatch(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$500(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)

Here is my command line: "C:\Program Files\Java\jre1.8.0_161\bin\java.exe" -Xmx1G -jar "E:\Programs Windows\LDraw\LDraw2Sunflow_f\ldraw2sunflow.jar"

[edit]

I tried again as admin, and experienced the same problem. The program runs once, but then will not work a second or third time, and spawns the above error.

Also, I tried again with "LDraw2Sunflow_d" and experienced the same problem. This is odd because it worked fine for me in 2015.

[edit]

When I delete "HKEY_USERS\S-1-5-21-2113055238-2099637611-63920502-1003\Software\JavaSoft\Prefs\org" using regedit, the program will start again, but the stored file and directory paths are missing again when I restart the program too.

Here's what my registry looks like:

iAwMhOl.png

Edited by Dilvish

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.