Hi list!
Once again a question about texturing a surface. In radiance, I know about two ways putting color modification (pattern) or / and normal modification (texture) on a surface to achieve a structured appearance. Besides, brdf-modifiers allow to implement the reflection effects of more complicated surfaces.
However, if I have surfaces with effects caused by their (micro-)structure, I get into difficulties. Radiance does not have something like displacement maps, so the effects from geometry can only be achieved by modeling the surface. I have been thinking a while about how to get the appearance of a mosaic for example, which conists of a layer of gold, a piece of glass in front of it, and which has it's effect when seen from a distance because of the specular reflections, the different layers and the irregularities in the overall surface. Another example might be the well-known tennis-ball, which can be rendered in radiance only by entering the geometries as instances. However, this example hass afaik less complicated reflection properties, e.g. the specular reflection is not that important. There are other known examples for textures with important geometric details, of course, e.g. textiles.
Is there a way now to apply a geometry (in the radiance software handled like an instance for memory effectiveness) as a texture? It would be much more convenient to apply such a 3d-texture by using the tex-modifiers to an existing surface than writing scripts to place these instances following an imaginary surface. Did anybody think about doing something like that with radiance, or are there reasons why one should not even try that?
CU, Lars.
···
--
Lars O. Grobe
grobe@gmx.net
--
Lars O. Grobe, grobe@gmx.net, ++90-212-2458330
Kardesler Apartment, Turnacibasi Sokak 28
Galatasaray - Beyoglu, 34433 Istanbul
Implementing displacement maps in Radiance would be extremely difficult, I believe. You have to change from a geometric intersection technique to a "proximity" intersection technique for displaced surfaces. I have no idea what form this code would take, or how it would work. It seems to me that it would require major overhauls of both the octree generator and the ray tracing engine. I don't have time for it, nor have I the need for such a facility. Radiance is designed for architectural models, and the more exotic renderings are better left to Maya and Renderman, in my opinion.
-Greg
···
From: "Lars O. Grobe" <grobe@gmx.net>
Date: January 28, 2004 3:49:05 AM PST
Hi list!
Once again a question about texturing a surface. In radiance, I know about two ways putting color modification (pattern) or / and normal modification (texture) on a surface to achieve a structured appearance. Besides, brdf-modifiers allow to implement the reflection effects of more complicated surfaces.
However, if I have surfaces with effects caused by their (micro-)structure, I get into difficulties. Radiance does not have something like displacement maps, so the effects from geometry can only be achieved by modeling the surface. I have been thinking a while about how to get the appearance of a mosaic for example, which conists of a layer of gold, a piece of glass in front of it, and which has it's effect when seen from a distance because of the specular reflections, the different layers and the irregularities in the overall surface. Another example might be the well-known tennis-ball, which can be rendered in radiance only by entering the geometries as instances. However, this example hass afaik less complicated reflection properties, e.g. the specular reflection is not that important. There are other known examples for textures with important geometric details, of course, e.g. textiles.
Is there a way now to apply a geometry (in the radiance software handled like an instance for memory effectiveness) as a texture? It would be much more convenient to apply such a 3d-texture by using the tex-modifiers to an existing surface than writing scripts to place these instances following an imaginary surface. Did anybody think about doing something like that with radiance, or are there reasons why one should not even try that?
CU, Lars.
Hi Greg,
I did not think that using the typical displacement map is the best solution. My idea was taking a geometry as a surface modifier. The basic functionality is provided by todays radiance: instances and the replmarks program are doing almost what I want. If I don't replace every triangle (like replmarks does) with an instance, but every face of a geometry, using the uv-values to place and rotate the instance, then cutting this instance at the boundaries of the face, I have a 3d-texture... or am I totally wrong here?
CU Lars.
···
--
Lars O. Grobe, grobe@gmx.net, ++90-212-2458330
Kardesler Apartment, Turnacibasi Sokak 28
Galatasaray - Beyoglu, 34433 Istanbul
Aside from the slight overlap or underlap at the edges depending on surface curvature, your idea is basically sound. However, implementing this idea efficiently in Radiance would be a big challenge. If we were to minimize code changes, we'd be using instances of some kind with clipping, and we'd end up with a lot of overlapping suboctrees. Many on this list can tell you their headaches surrounding those if you haven't had enough of your own. Getting tighter bounds on the instanced geometry would require some rather fundamental changes to the handling of octrees, and still wouldn't completely remedy the problems with side-by-side instances. They just don't work that well.
Geometry as a modifier also would entail rewriting the octree generator, which currently ignores all surface modifiers. I'm not sure how much work this would be, but I would say "more than a little." Unless there is some general need for this kind of rendering in Radiance or someone with money and/or time to spend on it, I don't see it happening.
-Greg
···
From: "Lars O. Grobe" <grobe@gmx.net>
Date: February 3, 2004 12:32:04 PM PST
Hi Greg,
I did not think that using the typical displacement map is the best solution. My idea was taking a geometry as a surface modifier. The basic functionality is provided by todays radiance: instances and the replmarks program are doing almost what I want. If I don't replace every triangle (like replmarks does) with an instance, but every face of a geometry, using the uv-values to place and rotate the instance, then cutting this instance at the boundaries of the face, I have a 3d-texture... or am I totally wrong here?
CU Lars.
Hi,
ok, the overlapping... I think I understood the problem
And yes, it is not really a typical application for radiance. I had been hoping that this would be an easy modification because of the instance primitive, but obviously I was wrong.
CU Lars.
···
--
Lars O. Grobe, grobe@gmx.net, ++90-212-2458330
Kardesler Apartment, Turnacibasi Sokak 28
Galatasaray - Beyoglu, 34433 Istanbul