\hypertarget{group__EPhysics}{\section{E\-Physics}
\label{group__EPhysics}\index{E\-Physics@{E\-Physics}}
}


Physics simulation integration and visual effects.  


\subsection*{Modules}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__EPhysics__Quaternion}{E\-Physics Quaternion}
\begin{DoxyCompactList}\small\item\em Quaternions are used to perform linear algebra rotations. \end{DoxyCompactList}\item 
\hyperlink{group__EPhysics__Shape}{E\-Physics Shape}
\begin{DoxyCompactList}\small\item\em Shapes are used to create bodies with shapes that differ from primitive ones, like box and cylinder. \end{DoxyCompactList}\item 
\hyperlink{group__EPhysics__Camera}{E\-Physics Camera}
\begin{DoxyCompactList}\small\item\em A camera defines the region of the physics world that will be rendered on the canvas. \end{DoxyCompactList}\item 
\hyperlink{group__EPhysics__World}{E\-Physics World}
\begin{DoxyCompactList}\small\item\em A world is required to simulate physics between bodies. \end{DoxyCompactList}\item 
\hyperlink{group__EPhysics__Body}{E\-Physics Body}
\begin{DoxyCompactList}\small\item\em A body is a representation of an object inside a physics world. \end{DoxyCompactList}\item 
\hyperlink{group__EPhysics__Constraint}{E\-Physics Constraint}
\begin{DoxyCompactList}\small\item\em Constraints can be used to limit bodies movements, between bodies or between bodies and the world. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} int \hyperlink{group__EPhysics_gaca8fc170d73b3f688349cc4dbaf219fd}{ephysics\-\_\-init} (void)
\begin{DoxyCompactList}\small\item\em Initialize E\-Physics. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} int \hyperlink{group__EPhysics_ga07e695074fb4d5d125b36c3a1d963f49}{ephysics\-\_\-shutdown} (void)
\begin{DoxyCompactList}\small\item\em Shutdown E\-Physics. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Physics simulation integration and visual effects. 

\subsection{Function Documentation}
\hypertarget{group__EPhysics_gaca8fc170d73b3f688349cc4dbaf219fd}{\index{E\-Physics@{E\-Physics}!ephysics\-\_\-init@{ephysics\-\_\-init}}
\index{ephysics\-\_\-init@{ephysics\-\_\-init}!EPhysics@{E\-Physics}}
\subsubsection[{ephysics\-\_\-init}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} int ephysics\-\_\-init (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}\label{group__EPhysics_gaca8fc170d73b3f688349cc4dbaf219fd}


Initialize E\-Physics. 

Initializes Bullet physics engine.

\begin{DoxyReturn}{Returns}
The init counter value.
\end{DoxyReturn}
\begin{DoxySeeAlso}{See Also}
\hyperlink{group__EPhysics_ga07e695074fb4d5d125b36c3a1d963f49}{ephysics\-\_\-shutdown()}. 
\end{DoxySeeAlso}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ephysics_logo_8c-example}{ephysics\-\_\-logo.\-c}, \hyperlink{test_bouncing_ball_8c-example}{test\-\_\-bouncing\-\_\-ball.\-c}, \hyperlink{test_bouncing_text_8c-example}{test\-\_\-bouncing\-\_\-text.\-c}, \hyperlink{test_camera_8c-example}{test\-\_\-camera.\-c}, \hyperlink{test_camera_track_8c-example}{test\-\_\-camera\-\_\-track.\-c}, \hyperlink{test_collision_detection_8c-example}{test\-\_\-collision\-\_\-detection.\-c}, \hyperlink{test_collision_filter_8c-example}{test\-\_\-collision\-\_\-filter.\-c}, \hyperlink{test_constraint_8c-example}{test\-\_\-constraint.\-c}, \hyperlink{test_delete_8c-example}{test\-\_\-delete.\-c}, \hyperlink{test_forces_8c-example}{test\-\_\-forces.\-c}, \hyperlink{test_growing_balls_8c-example}{test\-\_\-growing\-\_\-balls.\-c}, \hyperlink{test_no_gravity_8c-example}{test\-\_\-no\-\_\-gravity.\-c}, \hyperlink{test_rotating_forever_8c-example}{test\-\_\-rotating\-\_\-forever.\-c}, \hyperlink{test_shapes_8c-example}{test\-\_\-shapes.\-c}, \hyperlink{test_sleeping_threshold_8c-example}{test\-\_\-sleeping\-\_\-threshold.\-c}, \hyperlink{test_slider_8c-example}{test\-\_\-slider.\-c}, and \hyperlink{test_velocity_8c-example}{test\-\_\-velocity.\-c}.\end{Desc}
\hypertarget{group__EPhysics_ga07e695074fb4d5d125b36c3a1d963f49}{\index{E\-Physics@{E\-Physics}!ephysics\-\_\-shutdown@{ephysics\-\_\-shutdown}}
\index{ephysics\-\_\-shutdown@{ephysics\-\_\-shutdown}!EPhysics@{E\-Physics}}
\subsubsection[{ephysics\-\_\-shutdown}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} int ephysics\-\_\-shutdown (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}\label{group__EPhysics_ga07e695074fb4d5d125b36c3a1d963f49}


Shutdown E\-Physics. 

Shutdown Bullet physics engine. If init count reaches 0, all the existing worlds will be deleted, and consequently all the bodies.

\begin{DoxyReturn}{Returns}
E\-Physics' init counter value.
\end{DoxyReturn}
\begin{DoxySeeAlso}{See Also}
\hyperlink{group__EPhysics_gaca8fc170d73b3f688349cc4dbaf219fd}{ephysics\-\_\-init()}. 
\end{DoxySeeAlso}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{ephysics_logo_8c-example}{ephysics\-\_\-logo.\-c}, \hyperlink{test_camera_8c-example}{test\-\_\-camera.\-c}, \hyperlink{test_camera_track_8c-example}{test\-\_\-camera\-\_\-track.\-c}, \hyperlink{test_collision_detection_8c-example}{test\-\_\-collision\-\_\-detection.\-c}, \hyperlink{test_delete_8c-example}{test\-\_\-delete.\-c}, \hyperlink{test_growing_balls_8c-example}{test\-\_\-growing\-\_\-balls.\-c}, and \hyperlink{test_velocity_8c-example}{test\-\_\-velocity.\-c}.\end{Desc}
