This commit is contained in:
Thomas Forgione 2019-10-21 22:03:10 +02:00
parent 9bdf4c6730
commit b785c7a5b7
No known key found for this signature in database
GPG Key ID: BFD17A2D71B3B5E7
1 changed files with 3 additions and 3 deletions

View File

@ -227,7 +227,7 @@ We therefore implemented a class that derives \texttt{BufferGeometry}, for more
\paragraph{Our 3D model class.\label{d3:model-class}}
As said in the previous subsections, a geometry and a material are bound together in a mesh.
This means that we are forced to have as many meshes as there are materials in our model.
To make this easy to manage, we implemented a \textbf{Model} class, that holds both geometry and textures.
To make this easy to manage, we implemented a \textbf{Model} class, that holds both geometry and textures.
We can add vertices, faces, and materials to this model, and it internally manages with the right geometries, materials and meshes.
In order to avoid having many models that share the same material (which would harm performance), it automatically merges faces that share the same material in the same buffer geometry, as shown in Figure~\ref{d3:render-structure}.
@ -291,7 +291,7 @@ In order to avoid having many models that share the same material (which would h
In order to be able to implement our view-dependent DASH-3D client, we need to implement the access client, which is responsible for deciding what to download and for downloading it.
To do so, we use the strategy pattern illustrated in Figure~\ref{d3:dash-loader}.
We maintain a base class named \texttt{LoadingPolicy} that contain some attributes and functions to keep track of what has been downloaded.
This class %INCOMPREHENSIBLE : has a derived class can use to make smart decisions, and
This class %INCOMPREHENSIBLE : has a derived class can use to make smart decisions, and
exposes a function named \texttt{nextSegment} that takes two arguments:
\begin{itemize}
\item the MPD, so that a strategy can know all the metadata of the segments before making its decision;
@ -308,7 +308,7 @@ The \texttt{DashLoader} class accepts as parameter a function that will be calle
\begin{tikzpicture}[scale=0.65]
\draw (0, 0) rectangle (5, -2.5);
\draw (0, -1) -- (5, -1);
\node at (2.5, -0.5) {DashClient};
\node at (2.5, -0.5) {DashLoader};
\node[right] at (0, -1.5) {\scriptsize loadNextSegment()};
\draw (5, -1.25) -- (8, -1.25);