msx80

[Software] Bluerender, a rendering engine for LDD

Recommended Posts

SOLVED:

* the only problem is that completely transparent glass object is still casting shadow which is absolutelly wrong (therefore that "blackness" all around the place) :sceptic: , so the only hope for us is to realy realy realy kindly pushing on @msx80 :grin: to implement a new attribute for an object called "noshadow" that would "bypass" such object from casting shadows :wink: (but he already said elsewhere that he won't mess up with the SunFlow code itself so the chances are almost 0% for now I guess :sceptic: ). Well, anyway, here is the result for you - BlueRender sky reflections on metalic objects:

BTW ibl light with HDR map was absolutelly of no help (cos I noticed and already discussed it before that it is applied wrongly), solution was to create a mesh, place it above the objects simulating kind of a sky and apply to it texture with glass shader with complete transparency... :classic:

Thank you! It appears you solved the "blackness" problem, but I am going to ask for some clarification.

  • You seem to be mixing two issues - getting rid of the blackness and supplying an image for the sky. Please explain their differences or how they are related.
  • What exactly was the source of the blackness? It can't be the transparent shadow issue because that would affect the whole image.
  • Please supply the scene file changes you used to get the first image. I would hope that the default scene file would eventually include such a change (along with the metallic color changes).

You and msx80 are very knowledgeable about rendering, but one would hope that this tool would be very accessible to those who are not. That's why I am pushing to get the default settings to something that doesn't require changes for most people.

Share this post


Link to post
Share on other sites

Thank you! It appears you solved the "blackness" problem, but I am going to ask for some clarification.

No problem. :thumbup:

You seem to be mixing two issues - getting rid of the blackness and supplying an image for the sky. Please explain their differences or how they are related.

Not at all: your reflective material needs to reflect something, if there is nothing to reflect it is black (or at least it seems like that) - when you set up your sun light there actualy is no physical sun up there, only the effect of it therefore it has nothing to reflect, on the other hand if you are able put ANYTHING above such material it will be reflected upon the material surface, so if I placed a mesh with texture above the object it reflects it depending on what exactly you have for a texture (in this case it is picture of the sky). :wink:

What exactly was the source of the blackness? It can't be the transparent shadow issue because that would affect the whole image.

Oh yes it has, definitely: remember that the plane is WHITE, without casting shadow it would stay like that and it would still reflects on reflective surfaces, but with casting shadows all colors get dimmer, more black as you see.

Please supply the scene file changes you used to get the first image.

Sure, here link for all the files needed in a zip (hosted on my own server):

http://lego.queryen.com/download/20150609_bluerenderskyreflections/bluerender_sky_reflections_bublible.zip

For those that needs only my added code part here it is for you too:


#-------------------------------
# BUBLIBLE sky reflections test
#-------------------------------
#
shader
{
       name tran
       type glass
       eta 1
       color  1 1 1
}

#
shader
{
       name plocha
       type diffuse
       diff 1 1 1
}

#
object
{
       noinstance
       type generic-mesh
       name "Sky"
       points 4
       0 0 0
       0 1 0
       1 1 0
       1 0 0
       triangles 2
       0 3 2
       0 2 1
       normals none
       uvs vertex
       0 0
       0 1
       1 1
       1 0
}

#
instance
{
       name PlaneInstance
       geometry Sky
       transform
       {
               scaleu 300
               rotatey 90
               rotatez 90
               translate 100 20 50
       }
       texture "Z:/_LAN_/Bluerender Reflection/sky.jpg"
       shader tran
}

#
object
{
       shader plocha
       type plane
       p 0 0 0
       p 4 0 3
       p -3 0 4
}

+ I have also additionally increased the sky mesh size so now it covers completely whole area, so now it looks like this:

bluerender_sky_reflections_bublible.jpg

I would hope that the default scene file would eventually include such a change (along with the metallic color changes).

For this to be implemented you need to ask @msx80 but he is away for whole week right now so we have to wait again. :sceptic::grin:

Share this post


Link to post
Share on other sites

Made an account just to ask this question...

Does this program work on Mac? Looking at the samples the renders look good, and as I'm an LDD user on Mac and Povray doesn't work on Mac I've been looking for a way to render.

And if it does, what applications are able to open it? It says I have no applications to open the program...

Thanks in advance :D

Share this post


Link to post
Share on other sites

Made an account just to ask this question...

Does this program work on Mac? Looking at the samples the renders look good, and as I'm an LDD user on Mac and Povray doesn't work on Mac I've been looking for a way to render.

And if it does, what applications are able to open it? It says I have no applications to open the program...

Thanks in advance :D

If Java can run on MAC then yes, you can, just install Java for MAC (ehm, if there is something like that at all) and next click on the bluerender.bat and wait - it will start the programmfor you. The only problem could be if MAC can run/understand .bat/.cmd, isn't it only for PC? Anyway, you can run that command from your command line...cos that is exactly what the .bat file is doing: running command line.

Share this post


Link to post
Share on other sites

If Java can run on MAC then yes, you can, just install Java for MAC (ehm, if there is something like that at all) and next click on the bluerender.bat and wait - it will start the programmfor you. The only problem could be if MAC can run/understand .bat/.cmd, isn't it only for PC? Anyway, you can run that command from your command line...cos that is exactly what the .bat file is doing: running command line.

OK, thanks, let me try that :D

Share this post


Link to post
Share on other sites

No problem - go for it! :classic:

Well, I got the app running, so thanks :D

HOWEVER, with me being me, of course something weird happens. In this case, I put an LXF file in the "input file" section, and it automatically put it in the output too (that's supposed to happen, right?), and then I clicked "render." Instead of a rendering, however, I got a popup that said it couldn't locate the LDD database file and that I had to manually select a "db.lif" file. What is that, and how do I finally get this thing to render on my troubled Mac? :P

Thanks in advance

Share this post


Link to post
Share on other sites

Well, I got the app running, so thanks :D

HOWEVER, with me being me, of course something weird happens. In this case, I put an LXF file in the "input file" section, and it automatically put it in the output too (that's supposed to happen, right?), and then I clicked "render." Instead of a rendering, however, I got a popup that said it couldn't locate the LDD database file and that I had to manually select a "db.lif" file. What is that, and how do I finally get this thing to render on my troubled Mac? :P

Thanks in advance

db.lif is one huge file containing all the data and files LDD is using. On PC it is installed elsewhere than the actual LDD program itself, so you have to search on google where is the db.lif actually installed on MAC. Once you find out just set that path manualy into BlueRender if it'll ask you to.

Share this post


Link to post
Share on other sites

We have had decent success with Bluerender so far. My 11 year old son is enjoying changing the plane colors. :)

<a  href=https://c1.staticflickr.com/1/560/18530179189_4d69889d0f_z.jpg' alt='18530179189_4d69889d0f_z.jpg'>4002014_bluerender by Florida Shoooter, on Flickr[/img]

Share this post


Link to post
Share on other sites

Bluerender needs a "Rounded Edge" shader for bevels.

I understand you are talking about BRICK SEAMS (which is BTW one of two next thing we definitely need to obtain in BlueRender to become real POV-Ray substitution...the other one is logo-on-stud) but I am afraid you got it a bit wrong: to my knowledge shader in SunFlow ONLY changes surface attributes (color, reflection, texture etc.) not shape of an object, I do not know if SF supports edge beveling and if not @msx80 would need to develop it for SunFlow (which he already did said he is not intended to do that, only "small" bits) so I guess what could be done quite easily and would more resemble the real LEGO stuff is shrinking every single brick in size into its center by some micro value like in ldd2povray (0.005), but I may be wrong, of course. Cos in real LEGO the reason for its seams is not beveled edge but the fact that two bricks do not connect to each other by 100% joint, they are always more or less a bit higher then y0 and also do not stick 100% to their sides respectively at they are slightly out of straight line so the gap in between them occurre.

Edited by bublible

Share this post


Link to post
Share on other sites

I understand you are talking about BRICK SEAMS (which is BTW one of two next thing we definitely need to obtain in BlueRender to become real POV-Ray substitution...the other one is logo-on-stud) but I am afraid you got it a bit wrong: to my knowledge shader in SunFlow ONLY changes surface attributes (color, reflection, texture etc.) not shape of an object, I do not know if SF supports edge beveling and if not @msx80 would need to develop it for SunFlow (which he already did said he is not intended to do that, only "small" bits) so I guess what could be done quite easily and would more resemble the real LEGO stuff is shrinking every single brick in size into its center by some micro value like in ldd2povray (0.005), but I may be wrong, of course. Cos in real LEGO the reason for its seams is not beveled edge but the fact that two bricks do not connect to each other by 100% joint, they are always more or less a bit higher then y0 and also do not stick 100% to their sides respectively at they are slightly out of straight line so the gap in between them occurre.

Shrinking bricks won't add too much to the render, really. It'll surely add some seams in between, but it's that "edge highlight" effect that makes the rendered bricks look more realistic. For Bionicle/HF builds these seams are completely useless. I guess adding "cell shading"-like option could be much more useful. Like it was made in LDD2POV-Ray: you could choose between modified geometry or crease edges+silhouette. It's relatively easy and it should really add a lot more to Bluerender's functionality!

Also, my models are suffering from "some flex pieces are missing" issue too. Hope this is to be fixed with the next release :D

And the last not least: how should I change "field of view" parameter in .sc file so that I could have a maximal zoom of my model? When I have the same image size 1920x1024 both in POV-Ray and in Bluerender, I still have a difference in sizes of the model. Here's an example from POV-Ray (don't pay attention to the lighting, is made that way on purpose):

faace6229607.png

And here's from Bluerender:14dde8238b17.png

Share this post


Link to post
Share on other sites

Shrinking bricks won't add too much to the render, really.

What? :look: Why not? How did you come to such conclucsion? :wacko: Every "gap" also the smallest ones are rendered in SunFlow compared to POVRay others than the best quality settings - rendered with absolute detail so YES it would show as seams in SunFlow + you need to bear in mind that edge beveling has bad side effect on logo-on-stud: it make it appear too smooth, shrinking would not have such effect...

I guess adding "cell shading"-like option could be much more useful. Like it was made in LDD2POV-Ray: you could choose between modified geometry or crease edges+silhouette. It's relatively easy and it should really add a lot more to Bluerender's functionality!

See my message above yours: most probably @msx80 WILL NOT change SunFlow code itself, he would only add some "add-ons" to it, therefore chances are pretty low tho I hope I am completely wrong on this one :grin:

Also, my models are suffering from "some flex pieces are missing" issue too. Hope this is to be fixed with the next release :D

This was already discussed and @msx80 said he will look at it as he returns from his hollyday, maybe you should read all the messages in this first before you post yours, hm? C'mon there is not that much posts yet :wink::tongue:

And the last not least: how should I change "field of view" parameter in .sc file so that I could have a maximal zoom of my model?

Camera > fov

Edited by bublible

Share this post


Link to post
Share on other sites

Hello people, i'm back :)

Seems like I'm getting the same error.

Actually, ArrayIndexOutOfBound errors are usually related to old LXF (saved from previous version of LDD), which has something a little different from current ones. I haven't identified exacly what, but opening the model in LDD and resaving it usually solve the problem.

Just PM-ed you :wink:

@msx80

BTW did you notice that actuall latest SunFlow version is 0.0.7.3? There is difference between Sourceforge and Github, the latter having the latest one.

Link: https://github.com/f...aster/CHANGELOG

Yes i noticed, but i preferred to use a "stable", released version than one that was not yet released and possibly in an "intermediate" version. But i'll look into the changelog, if there's something interesting i might change it. My modifications are still minimal and easy to move to the new version.

You and msx80 are very knowledgeable about rendering, but one would hope that this tool would be very accessible to those who are not. That's why I am pushing to get the default settings to something that doesn't require changes for most people.

This is definitely my objective too. I would like to find a set of default value that works good in 99% of the case, so that people can just hit "render", while still letting others hack the scene file to get the most out of it.

Well, I got the app running, so thanks :D

HOWEVER, with me being me, of course something weird happens. In this case, I put an LXF file in the "input file" section, and it automatically put it in the output too (that's supposed to happen, right?), and then I clicked "render." Instead of a rendering, however, I got a popup that said it couldn't locate the LDD database file and that I had to manually select a "db.lif" file. What is that, and how do I finally get this thing to render on my troubled Mac? :P

Thanks in advance

As bublible said, the db.lif is a database file containing all geometries, decorations, materials, etc, that Bluerender needs to read. In windows, i know where it is and the program doesn't need to ask (it only asks if it doesn't find it). In Mac, i don't know which is the default position (if any), so it just asks. Try and locate the file with some search function on your OS. Other users have reported it in "???/Users/[username]/Library/Application Support/LEGO Company/LEGO Digital Designer/db.lif". As far as i know nobody managed to run it in mac, there are more problem down the way. But if you try, let me know what you can get!

I understand you are talking about BRICK SEAMS (which is BTW one of two next thing we definitely need to obtain in BlueRender to become real POV-Ray substitution...the other one is logo-on-stud) but I am afraid you got it a bit wrong: to my knowledge shader in SunFlow ONLY changes surface attributes (color, reflection, texture etc.) not shape of an object, I do not know if SF supports edge beveling and if not @msx80 would need to develop it for SunFlow (which he already did said he is not intended to do that, only "small" bits) so I guess what could be done quite easily and would more resemble the real LEGO stuff is shrinking every single brick in size into its center by some micro value like in ldd2povray (0.005), but I may be wrong, of course. Cos in real LEGO the reason for its seams is not beveled edge but the fact that two bricks do not connect to each other by 100% joint, they are always more or less a bit higher then y0 and also do not stick 100% to their sides respectively at they are slightly out of straight line so the gap in between them occurre.

Are you sure LDD2POVRAY uses the trick of shrinking the bricks? I'm pretty sure this trick will not work in any but the simplest cases. The correct way is to add small bevels on all hard seams, but it's a nice load of work and it makes the number of vertices/faces explode.

Shrinking bricks won't add too much to the render, really. It'll surely add some seams in between, but it's that "edge highlight" effect that makes the rendered bricks look more realistic. For Bionicle/HF builds these seams are completely useless. I guess adding "cell shading"-like option could be much more useful. Like it was made in LDD2POV-Ray: you could choose between modified geometry or crease edges+silhouette. It's relatively easy and it should really add a lot more to Bluerender's functionality!

Also, my models are suffering from "some flex pieces are missing" issue too. Hope this is to be fixed with the next release :D

And the last not least: how should I change "field of view" parameter in .sc file so that I could have a maximal zoom of my model? When I have the same image size 1920x1024 both in POV-Ray and in Bluerender, I still have a difference in sizes of the model. Here's an example from POV-Ray (don't pay attention to the lighting, is made that way on purpose):

Could you elaborate on the two options of ldd2povray? I'm not sure i get it.

Yes the flex pieces disappearance will be fixed in next version :)

I've set the field of view empirically as it's a little hard to get the correct one used in LDD. You could change the fov value in scene.sc or move the camera in LDD.

Share this post


Link to post
Share on other sites

What? :look: Why not? How did you come to such conclucsion? :wacko: Every "gap" also the smallest ones are rendered in SunFlow compared to POVRay others than the best quality settings - rendered with absolute detail so YES it would show as seams in SunFlow + you need to bear in mind that edge beveling has bad side effect on logo-on-stud: it make it appear too smooth, shrinking would not have such effect...

See my message above yours: most probably @msx80 WILL NOT change SunFlow code itself, he would only add some "add-ons" to it, therefore chances are pretty low tho I hope I am completely wrong on this one :grin:

This was already discussed and @msx80 said he will look at it as he returns from his hollyday, maybe you should read all the messages in this first before you post yours, hm? C'mon there is not that much posts yet :wink::tongue:

[/font][/color]

Camera > fov

Man, before blaming me in not reading this topic you should try to read at least the post you're replying! I know flex problem was mentioned and I've read all your multiple posts with all your issues and suggestions. Please, be more patient. You've already flooded this topic enough to make it hard to read.

