Oren-Nayar-Blinn material model Blender version.

General discussion about the development of the open source Blender

Moderators: jesterKing, stiv

Jamesk
Posts: 239
Joined: Mon Oct 14, 2002 8:15 am
Location: Sweden

Post by Jamesk »

WARNING: Not on Oren-Nayar-Blinn topic ::..
Manuel wrote:A client can ask me to simulate a
illumination using a exact model of lamp.
I read your post about this over at elysiun, but I didn't see this client thing mentioned there. Now that you've told us - I would like to express my concerns:

Blender, along with many, many other 3D renderers doesn't really do physically corrent illumination. The radiosity solver might perhaps do so, but I wouldn't trust that.

So if you really want to simulate the exact effects of your lamp, you'll have to look elsewhere. This would mean a much more advanced renderer with explicit physical correctness. As far as I know, you've got two choices: either 'Radiance' or 'WinOSi'. The latter is exceptionally correct, though it needs several days, maybe even weeks to complete a render.

Links ---> http://www.winosi.onlinehome.de/
---> http://radsite.lbl.gov/radiance/HOME.html

EDIT: You will also need to know the correct values for the albedo, or 'reflectiveness', of the walls, floor and ceiling in the environment where the lamp is supposed to be shining.

thorax
Posts: 320
Joined: Sun Oct 27, 2002 6:45 am
Contact:

:idea:

Post by thorax »

:idea:

As for the emit vs wattage topic, I think if blender supported a
floating point pixel format (like the image format that came out of
ILM recently, or basically just to store RGB values as floats (note
Wavefront has an old image format used by scientists which stores
wavelength of light instead of RGB.. I don't know if its used anymore).
But no matter if your monitor can support the light values, it can still be very useful in post production to be able to have extreme values
anyhow..


As for the discussion on physical correct lighting models, I
think it would be nice to have a radiosity based renderer, if
just to compute image based textures that are stored as
UV textures.. Like say you have a model, somehow flatten the
surface, do the radiosity computation to generate the UV textures,
and reuse that information.. I think this is done for Quake levels,
the lightness of vertices are not only affected by image maps are also
affected. Anyhow, it might be possible to have a semi-reflecting
surface property, like if you shine a light on one surface,
the renderer might produce some reflected light, but wouldn't
compute a reflection as such but some kind of secondary light
at each specualr hilight which could then light surface around it..
Is this even possible, because this would simulate some the
the more needed features of radiosity and I think it could be
done more efficiently than radiosity.. Stated another way,
every specular hilight deserves to be a secondary point light source but
only to surfaces that are in front of its normal..

Jamesk
Posts: 239
Joined: Mon Oct 14, 2002 8:15 am
Location: Sweden

Re: :idea:

Post by Jamesk »

thorax wrote: to compute image based textures that are stored as
UV textures.. Like say you have a model, somehow flatten the
surface, do the radiosity computation to generate the UV textures,
and reuse that information
You can still bake the light into vertex colors by simply going into shaded mode (shift-Z), add and move around some lamps, then hit 'Make' next to 'vertex color' in edit buttons for an object. Then use that with 'Vcol light' in the material. It's definately not radiosity, but something along your lines of storing the light in the model (not UV's though, but vertex color)... Just a suggestion... never mind.

Manuel
Posts: 56
Joined: Wed Oct 16, 2002 12:48 am
Location: Italy
Contact:

Post by Manuel »

Jamesk wrote: Blender, along with many, many other 3D renderers doesn't really do physically corrent illumination. The radiosity solver might perhaps do so, but I wouldn't trust that.
The radiosity model must be based on physical model: the
energy transmission.
I love Blender, and I think, thanks to open source, it can
be improved without limits. My dream is use it for all.
The radiosity is ready, it's sufficient little changes to use it
technically. I don't want a perfect 100% simulation, ma only
more precision to use radiosity... the 0-1 range it's only for
artist; a watt value can be used (with a acceptable imprecision)
for technical render too...

Jamesk wrote:WARNING: Not on Oren-Nayar-Blinn topic ::..
Mhh..excuse me for OT.
Can you reply me here ?
http://www.blender.org/modules.php?op=m ... pic&t=1022

Thx

Manuel

cessen
Posts: 109
Joined: Tue Oct 15, 2002 11:43 pm

Post by cessen »

Update:

1) I have fixed the hemi-light problem (it doesn't look obviously wrong anymore).

2) I have added my IPO modification to the binary (now bezier interpolation doesn't over-shoot the keyframes).

The download is the same link as before.

Enjoy!

thorax
Posts: 320
Joined: Sun Oct 27, 2002 6:45 am
Contact:

Re: :idea:

Post by thorax »

Jamesk wrote:
thorax wrote: to compute image based textures that are stored as
UV textures.. Like say you have a model, somehow flatten the
surface, do the radiosity computation to generate the UV textures,
and reuse that information
You can still bake the light into vertex colors by simply going into shaded mode (shift-Z), add and move around some lamps, then hit 'Make' next to 'vertex color' in edit buttons for an object. Then use that with 'Vcol light' in the material. It's definately not radiosity, but something along your lines of storing the light in the model (not UV's though, but vertex color)... Just a suggestion... never mind.
I don't think I've done that before.. But I'm familiar with
such approaches.. I mean I use the vertex coloring sometime,
its a nice hack.. But my primary axe right now is using the
UV texturing with texture paint features.. Either way this stuff really only
works for still lifes and architecture walkthroughs, if the model moves,
you need a automatic effect or some way to animate the vertex coloring.

