\hypertarget{class_ogre_1_1_technique}{}\section{Ogre\+:\+:Technique Class Reference}
\label{class_ogre_1_1_technique}\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}}


Class representing an approach to rendering this particular \hyperlink{class_ogre_1_1_material}{Material}.  




{\ttfamily \#include $<$Ogre\+Technique.\+h$>$}



Inheritance diagram for Ogre\+:\+:Technique\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=175pt]{class_ogre_1_1_technique__inherit__graph}
\end{center}
\end{figure}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct_ogre_1_1_technique_1_1_g_p_u_device_name_rule}{G\+P\+U\+Device\+Name\+Rule}
\begin{DoxyCompactList}\small\item\em Rule controlling whether technique is deemed supported based on G\+PU device name. \end{DoxyCompactList}\item 
struct \hyperlink{struct_ogre_1_1_technique_1_1_g_p_u_vendor_rule}{G\+P\+U\+Vendor\+Rule}
\begin{DoxyCompactList}\small\item\em Rule controlling whether technique is deemed supported based on G\+PU vendor. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
typedef \hyperlink{class_ogre_1_1_const_vector_iterator}{Const\+Vector\+Iterator}$<$ \hyperlink{class_ogre_1_1_technique_a19e4233dcb87fbb8d592133ca7f10626}{G\+P\+U\+Device\+Name\+Rule\+List} $>$ \hyperlink{class_ogre_1_1_technique_a63da4eb10f7272486a9806374b09bab6}{G\+P\+U\+Device\+Name\+Rule\+Iterator}
\item 
typedef std\+::vector$<$ \hyperlink{struct_ogre_1_1_technique_1_1_g_p_u_device_name_rule}{G\+P\+U\+Device\+Name\+Rule} $>$ \hyperlink{class_ogre_1_1_technique_a19e4233dcb87fbb8d592133ca7f10626}{G\+P\+U\+Device\+Name\+Rule\+List}
\item 
typedef \hyperlink{class_ogre_1_1_const_vector_iterator}{Const\+Vector\+Iterator}$<$ \hyperlink{class_ogre_1_1_technique_a02400e8fcd433054c6559331858a782e}{G\+P\+U\+Vendor\+Rule\+List} $>$ \hyperlink{class_ogre_1_1_technique_a2497a0043902e9d2af0757d769da655c}{G\+P\+U\+Vendor\+Rule\+Iterator}
\item 
typedef std\+::vector$<$ \hyperlink{struct_ogre_1_1_technique_1_1_g_p_u_vendor_rule}{G\+P\+U\+Vendor\+Rule} $>$ \hyperlink{class_ogre_1_1_technique_a02400e8fcd433054c6559331858a782e}{G\+P\+U\+Vendor\+Rule\+List}
\item 
typedef \hyperlink{class_ogre_1_1_vector_iterator}{Vector\+Iterator}$<$ \hyperlink{group___materials_gaff4cf78f2520e56a8c45721e2dc419c9}{Illumination\+Pass\+List} $>$ \hyperlink{class_ogre_1_1_technique_a77a239a5901d2c67add2e7cea0bf3468}{Illumination\+Pass\+Iterator}
\item 
enum \hyperlink{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2d}{Include\+Or\+Exclude} \{ \hyperlink{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2dabd4cc2de655eff5194cda7ea50d00ee3}{I\+N\+C\+L\+U\+DE} = 0, 
\hyperlink{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2da043f697946b7a6d01bb858768e6646a3}{E\+X\+C\+L\+U\+DE} = 1
 \}\begin{DoxyCompactList}\small\item\em Directive used to manually control technique support based on the inclusion or exclusion of some factor. \end{DoxyCompactList}
\item 
typedef std\+::vector$<$ \hyperlink{class_ogre_1_1_pass}{Pass} $\ast$ $>$ \hyperlink{class_ogre_1_1_technique_ab6823bce807c243c04e544ee99eea1d1}{Passes}
\item 
typedef \hyperlink{class_ogre_1_1_vector_iterator}{Vector\+Iterator}$<$ \hyperlink{class_ogre_1_1_technique_ab6823bce807c243c04e544ee99eea1d1}{Passes} $>$ \hyperlink{class_ogre_1_1_technique_a3b4640d3383f331657fd9ee05cb835c2}{Pass\+Iterator}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_ogre_1_1_technique_a4bf5eef2cd88abdf3408234f2bb0899c}{Technique} (\hyperlink{class_ogre_1_1_material}{Material} $\ast$parent)
\begin{DoxyCompactList}\small\item\em Constructor. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_technique_a0e0fe6b1b297d9c8e81287d7c7a7b377}{Technique} (\hyperlink{class_ogre_1_1_material}{Material} $\ast$parent, const \hyperlink{class_ogre_1_1_technique}{Technique} \&oth)
\begin{DoxyCompactList}\small\item\em Copy constructor. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_technique_a3942999affa2e3a81d122ac58f181f11}{$\sim$\+Technique} ()
\item 
\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \hyperlink{class_ogre_1_1_technique_abec5e34e76944eb89ac0c6d370e3b1d5}{\+\_\+compile} (bool auto\+Manage\+Texture\+Units)
\begin{DoxyCompactList}\small\item\em Internal compilation method; see \hyperlink{class_ogre_1_1_material_a1f51926064eaa39f9d85393b41bb8870}{Material\+::compile}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a8143f16e1759f3b5731389d59a66f309}{\+\_\+compile\+Illumination\+Passes} (void)
\begin{DoxyCompactList}\small\item\em Internal method for splitting the passes into illumination passes. \end{DoxyCompactList}\item 
unsigned short \hyperlink{class_ogre_1_1_technique_a8d374e0051b5d0a38ff9232369720a7b}{\+\_\+get\+Scheme\+Index} (void) const
\begin{DoxyCompactList}\small\item\em Internal method for getting the scheme index. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a92b98b4f291fa76b02d2adeb822998af}{\+\_\+load} (void)
\begin{DoxyCompactList}\small\item\em Internal load method, derived from call to \hyperlink{class_ogre_1_1_resource_a699d1c851f494a8d5d23d23b695ceb47}{Material\+::load}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_aa5ad18f720bba21676f3424ed7b2382d}{\+\_\+notify\+Needs\+Recompile} (void)
\begin{DoxyCompactList}\small\item\em Tells the technique that it needs recompilation. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a5833abf80056c4a18b6eafb137b590bb}{\+\_\+prepare} (void)
\begin{DoxyCompactList}\small\item\em Internal prepare method, derived from call to \hyperlink{class_ogre_1_1_resource_a350b287fa3e83a389221274f68760008}{Material\+::prepare}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a73c19a7dd382f37226f307c3afc98794}{\+\_\+unload} (void)
\begin{DoxyCompactList}\small\item\em Internal unload method, derived from call to \hyperlink{class_ogre_1_1_resource_aa31bef1bfaa87731622e56f11b548e27}{Material\+::unload}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_ad78f99fe8c81b1dffaf2d9bfc3cfabb4}{\+\_\+unprepare} (void)
\begin{DoxyCompactList}\small\item\em Internal unprepare method, derived from call to Material\+::unprepare. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_ab6be978dbdbe321f7e8e9803aa29c2d1}{add\+G\+P\+U\+Device\+Name\+Rule} (const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \&device\+Pattern, \hyperlink{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2d}{Include\+Or\+Exclude} include\+Or\+Exclude, bool case\+Sensitive=false)
\begin{DoxyCompactList}\small\item\em Add a rule which manually influences the support for this technique based on a pattern that matches a G\+PU device name (e.\+g. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_ad0b1efd013753818ae29fd15a27c9744}{add\+G\+P\+U\+Device\+Name\+Rule} (const \hyperlink{struct_ogre_1_1_technique_1_1_g_p_u_device_name_rule}{G\+P\+U\+Device\+Name\+Rule} \&rule)
\item 
void \hyperlink{class_ogre_1_1_technique_afe3b09baa8cd8566f994ad4ee5d125d1}{add\+G\+P\+U\+Vendor\+Rule} (\hyperlink{group___render_system_gac4c251bcc05376f701348bfe0f4a53b4}{G\+P\+U\+Vendor} vendor, \hyperlink{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2d}{Include\+Or\+Exclude} include\+Or\+Exclude)
\begin{DoxyCompactList}\small\item\em Add a rule which manually influences the support for this technique based on a G\+PU vendor. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_ac6a82a8dedd6ecc9228e392aec08bd52}{add\+G\+P\+U\+Vendor\+Rule} (const \hyperlink{struct_ogre_1_1_technique_1_1_g_p_u_vendor_rule}{G\+P\+U\+Vendor\+Rule} \&rule)
\begin{DoxyCompactList}\small\item\em Add a rule which manually influences the support for this technique based on a G\+PU vendor. \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_technique_abab977f0e76de9d6f04be3d3df0195b6}{apply\+Texture\+Aliases} (const \hyperlink{group___general_ga5dafc9e68bde8099ec5ad6c94e4cf19b}{Alias\+Texture\+Name\+Pair\+List} \&alias\+List, const bool apply=true) const
\begin{DoxyCompactList}\small\item\em Applies texture names to \hyperlink{class_ogre_1_1_texture}{Texture} Unit State with matching texture name aliases. \end{DoxyCompactList}\item 
size\+\_\+t \hyperlink{class_ogre_1_1_technique_a9ac14534e5754cae83f2769b4c1ebbbd}{calculate\+Size} (void) const
\item 
bool \hyperlink{class_ogre_1_1_technique_a67154e6706213a946623bef7f2b65450}{check\+G\+P\+U\+Rules} (\hyperlink{namespace_ogre_a9f14407f349c1ec70ddab871a7806590}{String\+Stream} \&errors)
\begin{DoxyCompactList}\small\item\em Internal method for checking G\+PU vendor / device rules. \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_technique_a2acb60df20fcd4e4ef5d59c83daff3c0}{check\+Hardware\+Support} (bool auto\+Manage\+Texture\+Units, \hyperlink{namespace_ogre_a9f14407f349c1ec70ddab871a7806590}{String\+Stream} \&compile\+Errors)
\begin{DoxyCompactList}\small\item\em Internal method for checking hardware support. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_pass}{Pass} $\ast$ \hyperlink{class_ogre_1_1_technique_a51466b61bfe2dbcdb1afbf21b1dd3253}{create\+Pass} (void)
\begin{DoxyCompactList}\small\item\em Creates a new \hyperlink{class_ogre_1_1_pass}{Pass} for this \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_technique_a63da4eb10f7272486a9806374b09bab6}{G\+P\+U\+Device\+Name\+Rule\+Iterator} \hyperlink{class_ogre_1_1_technique_a8220d069967117f15e63a236e221c6a2}{get\+G\+P\+U\+Device\+Name\+Rule\+Iterator} () const
\begin{DoxyCompactList}\small\item\em Get an iterator over the currently registered device name rules. \end{DoxyCompactList}\item 
const \hyperlink{class_ogre_1_1_technique_a19e4233dcb87fbb8d592133ca7f10626}{G\+P\+U\+Device\+Name\+Rule\+List} \& \hyperlink{class_ogre_1_1_technique_a0fb4cc2bde522445d8d4548e6c6697d4}{get\+G\+P\+U\+Device\+Name\+Rules} () const
\begin{DoxyCompactList}\small\item\em Get the currently registered device name rules. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_technique_a2497a0043902e9d2af0757d769da655c}{G\+P\+U\+Vendor\+Rule\+Iterator} \hyperlink{class_ogre_1_1_technique_a87bae44184a980abc5c1fad546781c22}{get\+G\+P\+U\+Vendor\+Rule\+Iterator} () const
\begin{DoxyCompactList}\small\item\em Get an iterator over the currently registered vendor rules. \end{DoxyCompactList}\item 
const \hyperlink{class_ogre_1_1_technique_a02400e8fcd433054c6559331858a782e}{G\+P\+U\+Vendor\+Rule\+List} \& \hyperlink{class_ogre_1_1_technique_a5f207095e9bbda9dde11227756c1e8e8}{get\+G\+P\+U\+Vendor\+Rules} () const
\begin{DoxyCompactList}\small\item\em Get the currently registered vendor rules. \end{DoxyCompactList}\item 
const \hyperlink{group___materials_gaff4cf78f2520e56a8c45721e2dc419c9}{Illumination\+Pass\+List} \& \hyperlink{class_ogre_1_1_technique_ac67fd3f320d1541d07cb6c65e58f4892}{get\+Illumination\+Passes} ()
\begin{DoxyCompactList}\small\item\em Gets the illumination-\/stage categorised passes. \end{DoxyCompactList}\item 
const \hyperlink{class_ogre_1_1_technique_a77a239a5901d2c67add2e7cea0bf3468}{Illumination\+Pass\+Iterator} \hyperlink{class_ogre_1_1_technique_aa864634545c3b7d57888cb8118d4af0a}{get\+Illumination\+Pass\+Iterator} (void)
\begin{DoxyCompactList}\small\item\em Gets an iterator over the illumination-\/stage categorised passes. \end{DoxyCompactList}\item 
unsigned short \hyperlink{class_ogre_1_1_technique_a18697c9c5f2bc1f98d3789ca26a6c0ec}{get\+Lod\+Index} (void) const
\begin{DoxyCompactList}\small\item\em Gets the level-\/of-\/detail index assigned to this \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \& \hyperlink{class_ogre_1_1_technique_a7751c3441cb6cbc1744f29c4ccb63ef0}{get\+Name} (void) const
\begin{DoxyCompactList}\small\item\em Gets the name of the technique. \end{DoxyCompactList}\item 
unsigned short \hyperlink{class_ogre_1_1_technique_a3f0f711dd1f06a1d4506a6c77750019a}{get\+Num\+Passes} (void) const
\begin{DoxyCompactList}\small\item\em Retrieves the number of passes. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_material}{Material} $\ast$ \hyperlink{class_ogre_1_1_technique_a3cff77dca6020ab98c0cbbc225913f57}{get\+Parent} (void) const
\begin{DoxyCompactList}\small\item\em Gets the parent \hyperlink{class_ogre_1_1_material}{Material}. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_pass}{Pass} $\ast$ \hyperlink{class_ogre_1_1_technique_ab0014ffd501b4e1bef5eaae0340e71a7}{get\+Pass} (unsigned short index) const
\begin{DoxyCompactList}\small\item\em Retrieves the \hyperlink{class_ogre_1_1_pass}{Pass} with the given index. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_pass}{Pass} $\ast$ \hyperlink{class_ogre_1_1_technique_a46354c01abc4f183088300551c51b2a5}{get\+Pass} (const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \&name) const
\begin{DoxyCompactList}\small\item\em Retrieves the \hyperlink{class_ogre_1_1_pass}{Pass} matching name. \end{DoxyCompactList}\item 
const \hyperlink{class_ogre_1_1_technique_ab6823bce807c243c04e544ee99eea1d1}{Passes} \& \hyperlink{class_ogre_1_1_technique_a0eea3c6d9d68dbd7297e478b4e8e487c}{get\+Passes} (void) const
\begin{DoxyCompactList}\small\item\em Gets the passes in this \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
const \hyperlink{class_ogre_1_1_technique_a3b4640d3383f331657fd9ee05cb835c2}{Pass\+Iterator} \hyperlink{class_ogre_1_1_technique_a84f0ff4e856f6965c7ae8dcab67e6cf2}{get\+Pass\+Iterator} (void)
\begin{DoxyCompactList}\small\item\em Gets an iterator over the passes in this \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \& \hyperlink{class_ogre_1_1_technique_a9c7802cd8f4224061fa79d17943c01ac}{get\+Resource\+Group} (void) const
\begin{DoxyCompactList}\small\item\em Gets the resource group of the ultimate parent \hyperlink{class_ogre_1_1_material}{Material}. \end{DoxyCompactList}\item 
const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \& \hyperlink{class_ogre_1_1_technique_a5472361e875965fa57fa7576f832cc7d}{get\+Scheme\+Name} (void) const
\begin{DoxyCompactList}\small\item\em Returns the scheme to which this technique is assigned. \end{DoxyCompactList}\item 
\hyperlink{namespace_ogre_a57ef769e80226674c3971ce58b58c91d}{Ogre\+::\+Material\+Ptr} \hyperlink{class_ogre_1_1_technique_a24c0c07f5e6606f69dba099dcae28dc3}{get\+Shadow\+Caster\+Material} () const
\begin{DoxyCompactList}\small\item\em return this material specific shadow casting specific material \end{DoxyCompactList}\item 
\hyperlink{namespace_ogre_a57ef769e80226674c3971ce58b58c91d}{Ogre\+::\+Material\+Ptr} \hyperlink{class_ogre_1_1_technique_a57239d28ba11c19300d1a27651242697}{get\+Shadow\+Receiver\+Material} () const
\begin{DoxyCompactList}\small\item\em return this material specific shadow receiving specific material \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_user_object_bindings}{User\+Object\+Bindings} \& \hyperlink{class_ogre_1_1_technique_a96db53bdf6b3f097fcb9a038df84abe9}{get\+User\+Object\+Bindings} ()
\begin{DoxyCompactList}\small\item\em Return an instance of user objects binding associated with this class. \end{DoxyCompactList}\item 
const \hyperlink{class_ogre_1_1_user_object_bindings}{User\+Object\+Bindings} \& \hyperlink{class_ogre_1_1_technique_a9fd23883c7d06966a259a1490a6b8ffa}{get\+User\+Object\+Bindings} () const
\begin{DoxyCompactList}\small\item\em Return an instance of user objects binding associated with this class. \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_technique_aeaf1f068b46e9249c6ba4621ef695256}{has\+Colour\+Write\+Disabled} (void) const
\begin{DoxyCompactList}\small\item\em Exists colour writing disabled pass on this technique? \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_technique_a5b1efc3fe1d8143d2f5d5d65127c2e27}{is\+Depth\+Check\+Enabled} (void) const
\begin{DoxyCompactList}\small\item\em Is depth checking going to occur on this technique? \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_technique_a93ca213f1f6b4e5de440950f87d16c82}{is\+Depth\+Write\+Enabled} (void) const
\begin{DoxyCompactList}\small\item\em Is depth writing going to occur on this technique? \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_technique_aaa387fee443de5a25752ec0af27b215d}{is\+Loaded} (void) const
\begin{DoxyCompactList}\small\item\em Is this loaded? \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_technique_a3e262c0765863c31eaaff0cd261b6cfa}{is\+Supported} (void) const
\begin{DoxyCompactList}\small\item\em Indicates if this technique is supported by the current graphics card. \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_technique_a62b43d297b8de412d601b08978519a83}{is\+Transparent} (void) const
\begin{DoxyCompactList}\small\item\em Returns true if this \hyperlink{class_ogre_1_1_technique}{Technique} involves transparency. \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_technique_a100f0393659922c14c06b4cdbf4f2e76}{is\+Transparent\+Sorting\+Enabled} (void) const
\begin{DoxyCompactList}\small\item\em Returns true if this \hyperlink{class_ogre_1_1_technique}{Technique} has transparent sorting enabled. \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_technique_a373450226634c5316e9523a006112274}{is\+Transparent\+Sorting\+Forced} (void) const
\begin{DoxyCompactList}\small\item\em Returns true if this \hyperlink{class_ogre_1_1_technique}{Technique} has transparent sorting forced. \end{DoxyCompactList}\item 
bool \hyperlink{class_ogre_1_1_technique_a6fe998209ba33ea38fdcef68743d678c}{move\+Pass} (const unsigned short source\+Index, const unsigned short destination\+Index)
\begin{DoxyCompactList}\small\item\em Move a pass from source index to destination index. \end{DoxyCompactList}\item 
\hyperlink{class_ogre_1_1_technique}{Technique} \& \hyperlink{class_ogre_1_1_technique_ac251efbed20452a6efb1361ea5d27496}{operator=} (const \hyperlink{class_ogre_1_1_technique}{Technique} \&rhs)
\begin{DoxyCompactList}\small\item\em Overloaded operator to copy on \hyperlink{class_ogre_1_1_technique}{Technique} to another. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a1eaae1583cf2e6e310ae911d34da00be}{remove\+All\+Passes} (void)
\begin{DoxyCompactList}\small\item\em Removes all Passes from this \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a593e0e3c8e9d7a43155be8c6fdbfa8f7}{remove\+G\+P\+U\+Device\+Name\+Rule} (const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \&device\+Pattern)
\begin{DoxyCompactList}\small\item\em Removes a matching device name rule. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_aeaadeb93509d6fc3ca27686ca83e76be}{remove\+G\+P\+U\+Vendor\+Rule} (\hyperlink{group___render_system_gac4c251bcc05376f701348bfe0f4a53b4}{G\+P\+U\+Vendor} vendor)
\begin{DoxyCompactList}\small\item\em Removes a matching vendor rule. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_af6cff3e7cbf0b677433ca0a0da04c6aa}{remove\+Pass} (unsigned short index)
\begin{DoxyCompactList}\small\item\em Removes the \hyperlink{class_ogre_1_1_pass}{Pass} with the given index. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_ab4fd76b7e6899ba9f3c302160b392db2}{set\+Ambient} (float red, float green, float blue)
\begin{DoxyCompactList}\small\item\em Sets the ambient colour reflectance properties for every \hyperlink{class_ogre_1_1_pass}{Pass} in every \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_ac5d459624ede01672c78846825cc0f96}{set\+Ambient} (const \hyperlink{class_ogre_1_1_colour_value}{Colour\+Value} \&ambient)
\item 
void \hyperlink{class_ogre_1_1_technique_a155d2bb172e767eab0880667b8669057}{set\+Colour\+Write\+Enabled} (bool enabled)
\begin{DoxyCompactList}\small\item\em Sets whether or not colour buffer writing is enabled for each \hyperlink{class_ogre_1_1_pass}{Pass}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a28dabe8ffdef677134ba9514bf3c2895}{set\+Colour\+Write\+Enabled} (bool red, bool green, bool blue, bool alpha)
\begin{DoxyCompactList}\small\item\em Sets which colour buffer channels are enabled for writing for each \hyperlink{class_ogre_1_1_pass}{Pass}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_ae3ab7639e71d6118834a9164a7c1c8f9}{set\+Culling\+Mode} (\hyperlink{group___general_gac173244ed7d950d0acd726e4f323ecdb}{Culling\+Mode} mode)
\begin{DoxyCompactList}\small\item\em Sets the culling mode for each pass based on the \textquotesingle{}vertex winding\textquotesingle{}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a58b4e86384ca3e7a9f03c3fb2a5b3f0d}{set\+Depth\+Bias} (float constant\+Bias, float slope\+Scale\+Bias)
\begin{DoxyCompactList}\small\item\em Sets the depth bias to be used for each \hyperlink{class_ogre_1_1_pass}{Pass}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a8ccefe2b6bb5b6e66e2dcb081f92847f}{set\+Depth\+Check\+Enabled} (bool enabled)
\begin{DoxyCompactList}\small\item\em Sets whether or not each \hyperlink{class_ogre_1_1_pass}{Pass} renders with depth-\/buffer checking on or not. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a1f8f52bd7bc067a8f6dac99757063a06}{set\+Depth\+Function} (\hyperlink{group___general_ga0212b4eb264f207d84c1df9425208c7a}{Compare\+Function} func)
\begin{DoxyCompactList}\small\item\em Sets the function used to compare depth values when depth checking is on. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a17ab42d4b777c0782a2d0170ae5a0970}{set\+Depth\+Write\+Enabled} (bool enabled)
\begin{DoxyCompactList}\small\item\em Sets whether or not each \hyperlink{class_ogre_1_1_pass}{Pass} renders with depth-\/buffer writing on or not. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a290b26bac425c362ad25278ff19117bf}{set\+Diffuse} (float red, float green, float blue, float alpha)
\begin{DoxyCompactList}\small\item\em Sets the diffuse colour reflectance properties of every \hyperlink{class_ogre_1_1_pass}{Pass} in every \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_af5e13d58c70bbeeb1708e1479185a959}{set\+Diffuse} (const \hyperlink{class_ogre_1_1_colour_value}{Colour\+Value} \&diffuse)
\item 
void \hyperlink{class_ogre_1_1_technique_a42c07e62db4e2cbeb75f8253b30e5c3b}{set\+Fog} (bool override\+Scene, \hyperlink{group___general_ga83edeb2e5d33a3ca8f15834ba40020ba}{Fog\+Mode} mode=\hyperlink{group___general_gga83edeb2e5d33a3ca8f15834ba40020baab7793a21880052c0214d4cc040992310}{F\+O\+G\+\_\+\+N\+O\+NE}, const \hyperlink{class_ogre_1_1_colour_value}{Colour\+Value} \&colour=\hyperlink{class_ogre_1_1_colour_value_a8eba66b2908f44f00f8d9c9ec25877de}{Colour\+Value\+::\+White}, \hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} exp\+Density=0.\+001, \hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} linear\+Start=0.\+0, \hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} linear\+End=1.\+0)
\begin{DoxyCompactList}\small\item\em Sets the fogging mode applied to each pass. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_ab6f31b910ad3b0a22219210290622482}{set\+Lighting\+Enabled} (bool enabled)
\begin{DoxyCompactList}\small\item\em Sets whether or not dynamic lighting is enabled for every \hyperlink{class_ogre_1_1_pass}{Pass}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_ab72db7823cc9a8e872aed1ca6ae2cff8}{set\+Lod\+Index} (unsigned short index)
\begin{DoxyCompactList}\small\item\em Assigns a level-\/of-\/detail (L\+OD) index to this \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a9d9340f9b31f6189e28d62ab00937ab0}{set\+Manual\+Culling\+Mode} (\hyperlink{group___general_ga07ec94cf178172a6778223e6f70f23fc}{Manual\+Culling\+Mode} mode)
\begin{DoxyCompactList}\small\item\em Sets the manual culling mode, performed by C\+PU rather than hardware. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a365b0e6313b646d0ecc13c1c52a6d3ad}{set\+Name} (const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \&name)
\begin{DoxyCompactList}\small\item\em Set the name of the technique. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a1b7d1d264b34c50b7606c646415a50e8}{set\+Point\+Size} (\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} ps)
\begin{DoxyCompactList}\small\item\em Sets the point size properties for every \hyperlink{class_ogre_1_1_pass}{Pass} in this \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a8d44a97049862fc9c5eb64caf5cbbc2f}{set\+Scene\+Blending} (const \hyperlink{group___materials_gac46c60cf6e5c199220e3b8f26570cb9a}{Scene\+Blend\+Type} sbt)
\begin{DoxyCompactList}\small\item\em Sets the kind of blending every pass has with the existing contents of the scene. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a50815d7c51c153e2a6ab1b581507d28f}{set\+Scene\+Blending} (const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor} source\+Factor, const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor} dest\+Factor)
\begin{DoxyCompactList}\small\item\em Allows very fine control of blending every \hyperlink{class_ogre_1_1_pass}{Pass} with the existing contents of the scene. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a43b6c4e9e48c4e56f96633b916ee90a3}{set\+Scheme\+Name} (const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \&scheme\+Name)
\begin{DoxyCompactList}\small\item\em Set the \textquotesingle{}scheme name\textquotesingle{} for this technique. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_aff783d9452b6787a0fdbf83fd8ea0b33}{set\+Self\+Illumination} (float red, float green, float blue)
\begin{DoxyCompactList}\small\item\em Sets the amount of self-\/illumination of every \hyperlink{class_ogre_1_1_pass}{Pass} in every \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a9e5d7120bf501c5796bb461ec16ca22d}{set\+Self\+Illumination} (const \hyperlink{class_ogre_1_1_colour_value}{Colour\+Value} \&self\+Illum)
\item 
void \hyperlink{class_ogre_1_1_technique_add4cd758dc843921da3a331bcc1bee1d}{set\+Separate\+Scene\+Blending} (const \hyperlink{group___materials_gac46c60cf6e5c199220e3b8f26570cb9a}{Scene\+Blend\+Type} sbt, const \hyperlink{group___materials_gac46c60cf6e5c199220e3b8f26570cb9a}{Scene\+Blend\+Type} sbta)
\begin{DoxyCompactList}\small\item\em Sets the kind of blending every pass has with the existing contents of the scene, using individual factors both color and alpha channels. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a5df9ffbf40cbce69799b3be95cf4b701}{set\+Separate\+Scene\+Blending} (const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor} source\+Factor, const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor} dest\+Factor, const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor} source\+Factor\+Alpha, const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor} dest\+Factor\+Alpha)
\begin{DoxyCompactList}\small\item\em Allows very fine control of blending every \hyperlink{class_ogre_1_1_pass}{Pass} with the existing contents of the scene, using individual factors both color and alpha channels. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a4c3bb63365c701842d4539e32cc1480e}{set\+Shading\+Mode} (\hyperlink{group___general_ga7afd4c7d428baaee13f3a0dbcae5f560}{Shade\+Options} mode)
\begin{DoxyCompactList}\small\item\em Sets the type of light shading required. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_ac0e017f3810451861191fedfe1d51a30}{set\+Shadow\+Caster\+Material} (\hyperlink{namespace_ogre_a57ef769e80226674c3971ce58b58c91d}{Ogre\+::\+Material\+Ptr} val)
\begin{DoxyCompactList}\small\item\em set this material specific shadow casting specific material \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a7913e8419619f0b074e67a638d54eb0f}{set\+Shadow\+Caster\+Material} (const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{Ogre\+::\+String} \&name)
\begin{DoxyCompactList}\small\item\em set this material specific shadow casting specific material \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a14cb59e4b8d1073f5379378ccf43f103}{set\+Shadow\+Receiver\+Material} (\hyperlink{namespace_ogre_a57ef769e80226674c3971ce58b58c91d}{Ogre\+::\+Material\+Ptr} val)
\begin{DoxyCompactList}\small\item\em set this material specific shadow receiving specific material \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a03a7f4c6fa69c36b2b92a79917c34ace}{set\+Shadow\+Receiver\+Material} (const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{Ogre\+::\+String} \&name)
\begin{DoxyCompactList}\small\item\em set this material specific shadow receiving specific material \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_aed27a55db91366ee2f95a608f946bc86}{set\+Shininess} (\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} val)
\begin{DoxyCompactList}\small\item\em Sets the shininess properties of every \hyperlink{class_ogre_1_1_pass}{Pass} in every \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a8a9302152c679910610981ba42cae926}{set\+Specular} (float red, float green, float blue, float alpha)
\begin{DoxyCompactList}\small\item\em Sets the specular colour reflectance properties of every \hyperlink{class_ogre_1_1_pass}{Pass} in every \hyperlink{class_ogre_1_1_technique}{Technique}. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a0add9d092f47eb2b654d936a66902d00}{set\+Specular} (const \hyperlink{class_ogre_1_1_colour_value}{Colour\+Value} \&specular)
\item 
void \hyperlink{class_ogre_1_1_technique_a60e62cb6b00f8ae9e9da077d0ecc08ec}{set\+Texture\+Anisotropy} (unsigned int max\+Aniso)
\begin{DoxyCompactList}\small\item\em Sets the anisotropy level to be used for all textures. \end{DoxyCompactList}\item 
void \hyperlink{class_ogre_1_1_technique_a67d7464ef321b859c33c3c1e9334c5f2}{set\+Texture\+Filtering} (\hyperlink{group___general_ga21a0186392e9c9ce16d29c5568a773c5}{Texture\+Filter\+Options} filter\+Type)
\begin{DoxyCompactList}\small\item\em Set texture filtering for every texture unit in every \hyperlink{class_ogre_1_1_pass}{Pass}. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Class representing an approach to rendering this particular \hyperlink{class_ogre_1_1_material}{Material}. 