I meant "shrinking" will only be useful for simplest "studs on top" cases, just like msx80 said! I only said that my models suffer from "flex" problem too, just like yours. And "cell shading" has nothing to do with SF code, but with Bluerender's. Please, don't answer if you don't know the answer.

Could you elaborate on the two options of ldd2povray? I'm not sure i get it.

Yes the flex pieces disappearance will be fixed in next version :)

I've set the field of view empirically as it's a little hard to get the correct one used in LDD. You could change the fov value in scene.sc or move the camera in LDD.

There is an option in POV-Ray that adds outlines to bricks. Instead of bevels you get a mix of wireframe and non-beveled bricks. You already have a wireframe option, just modify it so we could get something like this (I'm really-really hoping that's not too hard to make):

09195bf48ae6.png

Thank you very much!

Share this post


Link to post
Share on other sites

Man, before blaming me in not reading this topic you should try to read at least the post you're replying! I know flex problem was mentioned and I've read all your multiple posts with all your issues and suggestions. Please, be more patient. You've already flooded this topic enough to make it hard to read.

I meant "shrinking" will only be useful for simplest "studs on top" cases, just like msx80 said! I only said that my models suffer from "flex" problem too, just like yours. And "cell shading" has nothing to do with SF code, but with Bluerender's. Please, don't answer if you don't know the answer.

