Material/Texture rework in v2.3

Discussion related to the Engine functionality, implementations and API.
CodeHD
Posts: 182
Joined: Tue Dec 11, 2018 12:38 pm

Re: Material/Texture rework in v2.3

Post by CodeHD » Thu May 02, 2019 4:51 pm

if we are talking about properties read from file, i would add BRDF/BSDF-data from a file to get realistic (also anisotropic) matte/glossy mixtures. Although I believe that not many people will even have such data available, so it will be a corner case...

User avatar
lacilaci
Donor
Donor
Posts: 1374
Joined: Fri May 04, 2018 5:16 am

Re: Material/Texture rework in v2.3

Post by lacilaci » Fri May 03, 2019 5:44 am

for me it's Bevel shader - ideally with possibility to blend it with textures so that we can create an imperfect beveling.

and then triplanar mapping: https://github.com/LuxCoreRender/LuxCore/issues/153

and don't know if related but while you work with shading it might be the time to do this...?: https://github.com/LuxCoreRender/LuxCore/issues/148

User avatar
lacilaci
Donor
Donor
Posts: 1374
Joined: Fri May 04, 2018 5:16 am

Re: Material/Texture rework in v2.3

Post by lacilaci » Tue May 07, 2019 8:24 am

Also shadow terminator treatment could be part of materials/shading reworking?

marcatore
Posts: 281
Joined: Wed Jan 10, 2018 8:04 am

Re: Material/Texture rework in v2.3

Post by marcatore » Wed May 08, 2019 8:59 am

Later than other people, that more or less I approve, below you'll find my suggestions.
Some quick description are more or less copied by the manual of another renderer. They are perfect for my daily job so I'd like to have in Luxcore. If something it's working really good I think it's good trying to make something really similar.
Obviously these are just proposal...so I don't know how much doable.

In any case these mine:

Workflow
- enable multiUV mapping

- autocoloring viewport mesh color according the median color of the albedo map (if not present, use the RGB color)

- Dreaming mode ON: actually not too much LuxCore development related but I dream a quick mapping system that uses a modifier to mapping objects, something like the 3dsmax UVWmap modifier. It should be really helpful and, in an architectural scenario, it really speeds up mapping process. The useful of modifier instead of a "simple" command is to be able to replicate the mapping from an object to others in a quick way and with a consistent and precise result.

Materials

Priority
- like lacilaci asked, reduce (or avoid) the dark terminator issue with glossy materials

Optional
-Double face material with blend option (mappable)


Textures

Priority
Triplanar Mapping

MultiSubTex = texture allows the user to control any parameter that can be mapped based on the Object ID or Face ID on which the final material is applied.

DistanceTex = is a procedural texture that returns a different color based on a point's distance to an object(s) specified in a selection list.

Dirtmap

Optional
SoftBox = is a procedural texture that can be used in an Area Light to create the illumination coming from a Soft Box light source


User avatar
Piita
Supporting Users
Posts: 63
Joined: Tue Dec 05, 2017 4:54 pm

Re: Material/Texture rework in v2.3

Post by Piita » Mon May 20, 2019 10:33 am

Glass takes time to render so I was thinking if there is a way to speed that up with a material that assumes the glass has even thickness(such as car windows). Since it has even thickness luxcore might be able to calculate the refraction path as soon as the ray hits the material. You would get the ray path inside the glass as well as the path direction where it would exit the glass.
Would there be any speed increase if you are able to calculate these as the same time, instead of tracing the ray until it exits the glass and then calculate again when it exits?
Piitas.blog
Librem 5 - The privacy focused smart phone. It does not run Android or iOS that track you and send data about you to Google.

User avatar
lacilaci
Donor
Donor
Posts: 1374
Joined: Fri May 04, 2018 5:16 am

Re: Material/Texture rework in v2.3

Post by lacilaci » Mon May 20, 2019 12:27 pm

Piita wrote:
Mon May 20, 2019 10:33 am
Glass takes time to render so I was thinking if there is a way to speed that up with a material that assumes the glass has even thickness(such as car windows). Since it has even thickness luxcore might be able to calculate the refraction path as soon as the ray hits the material. You would get the ray path inside the glass as well as the path direction where it would exit the glass.
Would there be any speed increase if you are able to calculate these as the same time, instead of tracing the ray until it exits the glass and then calculate again when it exits?
There is some shadow trick other renderers tend to use for glass (vray, corona) maybe that would be enough.

marcatore
Posts: 281
Joined: Wed Jan 10, 2018 8:04 am

Re: Material/Texture rework in v2.3

Post by marcatore » Mon May 20, 2019 12:53 pm

lacilaci wrote:
Mon May 20, 2019 12:27 pm
There is some shadow trick other renderers tend to use for glass (vray, corona) maybe that would be enough.
And not just shadow trick... there are some GI and samples tricks you can use if needed

User avatar
lacilaci
Donor
Donor
Posts: 1374
Joined: Fri May 04, 2018 5:16 am

Re: Material/Texture rework in v2.3

Post by lacilaci » Tue May 21, 2019 10:00 am

marcatore wrote:
Mon May 20, 2019 12:53 pm
lacilaci wrote:
Mon May 20, 2019 12:27 pm
There is some shadow trick other renderers tend to use for glass (vray, corona) maybe that would be enough.
And not just shadow trick... there are some GI and samples tricks you can use if needed
Yes this once again goes back to this issue: https://github.com/LuxCoreRender/LuxCore/issues/148

I'm a broken record at this point :D... But again and again doing any archviz without this is pain to render. And I'm not even mentioning light linking etc(but I guess that's outside of 2.3 and currently only corona and vray have the luxury)

User avatar
Egert_Kanep
Posts: 119
Joined: Tue Mar 13, 2018 10:34 am

Re: Material/Texture rework in v2.3

Post by Egert_Kanep » Thu Jun 13, 2019 9:14 am

Some more thoughts

A node for uv Islands. For assigning random colors or masking with using uv islands. Super advanced would be to select island you want. This output could also be used to manipulate and offset uv's, if that feature ever comes :D

uv seam detect- node for detecting uv seams and having width and smoothness control to make lines where uv seam are. For adding color variation to leave edges and stuff. Could help with some creative stuff

Another good feature would be a way to manipulate uv using math operations. I am thinking something alon the lines of Unreal engine. There users has just the uv gradient (that we already have in lux) and that defines how texture is mapped onto uv's. subtracting or adding R,G channels would offset it and multiply operations scale it. That way we could morph uv's with noise for example.

Post Reply