some more clarifications suggested by William Newman

metadata
Wenzel Jakob 2014-02-06 16:16:26 +01:00
parent 24abf59c4b
commit 9380ea2b6a
3 changed files with 61 additions and 4 deletions

View File

@ -17,7 +17,7 @@ types is shown below:
Generally, light sources are specified as children of the \code{<scene>} element; for instance, Generally, light sources are specified as children of the \code{<scene>} element; for instance,
the following snippet instantiates a point light emitter that illuminates a sphere. the following snippet instantiates a point light emitter that illuminates a sphere.
\begin{xml} \begin{xml}
<scene version="0.4.0"> <scene version=$\MtsVer$>
<emitter type="point"> <emitter type="point">
<spectrum name="intensity" value="1"/> <spectrum name="intensity" value="1"/>
<point name="position" x="0" y="0" z="-2"/> <point name="position" x="0" y="0" z="-2"/>
@ -28,7 +28,7 @@ the following snippet instantiates a point light emitter that illuminates a sphe
An exception to this are \emph{area lights}, which turn a geometric object into a light source. An exception to this are \emph{area lights}, which turn a geometric object into a light source.
These are specified as children of the corresponding \code{<shape>} element. These are specified as children of the corresponding \code{<shape>} element.
\begin{xml} \begin{xml}
<scene version="0.4.0"> <scene version=$\MtsVer$>
<shape type="sphere"> <shape type="sphere">
<emitter type="area"> <emitter type="area">
<spectrum name="radiance" value="1"/> <spectrum name="radiance" value="1"/>

View File

@ -134,3 +134,36 @@ enable the alpha channel in the scene's film instance (Section~\ref{sec:films}).
\caption{\label{fig:hideemitters}An example application of the \code{hideEmitters} parameter \caption{\label{fig:hideemitters}An example application of the \code{hideEmitters} parameter
together with alpha blending} together with alpha blending}
} }
\subsubsection*{Number of samples per pixel}
Many of the integrators in Mitsuba depend on a number of \emph{samples per pixel}, which is related
to the amount of noise in the final output. However, it is important to note that this parameter is
\emph{not} a parameter of the integrator.
Instead, it must be declared in the \code{<sampler>} instantiation, which is nested inside the
\code{<sampler>} element. The rationale behind this is that the sensor is responsible for performing
a measurement using a specified sampling strategy. The integrator declares the high-level strategy
for resolving scattering interactions, but does not depend on a specific number of samples.
\begin{xml}
<scene version=$\MtsVer$>
<!-- ... scene contents ... -->
<integrator type=".. integrator type ..">
<!-- ... integrator parameters ... -->
</integrator>
<sensor type="... sensor type ...">
<!-- ... sensor parameters ... -->
<sampler type=" ... sampler type ... ">
<!-- ... sampler parameters ... -->
<!-- Important: number of samples per pixel goes here -->
<integer name="sampleCount" value="32"/>
</sampler>
<film type=" ... film type ... ">
<!-- ... film parameters ... -->
</film>
</sensor>
</scene>
\end{xml}

View File

@ -4,8 +4,32 @@
In Mitsuba, \emph{sensors}, along with a \emph{film}, are responsible for recording radiance In Mitsuba, \emph{sensors}, along with a \emph{film}, are responsible for recording radiance
measurements in some usable format. This includes default choices such as perspective measurements in some usable format. This includes default choices such as perspective
or orthographic cameras, as well as more specialized sensors that measure the radiance or orthographic cameras, as well as more specialized sensors that measure the radiance
into a given direction or the irradiance received by a certain surface. The following into a given direction or the irradiance received by a certain surface. This subsection
section lists the available choices. lists the available choices.
\subsubsection*{Syntax}
In the XML scene description language, a sensor declaration looks as follows
\begin{xml}
<scene version=$\MtsVer$>
<!-- ... scene contents ... -->
<sensor type="... sensor type ...">
<!-- ... sensor parameters ... -->
<sampler type=" ... sampler type ... ">
<!-- ... sampler parameters ... -->
</sampler>
<film type=" ... film type ... ">
<!-- ... film parameters ... -->
</film>
</sensor>
</scene>
\end{xml}
In other words, the \code{<sensor>} declaration is a child element of the \code{<scene>} (the particular
position in the scene file does not play a role). Nested within the sensor declaration is a
sampler instance (described in Section~\ref{sec:samplers}) and a film instance (described in
Section~\ref{sec:films}).
\subsubsection*{Handedness convention} \subsubsection*{Handedness convention}
Sensors in Mitsuba are \emph{right-handed}. Sensors in Mitsuba are \emph{right-handed}.