\begin{DoxyRemark}{Remarks}
\hyperlink{namespace_ogre}{Ogre} will attempt to use the best technique supported by the active hardware, unless you specifically request a lower detail technique (say for distant rendering). 
\end{DoxyRemark}


\subsection{Member Typedef Documentation}
\mbox{\Hypertarget{class_ogre_1_1_technique_ab6823bce807c243c04e544ee99eea1d1}\label{class_ogre_1_1_technique_ab6823bce807c243c04e544ee99eea1d1}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!Passes@{Passes}}
\index{Passes@{Passes}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{Passes}{Passes}}
{\footnotesize\ttfamily typedef std\+::vector$<$\hyperlink{class_ogre_1_1_pass}{Pass}$\ast$$>$ \hyperlink{class_ogre_1_1_technique_ab6823bce807c243c04e544ee99eea1d1}{Ogre\+::\+Technique\+::\+Passes}}

\mbox{\Hypertarget{class_ogre_1_1_technique_a02400e8fcd433054c6559331858a782e}\label{class_ogre_1_1_technique_a02400e8fcd433054c6559331858a782e}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!G\+P\+U\+Vendor\+Rule\+List@{G\+P\+U\+Vendor\+Rule\+List}}
\index{G\+P\+U\+Vendor\+Rule\+List@{G\+P\+U\+Vendor\+Rule\+List}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{G\+P\+U\+Vendor\+Rule\+List}{GPUVendorRuleList}}
{\footnotesize\ttfamily typedef std\+::vector$<$\hyperlink{struct_ogre_1_1_technique_1_1_g_p_u_vendor_rule}{G\+P\+U\+Vendor\+Rule}$>$ \hyperlink{class_ogre_1_1_technique_a02400e8fcd433054c6559331858a782e}{Ogre\+::\+Technique\+::\+G\+P\+U\+Vendor\+Rule\+List}}

\mbox{\Hypertarget{class_ogre_1_1_technique_a19e4233dcb87fbb8d592133ca7f10626}\label{class_ogre_1_1_technique_a19e4233dcb87fbb8d592133ca7f10626}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!G\+P\+U\+Device\+Name\+Rule\+List@{G\+P\+U\+Device\+Name\+Rule\+List}}
\index{G\+P\+U\+Device\+Name\+Rule\+List@{G\+P\+U\+Device\+Name\+Rule\+List}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{G\+P\+U\+Device\+Name\+Rule\+List}{GPUDeviceNameRuleList}}
{\footnotesize\ttfamily typedef std\+::vector$<$\hyperlink{struct_ogre_1_1_technique_1_1_g_p_u_device_name_rule}{G\+P\+U\+Device\+Name\+Rule}$>$ \hyperlink{class_ogre_1_1_technique_a19e4233dcb87fbb8d592133ca7f10626}{Ogre\+::\+Technique\+::\+G\+P\+U\+Device\+Name\+Rule\+List}}

\mbox{\Hypertarget{class_ogre_1_1_technique_a3b4640d3383f331657fd9ee05cb835c2}\label{class_ogre_1_1_technique_a3b4640d3383f331657fd9ee05cb835c2}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!Pass\+Iterator@{Pass\+Iterator}}
\index{Pass\+Iterator@{Pass\+Iterator}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{Pass\+Iterator}{PassIterator}}
{\footnotesize\ttfamily typedef \hyperlink{class_ogre_1_1_vector_iterator}{Vector\+Iterator}$<$\hyperlink{class_ogre_1_1_technique_ab6823bce807c243c04e544ee99eea1d1}{Passes}$>$ \hyperlink{class_ogre_1_1_technique_a3b4640d3383f331657fd9ee05cb835c2}{Ogre\+::\+Technique\+::\+Pass\+Iterator}}

\mbox{\Hypertarget{class_ogre_1_1_technique_a77a239a5901d2c67add2e7cea0bf3468}\label{class_ogre_1_1_technique_a77a239a5901d2c67add2e7cea0bf3468}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!Illumination\+Pass\+Iterator@{Illumination\+Pass\+Iterator}}
\index{Illumination\+Pass\+Iterator@{Illumination\+Pass\+Iterator}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{Illumination\+Pass\+Iterator}{IlluminationPassIterator}}
{\footnotesize\ttfamily typedef \hyperlink{class_ogre_1_1_vector_iterator}{Vector\+Iterator}$<$\hyperlink{group___materials_gaff4cf78f2520e56a8c45721e2dc419c9}{Illumination\+Pass\+List}$>$ \hyperlink{class_ogre_1_1_technique_a77a239a5901d2c67add2e7cea0bf3468}{Ogre\+::\+Technique\+::\+Illumination\+Pass\+Iterator}}

\mbox{\Hypertarget{class_ogre_1_1_technique_a2497a0043902e9d2af0757d769da655c}\label{class_ogre_1_1_technique_a2497a0043902e9d2af0757d769da655c}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!G\+P\+U\+Vendor\+Rule\+Iterator@{G\+P\+U\+Vendor\+Rule\+Iterator}}
\index{G\+P\+U\+Vendor\+Rule\+Iterator@{G\+P\+U\+Vendor\+Rule\+Iterator}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{G\+P\+U\+Vendor\+Rule\+Iterator}{GPUVendorRuleIterator}}
{\footnotesize\ttfamily typedef \hyperlink{class_ogre_1_1_const_vector_iterator}{Const\+Vector\+Iterator}$<$\hyperlink{class_ogre_1_1_technique_a02400e8fcd433054c6559331858a782e}{G\+P\+U\+Vendor\+Rule\+List}$>$ \hyperlink{class_ogre_1_1_technique_a2497a0043902e9d2af0757d769da655c}{Ogre\+::\+Technique\+::\+G\+P\+U\+Vendor\+Rule\+Iterator}}

\mbox{\Hypertarget{class_ogre_1_1_technique_a63da4eb10f7272486a9806374b09bab6}\label{class_ogre_1_1_technique_a63da4eb10f7272486a9806374b09bab6}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!G\+P\+U\+Device\+Name\+Rule\+Iterator@{G\+P\+U\+Device\+Name\+Rule\+Iterator}}
\index{G\+P\+U\+Device\+Name\+Rule\+Iterator@{G\+P\+U\+Device\+Name\+Rule\+Iterator}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{G\+P\+U\+Device\+Name\+Rule\+Iterator}{GPUDeviceNameRuleIterator}}
{\footnotesize\ttfamily typedef \hyperlink{class_ogre_1_1_const_vector_iterator}{Const\+Vector\+Iterator}$<$\hyperlink{class_ogre_1_1_technique_a19e4233dcb87fbb8d592133ca7f10626}{G\+P\+U\+Device\+Name\+Rule\+List}$>$ \hyperlink{class_ogre_1_1_technique_a63da4eb10f7272486a9806374b09bab6}{Ogre\+::\+Technique\+::\+G\+P\+U\+Device\+Name\+Rule\+Iterator}}



\subsection{Member Enumeration Documentation}
\mbox{\Hypertarget{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2d}\label{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2d}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!Include\+Or\+Exclude@{Include\+Or\+Exclude}}
\index{Include\+Or\+Exclude@{Include\+Or\+Exclude}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{Include\+Or\+Exclude}{IncludeOrExclude}}
{\footnotesize\ttfamily enum \hyperlink{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2d}{Ogre\+::\+Technique\+::\+Include\+Or\+Exclude}}



Directive used to manually control technique support based on the inclusion or exclusion of some factor. 

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{I\+N\+C\+L\+U\+DE@{I\+N\+C\+L\+U\+DE}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!I\+N\+C\+L\+U\+DE@{I\+N\+C\+L\+U\+DE}}}\mbox{\Hypertarget{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2dabd4cc2de655eff5194cda7ea50d00ee3}\label{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2dabd4cc2de655eff5194cda7ea50d00ee3}} 
I\+N\+C\+L\+U\+DE&Inclusive -\/ only support if present. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{E\+X\+C\+L\+U\+DE@{E\+X\+C\+L\+U\+DE}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!E\+X\+C\+L\+U\+DE@{E\+X\+C\+L\+U\+DE}}}\mbox{\Hypertarget{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2da043f697946b7a6d01bb858768e6646a3}\label{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2da043f697946b7a6d01bb858768e6646a3}} 
E\+X\+C\+L\+U\+DE&Exclusive -\/ do not support if present. \\
\hline

\end{DoxyEnumFields}