Sorry if it seemed rude cos it was not my intention, I meant it in a good manner hoping it will help, there is no need to be angry or rude, please cool down, it is all meant as friend's advice on a problem, there is nothing more to it... :wink:

Hello people, i'm back :)

Good to have you back as there is a lot of work ahead... :thumbup::grin:

Yes i noticed, but i preferred to use a "stable", released version than one that was not yet released and possibly in an "intermediate" version. But i'll look into the changelog, if there's something interesting i might change it. My modifications are still minimal and easy to move to the new version.

Yes, that was exactly the reason I told you about it hoping there could be some of our problems already solved... :wink:

Are you sure LDD2POVRAY uses the trick of shrinking the bricks? I'm pretty sure this trick will not work in any but the simplest cases. The correct way is to add small bevels on all hard seams, but it's a nice load of work and it makes the number of vertices/faces explode.

ldd_finishes.inc >
#declare ldd_ppv_x_shrink_amount = 0,0...;
#declare ldd_ppv_y_shrink_amount = 0,0...;
#declare ldd_ppv_z_shrink_amount = 0,0...;

// + also bevel size
#declare ldd_bevel_size = ...;

Also like 1+ year ago when I was kind of meddling with Blender I used exactly just the shrinking method achieving exactly the same effect as beveling, somewhere on this forum there is my old topic/post about it. Basically I was suggesting it just because I am not able if this code should be part of a SunFlow or BlueRender, as shrinking bricks is quite easy and comapred to beveling introduces no side effect (ehm, unless not known to me :sweet: )

