Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000790LuxRenderCorepublic2010-06-04 03:272010-11-10 04:36
Reporterheretic 
Assigned Tojeanphi 
PrioritynormalSeveritymajorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version0.7RC2 
Target Version0.8RC1Fixed in Version0.7.1 
Summary0000790: mattetranslucent behaving "problematic" and wrong
DescriptionStatement: mattetranslucent should by default apply as material for eg normal uncoated paper. Mattetranslucent as it is now does not suit this req.


more details and an example:
http://www.luxrender.net/forum/viewtopic.php?f=14&t=4014&start=10#p40202 [^]

remarks
1. mattetranslucent as it is now tends to burn out pretty fast in exposed areas (despite r+t <= 1)
2. materials with high transmission requires low reflection. Esspecially with textures this results in a dirty, greyish reflection of the matte part in shadowy areas.

As a result: gettign mattetranslucent right and balancing r and t is close to impossible with increasing t for anythign that is NOT in front of a light source. This becomes worse with a texture channel applied to both.


Suggestion:
- drop the r+t rule, but hardcode it dependant on amount of light passing through a mattetranslcuent object
Additional Informationnewbie explanation:
Take paper for example. 100g normal white uncoated paper is by default mattetranslucent. Laying flat on a surface, that paper is 100% reflection and 0% transmission. As a result one could choose eg 95% white matte instead.

Take the very same paper to the edge of the table and have a light shine through from below. One part of the paper is at app. 80% transmission now (where the light shines through), the other part at 0% transmission (the part flat on the table). The area between both parts would be blended towards the 0% transmission (light leaking from the transmission part over).

What do I want to tell by that example?
- I dont know how mattetranslucent is defined in a technical sense
- as a user for a material I would expect that transmission and reflection is based on amount of light passing through. Solid surface behind the mattetranslucent material=100% reflection channel and 0% transmission channel, at increasing amounts of light passign through, the transmission increases and reflection decreases.

mattetranslucent - how I would expect it:
- defined as it is now, except both channeles are made as 100% (without the r+t <=1 rule)
- add another channel: transmission amount eg in percent, ranging 0 - 1

Example for the "real newbie-mattetranslucent" for one pixel:

Situation:
x% of light passing through, eg indirect light passing through our paper from somewhere (however this can be measured - I am the newbie)

Property of our pixel material in that situation:
transmission=(transmission amount)* (x%) * (transmission color)
reflection=(1-(transmission amount)* (x%))*(reflection color)
TagsNo tags attached.
Mercurial Changeset #
Requires Documentation UpdateNo
Requires Exporter Update
Attached Files

- Relationships

-  Notes
(0002239)
heretic (reporter)
2010-06-04 03:44

addendum:
- setting r=0 (true black) on mattetranslucent and mixing it with another material eases the problem slightly but doesnt eliminate the base problem.
(0002246)
jeanphi (administrator)
2010-06-06 01:51

Actually there are 2 use cases with mattetranslucent: volume or sheet surfaces.
For sheet surfaces I think it makes sense to keep current behaviour and just scale down colors if the sum is above one.
For volume surfaces I think it'd make more sense to just define the reflection color and let all the remaining light go through and be absorbed (maybe keep a transmission value that would multiply this remainder).
(0002249)
heretic (reporter)
2010-06-06 02:50

Sheet surfaces - agreed

Volume surface - there are sufficient mattetranslucent materials with similar reflection, but heavily differing translucency. Can those be handled by that volume surface?
(0002252)
jeanphi (administrator)
2010-06-06 13:57

Translucency is a result of absorption, so I'd say yes. You can attach volumetric properties to an object with a mattetranslucent material.
(0002351)
jeanphi (administrator)
2010-09-04 08:31

A new option "bool energyconserving" allows to switch to a new behaviour where the transmission is multiplied by (1-reflection).

- Issue History
Date Modified Username Field Change
2010-06-04 03:27 heretic New Issue
2010-06-04 03:44 heretic Note Added: 0002239
2010-06-06 01:51 jeanphi Note Added: 0002246
2010-06-06 02:50 heretic Note Added: 0002249
2010-06-06 13:57 jeanphi Note Added: 0002252
2010-06-06 14:07 jeanphi Target Version => 0.8RC1
2010-08-08 11:44 jeanphi Assigned To => jeanphi
2010-08-08 11:44 jeanphi Status new => assigned
2010-09-04 08:31 jeanphi Requires Documentation Update => No
2010-09-04 08:31 jeanphi Note Added: 0002351
2010-09-04 08:31 jeanphi Status assigned => resolved
2010-09-04 08:31 jeanphi Resolution open => fixed
2010-11-10 04:34 jeanphi Fixed in Version => 0.7.1
2010-11-10 04:36 jeanphi Status resolved => closed


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker