ExTrA:

from 

http://docs.autodesk.com/MENTALRAY/2013/ENU/mental-ray-help/

-sorry for the formatting, doesn't seem to be able to be linked to,
under index "OpenEXR"-

HTH
-

Texture Mapping
mental ray supports texture,  bump, displacement and reflection mapping,
all of which may be derived from an image file or procedurally defined
using user-supplied shaders. Although there are various support
functions provided by the mental ray shader interface, all these
functions are fully implementable in shaders.


Texture Files
Procedural textures are computed by shaders, while image textures are
read from image files. In practice, textures are a combination of both
methods: a procedural texture shaders accepts an image texture
parameter, which it accesses to read and filter pixels, and then
modifies it according to other parameters to implement projections,
scaling, cropping, replication, and other common operations on texture
images. Purely procedural texture shaders that do not rely on texture
images at all also exist, for example marble or cloud shaders. Some
shaders use textures for special purposes; for example, a fur shader
that computes hair in a volume might use a texture image to control the
hair length or brushing direction.

LIST FORMAT BAD SO NOT INCLUDED


In the table, any combination of comma separated values determines a
valid format subtype. For example, the SGI RGB image format will be read
when the data type is 8 bits per component with or without alpha, either
RLE compressed or uncompressed. The actual image format is determined by
analyzing the file content, not just by checking the filename extension.
This allows replacing texture files with memory-mapped textures without
changing the name, for example. The asterisk (*) indicates omission; for
example, ct* includes ctfp (floating point), cth (HDR), and ct16 (16
bits).

The extensions column informs about special support for file format
features. If an image can be stored in tiles rather than as a single
large block mental ray is able to optimize access to the file using
texture caching. If texture filtering is requested in mental ray for
tiled texture formats then the image file needs to provide the
pre-filtered subimages as well (extension: filter pyramid) to support
caching. Otherwise it will not be used for this texture during rendering
and mental ray computes the filter pyramid as usual.

Typical image types like black/white, grayscale, color-mapped and
true-color images, optionally compressed, are supported. Some of them
could be used to supply additional alpha channel information (where
number of components is greater than 3). The collection covers most
common platform independent formats like TIFF, JFIF/JPEG, and OpenEXR,
special UNIX (PPM) and Windows (BMP, DDS) types, and well known
application formats. The mental ray proprietary formats, normally
created by mental ray itself, are mainly available to exchange data not
storable with other formats. As a special case, mental ray allows
storing RGBE data into file formats that accept RGBA. For formats which
support to store multiple channels mental ray allows to store several
frame buffers in the same file. For IFF and RLA formats, both color and
depth buffer can be stored in a single file. For OpenEXR files the
number of channels is basically unlimited.

A user-defined material shader is not restricted to the above
applications for textures. It is free to evaluate any texture and any
number of textures for a given point, and use the result for any
purpose.

Typical texture shaders allow a named texture map to be given as an
input parameter, and return a color value taken from the texture image.
Such shaders can be connected to any color input of other shaders, for
example diffuse color input of a material. The color of the diffuse
component will then vary across a surface. To shade a given point on a
surface, the coordinates in texture space are first determined for the
point. The diffuse color used for shading calculations is then the value
of the texture map at these coordinates. The shader interface is
extremely flexible and permits user-defined shaders to use a number of
different approaches, or completely different formats. The remainder of
this section describes the standard shader parameters only.

The standard mental ray material shaders support texture mapping for all
standard material parameters except the index of refraction. Typical
parameters like shinyness, transparency, and reflectivity are values of
scalar type which may be mapped by a scalar map. Many shaders use color
maps to implement bump mapping, a technique that simulates surface
structure by sampling the color map several times to determine a normal
perturbation; other shaders accept a vector map (normal map) directly
that requires only a single sample to achieve the same effect.

Color textures are normally not implemented in the material shader but
in a separate texture shader, which is then referenced by the material
shader. This separation of work between material and texture shaders
allow more flexibility because any texture shader may be combined with
any material shader, without having to program any new combination in a
new material shader. Also, texturing does not have to be programmed into
every material shader parameter. Instead, the material shader offers
simple parameters like "diffuse", "ambient", "transparency",
"shinyness", and so on. Each parameter may be assigned a static color
such as "white", or it may be attached to a texture shader. Even if the
material shader was never programmed to accept textures, all aspects of
its operation for which it has a parameter become texturable. In fact,
it is possible to build whole multilevel graphs of shaders using
parameter assignment.

Shaders that do all the work internally are called monolithic shaders,
while shaders designed for easy graph building are called base shaders.

Determining the texture coordinates of a point on a surface to be shaded
requires defining a mapping from points on the surface to points in
texture space. Such a mapping is itself referred to as a texture space
for the surface. Multiple texture spaces may be specified for a surface.
If the geometry is a polygon or subdivision surface, a texture space is
created by associating texture vertices with the geometric vertices. If
the geometry is a free-form surface, a texture space is created by
associating a texture surface with the surface. A texture surface is a
free-form surface which defines the mapping from the natural surface
parameter space to texture space. Texture maps, and therefore texture
spaces and texture vertices, may be one, two, or three dimensional.