\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{class_ogre_1_1_technique_a4bf5eef2cd88abdf3408234f2bb0899c}\label{class_ogre_1_1_technique_a4bf5eef2cd88abdf3408234f2bb0899c}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!Technique@{Technique}}
\index{Technique@{Technique}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{Technique()}{Technique()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily Ogre\+::\+Technique\+::\+Technique (\begin{DoxyParamCaption}\item[{\hyperlink{class_ogre_1_1_material}{Material} $\ast$}]{parent }\end{DoxyParamCaption})}



Constructor. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a0e0fe6b1b297d9c8e81287d7c7a7b377}\label{class_ogre_1_1_technique_a0e0fe6b1b297d9c8e81287d7c7a7b377}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!Technique@{Technique}}
\index{Technique@{Technique}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{Technique()}{Technique()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily Ogre\+::\+Technique\+::\+Technique (\begin{DoxyParamCaption}\item[{\hyperlink{class_ogre_1_1_material}{Material} $\ast$}]{parent,  }\item[{const \hyperlink{class_ogre_1_1_technique}{Technique} \&}]{oth }\end{DoxyParamCaption})}



Copy constructor. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a3942999affa2e3a81d122ac58f181f11}\label{class_ogre_1_1_technique_a3942999affa2e3a81d122ac58f181f11}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!````~Technique@{$\sim$\+Technique}}
\index{````~Technique@{$\sim$\+Technique}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{$\sim$\+Technique()}{~Technique()}}
{\footnotesize\ttfamily Ogre\+::\+Technique\+::$\sim$\+Technique (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



\subsection{Member Function Documentation}
\mbox{\Hypertarget{class_ogre_1_1_technique_a3e262c0765863c31eaaff0cd261b6cfa}\label{class_ogre_1_1_technique_a3e262c0765863c31eaaff0cd261b6cfa}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!is\+Supported@{is\+Supported}}
\index{is\+Supported@{is\+Supported}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{is\+Supported()}{isSupported()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::is\+Supported (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Indicates if this technique is supported by the current graphics card. 

\begin{DoxyRemark}{Remarks}
This will only be correct after the \hyperlink{class_ogre_1_1_technique}{Technique} has been compiled, which is usually done from \hyperlink{class_ogre_1_1_material_a1f51926064eaa39f9d85393b41bb8870}{Material\+::compile}. 
\end{DoxyRemark}
\mbox{\Hypertarget{class_ogre_1_1_technique_abec5e34e76944eb89ac0c6d370e3b1d5}\label{class_ogre_1_1_technique_abec5e34e76944eb89ac0c6d370e3b1d5}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!\+\_\+compile@{\+\_\+compile}}
\index{\+\_\+compile@{\+\_\+compile}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{\+\_\+compile()}{\_compile()}}
{\footnotesize\ttfamily \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} Ogre\+::\+Technique\+::\+\_\+compile (\begin{DoxyParamCaption}\item[{bool}]{auto\+Manage\+Texture\+Units }\end{DoxyParamCaption})}



Internal compilation method; see \hyperlink{class_ogre_1_1_material_a1f51926064eaa39f9d85393b41bb8870}{Material\+::compile}. 

\begin{DoxyReturn}{Returns}
\hyperlink{class_ogre_1_1_any}{Any} information explaining problems with the compile. 
\end{DoxyReturn}
\mbox{\Hypertarget{class_ogre_1_1_technique_a67154e6706213a946623bef7f2b65450}\label{class_ogre_1_1_technique_a67154e6706213a946623bef7f2b65450}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!check\+G\+P\+U\+Rules@{check\+G\+P\+U\+Rules}}
\index{check\+G\+P\+U\+Rules@{check\+G\+P\+U\+Rules}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{check\+G\+P\+U\+Rules()}{checkGPURules()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::check\+G\+P\+U\+Rules (\begin{DoxyParamCaption}\item[{\hyperlink{namespace_ogre_a9f14407f349c1ec70ddab871a7806590}{String\+Stream} \&}]{errors }\end{DoxyParamCaption})}



Internal method for checking G\+PU vendor / device rules. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a2acb60df20fcd4e4ef5d59c83daff3c0}\label{class_ogre_1_1_technique_a2acb60df20fcd4e4ef5d59c83daff3c0}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!check\+Hardware\+Support@{check\+Hardware\+Support}}
\index{check\+Hardware\+Support@{check\+Hardware\+Support}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{check\+Hardware\+Support()}{checkHardwareSupport()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::check\+Hardware\+Support (\begin{DoxyParamCaption}\item[{bool}]{auto\+Manage\+Texture\+Units,  }\item[{\hyperlink{namespace_ogre_a9f14407f349c1ec70ddab871a7806590}{String\+Stream} \&}]{compile\+Errors }\end{DoxyParamCaption})}



Internal method for checking hardware support. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a8143f16e1759f3b5731389d59a66f309}\label{class_ogre_1_1_technique_a8143f16e1759f3b5731389d59a66f309}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!\+\_\+compile\+Illumination\+Passes@{\+\_\+compile\+Illumination\+Passes}}
\index{\+\_\+compile\+Illumination\+Passes@{\+\_\+compile\+Illumination\+Passes}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{\+\_\+compile\+Illumination\+Passes()}{\_compileIlluminationPasses()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::\+\_\+compile\+Illumination\+Passes (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Internal method for splitting the passes into illumination passes. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a9ac14534e5754cae83f2769b4c1ebbbd}\label{class_ogre_1_1_technique_a9ac14534e5754cae83f2769b4c1ebbbd}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!calculate\+Size@{calculate\+Size}}
\index{calculate\+Size@{calculate\+Size}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{calculate\+Size()}{calculateSize()}}
{\footnotesize\ttfamily size\+\_\+t Ogre\+::\+Technique\+::calculate\+Size (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}

\mbox{\Hypertarget{class_ogre_1_1_technique_a51466b61bfe2dbcdb1afbf21b1dd3253}\label{class_ogre_1_1_technique_a51466b61bfe2dbcdb1afbf21b1dd3253}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!create\+Pass@{create\+Pass}}
\index{create\+Pass@{create\+Pass}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{create\+Pass()}{createPass()}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_pass}{Pass}$\ast$ Ogre\+::\+Technique\+::create\+Pass (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Creates a new \hyperlink{class_ogre_1_1_pass}{Pass} for this \hyperlink{class_ogre_1_1_technique}{Technique}. 

\begin{DoxyRemark}{Remarks}
A \hyperlink{class_ogre_1_1_pass}{Pass} is a single rendering pass, i.\+e. a single draw of the given material. Note that if you create a pass without a fragment program, during compilation of the material the pass may be split into multiple passes if the graphics card cannot handle the number of texture units requested. For passes with fragment programs, however, the number of passes you create will never be altered, so you have to make sure that you create an alternative fallback \hyperlink{class_ogre_1_1_technique}{Technique} for if a card does not have enough facilities for what you\textquotesingle{}re asking for. 
\end{DoxyRemark}
\mbox{\Hypertarget{class_ogre_1_1_technique_ab0014ffd501b4e1bef5eaae0340e71a7}\label{class_ogre_1_1_technique_ab0014ffd501b4e1bef5eaae0340e71a7}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Pass@{get\+Pass}}
\index{get\+Pass@{get\+Pass}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Pass()}{getPass()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_pass}{Pass}$\ast$ Ogre\+::\+Technique\+::get\+Pass (\begin{DoxyParamCaption}\item[{unsigned short}]{index }\end{DoxyParamCaption}) const}



Retrieves the \hyperlink{class_ogre_1_1_pass}{Pass} with the given index. 

\begin{DoxyRefDesc}{Deprecated}
\item[\hyperlink{deprecated__deprecated000151}{Deprecated}]use \hyperlink{class_ogre_1_1_technique_a0eea3c6d9d68dbd7297e478b4e8e487c}{get\+Passes()} \end{DoxyRefDesc}
\mbox{\Hypertarget{class_ogre_1_1_technique_a46354c01abc4f183088300551c51b2a5}\label{class_ogre_1_1_technique_a46354c01abc4f183088300551c51b2a5}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Pass@{get\+Pass}}
\index{get\+Pass@{get\+Pass}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Pass()}{getPass()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_pass}{Pass}$\ast$ Ogre\+::\+Technique\+::get\+Pass (\begin{DoxyParamCaption}\item[{const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \&}]{name }\end{DoxyParamCaption}) const}



Retrieves the \hyperlink{class_ogre_1_1_pass}{Pass} matching name. 

Returns 0 if name match is not found. \mbox{\Hypertarget{class_ogre_1_1_technique_a3f0f711dd1f06a1d4506a6c77750019a}\label{class_ogre_1_1_technique_a3f0f711dd1f06a1d4506a6c77750019a}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Num\+Passes@{get\+Num\+Passes}}
\index{get\+Num\+Passes@{get\+Num\+Passes}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Num\+Passes()}{getNumPasses()}}
{\footnotesize\ttfamily unsigned short Ogre\+::\+Technique\+::get\+Num\+Passes (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Retrieves the number of passes. 

\begin{DoxyRefDesc}{Deprecated}
\item[\hyperlink{deprecated__deprecated000152}{Deprecated}]use \hyperlink{class_ogre_1_1_technique_a0eea3c6d9d68dbd7297e478b4e8e487c}{get\+Passes()} \end{DoxyRefDesc}
\mbox{\Hypertarget{class_ogre_1_1_technique_af6cff3e7cbf0b677433ca0a0da04c6aa}\label{class_ogre_1_1_technique_af6cff3e7cbf0b677433ca0a0da04c6aa}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!remove\+Pass@{remove\+Pass}}
\index{remove\+Pass@{remove\+Pass}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{remove\+Pass()}{removePass()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::remove\+Pass (\begin{DoxyParamCaption}\item[{unsigned short}]{index }\end{DoxyParamCaption})}



Removes the \hyperlink{class_ogre_1_1_pass}{Pass} with the given index. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a1eaae1583cf2e6e310ae911d34da00be}\label{class_ogre_1_1_technique_a1eaae1583cf2e6e310ae911d34da00be}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!remove\+All\+Passes@{remove\+All\+Passes}}
\index{remove\+All\+Passes@{remove\+All\+Passes}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{remove\+All\+Passes()}{removeAllPasses()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::remove\+All\+Passes (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Removes all Passes from this \hyperlink{class_ogre_1_1_technique}{Technique}. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a6fe998209ba33ea38fdcef68743d678c}\label{class_ogre_1_1_technique_a6fe998209ba33ea38fdcef68743d678c}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!move\+Pass@{move\+Pass}}
\index{move\+Pass@{move\+Pass}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{move\+Pass()}{movePass()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::move\+Pass (\begin{DoxyParamCaption}\item[{const unsigned short}]{source\+Index,  }\item[{const unsigned short}]{destination\+Index }\end{DoxyParamCaption})}



Move a pass from source index to destination index. 

If successful then returns true. \mbox{\Hypertarget{class_ogre_1_1_technique_a84f0ff4e856f6965c7ae8dcab67e6cf2}\label{class_ogre_1_1_technique_a84f0ff4e856f6965c7ae8dcab67e6cf2}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Pass\+Iterator@{get\+Pass\+Iterator}}
\index{get\+Pass\+Iterator@{get\+Pass\+Iterator}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Pass\+Iterator()}{getPassIterator()}}
{\footnotesize\ttfamily const \hyperlink{class_ogre_1_1_technique_a3b4640d3383f331657fd9ee05cb835c2}{Pass\+Iterator} Ogre\+::\+Technique\+::get\+Pass\+Iterator (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Gets an iterator over the passes in this \hyperlink{class_ogre_1_1_technique}{Technique}. 

\begin{DoxyRefDesc}{Deprecated}
\item[\hyperlink{deprecated__deprecated000153}{Deprecated}]use \hyperlink{class_ogre_1_1_technique_a0eea3c6d9d68dbd7297e478b4e8e487c}{get\+Passes()} \end{DoxyRefDesc}
\mbox{\Hypertarget{class_ogre_1_1_technique_a0eea3c6d9d68dbd7297e478b4e8e487c}\label{class_ogre_1_1_technique_a0eea3c6d9d68dbd7297e478b4e8e487c}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Passes@{get\+Passes}}
\index{get\+Passes@{get\+Passes}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Passes()}{getPasses()}}
{\footnotesize\ttfamily const \hyperlink{class_ogre_1_1_technique_ab6823bce807c243c04e544ee99eea1d1}{Passes}\& Ogre\+::\+Technique\+::get\+Passes (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Gets the passes in this \hyperlink{class_ogre_1_1_technique}{Technique}. 

\mbox{\Hypertarget{class_ogre_1_1_technique_aa864634545c3b7d57888cb8118d4af0a}\label{class_ogre_1_1_technique_aa864634545c3b7d57888cb8118d4af0a}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Illumination\+Pass\+Iterator@{get\+Illumination\+Pass\+Iterator}}
\index{get\+Illumination\+Pass\+Iterator@{get\+Illumination\+Pass\+Iterator}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Illumination\+Pass\+Iterator()}{getIlluminationPassIterator()}}
{\footnotesize\ttfamily const \hyperlink{class_ogre_1_1_technique_a77a239a5901d2c67add2e7cea0bf3468}{Illumination\+Pass\+Iterator} Ogre\+::\+Technique\+::get\+Illumination\+Pass\+Iterator (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Gets an iterator over the illumination-\/stage categorised passes. 

\begin{DoxyRefDesc}{Deprecated}
\item[\hyperlink{deprecated__deprecated000154}{Deprecated}]use \hyperlink{class_ogre_1_1_technique_ac67fd3f320d1541d07cb6c65e58f4892}{get\+Illumination\+Passes()} \end{DoxyRefDesc}
\mbox{\Hypertarget{class_ogre_1_1_technique_ac67fd3f320d1541d07cb6c65e58f4892}\label{class_ogre_1_1_technique_ac67fd3f320d1541d07cb6c65e58f4892}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Illumination\+Passes@{get\+Illumination\+Passes}}
\index{get\+Illumination\+Passes@{get\+Illumination\+Passes}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Illumination\+Passes()}{getIlluminationPasses()}}
{\footnotesize\ttfamily const \hyperlink{group___materials_gaff4cf78f2520e56a8c45721e2dc419c9}{Illumination\+Pass\+List}\& Ogre\+::\+Technique\+::get\+Illumination\+Passes (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Gets the illumination-\/stage categorised passes. 

\begin{DoxyNote}{Note}
triggers compilation if needed 
\end{DoxyNote}
\mbox{\Hypertarget{class_ogre_1_1_technique_a3cff77dca6020ab98c0cbbc225913f57}\label{class_ogre_1_1_technique_a3cff77dca6020ab98c0cbbc225913f57}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Parent@{get\+Parent}}
\index{get\+Parent@{get\+Parent}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Parent()}{getParent()}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_material}{Material}$\ast$ Ogre\+::\+Technique\+::get\+Parent (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Gets the parent \hyperlink{class_ogre_1_1_material}{Material}. 



References Ogre\+::\+F\+O\+G\+\_\+\+N\+O\+NE, and Ogre\+::\+Colour\+Value\+::\+White.

\mbox{\Hypertarget{class_ogre_1_1_technique_ac251efbed20452a6efb1361ea5d27496}\label{class_ogre_1_1_technique_ac251efbed20452a6efb1361ea5d27496}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!operator=@{operator=}}
\index{operator=@{operator=}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{operator=()}{operator=()}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_technique}{Technique}\& Ogre\+::\+Technique\+::operator= (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_technique}{Technique} \&}]{rhs }\end{DoxyParamCaption})}



Overloaded operator to copy on \hyperlink{class_ogre_1_1_technique}{Technique} to another. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a9c7802cd8f4224061fa79d17943c01ac}\label{class_ogre_1_1_technique_a9c7802cd8f4224061fa79d17943c01ac}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Resource\+Group@{get\+Resource\+Group}}
\index{get\+Resource\+Group@{get\+Resource\+Group}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Resource\+Group()}{getResourceGroup()}}
{\footnotesize\ttfamily const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}\& Ogre\+::\+Technique\+::get\+Resource\+Group (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Gets the resource group of the ultimate parent \hyperlink{class_ogre_1_1_material}{Material}. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a62b43d297b8de412d601b08978519a83}\label{class_ogre_1_1_technique_a62b43d297b8de412d601b08978519a83}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!is\+Transparent@{is\+Transparent}}
\index{is\+Transparent@{is\+Transparent}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{is\+Transparent()}{isTransparent()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::is\+Transparent (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Returns true if this \hyperlink{class_ogre_1_1_technique}{Technique} involves transparency. 

\begin{DoxyRemark}{Remarks}
This basically boils down to whether the first pass has a scene blending factor. Even if the other passes do not, the base colour, including parts of the original scene, may be used for blending, therefore we have to treat the whole \hyperlink{class_ogre_1_1_technique}{Technique} as transparent. 
\end{DoxyRemark}
\mbox{\Hypertarget{class_ogre_1_1_technique_a100f0393659922c14c06b4cdbf4f2e76}\label{class_ogre_1_1_technique_a100f0393659922c14c06b4cdbf4f2e76}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!is\+Transparent\+Sorting\+Enabled@{is\+Transparent\+Sorting\+Enabled}}
\index{is\+Transparent\+Sorting\+Enabled@{is\+Transparent\+Sorting\+Enabled}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{is\+Transparent\+Sorting\+Enabled()}{isTransparentSortingEnabled()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::is\+Transparent\+Sorting\+Enabled (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Returns true if this \hyperlink{class_ogre_1_1_technique}{Technique} has transparent sorting enabled. 

\begin{DoxyRemark}{Remarks}
This basically boils down to whether the first pass has transparent sorting enabled or not 
\end{DoxyRemark}
\mbox{\Hypertarget{class_ogre_1_1_technique_a373450226634c5316e9523a006112274}\label{class_ogre_1_1_technique_a373450226634c5316e9523a006112274}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!is\+Transparent\+Sorting\+Forced@{is\+Transparent\+Sorting\+Forced}}
\index{is\+Transparent\+Sorting\+Forced@{is\+Transparent\+Sorting\+Forced}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{is\+Transparent\+Sorting\+Forced()}{isTransparentSortingForced()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::is\+Transparent\+Sorting\+Forced (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Returns true if this \hyperlink{class_ogre_1_1_technique}{Technique} has transparent sorting forced. 

\begin{DoxyRemark}{Remarks}
This basically boils down to whether the first pass has transparent sorting forced or not 
\end{DoxyRemark}
\mbox{\Hypertarget{class_ogre_1_1_technique_a5833abf80056c4a18b6eafb137b590bb}\label{class_ogre_1_1_technique_a5833abf80056c4a18b6eafb137b590bb}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!\+\_\+prepare@{\+\_\+prepare}}
\index{\+\_\+prepare@{\+\_\+prepare}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{\+\_\+prepare()}{\_prepare()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::\+\_\+prepare (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Internal prepare method, derived from call to \hyperlink{class_ogre_1_1_resource_a350b287fa3e83a389221274f68760008}{Material\+::prepare}. 

\mbox{\Hypertarget{class_ogre_1_1_technique_ad78f99fe8c81b1dffaf2d9bfc3cfabb4}\label{class_ogre_1_1_technique_ad78f99fe8c81b1dffaf2d9bfc3cfabb4}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!\+\_\+unprepare@{\+\_\+unprepare}}
\index{\+\_\+unprepare@{\+\_\+unprepare}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{\+\_\+unprepare()}{\_unprepare()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::\+\_\+unprepare (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Internal unprepare method, derived from call to Material\+::unprepare. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a92b98b4f291fa76b02d2adeb822998af}\label{class_ogre_1_1_technique_a92b98b4f291fa76b02d2adeb822998af}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!\+\_\+load@{\+\_\+load}}
\index{\+\_\+load@{\+\_\+load}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{\+\_\+load()}{\_load()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::\+\_\+load (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Internal load method, derived from call to \hyperlink{class_ogre_1_1_resource_a699d1c851f494a8d5d23d23b695ceb47}{Material\+::load}. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a73c19a7dd382f37226f307c3afc98794}\label{class_ogre_1_1_technique_a73c19a7dd382f37226f307c3afc98794}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!\+\_\+unload@{\+\_\+unload}}
\index{\+\_\+unload@{\+\_\+unload}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{\+\_\+unload()}{\_unload()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::\+\_\+unload (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Internal unload method, derived from call to \hyperlink{class_ogre_1_1_resource_aa31bef1bfaa87731622e56f11b548e27}{Material\+::unload}. 

\mbox{\Hypertarget{class_ogre_1_1_technique_aaa387fee443de5a25752ec0af27b215d}\label{class_ogre_1_1_technique_aaa387fee443de5a25752ec0af27b215d}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!is\+Loaded@{is\+Loaded}}
\index{is\+Loaded@{is\+Loaded}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{is\+Loaded()}{isLoaded()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::is\+Loaded (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Is this loaded? 

\mbox{\Hypertarget{class_ogre_1_1_technique_aa5ad18f720bba21676f3424ed7b2382d}\label{class_ogre_1_1_technique_aa5ad18f720bba21676f3424ed7b2382d}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!\+\_\+notify\+Needs\+Recompile@{\+\_\+notify\+Needs\+Recompile}}
\index{\+\_\+notify\+Needs\+Recompile@{\+\_\+notify\+Needs\+Recompile}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{\+\_\+notify\+Needs\+Recompile()}{\_notifyNeedsRecompile()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::\+\_\+notify\+Needs\+Recompile (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Tells the technique that it needs recompilation. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a24c0c07f5e6606f69dba099dcae28dc3}\label{class_ogre_1_1_technique_a24c0c07f5e6606f69dba099dcae28dc3}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Shadow\+Caster\+Material@{get\+Shadow\+Caster\+Material}}
\index{get\+Shadow\+Caster\+Material@{get\+Shadow\+Caster\+Material}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Shadow\+Caster\+Material()}{getShadowCasterMaterial()}}
{\footnotesize\ttfamily \hyperlink{namespace_ogre_a57ef769e80226674c3971ce58b58c91d}{Ogre\+::\+Material\+Ptr} Ogre\+::\+Technique\+::get\+Shadow\+Caster\+Material (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}



return this material specific shadow casting specific material 

\mbox{\Hypertarget{class_ogre_1_1_technique_ac0e017f3810451861191fedfe1d51a30}\label{class_ogre_1_1_technique_ac0e017f3810451861191fedfe1d51a30}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Shadow\+Caster\+Material@{set\+Shadow\+Caster\+Material}}
\index{set\+Shadow\+Caster\+Material@{set\+Shadow\+Caster\+Material}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Shadow\+Caster\+Material()}{setShadowCasterMaterial()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Shadow\+Caster\+Material (\begin{DoxyParamCaption}\item[{\hyperlink{namespace_ogre_a57ef769e80226674c3971ce58b58c91d}{Ogre\+::\+Material\+Ptr}}]{val }\end{DoxyParamCaption})}



set this material specific shadow casting specific material 

\mbox{\Hypertarget{class_ogre_1_1_technique_a7913e8419619f0b074e67a638d54eb0f}\label{class_ogre_1_1_technique_a7913e8419619f0b074e67a638d54eb0f}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Shadow\+Caster\+Material@{set\+Shadow\+Caster\+Material}}
\index{set\+Shadow\+Caster\+Material@{set\+Shadow\+Caster\+Material}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Shadow\+Caster\+Material()}{setShadowCasterMaterial()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Shadow\+Caster\+Material (\begin{DoxyParamCaption}\item[{const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{Ogre\+::\+String} \&}]{name }\end{DoxyParamCaption})}



set this material specific shadow casting specific material 

\mbox{\Hypertarget{class_ogre_1_1_technique_a57239d28ba11c19300d1a27651242697}\label{class_ogre_1_1_technique_a57239d28ba11c19300d1a27651242697}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Shadow\+Receiver\+Material@{get\+Shadow\+Receiver\+Material}}
\index{get\+Shadow\+Receiver\+Material@{get\+Shadow\+Receiver\+Material}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Shadow\+Receiver\+Material()}{getShadowReceiverMaterial()}}
{\footnotesize\ttfamily \hyperlink{namespace_ogre_a57ef769e80226674c3971ce58b58c91d}{Ogre\+::\+Material\+Ptr} Ogre\+::\+Technique\+::get\+Shadow\+Receiver\+Material (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}



return this material specific shadow receiving specific material 

\mbox{\Hypertarget{class_ogre_1_1_technique_a14cb59e4b8d1073f5379378ccf43f103}\label{class_ogre_1_1_technique_a14cb59e4b8d1073f5379378ccf43f103}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Shadow\+Receiver\+Material@{set\+Shadow\+Receiver\+Material}}
\index{set\+Shadow\+Receiver\+Material@{set\+Shadow\+Receiver\+Material}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Shadow\+Receiver\+Material()}{setShadowReceiverMaterial()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Shadow\+Receiver\+Material (\begin{DoxyParamCaption}\item[{\hyperlink{namespace_ogre_a57ef769e80226674c3971ce58b58c91d}{Ogre\+::\+Material\+Ptr}}]{val }\end{DoxyParamCaption})}



set this material specific shadow receiving specific material 

\mbox{\Hypertarget{class_ogre_1_1_technique_a03a7f4c6fa69c36b2b92a79917c34ace}\label{class_ogre_1_1_technique_a03a7f4c6fa69c36b2b92a79917c34ace}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Shadow\+Receiver\+Material@{set\+Shadow\+Receiver\+Material}}
\index{set\+Shadow\+Receiver\+Material@{set\+Shadow\+Receiver\+Material}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Shadow\+Receiver\+Material()}{setShadowReceiverMaterial()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Shadow\+Receiver\+Material (\begin{DoxyParamCaption}\item[{const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{Ogre\+::\+String} \&}]{name }\end{DoxyParamCaption})}



set this material specific shadow receiving specific material 

\mbox{\Hypertarget{class_ogre_1_1_technique_a1b7d1d264b34c50b7606c646415a50e8}\label{class_ogre_1_1_technique_a1b7d1d264b34c50b7606c646415a50e8}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Point\+Size@{set\+Point\+Size}}
\index{set\+Point\+Size@{set\+Point\+Size}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Point\+Size()}{setPointSize()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Point\+Size (\begin{DoxyParamCaption}\item[{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}]{ps }\end{DoxyParamCaption})}



Sets the point size properties for every \hyperlink{class_ogre_1_1_pass}{Pass} in this \hyperlink{class_ogre_1_1_technique}{Technique}. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_a2b0cfe1d55b1c03e59c4e3f546d2ec78}{Pass\+::set\+Point\+Size} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_ab4fd76b7e6899ba9f3c302160b392db2}\label{class_ogre_1_1_technique_ab4fd76b7e6899ba9f3c302160b392db2}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Ambient@{set\+Ambient}}
\index{set\+Ambient@{set\+Ambient}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Ambient()}{setAmbient()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Ambient (\begin{DoxyParamCaption}\item[{float}]{red,  }\item[{float}]{green,  }\item[{float}]{blue }\end{DoxyParamCaption})}



Sets the ambient colour reflectance properties for every \hyperlink{class_ogre_1_1_pass}{Pass} in every \hyperlink{class_ogre_1_1_technique}{Technique}. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_aba057d0d19159c21b9a79485512b6f9d}{Pass\+::set\+Ambient} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_ac5d459624ede01672c78846825cc0f96}\label{class_ogre_1_1_technique_ac5d459624ede01672c78846825cc0f96}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Ambient@{set\+Ambient}}
\index{set\+Ambient@{set\+Ambient}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Ambient()}{setAmbient()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Ambient (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_colour_value}{Colour\+Value} \&}]{ambient }\end{DoxyParamCaption})}

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. \mbox{\Hypertarget{class_ogre_1_1_technique_a290b26bac425c362ad25278ff19117bf}\label{class_ogre_1_1_technique_a290b26bac425c362ad25278ff19117bf}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Diffuse@{set\+Diffuse}}
\index{set\+Diffuse@{set\+Diffuse}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Diffuse()}{setDiffuse()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Diffuse (\begin{DoxyParamCaption}\item[{float}]{red,  }\item[{float}]{green,  }\item[{float}]{blue,  }\item[{float}]{alpha }\end{DoxyParamCaption})}



Sets the diffuse colour reflectance properties of every \hyperlink{class_ogre_1_1_pass}{Pass} in every \hyperlink{class_ogre_1_1_technique}{Technique}. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_a823dd0856cf4d8bfa08abc3591c47c02}{Pass\+::set\+Diffuse} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_af5e13d58c70bbeeb1708e1479185a959}\label{class_ogre_1_1_technique_af5e13d58c70bbeeb1708e1479185a959}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Diffuse@{set\+Diffuse}}
\index{set\+Diffuse@{set\+Diffuse}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Diffuse()}{setDiffuse()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Diffuse (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_colour_value}{Colour\+Value} \&}]{diffuse }\end{DoxyParamCaption})}

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. \mbox{\Hypertarget{class_ogre_1_1_technique_a8a9302152c679910610981ba42cae926}\label{class_ogre_1_1_technique_a8a9302152c679910610981ba42cae926}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Specular@{set\+Specular}}
\index{set\+Specular@{set\+Specular}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Specular()}{setSpecular()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Specular (\begin{DoxyParamCaption}\item[{float}]{red,  }\item[{float}]{green,  }\item[{float}]{blue,  }\item[{float}]{alpha }\end{DoxyParamCaption})}



Sets the specular colour reflectance properties of every \hyperlink{class_ogre_1_1_pass}{Pass} in every \hyperlink{class_ogre_1_1_technique}{Technique}. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_a4e47ea4922d6da5b58eb9879f7e9da09}{Pass\+::set\+Specular} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a0add9d092f47eb2b654d936a66902d00}\label{class_ogre_1_1_technique_a0add9d092f47eb2b654d936a66902d00}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Specular@{set\+Specular}}
\index{set\+Specular@{set\+Specular}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Specular()}{setSpecular()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Specular (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_colour_value}{Colour\+Value} \&}]{specular }\end{DoxyParamCaption})}

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. \mbox{\Hypertarget{class_ogre_1_1_technique_aed27a55db91366ee2f95a608f946bc86}\label{class_ogre_1_1_technique_aed27a55db91366ee2f95a608f946bc86}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Shininess@{set\+Shininess}}
\index{set\+Shininess@{set\+Shininess}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Shininess()}{setShininess()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Shininess (\begin{DoxyParamCaption}\item[{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}]{val }\end{DoxyParamCaption})}



Sets the shininess properties of every \hyperlink{class_ogre_1_1_pass}{Pass} in every \hyperlink{class_ogre_1_1_technique}{Technique}. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_a8202cf155d20602fd9c0ec53273a442f}{Pass\+::set\+Shininess} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_aff783d9452b6787a0fdbf83fd8ea0b33}\label{class_ogre_1_1_technique_aff783d9452b6787a0fdbf83fd8ea0b33}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Self\+Illumination@{set\+Self\+Illumination}}
\index{set\+Self\+Illumination@{set\+Self\+Illumination}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Self\+Illumination()}{setSelfIllumination()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Self\+Illumination (\begin{DoxyParamCaption}\item[{float}]{red,  }\item[{float}]{green,  }\item[{float}]{blue }\end{DoxyParamCaption})}



