*** Wartungsfenster jeden ersten Mittwoch vormittag im Monat ***

Skip to content
Snippets Groups Projects
Commit 1423e906 authored by Adam Celarek's avatar Adam Celarek
Browse files

update deadline, pt image and add block for pulling from upstream

parent cccf26aa
No related branches found
No related tags found
No related merge requests found
......@@ -8,12 +8,12 @@
\title{Assignment 2: BVH Building \& Traversal}
\deadline{2021-05-02 23:59}
\deadline{2021-05-12 23:59}
\teaser{
\hspace*{\fill}
\includegraphics[trim={1cm 1cm 1cm 1cm},clip,width=0.42\linewidth]{figures/cbox_ajax_bunny_intersections.png}
\hfill
\includegraphics[trim={1cm 1cm 1cm 1cm},clip,width=0.42\linewidth]{figures/pt_ajax_bunny_2048.png}
\includegraphics[trim={1cm 1cm 1cm 1cm},clip,width=0.42\linewidth]{figures/cbox-ajax-bunny-pt.png}
\hspace*{\fill}
\label{fig:figintro}
}
......@@ -30,6 +30,18 @@ In this task, you will implement a spatial acceleration structure inside the Nor
This will speed up rendering, which is crucial for complex scenes with a lot of geometry.
Proper acceleration structures reduce the number of intersection tests during traversal (see above, red = high, blue = low) and can cut render time, e.g., from 40 minutes to 6 seconds.
\textbf{We have updated the \texttt{assignments} repository. Please merge all upstream changes before starting to work.}
\begin{verbatim}
git checkout master
git pull
git merge submission1 # just to be sure
git push # just in case something fails, make a backup
git remote add upstream git@submission.cg.tuwien.ac.at:rendering-2020/assignments.git
git pull upstream master
# resolve any merge conflict, or just confirm the merge.
git push
\end{verbatim}
\section*{BVH Building + Traversal (up to 25 points)}
Use the information provided in the lecture and accompanying slide set to build a reasonably fast BVH.
Implementing the BVH requires adding two behaviors: BVH building and BVH traversal.
......@@ -45,6 +57,7 @@ Depending on your effort with BVH building, we will award points as follows:
\end{description}
Since there are not that many meshes in our test scenes, it suffices to build a separate BVH for each mesh and perform traversal on them one after the other.
Using the fast traversal presented in the lecture (checking nearest node first) gives 5\ points.
You should also try to optimize for the overall tracing performance for rendering detailed models like the Ajax.
Caching pre-computed, high-quality BHVs is of course not allowed and will not be useful, since we will run our own tests on your code.
......@@ -77,7 +90,6 @@ If you are tired of waiting for your results or going for the high-score, the la
\subsection*{Words of wisdom}
\begin{itemize}
\item Remember, that you need at least 15 points for each assignment!
\item Use \texttt{git clone --recursive <your repo URL>} for cloning your repository, because Nori uses submodules.
\item The framework is using Eigen under the hood for vectors and matrices etc. Be careful when using \texttt{auto} in your code \href{https://eigen.tuxfamily.org/dox/TopicPitfalls.html}{(Read here why)}.
\item The lecture slides should you provide with the information you need to implement a simple or elaborate BVH.
\item If you are having trouble with performance, consider changing the resolution and/or number of samples for your test cases.
......
assignments_2021/assignment2_bvh/figures/cbox-ajax-bunny-pt.png

502 KiB

assignments_2021/assignment2_bvh/figures/pt_ajax_bunny_2048.png

632 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment