Skip to content

Commit

Permalink
regenerated documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
svenwoop committed Nov 22, 2018
1 parent 95053e8 commit 2375327
Show file tree
Hide file tree
Showing 5 changed files with 111 additions and 35 deletions.
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,14 @@
Version History
---------------

### New Features in Embree 3.3.0
- Added support for motion blur time range per geometry. This way geometries
can appear and disappear during the camera shutter and time steps do not have
to start and end at camera shutter interval boundaries.
- Fixed crash with pathtracer when using --triangle-sphere command line.
- Fixed crash with pathtracer when using --shader ao command line.
- Fixed tutorials showing a black window on macOS 10.14 until moved.

### New Features in Embree 3.2.4
- Fixed compile issues with ICC 2019.
- Released ZIP files for Windows are now provided in a
Expand Down
78 changes: 44 additions & 34 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
% Embree: High Performance Ray Tracing Kernels 3.2.4
% Embree: High Performance Ray Tracing Kernels 3.3.0
% Intel Corporation

Embree Overview
Expand Down Expand Up @@ -85,30 +85,30 @@ Windows MSI Installer
---------------------

You can install the Embree library using the Windows MSI installer
[embree-3.2.4-x64.vc12.msi](https://github.com/embree/embree/releases/download/v3.2.4/embree-3.2.4.x64.vc12.msi). This
[embree-3.3.0-x64.vc12.msi](https://github.com/embree/embree/releases/download/v3.3.0/embree-3.3.0.x64.vc12.msi). This
will install the 64-bit Embree version by default in `Program
Files\Intel\Embree v3.2.4 x64`.
Files\Intel\Embree v3.3.0 x64`.

You have to set the path to the `bin` folders manually to your `PATH`
environment variable for applications to find Embree.

To compile applications with Embree using CMake, please have a look at
the `find_embree` tutorial. To compile this tutorial, you need to set
the `embree_DIR` CMake variable of this tutorial to `Program
Files\Intel\Embree v3.2.4 x64`.
Files\Intel\Embree v3.3.0 x64`.

To uninstall Embree, open `Programs and Features` by clicking the
`Start button`, clicking `Control Panel`, clicking `Programs`, and
then clicking `Programs and Features`. Select `Embree
3.2.4 x64` and uninstall it.
3.3.0 x64` and uninstall it.

Windows ZIP File
-----------------

Embree linked against Visual Studio 2013
[embree-3.2.4.x64.vc12.windows.zip](https://github.com/embree/embree/releases/download/v3.2.4/embree-3.2.4.x64.vc12.windows.zip)
[embree-3.3.0.x64.vc12.windows.zip](https://github.com/embree/embree/releases/download/v3.3.0/embree-3.3.0.x64.vc12.windows.zip)
and Visual Studio 2015
[embree-3.2.4.x64.vc14.windows.zip](https://github.com/embree/embree/releases/download/v3.2.4/embree-3.2.4.x64.vc14.windows.zip)
[embree-3.3.0.x64.vc14.windows.zip](https://github.com/embree/embree/releases/download/v3.3.0/embree-3.3.0.x64.vc14.windows.zip)
are provided as a ZIP file. After unpacking this ZIP file, you should
set the path to the `lib` folder manually to your `PATH` environment
variable for applications to find Embree. To compile applications with
Expand All @@ -122,17 +122,17 @@ Linux RPMs
----------

Uncompress the `tar.gz` file
[embree-3.2.4.x86_64.rpm.tar.gz](https://github.com/embree/embree/releases/download/v3.2.4/embree-3.2.4.x86_64.rpm.tar.gz)
[embree-3.3.0.x86_64.rpm.tar.gz](https://github.com/embree/embree/releases/download/v3.3.0/embree-3.3.0.x86_64.rpm.tar.gz)
to obtain the individual RPM files:

tar xzf embree-3.2.4.x86_64.rpm.tar.gz
tar xzf embree-3.3.0.x86_64.rpm.tar.gz

To install Embree using the RPM packages on your Linux system, type
the following:

sudo rpm --install embree3-lib-3.2.4-1.x86_64.rpm
sudo rpm --install embree3-devel-3.2.4-1.noarch.rpm
sudo rpm --install embree3-examples-3.2.4-1.x86_64.rpm
sudo rpm --install embree3-lib-3.3.0-1.x86_64.rpm
sudo rpm --install embree3-devel-3.3.0-1.noarch.rpm
sudo rpm --install embree3-examples-3.3.0-1.x86_64.rpm

You also have to install the Intel® Threading Building Blocks (TBB)
using `yum`:
Expand All @@ -144,13 +144,13 @@ filed into DEB files using the `alien` tool:

sudo apt-get install alien dpkg-dev debhelper build-essential

sudo alien embree3-lib-3.2.4-1.x86_64.rpm
sudo alien embree3-devel-3.2.4-1.noarch.rpm
sudo alien embree3-examples-3.2.4-1.x86_64.rpm
sudo alien embree3-lib-3.3.0-1.x86_64.rpm
sudo alien embree3-devel-3.3.0-1.noarch.rpm
sudo alien embree3-examples-3.3.0-1.x86_64.rpm

sudo dpkg -i embree3-lib_3.2.4-2_amd64.deb
sudo dpkg -i embree3-devel_3.2.4-2_all.deb
sudo dpkg -i embree3-examples_3.2.4-2_amd64.deb
sudo dpkg -i embree3-lib_3.3.0-2_amd64.deb
sudo dpkg -i embree3-devel_3.3.0-2_all.deb
sudo dpkg -i embree3-examples_3.3.0-2_amd64.deb

Also install the Intel® Threading Building Blocks (TBB) using `apt-get`:

Expand All @@ -176,20 +176,20 @@ the tutorials to start them.

To uninstall Embree, just execute the following:

sudo rpm --erase embree3-lib-3.2.4-1.x86_64
sudo rpm --erase embree3-devel-3.2.4-1.noarch
sudo rpm --erase embree3-examples-3.2.4-1.x86_64
sudo rpm --erase embree3-lib-3.3.0-1.x86_64
sudo rpm --erase embree3-devel-3.3.0-1.noarch
sudo rpm --erase embree3-examples-3.3.0-1.x86_64

Linux tar.gz Files
------------------

The Linux version of Embree is also delivered as a `tar.gz` file:
[embree-3.2.4.x86_64.linux.tar.gz](https://github.com/embree/embree/releases/download/v3.2.4/embree-3.2.4.x86_64.linux.tar.gz). Unpack this file using `tar` and source the provided `embree-vars.sh` (if you
[embree-3.3.0.x86_64.linux.tar.gz](https://github.com/embree/embree/releases/download/v3.3.0/embree-3.3.0.x86_64.linux.tar.gz). Unpack this file using `tar` and source the provided `embree-vars.sh` (if you
are using the bash shell) or `embree-vars.csh` (if you are using the
C shell) to set up the environment properly:

tar xzf embree-3.2.4.x86_64.linux.tar.gz
source embree-3.2.4.x86_64.linux/embree-vars.sh
tar xzf embree-3.3.0.x86_64.linux.tar.gz
source embree-3.3.0.x86_64.linux/embree-vars.sh

If you want to ship Embree with your application, best use the Embree
version provided in the `tar.gz` file.
Expand All @@ -202,7 +202,7 @@ macOS PKG Installer

To install the Embree library on your macOS system use the
provided package installer inside
[embree-3.2.4.x86_64.dmg](https://github.com/embree/embree/releases/download/v3.2.4/embree-3.2.4.x86_64.dmg). This
[embree-3.3.0.x86_64.dmg](https://github.com/embree/embree/releases/download/v3.3.0/embree-3.3.0.x86_64.dmg). This
will install Embree by default into `/opt/local/lib` and
`/opt/local/include` directories. The Embree tutorials are installed
into the `/Applications/Embree3` directory.
Expand All @@ -224,12 +224,12 @@ macOS tar.gz file
-----------------

The macOS version of Embree is also delivered as a `tar.gz` file:
[embree-3.2.4.x86_64.macosx.tar.gz](https://github.com/embree/embree/releases/download/v3.2.4/embree-3.2.4.x86_64.macosx.tar.gz). Unpack this file using `tar` and source the provided `embree-vars.sh` (if you
[embree-3.3.0.x86_64.macosx.tar.gz](https://github.com/embree/embree/releases/download/v3.3.0/embree-3.3.0.x86_64.macosx.tar.gz). Unpack this file using `tar` and source the provided `embree-vars.sh` (if you
are using the bash shell) or `embree-vars.csh` (if you are using the
C shell) to set up the environment properly:

tar xzf embree-3.2.4.x64.macosx.tar.gz
source embree-3.2.4.x64.macosx/embree-vars.sh
tar xzf embree-3.3.0.x64.macosx.tar.gz
source embree-3.3.0.x64.macosx/embree-vars.sh

If you want to ship Embree with your application, please use the Embree
library of the provided `tar.gz` file. The library name of that Embree
Expand Down Expand Up @@ -700,14 +700,19 @@ assign a geometry ID) or using the `rtcAttachGeometryById` function
to a single scene at a time.

All geometry types support multi-segment motion blur with an arbitrary
number of equidistant time steps (in the range of 2 to 129). Each
geometry can have a different number of time steps. The motion blur
geometry is defined by linearly interpolating the geometries of
neighboring time steps. To construct a motion blur geometry, first the
number of time steps of the geometry must be specified using the
number of equidistant time steps (in the range of 2 to 129) inside a
user specified time range. Each geometry can have a different number
of time steps and a different time range. The motion blur geometry is
defined by linearly interpolating the geometries of neighboring time
steps. To construct a motion blur geometry, first the number of time
steps of the geometry must be specified using the
`rtcSetGeometryTimeStepCount` function, and then a vertex buffer for
each time step must be bound, e.g. using the
`rtcSetSharedGeometryBuffer` function.
`rtcSetSharedGeometryBuffer` function. Optionally, a time range
defining the start (and end time) of the first (and last) time step
can be set using the `rtcSetGeometryTimeRange` function. This feature
will also allow geometries to appear and disappear during the camera
shutter time if the time range is a sub range of [0,1].

The API supports per-geometry filter callback functions (see
`rtcSetGeometryIntersectFilterFunction` and
Expand Down Expand Up @@ -1235,6 +1240,11 @@ Embree API Reference
```


## rtcSetGeometryTimeRange
``` {include=src/api/rtcSetGeometryTimeRange.md}
```


## rtcSetGeometryVertexAttributeCount
``` {include=src/api/rtcSetGeometryVertexAttributeCount.md}
```
Expand Down
58 changes: 58 additions & 0 deletions man/man3/rtcSetGeometryTimeRange.3embree3
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
.TH "rtcSetGeometryTimeRange" "3" "" "" "Embree Ray Tracing Kernels 3"
.SS NAME
.IP
.nf
\f[C]
rtcSetGeometryTimeRange\ \-\ sets\ the\ time\ range\ for\ a\ motion\ blur\ geometry
\f[]
.fi
.SS SYNOPSIS
.IP
.nf
\f[C]
#include\ <embree3/rtcore.h>

void\ rtcSetGeometryTimeRange(
\ \ RTCGeometry\ geometry,
\ \ float\ startTime,
\ \ float\ endTime
);
\f[]
.fi
.SS DESCRIPTION
.PP
The \f[C]rtcSetGeometryTimeRange\f[] function sets a time range which
defines the start (and end time) of the first (and last) time step of a
motion blur geometry.
The time range is defined relative to the camera shutter interval [0,1]
but it can be arbitrary.
Thus the startTime can be smaller, equal, or larger 0, indicating a
geometry whose animation definition start before, at, or after the
camera shutter opens.
Similar the endTime can be smaller, equal, or larger than 1, indicating
a geometry whose animation definition ends after, at, or before the
camera shutter closes.
The startTime has to be smaller or equal to the endTime.
.PP
The default time range when this function is not called is the entire
camera shutter [0,1].
For best performance at most one time segment of the piece wise linear
definition of the motion should fall outside the shutter window to the
left and to the right.
Thus do not set the startTime or endTime too far outside the [0,1]
interval for best performance.
.PP
This time range feature will also allow geometries to appear and
disappear during the camera shutter time if the specified time range is
a sub range of [0,1].
.PP
Please also have a look at the \f[C]rtcSetGeometryTimeStepCount\f[]
function to see how to define the time steps for the specified time
range.
.SS EXIT STATUS
.PP
On failure an error code is set that can be queried using
\f[C]rtcDeviceGetError\f[].
.SS SEE ALSO
.PP
[rtcSetGeometryTimeStepCount]
2 changes: 1 addition & 1 deletion man/man3/rtcSetGeometryTimeStepCount.3embree3
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,4 @@ On failure an error code is set that can be queried using
\f[C]rtcDeviceGetError\f[].
.SS SEE ALSO
.PP
[rtcNewGeometry]
[rtcNewGeometry], [rtcSetGeometryTimeRange]
Binary file modified readme.pdf
Binary file not shown.

0 comments on commit 2375327

Please sign in to comment.