I think once pixel-shaders become popular, there will be better hacks
than using Vertex coloring, hopefully so in blender.. I think NVidia should
fund development of blender, it would encourage me to buy a NVidia card.

cessen
Posts: 109
Joined: Tue Oct 15, 2002 11:43 pm

Big update!

Post by cessen »

Update:
  • 1) Made material types switchable. You can now choose (on a per-material basis) between:
    • *Lambert-Phong (exactly like regular blender, and fully compatable with it, as well)
      *Oren-Nayar-Blinn
      *Toon
    2) I've added a simple toon shader (as is obvious from item number 1)
Here is the link, again:
http://www.brunslo.com/cessen/blender_s ... mic.tar.gz

So far it is only for Linux. If anyone would be willing to compile it for other OS's, I would be very greatful!

And, hopefully, I will get these modifications commited to tuhopuu soon. :)

kino
Posts: 93
Joined: Sun Oct 13, 2002 7:37 pm

Post by kino »

Hi cessen great work

i'have some prob with rendering


http://www.kino3d.com/test/gecko.jpg with your previous version
http://www.kino3d.com/test/gecko1.jpg jpeg saved from blender lastest version
http://www.kino3d.com/test/geckotoon1.jpg the same error with toon shading
a really great addition i'm so grate for it thank's

in the render panel if you push on "unified rendering" ther's a button-over
with the button to select the render engine

http://kino3d.com/test/button-over.jpg

i'm not sure you are the right one to submit this
sorry if i wrong

thank's your release it's great

ciao

Suse Linux 8.1 dualAMD1800 - 1Ghz Quadro2 MXR NVIDIA 4191
kino3d.com italian site

sgefant
Posts: 30
Joined: Wed Oct 16, 2002 1:10 am

Post by sgefant »

kino wrote: in the render panel if you push on "unified rendering" ther's a button-over
with the button to select the render engine

http://kino3d.com/test/button-over.jpg
that one has already been fixed in tuhopuu, i guess cessen used an older version.

sgefant

kino
Posts: 93
Joined: Sun Oct 13, 2002 7:37 pm

Post by kino »

sgefant wrote:
kino wrote: in the render panel if you push on "unified rendering" ther's a button-over
with the button to select the render engine

http://kino3d.com/test/button-over.jpg
that one has already been fixed in tuhopuu, i guess cessen used an older version.

sgefant
thank's sgefant
just discovered i have also the same error sumbitted to bfblender
Unified Button i think for the same reason


Forget to mention: the model is UV mapped and vertex painted the error is the red who seem follow the grid mesh

i can send you the packet model if you want

thk's
kino3d.com italian site

cessen
Posts: 109
Joined: Tue Oct 15, 2002 11:43 pm

Another update

Post by cessen »

Update:
  • 1) Seperated the specular and diffuse roughness parameters in the Oren-Nayar-Blinn model (so they can now be set to different values.
    2) Added a diffuse lit-area size parameter to the toon shading, so you can have the light go to shadow at any angle (not just 90 degrees).
that one has already been fixed in tuhopuu, i guess cessen used an older version.
Yes, I'm using an older version. I simply haven't gotten around to updating yet... I should do so.

matt_e
Posts: 410
Joined: Mon Oct 14, 2002 4:32 am
Location: Sydney, Australia
Contact:

Re: Big update!

Post by matt_e »

cessen wrote: So far it is only for Linux. If anyone would be willing to compile it for other OS's, I would be very greatful!
If you can upload the source somewhere, I'll try and compile a windows build.

Manuel
Posts: 56
Joined: Wed Oct 16, 2002 12:48 am
Location: Italy
Contact:

Post by Manuel »

Stupid question: why this version is 5+ mega, and the "normal" version
is 1.8 mega?

cessen
Posts: 109
Joined: Tue Oct 15, 2002 11:43 pm

Post by cessen »

Stupid question: why this version is 5+ mega, and the "normal" version is 1.8 mega?
I have no idea. I thought it was 500+ Kb, but I was obviously reading the numbers wrong. That *would* explain why it took so ludicrously long to upload it, though...
I'll investigate that as soon as I get the chance.

(WHY IS IT FIVE MEGABYTES?!?!?! THAT DOESN'T MAKE ANY SENSE!!! AAAARRRRRRRGGGGG!!!!!)

I'm ok... *really*. :)

Jamesk
Posts: 239
Joined: Mon Oct 14, 2002 8:15 am
Location: Sweden

Post by Jamesk »

Maybe you should disable the generation of debug code? =)

Post Reply