Sets the amount of self-\/illumination of every \hyperlink{class_ogre_1_1_pass}{Pass} in every \hyperlink{class_ogre_1_1_technique}{Technique}. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_a93c36ae948d9e0357c11adb0ce6d5859}{Pass\+::set\+Self\+Illumination} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a9e5d7120bf501c5796bb461ec16ca22d}\label{class_ogre_1_1_technique_a9e5d7120bf501c5796bb461ec16ca22d}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Self\+Illumination@{set\+Self\+Illumination}}
\index{set\+Self\+Illumination@{set\+Self\+Illumination}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Self\+Illumination()}{setSelfIllumination()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Self\+Illumination (\begin{DoxyParamCaption}\item[{const \hyperlink{class_ogre_1_1_colour_value}{Colour\+Value} \&}]{self\+Illum }\end{DoxyParamCaption})}

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. \mbox{\Hypertarget{class_ogre_1_1_technique_a8ccefe2b6bb5b6e66e2dcb081f92847f}\label{class_ogre_1_1_technique_a8ccefe2b6bb5b6e66e2dcb081f92847f}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Depth\+Check\+Enabled@{set\+Depth\+Check\+Enabled}}
\index{set\+Depth\+Check\+Enabled@{set\+Depth\+Check\+Enabled}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Depth\+Check\+Enabled()}{setDepthCheckEnabled()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Depth\+Check\+Enabled (\begin{DoxyParamCaption}\item[{bool}]{enabled }\end{DoxyParamCaption})}



