\hypertarget{a01158}{\section{A\+C\+G\+:\+:Shader\+Gen\+Desc Class Reference}
\label{a01158}\index{A\+C\+G\+::\+Shader\+Gen\+Desc@{A\+C\+G\+::\+Shader\+Gen\+Desc}}
}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{a01305}{Texture\+Type}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01158_a19c9654e4287594e65f1842c8d230997}{Q\+String \hyperlink{a01158_a19c9654e4287594e65f1842c8d230997}{to\+String} () const }\label{a01158_a19c9654e4287594e65f1842c8d230997}

\begin{DoxyCompactList}\small\item\em convert \hyperlink{a01158}{Shader\+Gen\+Desc} to string format for debugging \end{DoxyCompactList}\item 
\hypertarget{a01158_a256c843f01f9325188e065f39bb05284}{const std\+::map$<$ size\+\_\+t, \\*
\hyperlink{a01305}{Texture\+Type} $>$ \& {\bfseries texture\+Types} () const }\label{a01158_a256c843f01f9325188e065f39bb05284}

\item 
void \hyperlink{a01158_a2554eeab010d4c7def0975fe2dbdf468}{add\+Texture\+Type} (G\+Lenum \+\_\+type, bool \+\_\+shadow, size\+\_\+t \+\_\+stage)
\begin{DoxyCompactList}\small\item\em adds a texture type to the shader and enables texturing. \end{DoxyCompactList}\item 
\hypertarget{a01158_adb0c069547f73875d4a9f63a7c1add8e}{void \hyperlink{a01158_adb0c069547f73875d4a9f63a7c1add8e}{clear\+Textures} ()}\label{a01158_adb0c069547f73875d4a9f63a7c1add8e}

\begin{DoxyCompactList}\small\item\em disables texture support and removes all texture types \end{DoxyCompactList}\item 
\hypertarget{a01158_adc8923d638491a3671e46ba45a8925cf}{bool {\bfseries textured} () const }\label{a01158_adc8923d638491a3671e46ba45a8925cf}

\item 
\hypertarget{a01158_afbd155131b383fe0a8793a95841e847c}{void {\bfseries enable\+Tex\+Gen\+Object\+Linear} (int \+\_\+dim=2)}\label{a01158_afbd155131b383fe0a8793a95841e847c}

\item 
\hypertarget{a01158_a25ed6ed4ef8b5f5e86d6b32cf357a598}{void {\bfseries enable\+Tex\+Gen\+Eye\+Linear} (int \+\_\+dim=2)}\label{a01158_a25ed6ed4ef8b5f5e86d6b32cf357a598}

\item 
\hypertarget{a01158_a2b4eb58d17efebfd05a790264646d121}{void {\bfseries enable\+Tex\+Gen\+Spherical\+Map} (int \+\_\+dim=2)}\label{a01158_a2b4eb58d17efebfd05a790264646d121}

\item 
\hypertarget{a01158_aa0f2ed3b1cd271adb07cf4053f1f8acb}{void {\bfseries enable\+Tex\+Gen\+Normal\+Map} (int \+\_\+dim=3)}\label{a01158_aa0f2ed3b1cd271adb07cf4053f1f8acb}

\item 
\hypertarget{a01158_a963b0bc4010635d55845bb070794f06c}{void {\bfseries enable\+Tex\+Gen\+Reflection\+Map} (int \+\_\+dim=3)}\label{a01158_a963b0bc4010635d55845bb070794f06c}

\item 
\hypertarget{a01158_aaaab07984a89754155be70e3251c7e21}{void {\bfseries disable\+Tex\+Gen} ()}\label{a01158_aaaab07984a89754155be70e3251c7e21}

\item 
\hypertarget{a01158_a436bb79b11eaa2d6459742053ffc026b}{bool {\bfseries operator==} (const \hyperlink{a01158}{Shader\+Gen\+Desc} \&\+\_\+rhs) const }\label{a01158_a436bb79b11eaa2d6459742053ffc026b}

\end{DoxyCompactItemize}
\subsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01158_a6583bde258cf1ea531b8077b6aa874ea}{int {\bfseries version}}\label{a01158_a6583bde258cf1ea531b8077b6aa874ea}

\item 
\hypertarget{a01158_a07145acdca5785ae493bbc5d06338d04}{int {\bfseries num\+Lights}}\label{a01158_a07145acdca5785ae493bbc5d06338d04}

\item 
\hypertarget{a01158_a8e1554be5222c582ba1e5ded73f7264e}{Shader\+Gen\+Light\+Type {\bfseries light\+Types} \mbox{[}S\+G\+\_\+\+M\+A\+X\+\_\+\+S\+H\+A\+D\+E\+R\+\_\+\+L\+I\+G\+H\+T\+S\mbox{]}}\label{a01158_a8e1554be5222c582ba1e5ded73f7264e}

\item 
\hypertarget{a01158_a57440a9875a6c180dac6d1eb24e0cdce}{Shader\+Gen\+Shade\+Mode {\bfseries shade\+Mode}}\label{a01158_a57440a9875a6c180dac6d1eb24e0cdce}

\item 
\hypertarget{a01158_a82b8388059777f3fb1941d8120430917}{bool {\bfseries vertex\+Colors}}\label{a01158_a82b8388059777f3fb1941d8120430917}

\item 
\hypertarget{a01158_af073bacead76ef1f094a01ab71a44fc0}{Q\+String {\bfseries vertex\+Template\+File}}\label{a01158_af073bacead76ef1f094a01ab71a44fc0}

\item 
\hypertarget{a01158_a72ee6b746f6cb94fdcaa42538c13f211}{Q\+String {\bfseries tess\+Control\+Template\+File}}\label{a01158_a72ee6b746f6cb94fdcaa42538c13f211}

\item 
\hypertarget{a01158_a3941127e33b38945749e37bba0a035c1}{Q\+String {\bfseries tess\+Evaluation\+Template\+File}}\label{a01158_a3941127e33b38945749e37bba0a035c1}

\item 
\hypertarget{a01158_ae7c4533534d658aa9738c723fd415036}{Q\+String {\bfseries geometry\+Template\+File}}\label{a01158_ae7c4533534d658aa9738c723fd415036}

\item 
\hypertarget{a01158_a159ec57d40fb8da718a67cd7b81f5ade}{Q\+String {\bfseries fragment\+Template\+File}}\label{a01158_a159ec57d40fb8da718a67cd7b81f5ade}

\item 
\hypertarget{a01158_a54827bc710def002154b66d11031d132}{Q\+String\+List {\bfseries macros}}\label{a01158_a54827bc710def002154b66d11031d132}

\item 
\hypertarget{a01158_a98e3dfcd5bf859662e60f27c38951dc7}{bool \hyperlink{a01158_a98e3dfcd5bf859662e60f27c38951dc7}{normalize\+Tex\+Colors}}\label{a01158_a98e3dfcd5bf859662e60f27c38951dc7}

\begin{DoxyCompactList}\small\item\em Defines if the texture\+Variable is normalized or not, if multiple textures are used. \end{DoxyCompactList}\item 
\hypertarget{a01158_a0030d157d551cf681031da22beb23e92}{Q\+String \hyperlink{a01158_a0030d157d551cf681031da22beb23e92}{vertex\+Colors\+Interpolator}}\label{a01158_a0030d157d551cf681031da22beb23e92}

\begin{DoxyCompactList}\small\item\em interpolation qualifier for input vertex colors\+: \char`\"{}flat\char`\"{}, \char`\"{}smooth\char`\"{}, \char`\"{}noperspective\char`\"{} \end{DoxyCompactList}\item 
\hypertarget{a01158_ad20e2f571889d6833deb8529156a5fd4}{G\+Lenum {\bfseries color\+Material\+Mode}}\label{a01158_ad20e2f571889d6833deb8529156a5fd4}

\item 
\hypertarget{a01158_ad906351fae6bb5dd961921e5258e5351}{int {\bfseries tex\+Gen\+Dim}}\label{a01158_ad906351fae6bb5dd961921e5258e5351}

\item 
\hypertarget{a01158_ab2df95238aebe7cb1703b608c4f2cf86}{G\+Lenum {\bfseries tex\+Gen\+Mode}}\label{a01158_ab2df95238aebe7cb1703b608c4f2cf86}

\item 
\hypertarget{a01158_ae06f33ff3a1e34e4704c65a47e617d40}{bool {\bfseries tex\+Gen\+Per\+Fragment}}\label{a01158_ae06f33ff3a1e34e4704c65a47e617d40}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01158_ab523fa0f7d13133f46903fcfb92840e2}{std\+::map$<$ size\+\_\+t, \hyperlink{a01305}{Texture\+Type} $>$ \hyperlink{a01158_ab523fa0f7d13133f46903fcfb92840e2}{texture\+Types\+\_\+}}\label{a01158_ab523fa0f7d13133f46903fcfb92840e2}

\begin{DoxyCompactList}\small\item\em holds the texture types (second) and the stage id (first). if empty, shader does not support textures \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 89 of file Shader\+Generator.\+hh.



\subsection{Member Function Documentation}
\hypertarget{a01158_a2554eeab010d4c7def0975fe2dbdf468}{\index{A\+C\+G\+::\+Shader\+Gen\+Desc@{A\+C\+G\+::\+Shader\+Gen\+Desc}!add\+Texture\+Type@{add\+Texture\+Type}}
\index{add\+Texture\+Type@{add\+Texture\+Type}!A\+C\+G\+::\+Shader\+Gen\+Desc@{A\+C\+G\+::\+Shader\+Gen\+Desc}}
\subsubsection[{add\+Texture\+Type}]{\setlength{\rightskip}{0pt plus 5cm}void A\+C\+G\+::\+Shader\+Gen\+Desc\+::add\+Texture\+Type (
\begin{DoxyParamCaption}
\item[{G\+Lenum}]{\+\_\+type, }
\item[{bool}]{\+\_\+shadow, }
\item[{size\+\_\+t}]{\+\_\+stage}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a01158_a2554eeab010d4c7def0975fe2dbdf468}


adds a texture type to the shader and enables texturing. 



Definition at line 191 of file Shader\+Generator.\+hh.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
A\+C\+G/\+G\+L/Shader\+Generator.\+hh\item 
A\+C\+G/\+G\+L/Shader\+Generator.\+cc\end{DoxyCompactItemize}