Edited by bublible

Share this post


Link to post
Share on other sites

I understand you are talking about BRICK SEAMS (which is BTW one of two next thing we definitely need to obtain in BlueRender to become real POV-Ray substitution...the other one is logo-on-stud) but I am afraid you got it a bit wrong: to my knowledge shader in SunFlow ONLY changes surface attributes (color, reflection, texture etc.) not shape of an object, I do not know if SF supports edge beveling and if not @msx80 would need to develop it for SunFlow (which he already did said he is not intended to do that, only "small" bits) so I guess what could be done quite easily and would more resemble the real LEGO stuff is shrinking every single brick in size into its center by some micro value like in ldd2povray (0.005), but I may be wrong, of course. Cos in real LEGO the reason for its seams is not beveled edge but the fact that two bricks do not connect to each other by 100% joint, they are always more or less a bit higher then y0 and also do not stick 100% to their sides respectively at they are slightly out of straight line so the gap in between them occurre.

What I mean is a normal vector shader simulating a "rounded edge" like what's implemented in MODO and what Scrubs has setup in BLENDER to get a result like this (click on picture for 4K version):

10179_Millennium_Falcon_UCS_v03_Front_1K_VR.jpg

All bevels you see here are rendered by the rounded edge shader what will automatically cause seams.

Shrinking the bricks isn't really a solution because this requires that all bricks are modeled as one shell with all parts of a brick like studs and pins etc. connected by vertices and polygons to scale the models down by their normals. You could ofc scale them down very slighty by a bounding box center but this will not give you the result what makes the model look real. Beveling each brick needs also a geometry structure as described above but this would increase the geometry extremely and will cause errors for sure.

Edited by virtualrepublic

Share this post


Link to post
Share on other sites

:sweet: guys it seems like you did not understand why I said what I have said about the shrinking, so once more for clarification only: I said shrinking could be the EASIEST OPTION compared to edge beveling cos I was not sure/did not know if it is applicable for SunFlow/BlueRender and if @msx80 would be willing to implement such a ehm "complicated" code, that's it,nothing more so please stop comparing these two methods as in "which one is better?" as we all know that from visual point of view there is no doubt that edge beveling would be the winner, OK? :grin:

Hoping this clears it for you... :wink:

What I mean is a normal vector shader simulating a "rounded edge" like what's implemented in MODO and what Scrubs has setup in BLENDER to get a result like this (click on picture for 4K version):

All bevels you see here are rendered by the rounded edge shader what will automatically cause seams.

Shrinking the bricks isn't really a solution because this requires that all bricks are modeled as one shell with all parts of a brick like studs and pins etc. connected by vertices and polygons to scale the models down by their normals. You could ofc scale them down very slighty by a bounding box center but this will not give you the result what makes the model look real. Beveling each brick needs also a geometry structure as described above but this would increase the geometry extremely and will cause errors for sure.

Well, if something like this can really be done in SunFlow/BlueRender then I am all for it as the best solution, no problem as it really looks perfect! :thumbup:

BTW on the side note: as I said I was successful using just the brick shrinking (pivot in brick center) to achieve normal looking seams in Blender which was quite easy operation (as in those times to achieve simple edge beveling introduces many problems)...I was trying to find those renders somewhere here in my tablet but I am not able to find them to show you the result (it was one of the first cs bases from 1978 I guess), but they are somewhere around here like 1,5+ years old...if I find them I can post them tho I think it is not necessary at this point anymore really :laugh:

Edited by bublible

Share this post


Link to post
Share on other sites

Not at all: your reflective material needs to reflect something, if there is nothing to reflect it is black (or at least it seems like that) - when you set up your sun light there actualy is no physical sun up there, only the effect of it therefore it has nothing to reflect, on the other hand if you are able put ANYTHING above such material it will be reflected upon the material surface, so if I placed a mesh with texture above the object it reflects it depending on what exactly you have for a texture (in this case it is picture of the sky). :wink:

So by default, we should have something in place overhead (at least when we have reflective parts). Perhaps it could be white or off-white with the ability to uncomment and supply an image path instead?

It seems odd that SunFlow doesn't have some setting for what to do when rays bounce off into infinity (other than return black). That kind of solution would make a fix quick and easy.

Oh yes it has, definitely: remember that the plane is WHITE, without casting shadow it would stay like that and it would still reflects on reflective surfaces, but with casting shadows all colors get dimmer, more black as you see.

I see the shadow effect with your example sky plane. So does the sunsky have a vertical position or is that faked too? Could you possibly put the sky/roof plane above the light source to avoid the shadow effect? (Sorry for the ignorant questions.)

Ultimately, I just want the renderer to do something normal and expected so that 95% of the people who use this don't ever have to edit a scene file or learn SunFlow. Changing the material definitions for the silver and chrome colors is a must, but that brings up the lack of a roof/sky overhead. Adding in a roof/sky (at least how you did it) runs afoul of the shadow problem, making that solution unusable.

I would like to promote Bluerender at a LEGO convention at the end of July, so I'd like to see as many feature in there as possible. On the other hand, I don't want to make msx80's job harder than it already is - I want him to work on Blueprint again someday too! :wink:

Share this post


Link to post
Share on other sites

So by default, we should have something in place overhead (at least when we have reflective parts). Perhaps it could be white or off-white with the ability to uncomment and supply an image path instead?

It seems odd that SunFlow doesn't have some setting for what to do when rays bounce off into infinity (other than return black). That kind of solution would make a fix quick and easy.

Indeed this is strange, i'd be pretty surprised if there's no solution that doesn't involve putting an object overhead. Just out of my mind it should pick the color of the background. Bublible have you tried this and/or some other ideas?

I'm against adding the extra object as it mess with the shadows.

Ultimately, I just want the renderer to do something normal and expected so that 95% of the people who use this don't ever have to edit a scene file or learn SunFlow. Changing the material definitions for the silver and chrome colors is a must, but that brings up the lack of a roof/sky overhead. Adding in a roof/sky (at least how you did it) runs afoul of the shadow problem, making that solution unusable.

I would like to promote Bluerender at a LEGO convention at the end of July, so I'd like to see as many feature in there as possible. On the other hand, I don't want to make msx80's job harder than it already is - I want him to work on Blueprint again someday too! :wink:

About the materials: do you have the definition for all chrome materials? i could import them, no problem if they reflect black for now. Just make sure you have all of them :)

About promoting Bluerender, that would be great :) And i'm still working on Blueprint, already have a lot of things waiting only for a release :)

Anyway, i'm releasing a new version of Bluerender tomorrow with the following fixes:

  • Janino shaders now work
  • Automatic aspect ratio
  • Overwrite without asking checkbox
  • No longer "forget" some flexible elements

Share this post


Link to post
Share on other sites

Indeed this is strange, i'd be pretty surprised if there's no solution that doesn't involve putting an object overhead. Just out of my mind it should pick the color of the background. Bublible have you tried this and/or some other ideas?

I'm against adding the extra object as it mess with the shadows.

It has no problem with reflecting anything UNLESS the object with the reflective material is facing upward: in this case it is always black unless you put something "physical" above it so it can be reflected back to reflective object surface. :sceptic:

Anyway, i'm releasing a new version of Bluerender tomorrow with the following fixes:

  • Janino shaders now work
  • Automatic aspect ratio
  • Overwrite without asking checkbox
  • No longer "forget" some flexible elements

Just perfect, can't wait again! :thumbup:

Hoepfully I can start playing around with the actual JAVA code...wondering what I will achieve (if anything at all, of course) :grin:

BTW: did you noticed @virtualrepublic suggestion for the beveled edge shader? It sounds really promissing to me. :classic:

Share this post


Link to post
Share on other sites

It has no problem with reflecting anything UNLESS the object with the reflective material is facing upward: in this case it is always black unless you put something "physical" above it so it can be reflected back to reflective object surface. :sceptic:

BTW: did you noticed @virtualrepublic suggestion for the beveled edge shader? It sounds really promissing to me. :classic:

Ok, i'll see in the code as soon as iceleftd sends me the case model and scene file

What I mean is a normal vector shader simulating a "rounded edge" like what's implemented in MODO and what Scrubs has setup in BLENDER to get a result like this (click on picture for 4K version):

All bevels you see here are rendered by the rounded edge shader what will automatically cause seams.

Shrinking the bricks isn't really a solution because this requires that all bricks are modeled as one shell with all parts of a brick like studs and pins etc. connected by vertices and polygons to scale the models down by their normals. You could ofc scale them down very slighty by a bounding box center but this will not give you the result what makes the model look real. Beveling each brick needs also a geometry structure as described above but this would increase the geometry extremely and will cause errors for sure.

The problem is that, sunflow shaders are not "shaders" in the general term (like in Opengl), but more like materials. If i understood correctly, the shaders you're talking about are geometry/vertex shaders, and they're not supported by sunflow (which doesn't use OpenGL at all). And btw, even if it was possible, i don't think i'd be able to code a shader so complex :)

Share this post


Link to post
Share on other sites

The problem is that, sunflow shaders are not "shaders" in the general term (like in Opengl), but more like materials. If i understood correctly, the shaders you're talking about are geometry/vertex shaders, and they're not supported by sunflow (which doesn't use OpenGL at all). And btw, even if it was possible, i don't think i'd be able to code a shader so complex :)

Ah, so I am afraid I was right after all despite some called me "not knowing what I am talking about"! :sceptic::tongue:

Nevermind, now with this being said the only 2 real options left are as follows:

A.) edge beveling

B.) brick shrinking (OK OK I know... :laugh: but at least as a quick test this might be interesting, right? :sweet: Just remember: brick pivot have to be in its center so it would shrinking inward proportionaly + position matrix HAVE TO STAY INTACT AS ORIGINAL [according to a pivot in the center of the respective brick, if you shrinking with pivot being elsewhere then you also need to move it in a right directions "original position + (shrinking value/2)"]!)

Edited by bublible

Share this post


Link to post
Share on other sites

new version ready, you can download here

In addition to the stuff i wrote yesterday, i also managed to correct the black reflection. It now reflect the background color instead.

Share this post


Link to post
Share on other sites

new version ready, you can download here

In addition to the stuff i wrote yesterday, i also managed to correct the black reflection. It now reflect the background color instead.

Yayks, your the boss...perfect! :grin::thumbup:

Gonna test now...thanx.

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.