Sets whether or not each \hyperlink{class_ogre_1_1_pass}{Pass} renders with depth-\/buffer checking on or not. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_ae454faee87f8cb0b8540810e48118788}{Pass\+::set\+Depth\+Check\+Enabled} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a17ab42d4b777c0782a2d0170ae5a0970}\label{class_ogre_1_1_technique_a17ab42d4b777c0782a2d0170ae5a0970}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Depth\+Write\+Enabled@{set\+Depth\+Write\+Enabled}}
\index{set\+Depth\+Write\+Enabled@{set\+Depth\+Write\+Enabled}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Depth\+Write\+Enabled()}{setDepthWriteEnabled()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Depth\+Write\+Enabled (\begin{DoxyParamCaption}\item[{bool}]{enabled }\end{DoxyParamCaption})}



Sets whether or not each \hyperlink{class_ogre_1_1_pass}{Pass} renders with depth-\/buffer writing on or not. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_aad3e6c7c7b59e2c303c348b4850b1a3a}{Pass\+::set\+Depth\+Write\+Enabled} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a1f8f52bd7bc067a8f6dac99757063a06}\label{class_ogre_1_1_technique_a1f8f52bd7bc067a8f6dac99757063a06}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Depth\+Function@{set\+Depth\+Function}}
\index{set\+Depth\+Function@{set\+Depth\+Function}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Depth\+Function()}{setDepthFunction()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Depth\+Function (\begin{DoxyParamCaption}\item[{\hyperlink{group___general_ga0212b4eb264f207d84c1df9425208c7a}{Compare\+Function}}]{func }\end{DoxyParamCaption})}



Sets the function used to compare depth values when depth checking is on. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_aef6c591b069aa6f7c65afc1419d47de6}{Pass\+::set\+Depth\+Function} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a155d2bb172e767eab0880667b8669057}\label{class_ogre_1_1_technique_a155d2bb172e767eab0880667b8669057}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Colour\+Write\+Enabled@{set\+Colour\+Write\+Enabled}}
\index{set\+Colour\+Write\+Enabled@{set\+Colour\+Write\+Enabled}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Colour\+Write\+Enabled()}{setColourWriteEnabled()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Colour\+Write\+Enabled (\begin{DoxyParamCaption}\item[{bool}]{enabled }\end{DoxyParamCaption})}



Sets whether or not colour buffer writing is enabled for each \hyperlink{class_ogre_1_1_pass}{Pass}. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_a3bbe37daba7e3be4349177374d4e40ee}{Pass\+::set\+Colour\+Write\+Enabled} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a28dabe8ffdef677134ba9514bf3c2895}\label{class_ogre_1_1_technique_a28dabe8ffdef677134ba9514bf3c2895}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Colour\+Write\+Enabled@{set\+Colour\+Write\+Enabled}}
\index{set\+Colour\+Write\+Enabled@{set\+Colour\+Write\+Enabled}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Colour\+Write\+Enabled()}{setColourWriteEnabled()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Colour\+Write\+Enabled (\begin{DoxyParamCaption}\item[{bool}]{red,  }\item[{bool}]{green,  }\item[{bool}]{blue,  }\item[{bool}]{alpha }\end{DoxyParamCaption})}



Sets which colour buffer channels are enabled for writing for each \hyperlink{class_ogre_1_1_pass}{Pass}. 

\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_a3bbe37daba7e3be4349177374d4e40ee}{Pass\+::set\+Colour\+Write\+Enabled} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_ae3ab7639e71d6118834a9164a7c1c8f9}\label{class_ogre_1_1_technique_ae3ab7639e71d6118834a9164a7c1c8f9}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Culling\+Mode@{set\+Culling\+Mode}}
\index{set\+Culling\+Mode@{set\+Culling\+Mode}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Culling\+Mode()}{setCullingMode()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Culling\+Mode (\begin{DoxyParamCaption}\item[{\hyperlink{group___general_gac173244ed7d950d0acd726e4f323ecdb}{Culling\+Mode}}]{mode }\end{DoxyParamCaption})}



Sets the culling mode for each pass based on the \textquotesingle{}vertex winding\textquotesingle{}. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_a8942abf3ede0f3cb43584c85c4071734}{Pass\+::set\+Culling\+Mode} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a9d9340f9b31f6189e28d62ab00937ab0}\label{class_ogre_1_1_technique_a9d9340f9b31f6189e28d62ab00937ab0}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Manual\+Culling\+Mode@{set\+Manual\+Culling\+Mode}}
\index{set\+Manual\+Culling\+Mode@{set\+Manual\+Culling\+Mode}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Manual\+Culling\+Mode()}{setManualCullingMode()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Manual\+Culling\+Mode (\begin{DoxyParamCaption}\item[{\hyperlink{group___general_ga07ec94cf178172a6778223e6f70f23fc}{Manual\+Culling\+Mode}}]{mode }\end{DoxyParamCaption})}



Sets the manual culling mode, performed by C\+PU rather than hardware. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_a3b528827b54f17b72bb204321640a6f7}{Pass\+::set\+Manual\+Culling\+Mode} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_ab6f31b910ad3b0a22219210290622482}\label{class_ogre_1_1_technique_ab6f31b910ad3b0a22219210290622482}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Lighting\+Enabled@{set\+Lighting\+Enabled}}
\index{set\+Lighting\+Enabled@{set\+Lighting\+Enabled}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Lighting\+Enabled()}{setLightingEnabled()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Lighting\+Enabled (\begin{DoxyParamCaption}\item[{bool}]{enabled }\end{DoxyParamCaption})}



Sets whether or not dynamic lighting is enabled for every \hyperlink{class_ogre_1_1_pass}{Pass}. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_a6285f13a06eb7f00b83ea2754e434623}{Pass\+::set\+Lighting\+Enabled} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a4c3bb63365c701842d4539e32cc1480e}\label{class_ogre_1_1_technique_a4c3bb63365c701842d4539e32cc1480e}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Shading\+Mode@{set\+Shading\+Mode}}
\index{set\+Shading\+Mode@{set\+Shading\+Mode}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Shading\+Mode()}{setShadingMode()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Shading\+Mode (\begin{DoxyParamCaption}\item[{\hyperlink{group___general_ga7afd4c7d428baaee13f3a0dbcae5f560}{Shade\+Options}}]{mode }\end{DoxyParamCaption})}



Sets the type of light shading required. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_ade6c00297cd5d46bb365d981cd1764a6}{Pass\+::set\+Shading\+Mode} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a42c07e62db4e2cbeb75f8253b30e5c3b}\label{class_ogre_1_1_technique_a42c07e62db4e2cbeb75f8253b30e5c3b}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Fog@{set\+Fog}}
\index{set\+Fog@{set\+Fog}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Fog()}{setFog()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Fog (\begin{DoxyParamCaption}\item[{bool}]{override\+Scene,  }\item[{\hyperlink{group___general_ga83edeb2e5d33a3ca8f15834ba40020ba}{Fog\+Mode}}]{mode = {\ttfamily \hyperlink{group___general_gga83edeb2e5d33a3ca8f15834ba40020baab7793a21880052c0214d4cc040992310}{F\+O\+G\+\_\+\+N\+O\+NE}},  }\item[{const \hyperlink{class_ogre_1_1_colour_value}{Colour\+Value} \&}]{colour = {\ttfamily \hyperlink{class_ogre_1_1_colour_value_a8eba66b2908f44f00f8d9c9ec25877de}{Colour\+Value\+::\+White}},  }\item[{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}]{exp\+Density = {\ttfamily 0.001},  }\item[{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}]{linear\+Start = {\ttfamily 0.0},  }\item[{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}]{linear\+End = {\ttfamily 1.0} }\end{DoxyParamCaption})}



Sets the fogging mode applied to each pass. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_a32b0cabffa642b0f3743ac5d82392a1d}{Pass\+::set\+Fog} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a58b4e86384ca3e7a9f03c3fb2a5b3f0d}\label{class_ogre_1_1_technique_a58b4e86384ca3e7a9f03c3fb2a5b3f0d}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Depth\+Bias@{set\+Depth\+Bias}}
\index{set\+Depth\+Bias@{set\+Depth\+Bias}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Depth\+Bias()}{setDepthBias()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Depth\+Bias (\begin{DoxyParamCaption}\item[{float}]{constant\+Bias,  }\item[{float}]{slope\+Scale\+Bias }\end{DoxyParamCaption})}



Sets the depth bias to be used for each \hyperlink{class_ogre_1_1_pass}{Pass}. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_aa35a3242a45176f8605bd8c866198b67}{Pass\+::set\+Depth\+Bias} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a67d7464ef321b859c33c3c1e9334c5f2}\label{class_ogre_1_1_technique_a67d7464ef321b859c33c3c1e9334c5f2}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Texture\+Filtering@{set\+Texture\+Filtering}}
\index{set\+Texture\+Filtering@{set\+Texture\+Filtering}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Texture\+Filtering()}{setTextureFiltering()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Texture\+Filtering (\begin{DoxyParamCaption}\item[{\hyperlink{group___general_ga21a0186392e9c9ce16d29c5568a773c5}{Texture\+Filter\+Options}}]{filter\+Type }\end{DoxyParamCaption})}



Set texture filtering for every texture unit in every \hyperlink{class_ogre_1_1_pass}{Pass}. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_texture_unit_state}{Texture\+Unit\+State} class For simplicity, this method allows you to set these properties for every current Teexture\+Unit\+State, If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} and \hyperlink{class_ogre_1_1_texture_unit_state}{Texture\+Unit\+State} instances and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_texture_unit_state_a30757c168b734902d03720e3f36c27d4}{Texture\+Unit\+State\+::set\+Texture\+Filtering} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a60e62cb6b00f8ae9e9da077d0ecc08ec}\label{class_ogre_1_1_technique_a60e62cb6b00f8ae9e9da077d0ecc08ec}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Texture\+Anisotropy@{set\+Texture\+Anisotropy}}
\index{set\+Texture\+Anisotropy@{set\+Texture\+Anisotropy}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Texture\+Anisotropy()}{setTextureAnisotropy()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Texture\+Anisotropy (\begin{DoxyParamCaption}\item[{unsigned int}]{max\+Aniso }\end{DoxyParamCaption})}



Sets the anisotropy level to be used for all textures. 

\begin{DoxyNote}{Note}
This property has been moved to the \hyperlink{class_ogre_1_1_texture_unit_state}{Texture\+Unit\+State} class, which is accessible via the \hyperlink{class_ogre_1_1_technique}{Technique} and \hyperlink{class_ogre_1_1_pass}{Pass}. For simplicity, this method allows you to set these properties for every current Teexture\+Unit\+State, If you need more precision, retrieve the \hyperlink{class_ogre_1_1_technique}{Technique}, \hyperlink{class_ogre_1_1_pass}{Pass} and \hyperlink{class_ogre_1_1_texture_unit_state}{Texture\+Unit\+State} instances and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_texture_unit_state_abb2bc03bc72f2098e37c4240f637c5e5}{Texture\+Unit\+State\+::set\+Texture\+Anisotropy} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a8d44a97049862fc9c5eb64caf5cbbc2f}\label{class_ogre_1_1_technique_a8d44a97049862fc9c5eb64caf5cbbc2f}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Scene\+Blending@{set\+Scene\+Blending}}
\index{set\+Scene\+Blending@{set\+Scene\+Blending}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Scene\+Blending()}{setSceneBlending()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Scene\+Blending (\begin{DoxyParamCaption}\item[{const \hyperlink{group___materials_gac46c60cf6e5c199220e3b8f26570cb9a}{Scene\+Blend\+Type}}]{sbt }\end{DoxyParamCaption})}



