\hypertarget{a11140}{}\section{Normal\+Fragment\+Modifier Class Reference}
\label{a11140}\index{Normal\+Fragment\+Modifier@{Normal\+Fragment\+Modifier}}
Inheritance diagram for Normal\+Fragment\+Modifier\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{a11140}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{a11140_a6bfe2475dc55e89b72b8fda7144aa5ae}{modify\+Vertex\+IO} (\hyperlink{a07568}{A\+C\+G\+::\+Shader\+Generator} $\ast$\+\_\+shader)
\begin{DoxyCompactList}\small\item\em Add your own inputs/outputs to the vertex shader. \end{DoxyCompactList}\item 
void \hyperlink{a11140_a0c228f43b14edc4bc6d41649f0164aac}{modify\+Fragment\+End\+Code} (Q\+String\+List $\ast$\+\_\+code)
\begin{DoxyCompactList}\small\item\em Append code the the fragment shader. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Static Public Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a11140_a08157a50379e5ee77ae0e2df827ba8d6}\label{a11140_a08157a50379e5ee77ae0e2df827ba8d6}} 
static \hyperlink{a11140}{Normal\+Fragment\+Modifier} {\bfseries instance}
\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}


Definition at line 54 of file Normal\+Renderer.\+cc.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{a11140_a0c228f43b14edc4bc6d41649f0164aac}\label{a11140_a0c228f43b14edc4bc6d41649f0164aac}} 
\index{Normal\+Fragment\+Modifier@{Normal\+Fragment\+Modifier}!modify\+Fragment\+End\+Code@{modify\+Fragment\+End\+Code}}
\index{modify\+Fragment\+End\+Code@{modify\+Fragment\+End\+Code}!Normal\+Fragment\+Modifier@{Normal\+Fragment\+Modifier}}
\subsubsection{\texorpdfstring{modify\+Fragment\+End\+Code()}{modifyFragmentEndCode()}}
{\footnotesize\ttfamily void Normal\+Fragment\+Modifier\+::modify\+Fragment\+End\+Code (\begin{DoxyParamCaption}\item[{Q\+String\+List $\ast$}]{\+\_\+code }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}



Append code the the fragment shader. 

Refer to the generation structure (\hyperlink{ShaderGenerator_page}{Shader Generator} ) to see where your code is added and which variables you can modify. Use


\begin{DoxyCode}
\_code->push\_back(\textcolor{stringliteral}{"..."});
\end{DoxyCode}


to insert your code here.


\begin{DoxyParams}{Parameters}
{\em \+\_\+code} & string list of shader code. \\
\hline
\end{DoxyParams}


Reimplemented from \hyperlink{a07580_a25b1e0be6dd4a8365ecb1c72da21d310}{A\+C\+G\+::\+Shader\+Modifier}.



Definition at line 64 of file Normal\+Renderer.\+cc.

\mbox{\Hypertarget{a11140_a6bfe2475dc55e89b72b8fda7144aa5ae}\label{a11140_a6bfe2475dc55e89b72b8fda7144aa5ae}} 
\index{Normal\+Fragment\+Modifier@{Normal\+Fragment\+Modifier}!modify\+Vertex\+IO@{modify\+Vertex\+IO}}
\index{modify\+Vertex\+IO@{modify\+Vertex\+IO}!Normal\+Fragment\+Modifier@{Normal\+Fragment\+Modifier}}
\subsubsection{\texorpdfstring{modify\+Vertex\+I\+O()}{modifyVertexIO()}}
{\footnotesize\ttfamily void Normal\+Fragment\+Modifier\+::modify\+Vertex\+IO (\begin{DoxyParamCaption}\item[{\hyperlink{a07568}{A\+C\+G\+::\+Shader\+Generator} $\ast$}]{\+\_\+shader }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}



Add your own inputs/outputs to the vertex shader. 

Your implementation may look like this\+:


\begin{DoxyCode}
\_shader->addInput(\textcolor{stringliteral}{"vec4 inTangent"});
\_shader->addUniform(\textcolor{stringliteral}{"vec4 shaderParam"});
\end{DoxyCode}



\begin{DoxyParams}{Parameters}
{\em \+\_\+shader} & shader interface \\
\hline
\end{DoxyParams}


Reimplemented from \hyperlink{a07580_a0692498de2b752b70b8ac3afcbfb5212}{A\+C\+G\+::\+Shader\+Modifier}.



Definition at line 58 of file Normal\+Renderer.\+cc.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
Plugin\+Collection-\/\+Renderers/\+Plugin-\/\+Render-\/\+Normals/Normal\+Renderer.\+cc\end{DoxyCompactItemize}