Pyramid textures are a variant of mip-map textures. When loading a
texture that is flagged for filtering, like with the filter property in
the scene description, mental ray will build a hierarchy of
different-resolution texture images that allow elliptical filtering of
texture samples. The map texture file format may already contain such a
pyramid, which can save a lot of time and memory during rendering.
Without filtering, distant textures would be point-sampled at widely
separated locations, missing the texture areas between the samples,
which causes texture aliasing. Texture filtering attempts to project the
screen pixel on the texture, which results in an elliptic area on the
texture. Pyramid textures allow sampling this ellipse very efficiently,
taking every pixel in the texture in the ellipse into account without
sampling each pixel. Pyramid textures are not restricted to square and
power-of-two resolutions, and work with any RGB or RGBA picture file
format. The shader can either rely on mental ray's texture projection or
specify its own. Filter blurriness can be adjusted per texture.

A procedural texture is free to use the texture space in any way it
wants, but texture files are always defined to have unit size and to be
repeated through all of texture space. That is, the lower-left corner of
the file maps to (0.0, 0.0) in texture space, and again to (1.0, 0.0),
(2.0, 0.0), and so on; the lower-right corner maps to (1.0, 0.0), (2.0,
0.0), etc. and the upper right to (1.0, 1.0), (2.0, 2.0), etc.



On Sat, 2013-01-26 at 17:59 +0100, Leonard Koch wrote:
> I thought I answered that question.
> You already had this from the documentation:
> "The Color clipping option defines how colors are clipped to a 0 to 1
> range if they are not being written at floating-point precision"
> 
> And then I wrote:
> "EXR Half Float works exactly the same way as Full Float."
> 
> 
> Unless I'm misunderstanding you that should clear it up.
> That setting doesn't impact any float or half float formats.
> Float formats don't clip, they adjust their range based on the numbers
> your scene throws at them.
> 
> 
> On Sat, Jan 26, 2013 at 5:42 PM, Vladimir Jankijevic
> <[email protected]> wrote:
>         this setting is ignored if rendered to EXR or other float
>         formats
>         
>         
>         On Sat, Jan 26, 2013 at 11:37 AM, Stefan Andersson
>         <[email protected]> wrote:
>                 Well I know that :) my question was more about if
>                 Softimage would clip the values or not when we use
>                 Float/Half Float. Maybe it's wasn't all that clear
>                 (looking back at how I wrote the question). 
>                 
>                 Maybe if I put it this way
>                 
>                 Will the "Color Channel Clipping" be disabled if we
>                 use EXR (float or half float)?
>                 Or do we need to manually set it to "no clipping"?
>                 
>                 regards
>                 stefan andersson
>                 
>                 
>                 
>                 
>                 On Sat, Jan 26, 2013 at 5:02 PM, Leonard Koch
>                 <[email protected]> wrote:
>                         EXR Half Float works exactly the same way as
>                         Full Float.
>                         The only difference will be, that you won't
>                         have as many possible steps in between the
>                         very bright and the very dark if I'm not
>                         mistaken.
>                         Half Float or also known as Half Precision =
>                         16 bit
>                         Full Float or also known as a Single = 32 bit
>                         
>                         
>                         It's a bit of a misnomer really, especially
>                         "Half Precision", since 16 bits has 2^16 steps
>                         of precision and 32 bits has 2^32 steps of
>                         precision.
>                         16 bits isn't half as precise but instead 2^16
>                         or 65536 times less precise.
>                         
>                         
>                         Half really only refers to the filesize in
>                         this case, which will indeed be always a
>                         little more than half of a full float file.
>                         
>                         
>                         In my experience, half float is usually
>                         totally fine.
>                         
>                         
>                         On Sat, Jan 26, 2013 at 4:39 PM, Stefan
>                         Andersson <[email protected]> wrote:
>                                 As I'm again forced into the wonderfu%
>                                 $##@!l world of mental ray. I was just
>                                 wondering if about the "Color Channel
>                                 Clipping" option in the render
>                                 settings. The Docs says
>                                 
>                                 "The Color clipping option defines how
>                                 colors are clipped to a 0 to 1 range
>                                 if they are not being written at
>                                 floating-point precision"
>                                 
>                                 Well, so if I am writing out EXR Half
>                                 float it doesn't do the clipping? or
>                                 does it?
>                                 
>                                 regards
>                                 stefan
>                                 
>                                 
>                                 -- 
>                                 Stefan Andersson | Digital Janitor
>                                 blog | showreel | twitter | LinkedIn |
>                                 cell: +46-73-6268850 | skype:sanders3d
>                                 
>                                 
>                                 
>                                 
>                         
>                         
>                 
>                 
>                 
>                 -- 
>                 Stefan Andersson | Digital Janitor
>                 blog | showreel | twitter | LinkedIn | cell:
>                 +46-73-6268850 | skype:sanders3d
>                 
>                 
>                 
>                 
>         
>         
>         
>         
>         -- 
>         ---------------------------------------
>         Vladimir Jankijevic
>         Technical Direction
>         
>         Elefant Studios AG
>         Lessingstrasse 15
>         CH-8002 Zürich
>         
>         +41 44 500 48 20
>         
>         www.elefantstudios.ch
>         ---------------------------------------
> 
> 



Reply via email to