Sets the kind of blending every pass has with the existing contents of the scene. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_ae21d6f29c89eeff54ab6de5562818c02}{Pass\+::set\+Scene\+Blending} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_add4cd758dc843921da3a331bcc1bee1d}\label{class_ogre_1_1_technique_add4cd758dc843921da3a331bcc1bee1d}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Separate\+Scene\+Blending@{set\+Separate\+Scene\+Blending}}
\index{set\+Separate\+Scene\+Blending@{set\+Separate\+Scene\+Blending}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Separate\+Scene\+Blending()}{setSeparateSceneBlending()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Separate\+Scene\+Blending (\begin{DoxyParamCaption}\item[{const \hyperlink{group___materials_gac46c60cf6e5c199220e3b8f26570cb9a}{Scene\+Blend\+Type}}]{sbt,  }\item[{const \hyperlink{group___materials_gac46c60cf6e5c199220e3b8f26570cb9a}{Scene\+Blend\+Type}}]{sbta }\end{DoxyParamCaption})}



Sets the kind of blending every pass has with the existing contents of the scene, using individual factors both color and alpha channels. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_aefbd80d762d78838df626482df1ac81b}{Pass\+::set\+Separate\+Scene\+Blending} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a50815d7c51c153e2a6ab1b581507d28f}\label{class_ogre_1_1_technique_a50815d7c51c153e2a6ab1b581507d28f}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Scene\+Blending@{set\+Scene\+Blending}}
\index{set\+Scene\+Blending@{set\+Scene\+Blending}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Scene\+Blending()}{setSceneBlending()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Scene\+Blending (\begin{DoxyParamCaption}\item[{const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor}}]{source\+Factor,  }\item[{const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor}}]{dest\+Factor }\end{DoxyParamCaption})}



Allows very fine control of blending every \hyperlink{class_ogre_1_1_pass}{Pass} with the existing contents of the scene. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_ae21d6f29c89eeff54ab6de5562818c02}{Pass\+::set\+Scene\+Blending} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a5df9ffbf40cbce69799b3be95cf4b701}\label{class_ogre_1_1_technique_a5df9ffbf40cbce69799b3be95cf4b701}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Separate\+Scene\+Blending@{set\+Separate\+Scene\+Blending}}
\index{set\+Separate\+Scene\+Blending@{set\+Separate\+Scene\+Blending}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Separate\+Scene\+Blending()}{setSeparateSceneBlending()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Separate\+Scene\+Blending (\begin{DoxyParamCaption}\item[{const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor}}]{source\+Factor,  }\item[{const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor}}]{dest\+Factor,  }\item[{const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor}}]{source\+Factor\+Alpha,  }\item[{const \hyperlink{group___materials_ga41c76d419d6c9c205a6c1d3b42872213}{Scene\+Blend\+Factor}}]{dest\+Factor\+Alpha }\end{DoxyParamCaption})}



Allows very fine control of blending every \hyperlink{class_ogre_1_1_pass}{Pass} with the existing contents of the scene, using individual factors both color and alpha channels. 

\begin{DoxyNote}{Note}
This property actually exists on the \hyperlink{class_ogre_1_1_pass}{Pass} class. For simplicity, this method allows you to set these properties for every current \hyperlink{class_ogre_1_1_pass}{Pass} within this \hyperlink{class_ogre_1_1_technique}{Technique}. If you need more precision, retrieve the \hyperlink{class_ogre_1_1_pass}{Pass} instance and set the property there. 
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_pass_aefbd80d762d78838df626482df1ac81b}{Pass\+::set\+Separate\+Scene\+Blending} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_ab72db7823cc9a8e872aed1ca6ae2cff8}\label{class_ogre_1_1_technique_ab72db7823cc9a8e872aed1ca6ae2cff8}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Lod\+Index@{set\+Lod\+Index}}
\index{set\+Lod\+Index@{set\+Lod\+Index}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Lod\+Index()}{setLodIndex()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Lod\+Index (\begin{DoxyParamCaption}\item[{unsigned short}]{index }\end{DoxyParamCaption})}



Assigns a level-\/of-\/detail (L\+OD) index to this \hyperlink{class_ogre_1_1_technique}{Technique}. 

\begin{DoxyRemark}{Remarks}
As noted previously, as well as providing fallback support for various graphics cards, multiple \hyperlink{class_ogre_1_1_technique}{Technique} objects can also be used to implement material L\+OD, where the detail of the material diminishes with distance to save rendering power. 
\end{DoxyRemark}
\begin{DoxyParagraph}{}
By default, all Techniques have a L\+OD index of 0, which means they are the highest level of detail. Increasing L\+OD indexes are lower levels of detail. You can assign more than one \hyperlink{class_ogre_1_1_technique}{Technique} to the same L\+OD index, meaning that the best \hyperlink{class_ogre_1_1_technique}{Technique} that is supported at that L\+OD index is used. 
\end{DoxyParagraph}
\begin{DoxyParagraph}{}
You should not leave gaps in the L\+OD sequence; \hyperlink{namespace_ogre}{Ogre} will allow you to do this and will continue to function as if the L\+O\+Ds were sequential, but it will confuse matters. 
\end{DoxyParagraph}
\mbox{\Hypertarget{class_ogre_1_1_technique_a18697c9c5f2bc1f98d3789ca26a6c0ec}\label{class_ogre_1_1_technique_a18697c9c5f2bc1f98d3789ca26a6c0ec}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Lod\+Index@{get\+Lod\+Index}}
\index{get\+Lod\+Index@{get\+Lod\+Index}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Lod\+Index()}{getLodIndex()}}
{\footnotesize\ttfamily unsigned short Ogre\+::\+Technique\+::get\+Lod\+Index (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Gets the level-\/of-\/detail index assigned to this \hyperlink{class_ogre_1_1_technique}{Technique}. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a43b6c4e9e48c4e56f96633b916ee90a3}\label{class_ogre_1_1_technique_a43b6c4e9e48c4e56f96633b916ee90a3}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Scheme\+Name@{set\+Scheme\+Name}}
\index{set\+Scheme\+Name@{set\+Scheme\+Name}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Scheme\+Name()}{setSchemeName()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Scheme\+Name (\begin{DoxyParamCaption}\item[{const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \&}]{scheme\+Name }\end{DoxyParamCaption})}



Set the \textquotesingle{}scheme name\textquotesingle{} for this technique. 

