\documentclass{usiinfbachelorproject}

\usepackage[]{caption}
\usepackage[]{url}
\usepackage[]{subcaption}
\usepackage[]{float}
\usepackage[]{multicol}

\usepackage{tikz}
\usepackage{tkz-euclide}
\usetikzlibrary{external,shapes,through}

\tikzexternalize[prefix=figures/]
\tikzstyle{none}=[]
\input{./tikzs/styles.tikzstyles}

\pgfdeclarelayer{nodelayer}
\pgfdeclarelayer{edgelayer}
\pgfsetlayers{edgelayer,nodelayer,main}

\graphicspath{{../figures/}{./figures/}}


\newcommand*{\vv}[1]{\overrightarrow{#1}}


\newcommand*{\figref}[1]{\figurename~\ref{#1}}

\captionsetup{labelfont={bf}}
\newcommand{\diff}{\mathop{}\!\mathrm{d}}

\author{Arnaud Fauconnet}

\title{From Flying Balls to Colliding Polygons}
\subtitle{2D Physics Engine: Rigid Body Simulation}
\versiondate{\today}

\begin{committee}
	\advisor[Universit\`a della Svizzera Italiana,
		Switzerland]{Prof.}{Antonio}{Carzaniga}
\end{committee}

\newcommand{\inputtikz}[2][1]{
	\resizebox{#1 \textwidth}{!}{
		\tikzsetnextfilename{#2}
		\input{../tikzs/#2.tikz}
	}
}

\abstract {
	Physics engines are a fun and interesting way to learn about a lot of
	different subjects. First the theoretical concepts, such as the equations
	that dictate the motion of the objects, together with their components, need
	to be thoroughly understood. Then there is the necessity of finding a way to
	represent all of those concepts in a given programming language and to
	make them as efficient as possible so that the simulation runs fluidly.
	The task to be completed here was to extend an already existing
	physics engine that only made circles bounce off each other. The extension
	was focused on having the ability to generate some arbitrary polygons and
	make them bounce off each other in a physically accurate way. The main
	issues that rose up during the development of the extension: determining the
	inertia of a arbitrary polygon, which is important for realistic
	impacts; having an accurate collision detection system, which allows the
	engine to know when to make two polygons bounce off each other. Once those
	aspects were worked on and polished, the rest of the implementation went
	smoothly.

}

\counterwithin{figure}{section}
\counterwithin{equation}{section}

\usepackage{subfiles} % Best loaded last in the preamble

\begin{document}
\maketitle
\tableofcontents
\newpage


\subfile{./sections/intro.tex}
\newpage
\subfile{./sections/tech_background.tex}
\newpage
\subfile{./sections/theoretical_background.tex}
\newpage
\subfile{./sections/solution.tex}
\newpage
\subfile{./sections/conclusion.tex}
\newpage

%%%%%
\bibliographystyle{unsrt}
\bibliography{references}
\newpage
\subfile{./sections/appendix.tex}

\end{document}
