nitpick
[webkit_codecamp] / codecamp.tex
index c512f85..dcdf99a 100644 (file)
 \setbeamertemplate{blocks}[default]
 \setbeamercolor{block title}{fg=amber,bg=black}
 
-\title{\textbf{Sharing texture data between drivers}}
+\title{\textbf{Sharing texture data across EGL drivers}}
 \author[Eleni Maria Stea <estea@igalia.com>]{\small{Eleni Maria Stea
 <estea@igalia.com>}\\\\\includegraphics{data/igalia.eps}}
 \date{\tiny{WebKit Codecamp}}
 \end{comment}
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section[Introduction]{Introduction: Using ANGLE in WebGL2}
+\section[Introduction]{Introduction: Using ANGLE in WebGL2 (WebKit)}
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \begin{frame}[fragile,c]
@@ -309,17 +309,16 @@ program}
     \begin{center}
                \scriptsize{
                I've ran my experiments using test programs and ANGLE,\\
-               and I had to
-               \textbf{\color{mediumred-violet}modify the default set up} to 
-               debug/explore ANGLE calls with GDB:
+               and I had to modify the default set up to step into ANGLE calls with GDB:
                }
     \end{center}
 
        \vspace{0.1cm}
 
-       \setbeamertemplate{blocks}[rounded]
-
-       \begin{block}{\footnotesize{\textbf{Problems when building ANGLE:}}}\scriptsize{\texttt{
+       \setbeamertemplate{itemize/enumerate body begin}{\scriptsize}
+       \begin{block}{\scriptsize{Things that need attention when building ANGLE for
+        debugging:}}\scriptsize{
+            \vspace{0.2cm}
                \begin{itemize}
                        \itemsep0.1cm
                                \color{coolblack}
@@ -330,7 +329,7 @@ program}
                        \item {{\textbf{dwarf5} is not fully implemented on GDB, and so it's
                                impossible to step without errors when it's enabled.}}
                        \item {\textbf{Debugging symbols} aren't enabled by default.}
-               \end{itemize}}}
+               \end{itemize}}
        \vspace{0.2cm}
        \end{block}
 
@@ -340,8 +339,8 @@ program}
                \setbeamertemplate{itemize item}[circle]
        \begin{itemize}
                \item {\textbf{Blog post} on how to set up
-                       \textbf{\color{mediumred-violet}{ANGLE}} and \textbf{\color{mediumred-violet}{GDB}} for debugging: \url{https://eleni.mutantstargoat.com/hikiko/debug-angle/}}
-               \item {\textbf{Gist} with the \textbf{\color{mediumred-violet}{GN args}}
+                       {\color{black}{ANGLE}} and {\color{black}{GDB}} for debugging: \url{https://eleni.mutantstargoat.com/hikiko/debug-angle/}}
+               \item {\textbf{Gist} with the {\color{black}{GN args}}
                        I've used: \url{https://gistof.com/gnargs}}
        \end{itemize}}
        \vspace{0.2cm}
@@ -733,7 +732,7 @@ program}
                \setbeamercolor{block body}{bg=white}
                \setbeamercolor{block title}{bg=white, fg=coolblack}
                \begin{block}{\scriptsize{There is a Linux kernel framework that can be used for
-                       content sharing between different Linux drivers!}}
+                       content sharing across different Linux drivers!}}
 
                        \vspace{-0.1cm}
                        \begin{table}[t]
@@ -843,9 +842,8 @@ program}
                        \begin{tabular}{l}
                                {\color{coolblack}Exporting a dma buffer from a texture
                                \texttt{texA}:}\\ 
-                               \\
                                \begin{adjustbox}{max width=\textwidth}
-                                       \adjustbox{valign=t}{\includegraphics[height=3.8cm]{data/dma_export_and_struct.png}}
+                                       \adjustbox{valign=t}{\includegraphics[height=4cm]{data/dma_export_and_struct.png}}
                                \end{adjustbox}\\
                        \end{tabular}
                \end{table}
@@ -887,6 +885,39 @@ program}
 \end{frame}
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{frame}
+       \frametitle{Test program}
+
+       \begin{block}{\scriptsize{An exporter-importer that uses ANGLE and native
+               EGL}}
+               \setbeamertemplate{itemize/enumerate body begin}{\scriptsize}
+               \begin{itemize}
+                       \itemsep0.3cm
+                       \itemsep0.2cm
+                       \item First context is EGL/OpenGL like the one in main graphics
+                               pipeline.
+                       \item Second is ANGLE with EGL/GLESv2 backend like the one in
+                               WebGL2.
+                       \item EGL/OpenGL context creates an empty texture and exports the dma\_buf
+                               fd and all other information about the buffer.
+                       \item ANGLE context creates another empty texture using the same
+                               dma\_buf and the import mechanism.
+                       \item ANGLE context fills the emty ANGLE texture.
+                       \item EGL/OpenGL context displays the previously empty OpenGL/EGL
+                               texture.
+                       \item EGL/OpenGL texture contains what ANGLE texture had.
+                       \item \textbf{We shared the ANGLE data without copying them!}
+               \end{itemize}
+
+       \end{block}
+       \vspace{0.2cm}
+       \scriptsize{
+               \begin{center}
+                       \textbf{\color{coolblack}Check the blog posts for more details!}
+               \end{center}
+               }
+\end{frame}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -925,7 +956,6 @@ program}
 
         }
     \end{block}
-
 \vspace{0.3cm}
 \end{frame}
 
@@ -945,24 +975,7 @@ program}
     \frametitle{WIP WebKit:}
        \center{\normalsize{\textbf{\color{coolblack}{Ongoing work on WebKit}}}}
 
-       \vspace{0.3cm}
-
-       {\footnotesize{
-       \begin{block}{DONE/WIP/TODO}
-            \begin{itemize}
-                \item{Use the right CMake options (one can't simply enable
-                    \texttt{USE\_ANGLE\_WEBGL} ☺):
-                    \color{coolblack}{\textbf{FIXED }}}
-                \item{There were compile errors when ANGLE was used: 
-                    \color{coolblack}{\textbf{FIXED/Pending to send the patches}}}
-                \item{Link errors when ANGLE is used:
-                    \color{coolblack}{\textbf{WIP/Partially FIXED}}}
-                \item{Copy replacement: \color{coolblack}{\textbf{WIP/TODO}}}
-            \end{itemize}
-       \end{block}
-       }}
-
-       \vspace{0.2cm}
+       \vspace{0.1cm}
        \begin{center}
                \setbeamertemplate{itemize/enumerate body begin}{\scriptsize}
                \setbeamertemplate{itemize/enumerate subbody begin}[circle]{\tiny}
@@ -977,6 +990,22 @@ program}
                                        something else (libgbm? copying?)}
                        \end{itemize}
        \end{center}
+       \vspace{0.05cm}
+       {\scriptsize{
+       \begin{block}{DONE/WIP/TODO}
+            \begin{itemize}
+                \item{Use the right CMake options (one can't simply enable
+                    \texttt{USE\_ANGLE\_WEBGL}!):
+                    \color{coolblack}{\textbf{FIXED }}}
+                \item{There were compile errors when ANGLE was used: 
+                    \color{coolblack}{\textbf{FIXED/Pending to send the patches}}}
+                \item{Link errors when ANGLE is used:
+                    \color{coolblack}{\textbf{WIP/Partially FIXED}}}
+                \item{Copy replacement: \color{coolblack}{\textbf{WIP/TODO}}}
+            \end{itemize}
+       \end{block}
+       }}
+
 \end{frame}
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%