\begin{DoxyRemark}{Remarks}
\hyperlink{class_ogre_1_1_material}{Material} schemes are used to control top-\/level switching from one set of techniques to another. For example, you might use this to define \textquotesingle{}high\textquotesingle{}, \textquotesingle{}medium\textquotesingle{} and \textquotesingle{}low\textquotesingle{} complexity levels on materials to allow a user to pick a performance / quality ratio. Another possibility is that you have a fully H\+D\+R-\/enabled pipeline for top machines, rendering all objects using unclamped shaders, and a simpler pipeline for others; this can be implemented using schemes. 
\end{DoxyRemark}
\begin{DoxyParagraph}{}
Every technique belongs to a scheme -\/ if you don\textquotesingle{}t specify one, the \hyperlink{class_ogre_1_1_technique}{Technique} belongs to the scheme called \textquotesingle{}Default\textquotesingle{}, which is also the scheme used to render by default. The active scheme is set one of two ways -\/ either by calling \hyperlink{class_ogre_1_1_viewport_a8e8577fd81c45b05de880106f364a281}{Viewport\+::set\+Material\+Scheme}, or by manually calling \hyperlink{class_ogre_1_1_material_manager_a95decc3900f547bb68b74ba28d3013e0}{Material\+Manager\+::set\+Active\+Scheme}. 
\end{DoxyParagraph}
\mbox{\Hypertarget{class_ogre_1_1_technique_a5472361e875965fa57fa7576f832cc7d}\label{class_ogre_1_1_technique_a5472361e875965fa57fa7576f832cc7d}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Scheme\+Name@{get\+Scheme\+Name}}
\index{get\+Scheme\+Name@{get\+Scheme\+Name}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Scheme\+Name()}{getSchemeName()}}
{\footnotesize\ttfamily const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}\& Ogre\+::\+Technique\+::get\+Scheme\+Name (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Returns the scheme to which this technique is assigned. 

\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_technique_a43b6c4e9e48c4e56f96633b916ee90a3}{Technique\+::set\+Scheme\+Name} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a8d374e0051b5d0a38ff9232369720a7b}\label{class_ogre_1_1_technique_a8d374e0051b5d0a38ff9232369720a7b}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!\+\_\+get\+Scheme\+Index@{\+\_\+get\+Scheme\+Index}}
\index{\+\_\+get\+Scheme\+Index@{\+\_\+get\+Scheme\+Index}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{\+\_\+get\+Scheme\+Index()}{\_getSchemeIndex()}}
{\footnotesize\ttfamily unsigned short Ogre\+::\+Technique\+::\+\_\+get\+Scheme\+Index (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Internal method for getting the scheme index. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a93ca213f1f6b4e5de440950f87d16c82}\label{class_ogre_1_1_technique_a93ca213f1f6b4e5de440950f87d16c82}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!is\+Depth\+Write\+Enabled@{is\+Depth\+Write\+Enabled}}
\index{is\+Depth\+Write\+Enabled@{is\+Depth\+Write\+Enabled}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{is\+Depth\+Write\+Enabled()}{isDepthWriteEnabled()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::is\+Depth\+Write\+Enabled (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Is depth writing going to occur on this technique? 

\mbox{\Hypertarget{class_ogre_1_1_technique_a5b1efc3fe1d8143d2f5d5d65127c2e27}\label{class_ogre_1_1_technique_a5b1efc3fe1d8143d2f5d5d65127c2e27}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!is\+Depth\+Check\+Enabled@{is\+Depth\+Check\+Enabled}}
\index{is\+Depth\+Check\+Enabled@{is\+Depth\+Check\+Enabled}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{is\+Depth\+Check\+Enabled()}{isDepthCheckEnabled()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::is\+Depth\+Check\+Enabled (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Is depth checking going to occur on this technique? 

\mbox{\Hypertarget{class_ogre_1_1_technique_aeaf1f068b46e9249c6ba4621ef695256}\label{class_ogre_1_1_technique_aeaf1f068b46e9249c6ba4621ef695256}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!has\+Colour\+Write\+Disabled@{has\+Colour\+Write\+Disabled}}
\index{has\+Colour\+Write\+Disabled@{has\+Colour\+Write\+Disabled}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{has\+Colour\+Write\+Disabled()}{hasColourWriteDisabled()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::has\+Colour\+Write\+Disabled (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const}



Exists colour writing disabled pass on this technique? 

\mbox{\Hypertarget{class_ogre_1_1_technique_a365b0e6313b646d0ecc13c1c52a6d3ad}\label{class_ogre_1_1_technique_a365b0e6313b646d0ecc13c1c52a6d3ad}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!set\+Name@{set\+Name}}
\index{set\+Name@{set\+Name}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{set\+Name()}{setName()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::set\+Name (\begin{DoxyParamCaption}\item[{const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \&}]{name }\end{DoxyParamCaption})}



Set the name of the technique. 

\begin{DoxyRemark}{Remarks}
The use of technique name is optional. Its useful in material scripts where a material could inherit from another material and only want to modify a particular technique. 
\end{DoxyRemark}
\mbox{\Hypertarget{class_ogre_1_1_technique_a7751c3441cb6cbc1744f29c4ccb63ef0}\label{class_ogre_1_1_technique_a7751c3441cb6cbc1744f29c4ccb63ef0}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+Name@{get\+Name}}
\index{get\+Name@{get\+Name}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+Name()}{getName()}}
{\footnotesize\ttfamily const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}\& Ogre\+::\+Technique\+::get\+Name (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Gets the name of the technique. 

\mbox{\Hypertarget{class_ogre_1_1_technique_abab977f0e76de9d6f04be3d3df0195b6}\label{class_ogre_1_1_technique_abab977f0e76de9d6f04be3d3df0195b6}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!apply\+Texture\+Aliases@{apply\+Texture\+Aliases}}
\index{apply\+Texture\+Aliases@{apply\+Texture\+Aliases}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{apply\+Texture\+Aliases()}{applyTextureAliases()}}
{\footnotesize\ttfamily bool Ogre\+::\+Technique\+::apply\+Texture\+Aliases (\begin{DoxyParamCaption}\item[{const \hyperlink{group___general_ga5dafc9e68bde8099ec5ad6c94e4cf19b}{Alias\+Texture\+Name\+Pair\+List} \&}]{alias\+List,  }\item[{const bool}]{apply = {\ttfamily true} }\end{DoxyParamCaption}) const}



Applies texture names to \hyperlink{class_ogre_1_1_texture}{Texture} Unit State with matching texture name aliases. 

All passes, and \hyperlink{class_ogre_1_1_texture}{Texture} Unit States within the technique are checked. If matching texture aliases are found then true is returned.


\begin{DoxyParams}{Parameters}
{\em alias\+List} & is a map container of texture alias, texture name pairs \\
\hline
{\em apply} & set true to apply the texture aliases else just test to see if texture alias matches are found. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
True if matching texture aliases were found in the \hyperlink{class_ogre_1_1_technique}{Technique}. 
\end{DoxyReturn}
\mbox{\Hypertarget{class_ogre_1_1_technique_afe3b09baa8cd8566f994ad4ee5d125d1}\label{class_ogre_1_1_technique_afe3b09baa8cd8566f994ad4ee5d125d1}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!add\+G\+P\+U\+Vendor\+Rule@{add\+G\+P\+U\+Vendor\+Rule}}
\index{add\+G\+P\+U\+Vendor\+Rule@{add\+G\+P\+U\+Vendor\+Rule}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{add\+G\+P\+U\+Vendor\+Rule()}{addGPUVendorRule()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::add\+G\+P\+U\+Vendor\+Rule (\begin{DoxyParamCaption}\item[{\hyperlink{group___render_system_gac4c251bcc05376f701348bfe0f4a53b4}{G\+P\+U\+Vendor}}]{vendor,  }\item[{\hyperlink{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2d}{Include\+Or\+Exclude}}]{include\+Or\+Exclude }\end{DoxyParamCaption})}



Add a rule which manually influences the support for this technique based on a G\+PU vendor. 

\begin{DoxyRemark}{Remarks}
You can use this facility to manually control whether a technique is considered supported, based on a G\+PU vendor. You can add inclusive or exclusive rules, and you can add as many of each as you like. If at least one inclusive rule is added, a technique is considered unsupported if it does not match any of those inclusive rules. If exclusive rules are added, the technique is considered unsupported if it matches any of those inclusive rules. 
\end{DoxyRemark}
\begin{DoxyNote}{Note}
\hyperlink{class_ogre_1_1_any}{Any} rule for the same vendor will be removed before adding this one. 
\end{DoxyNote}

\begin{DoxyParams}{Parameters}
{\em vendor} & The G\+PU vendor \\
\hline
{\em include\+Or\+Exclude} & Whether this is an inclusive or exclusive rule \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{class_ogre_1_1_technique_ac6a82a8dedd6ecc9228e392aec08bd52}\label{class_ogre_1_1_technique_ac6a82a8dedd6ecc9228e392aec08bd52}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!add\+G\+P\+U\+Vendor\+Rule@{add\+G\+P\+U\+Vendor\+Rule}}
\index{add\+G\+P\+U\+Vendor\+Rule@{add\+G\+P\+U\+Vendor\+Rule}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{add\+G\+P\+U\+Vendor\+Rule()}{addGPUVendorRule()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::add\+G\+P\+U\+Vendor\+Rule (\begin{DoxyParamCaption}\item[{const \hyperlink{struct_ogre_1_1_technique_1_1_g_p_u_vendor_rule}{G\+P\+U\+Vendor\+Rule} \&}]{rule }\end{DoxyParamCaption})}



Add a rule which manually influences the support for this technique based on a G\+PU vendor. 

\begin{DoxyRemark}{Remarks}
You can use this facility to manually control whether a technique is considered supported, based on a G\+PU vendor. You can add inclusive or exclusive rules, and you can add as many of each as you like. If at least one inclusive rule is added, a technique is considered unsupported if it does not match any of those inclusive rules. If exclusive rules are added, the technique is considered unsupported if it matches any of those inclusive rules. 
\end{DoxyRemark}
\begin{DoxyNote}{Note}
\hyperlink{class_ogre_1_1_any}{Any} rule for the same vendor will be removed before adding this one. 
\end{DoxyNote}
\mbox{\Hypertarget{class_ogre_1_1_technique_aeaadeb93509d6fc3ca27686ca83e76be}\label{class_ogre_1_1_technique_aeaadeb93509d6fc3ca27686ca83e76be}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!remove\+G\+P\+U\+Vendor\+Rule@{remove\+G\+P\+U\+Vendor\+Rule}}
\index{remove\+G\+P\+U\+Vendor\+Rule@{remove\+G\+P\+U\+Vendor\+Rule}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{remove\+G\+P\+U\+Vendor\+Rule()}{removeGPUVendorRule()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::remove\+G\+P\+U\+Vendor\+Rule (\begin{DoxyParamCaption}\item[{\hyperlink{group___render_system_gac4c251bcc05376f701348bfe0f4a53b4}{G\+P\+U\+Vendor}}]{vendor }\end{DoxyParamCaption})}



Removes a matching vendor rule. 

\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_technique_afe3b09baa8cd8566f994ad4ee5d125d1}{add\+G\+P\+U\+Vendor\+Rule} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a87bae44184a980abc5c1fad546781c22}\label{class_ogre_1_1_technique_a87bae44184a980abc5c1fad546781c22}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+G\+P\+U\+Vendor\+Rule\+Iterator@{get\+G\+P\+U\+Vendor\+Rule\+Iterator}}
\index{get\+G\+P\+U\+Vendor\+Rule\+Iterator@{get\+G\+P\+U\+Vendor\+Rule\+Iterator}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+G\+P\+U\+Vendor\+Rule\+Iterator()}{getGPUVendorRuleIterator()}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_technique_a2497a0043902e9d2af0757d769da655c}{G\+P\+U\+Vendor\+Rule\+Iterator} Ogre\+::\+Technique\+::get\+G\+P\+U\+Vendor\+Rule\+Iterator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}



Get an iterator over the currently registered vendor rules. 

\begin{DoxyRefDesc}{Deprecated}
\item[\hyperlink{deprecated__deprecated000155}{Deprecated}]use \hyperlink{class_ogre_1_1_technique_a5f207095e9bbda9dde11227756c1e8e8}{get\+G\+P\+U\+Vendor\+Rules()} \end{DoxyRefDesc}
\mbox{\Hypertarget{class_ogre_1_1_technique_a5f207095e9bbda9dde11227756c1e8e8}\label{class_ogre_1_1_technique_a5f207095e9bbda9dde11227756c1e8e8}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+G\+P\+U\+Vendor\+Rules@{get\+G\+P\+U\+Vendor\+Rules}}
\index{get\+G\+P\+U\+Vendor\+Rules@{get\+G\+P\+U\+Vendor\+Rules}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+G\+P\+U\+Vendor\+Rules()}{getGPUVendorRules()}}
{\footnotesize\ttfamily const \hyperlink{class_ogre_1_1_technique_a02400e8fcd433054c6559331858a782e}{G\+P\+U\+Vendor\+Rule\+List}\& Ogre\+::\+Technique\+::get\+G\+P\+U\+Vendor\+Rules (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Get the currently registered vendor rules. 

\mbox{\Hypertarget{class_ogre_1_1_technique_ab6be978dbdbe321f7e8e9803aa29c2d1}\label{class_ogre_1_1_technique_ab6be978dbdbe321f7e8e9803aa29c2d1}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!add\+G\+P\+U\+Device\+Name\+Rule@{add\+G\+P\+U\+Device\+Name\+Rule}}
\index{add\+G\+P\+U\+Device\+Name\+Rule@{add\+G\+P\+U\+Device\+Name\+Rule}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{add\+G\+P\+U\+Device\+Name\+Rule()}{addGPUDeviceNameRule()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::add\+G\+P\+U\+Device\+Name\+Rule (\begin{DoxyParamCaption}\item[{const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \&}]{device\+Pattern,  }\item[{\hyperlink{class_ogre_1_1_technique_a1ade219e17b5e8d73d079d11f64a2a2d}{Include\+Or\+Exclude}}]{include\+Or\+Exclude,  }\item[{bool}]{case\+Sensitive = {\ttfamily false} }\end{DoxyParamCaption})}



Add a rule which manually influences the support for this technique based on a pattern that matches a G\+PU device name (e.\+g. 

\textquotesingle{}{\itshape 8800}\textquotesingle{}). \begin{DoxyRemark}{Remarks}
You can use this facility to manually control whether a technique is considered supported, based on a G\+PU device name pattern. You can add inclusive or exclusive rules, and you can add as many of each as you like. If at least one inclusive rule is added, a technique is considered unsupported if it does not match any of those inclusive rules. If exclusive rules are added, the technique is considered unsupported if it matches any of those inclusive rules. The pattern you supply can include wildcard characters (\textquotesingle{}$\ast$\textquotesingle{}) if you only want to match part of the device name. 
\end{DoxyRemark}
\begin{DoxyNote}{Note}
\hyperlink{class_ogre_1_1_any}{Any} rule for the same device pattern will be removed before adding this one. 
\end{DoxyNote}

\begin{DoxyParams}{Parameters}
{\em device\+Pattern} & The G\+PU vendor \\
\hline
{\em include\+Or\+Exclude} & Whether this is an inclusive or exclusive rule \\
\hline
{\em case\+Sensitive} & Whether the match is case sensitive or not \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{class_ogre_1_1_technique_ad0b1efd013753818ae29fd15a27c9744}\label{class_ogre_1_1_technique_ad0b1efd013753818ae29fd15a27c9744}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!add\+G\+P\+U\+Device\+Name\+Rule@{add\+G\+P\+U\+Device\+Name\+Rule}}
\index{add\+G\+P\+U\+Device\+Name\+Rule@{add\+G\+P\+U\+Device\+Name\+Rule}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{add\+G\+P\+U\+Device\+Name\+Rule()}{addGPUDeviceNameRule()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::add\+G\+P\+U\+Device\+Name\+Rule (\begin{DoxyParamCaption}\item[{const \hyperlink{struct_ogre_1_1_technique_1_1_g_p_u_device_name_rule}{G\+P\+U\+Device\+Name\+Rule} \&}]{rule }\end{DoxyParamCaption})}

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. \mbox{\Hypertarget{class_ogre_1_1_technique_a593e0e3c8e9d7a43155be8c6fdbfa8f7}\label{class_ogre_1_1_technique_a593e0e3c8e9d7a43155be8c6fdbfa8f7}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!remove\+G\+P\+U\+Device\+Name\+Rule@{remove\+G\+P\+U\+Device\+Name\+Rule}}
\index{remove\+G\+P\+U\+Device\+Name\+Rule@{remove\+G\+P\+U\+Device\+Name\+Rule}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{remove\+G\+P\+U\+Device\+Name\+Rule()}{removeGPUDeviceNameRule()}}
{\footnotesize\ttfamily void Ogre\+::\+Technique\+::remove\+G\+P\+U\+Device\+Name\+Rule (\begin{DoxyParamCaption}\item[{const \hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String} \&}]{device\+Pattern }\end{DoxyParamCaption})}



Removes a matching device name rule. 

\begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_technique_ab6be978dbdbe321f7e8e9803aa29c2d1}{add\+G\+P\+U\+Device\+Name\+Rule} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a8220d069967117f15e63a236e221c6a2}\label{class_ogre_1_1_technique_a8220d069967117f15e63a236e221c6a2}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+G\+P\+U\+Device\+Name\+Rule\+Iterator@{get\+G\+P\+U\+Device\+Name\+Rule\+Iterator}}
\index{get\+G\+P\+U\+Device\+Name\+Rule\+Iterator@{get\+G\+P\+U\+Device\+Name\+Rule\+Iterator}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+G\+P\+U\+Device\+Name\+Rule\+Iterator()}{getGPUDeviceNameRuleIterator()}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_technique_a63da4eb10f7272486a9806374b09bab6}{G\+P\+U\+Device\+Name\+Rule\+Iterator} Ogre\+::\+Technique\+::get\+G\+P\+U\+Device\+Name\+Rule\+Iterator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}



Get an iterator over the currently registered device name rules. 

\begin{DoxyRefDesc}{Deprecated}
\item[\hyperlink{deprecated__deprecated000156}{Deprecated}]use \hyperlink{class_ogre_1_1_technique_a0fb4cc2bde522445d8d4548e6c6697d4}{get\+G\+P\+U\+Device\+Name\+Rules()} \end{DoxyRefDesc}
\mbox{\Hypertarget{class_ogre_1_1_technique_a0fb4cc2bde522445d8d4548e6c6697d4}\label{class_ogre_1_1_technique_a0fb4cc2bde522445d8d4548e6c6697d4}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+G\+P\+U\+Device\+Name\+Rules@{get\+G\+P\+U\+Device\+Name\+Rules}}
\index{get\+G\+P\+U\+Device\+Name\+Rules@{get\+G\+P\+U\+Device\+Name\+Rules}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+G\+P\+U\+Device\+Name\+Rules()}{getGPUDeviceNameRules()}}
{\footnotesize\ttfamily const \hyperlink{class_ogre_1_1_technique_a19e4233dcb87fbb8d592133ca7f10626}{G\+P\+U\+Device\+Name\+Rule\+List}\& Ogre\+::\+Technique\+::get\+G\+P\+U\+Device\+Name\+Rules (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Get the currently registered device name rules. 

\mbox{\Hypertarget{class_ogre_1_1_technique_a96db53bdf6b3f097fcb9a038df84abe9}\label{class_ogre_1_1_technique_a96db53bdf6b3f097fcb9a038df84abe9}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+User\+Object\+Bindings@{get\+User\+Object\+Bindings}}
\index{get\+User\+Object\+Bindings@{get\+User\+Object\+Bindings}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+User\+Object\+Bindings()}{getUserObjectBindings()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \hyperlink{class_ogre_1_1_user_object_bindings}{User\+Object\+Bindings}\& Ogre\+::\+Technique\+::get\+User\+Object\+Bindings (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Return an instance of user objects binding associated with this class. 

You can use it to associate one or more custom objects with this class instance. \begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_user_object_bindings_ac6d05bbca44c5c3b44860c36205f9a68}{User\+Object\+Bindings\+::set\+User\+Any}. 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_ogre_1_1_technique_a9fd23883c7d06966a259a1490a6b8ffa}\label{class_ogre_1_1_technique_a9fd23883c7d06966a259a1490a6b8ffa}} 
\index{Ogre\+::\+Technique@{Ogre\+::\+Technique}!get\+User\+Object\+Bindings@{get\+User\+Object\+Bindings}}
\index{get\+User\+Object\+Bindings@{get\+User\+Object\+Bindings}!Ogre\+::\+Technique@{Ogre\+::\+Technique}}
\subsubsection{\texorpdfstring{get\+User\+Object\+Bindings()}{getUserObjectBindings()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily const \hyperlink{class_ogre_1_1_user_object_bindings}{User\+Object\+Bindings}\& Ogre\+::\+Technique\+::get\+User\+Object\+Bindings (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Return an instance of user objects binding associated with this class. 

You can use it to associate one or more custom objects with this class instance. \begin{DoxySeeAlso}{See also}
\hyperlink{class_ogre_1_1_user_object_bindings_ac6d05bbca44c5c3b44860c36205f9a68}{User\+Object\+Bindings\+::set\+User\+Any}. 
\end{DoxySeeAlso}


The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
\hyperlink{_ogre_technique_8h}{Ogre\+Technique.\+h}\end{DoxyCompactItemize}
