<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Graphic Stream : Tips</title><link>http://msmvps.com/blogs/valentin/archive/tags/Tips/default.aspx</link><description>Tags: Tips</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>Ombre en Silverlight</title><link>http://msmvps.com/blogs/valentin/archive/2009/03/18/ombre-en-silverlight.aspx</link><pubDate>Wed, 18 Mar 2009 03:13:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1679005</guid><dc:creator>valentin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/valentin/rsscomments.aspx?PostID=1679005</wfw:commentRss><comments>http://msmvps.com/blogs/valentin/archive/2009/03/18/ombre-en-silverlight.aspx#comments</comments><description>&lt;p&gt;Aujourd&amp;#39;hui pour faire une ombre sous un contr&amp;ocirc;le en Silverlight il n&amp;#39;y a pas beaucoup de possibilit&amp;eacute;s.&lt;/p&gt;
&lt;p&gt;Le faire en vectoriel s&amp;#39;av&amp;egrave;re difficile et on a l&amp;#39;habitude de passer par une image PNG, ce qui n&amp;#39;est pas forcement le plus optimis&amp;eacute;.&lt;/p&gt;
&lt;p&gt;Voici un simple code qui permet de corriger cela, et en vectoriel.&amp;nbsp; Vivement l&amp;#39;ajout d&amp;#39;effet en Silverlight pour eviter de passer par ce genre de tips...&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;UserControl x:Class=&amp;quot;SmartInterface.TravelingPanel&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;xmlns=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;xmlns:x=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;xmlns:d=&amp;quot;http://schemas.microsoft.com/expression/blend/2008&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;xmlns:mc=&amp;quot;http://schemas.openxmlformats.org/markup-compatibility/2006&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;mc:Ignorable=&amp;quot;d&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;d:DesignWidth=&amp;quot;640&amp;quot; d:DesignHeight=&amp;quot;480&amp;quot; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;Width=&amp;quot;340&amp;quot; Height=&amp;quot;340&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;RenderTransformOrigin=&amp;quot;0.5,0.5&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;Grid x:Name=&amp;quot;LayoutRoot&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;Grid.ColumnDefinitions&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;ColumnDefinition Width=&amp;quot;*&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/Grid.ColumnDefinitions&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;!-- Six lignes qui cr&amp;sbquo;&amp;sbquo;ent un effet d&amp;#39;ombrage--&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;font-family:courier new,courier;"&gt;&amp;lt;Border CornerRadius=&amp;quot;16&amp;quot; Margin=&amp;quot;-6&amp;quot; BorderThickness=&amp;quot;1&amp;quot; BorderBrush=&amp;quot;Black&amp;quot; Opacity=&amp;quot;0.10&amp;quot; /&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;font-family:courier new,courier;"&gt;&amp;lt;Border CornerRadius=&amp;quot;15&amp;quot; Margin=&amp;quot;-5&amp;quot; BorderThickness=&amp;quot;1&amp;quot; BorderBrush=&amp;quot;Black&amp;quot; Opacity=&amp;quot;0.20&amp;quot; /&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;font-family:courier new,courier;"&gt;&amp;lt;Border CornerRadius=&amp;quot;14&amp;quot; Margin=&amp;quot;-4&amp;quot; BorderThickness=&amp;quot;1&amp;quot; BorderBrush=&amp;quot;Black&amp;quot; Opacity=&amp;quot;0.30&amp;quot; /&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;font-family:courier new,courier;"&gt;&amp;lt;Border CornerRadius=&amp;quot;13&amp;quot; Margin=&amp;quot;-3&amp;quot; BorderThickness=&amp;quot;1&amp;quot; BorderBrush=&amp;quot;Black&amp;quot; Opacity=&amp;quot;0.40&amp;quot; /&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;font-family:courier new,courier;"&gt;&amp;lt;Border CornerRadius=&amp;quot;12&amp;quot; Margin=&amp;quot;-2&amp;quot; BorderThickness=&amp;quot;1&amp;quot; BorderBrush=&amp;quot;Black&amp;quot; Opacity=&amp;quot;0.50&amp;quot; /&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#0000ff;font-family:courier new,courier;"&gt;&amp;lt;Border CornerRadius=&amp;quot;11&amp;quot; Margin=&amp;quot;-1&amp;quot; BorderThickness=&amp;quot;1&amp;quot; BorderBrush=&amp;quot;Black&amp;quot; Opacity=&amp;quot;0.60&amp;quot; /&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;Border Name=&amp;quot;ExternalBorder&amp;quot; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;CornerRadius=&amp;quot;10,10,10,10&amp;quot; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;Background=&amp;quot;#FF92B825&amp;quot; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;BorderBrush=&amp;quot;#FF6D8A17&amp;quot; BorderThickness=&amp;quot;1&amp;quot; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;RenderTransformOrigin=&amp;quot;0.5,0.5&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;Border Name=&amp;quot;InternalBorder&amp;quot; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;CornerRadius=&amp;quot;10,10,10,10&amp;quot; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;Background=&amp;quot;#FF92B825&amp;quot; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;BorderBrush=&amp;quot;#FFB7D265&amp;quot; BorderThickness=&amp;quot;1&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;Canvas Clip=&amp;quot;M0,8 C0,3.581722 3.581722,0 8,0 L328,0 C332.41827,0 336,3.581722 336,8 L336,328 C336,332.41827 332.41827,336 328,336 L8,336 C3.581722,336 0,332.41827 0,328 z&amp;quot; &amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;Rectangle Width=&amp;quot;336&amp;quot; Height=&amp;quot;336&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;Rectangle.Fill&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;RadialGradientBrush GradientOrigin=&amp;quot;0.197,0.58&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;RadialGradientBrush.RelativeTransform&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;TransformGroup&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;ScaleTransform CenterX=&amp;quot;0.5&amp;quot; CenterY=&amp;quot;0.5&amp;quot; ScaleY=&amp;quot;1.27&amp;quot; ScaleX=&amp;quot;1.874&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;SkewTransform CenterX=&amp;quot;0.5&amp;quot; CenterY=&amp;quot;0.5&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;RotateTransform CenterX=&amp;quot;0.5&amp;quot; CenterY=&amp;quot;0.5&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;TranslateTransform Y=&amp;quot;0.234&amp;quot; X=&amp;quot;0.191&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/TransformGroup&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/RadialGradientBrush.RelativeTransform&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;GradientStop Color=&amp;quot;#FF6D8A17&amp;quot; Offset=&amp;quot;0.759&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;GradientStop Color=&amp;quot;#FF92B825&amp;quot; Offset=&amp;quot;1&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/RadialGradientBrush&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/Rectangle.Fill&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/Rectangle&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;Rectangle Width=&amp;quot;336&amp;quot; Height=&amp;quot;336&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;Rectangle.Fill&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;LinearGradientBrush EndPoint=&amp;quot;0.5,1&amp;quot; StartPoint=&amp;quot;0.5,0&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;GradientStop Color=&amp;quot;#B2000000&amp;quot; Offset=&amp;quot;0.978&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;GradientStop Color=&amp;quot;#00FFFFFF&amp;quot; Offset=&amp;quot;0.527&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/LinearGradientBrush&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/Rectangle.Fill&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/Rectangle&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/Canvas&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/Border&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/Border&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/Grid&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#333333;font-family:courier new,courier;"&gt;&amp;lt;/UserControl&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Les deux Border d&amp;#39;affil&amp;eacute;s provoquent cet effet d&amp;#39;ombrage r&amp;eacute;alis&amp;eacute; relativement facilement et sutout tr&amp;egrave;s rapide &amp;agrave; afficher pour le moteur graphique de votre plugin pr&amp;eacute;f&amp;eacute;r&amp;eacute;. Le resultat est le suivant :&lt;span style="font-size:x-small;color:#0000ff;"&gt;&lt;span style="font-size:x-small;color:#0000ff;"&gt;
&lt;p&gt;&lt;span style="color:#000000;"&gt;&lt;img width="383" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.Tips.Silverlight/shadowsl.png" height="375" style="vertical-align:middle;border:2px solid black;" alt="" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;span style="font-size:x-small;color:#0000ff;"&gt;&lt;span style="font-size:x-small;color:#0000ff;"&gt;
&lt;p&gt;
&lt;p&gt;&lt;span style="font-size:small;color:#000000;"&gt;J&amp;#39;utilise un Border dans la mesure o&amp;ugrave; le contr&amp;ocirc;le sur lequel j&amp;#39;applique un ombrage poss&amp;egrave;de des cot&amp;eacute;s arrondis. Sur les contr&amp;ocirc;les carr&amp;eacute;s ou rectangulaires, l&amp;#39;utilisation du shape Line sera un meilleur choix. Enfin, il suffit de jouer sur la taille de la bordure (Thickness) pour affiner l&amp;#39;ombrage ainsi que le nombre de couche pour am&amp;eacute;liorer le rendu (ici de 0,60d &amp;agrave; 0,10d).&lt;/span&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:x-small;color:#0000ff;"&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;p&gt;A bientôt sur ce Blog !&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1679005" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/valentin/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/WPF/default.aspx">WPF</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Silverlight/default.aspx">Silverlight</category></item><item><title>Optimization de code pour du Xna rapide et efficace !</title><link>http://msmvps.com/blogs/valentin/archive/2009/02/28/optimization-de-code-pour-du-xna-rapide-et-efficace.aspx</link><pubDate>Sat, 28 Feb 2009 13:53:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1674838</guid><dc:creator>valentin</dc:creator><slash:comments>8</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/valentin/rsscomments.aspx?PostID=1674838</wfw:commentRss><comments>http://msmvps.com/blogs/valentin/archive/2009/02/28/optimization-de-code-pour-du-xna-rapide-et-efficace.aspx#comments</comments><description>&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Je dois en omettre un grand nombre, si vous en avez d&amp;#39;autres n&amp;#39;hesitez pas &amp;agrave; me les soumettre que je les rajoute ici !&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&lt;strong&gt;Premi&amp;egrave;re optimisation, les strings&amp;nbsp;:&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Eviter tout indexeur &amp;agrave; base de string s&amp;rsquo;il y&amp;rsquo;a un &amp;eacute;quivalent &amp;agrave; base d&amp;rsquo;int. &lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;L&amp;#39;instruction :&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:courier new,courier;"&gt;myEffect.Techniques[&amp;quot;Precompiled&amp;quot;] ;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Est bien moins efficace q&amp;#39;un :&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:courier new,courier;"&gt;const int TechnikIndex = 0;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:courier new,courier;"&gt;myEffect.Technique[TechnikIndex]&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Eviter au maximum la class string, si on a besoin de puissance. En C# tout modification d&amp;#39;une string entraine la cr&amp;eacute;ation d&amp;#39;une nouvelle instance et donc une allocation m&amp;eacute;moire. Une string N EST JAMAIS MODIFIABLE et l&amp;#39;allocation m&amp;eacute;moire est une op&amp;eacute;ration tr&amp;egrave;s couteuse en temps. Il faut donc travailler un maximum avec StringBuilder.&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&amp;nbsp;Besoin de comprendre le string intern pool. Quand on cr&amp;eacute;&amp;eacute; une string, le clr regarde dans un pool interne si elle existe avant de la cr&amp;eacute;er.&amp;nbsp;(m&amp;eacute;thode statique Intern de la classe string).&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Donc string jamais collect&amp;eacute;s comme les objets communs dans le GC.&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&lt;strong&gt;&amp;nbsp;Boxing/unboxing&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Boxing passage d&amp;#39;un value type (exemple int) &amp;agrave; une classe objet .&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Par exemple : &lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:courier new,courier;"&gt;int a&amp;nbsp; = 0;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:courier new,courier;"&gt;object o = (object)a;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Unboxing est l&amp;#39;op&amp;eacute;ration inverse.&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;boxed = 20 fois plus de traitement CPU qu&amp;#39;une simple affectation de ref&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;unboxed = 4 fois plus&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;= g&amp;eacute;n&amp;eacute;ric autant que faire se peux (optimization en Early binding)&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&amp;nbsp;Pour les struct, implementer la m&amp;eacute;thode ToString (sinon il y&amp;rsquo;a boxing en objet pour chaque appel &amp;agrave; cette m&amp;eacute;thode)&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&lt;strong&gt;Array&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Jagged Arrays &amp;gt; Rectangular Array ([][] &amp;gt; [,])&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Privilegier les for au foreach (moins n&amp;eacute;cessaire depuis le .Net 3.0)&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;addrange plutot que add&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Range Check important, exemple :&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;/&lt;/span&gt;&lt;span style="font-family:courier new,courier;"&gt;/rapide&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:courier new,courier;"&gt;for(int i = 0; i &amp;lt; myArray.Length; i++) &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:courier new,courier;"&gt;{&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:courier new,courier;"&gt;&amp;nbsp;&amp;nbsp; Console.WriteLine(myArray.ToString());&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:courier new,courier;"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:courier new,courier;"&gt;//plus lent&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:courier new,courier;"&gt;for(int i = 0; i &amp;lt; myArray.Length + y; i++) &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:courier new,courier;"&gt;{&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:courier new,courier;"&gt;&amp;nbsp;&amp;nbsp; Console.WriteLine(myArray[i+x].ToString());&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:small;font-family:courier new,courier;"&gt;}&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Dans la seconde boucle le test ne porte pas sur la longueur du tableau trait&amp;eacute; mais sur une autre valeur, il y&amp;rsquo;a donc des tests suppl&amp;eacute;mentaire ajout&amp;eacute; en IL pour g&amp;eacute;n&amp;eacute;rer une exception en cas de sortir de Bounds.&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&lt;strong&gt;Methodes :&lt;/strong&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Il y&amp;rsquo;a quelque regles simples pour que le compilateur utilise de l&amp;rsquo;inlined&amp;nbsp;(suppresion &amp;agrave; la compilation d&amp;#39;une m&amp;eacute;thode pour inclure son code en lieu et place de l&amp;#39;instruction appellant la dite m&amp;eacute;thode) :&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;32o d&amp;#39;il (8instructions) max par m&amp;eacute;thode/accesseur/mutateur &amp;agrave; &amp;quot;inliner&amp;quot;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;pas de structures conditionnelles dans le bloc &amp;agrave; inliner&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;pas de type struct utilis&amp;eacute; dans le bloc &amp;agrave; inliner&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;pas de bloc Try/Catch/Finaly dans le bloc &amp;agrave; inliner.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Si il n&amp;rsquo;y a pas besoin de rendre le code compr&amp;eacute;hensible on priviligiera les chunky call au maximum (m&amp;eacute;thodes &amp;eacute;normes en lieu et place de myriades de petites m&amp;eacute;thodes qui s&amp;rsquo;appellent les unes les autres).&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&lt;strong&gt;Thread&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;Synchroniser les thread : System.Threading.Interlocked class&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&lt;strong&gt;Exception&lt;/strong&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;retourner des enum plutot que des exception sur les m&amp;eacute;thodes critiques&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Eviter ce genre de code&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;public static void Main(string[] args){&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&amp;nbsp; int j = 0;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&amp;nbsp; for(int i = 0; i &amp;lt; 10000; i++){&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; try{&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; j = i;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new System.Exception();&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } catch {}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&amp;nbsp; }&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;}&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;En asp.net, &amp;agrave; eviter :&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;L&amp;rsquo;instruction : Response.Redirect() elle provoque un ThreadAbortException&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Un throw d&amp;#39;exception perturbe gravement l&amp;#39;activit&amp;eacute; CPU associ&amp;eacute;e &amp;agrave; votre applicatif.&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&lt;strong&gt;Objets&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Utiliser au maximum les structure l&amp;agrave; ou la notion de r&amp;eacute;f&amp;eacute;rence n&amp;rsquo;est pas importante (besoin ponctuelle d&amp;rsquo;agr&amp;eacute;gat ordonn&amp;eacute; de donn&amp;eacute;es) en lieu et place d&amp;rsquo;une class&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;(Exemple de la structure Point, Rectangle, etc.)&amp;nbsp;. La gestion en m&amp;eacute;moire est alors bien plus efficace et rapide.&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Apprecier au maximum l&amp;rsquo;attribut Fieldoffset qui permet de r&amp;eacute;aliser l&amp;rsquo;&amp;eacute;quivalent de l&amp;rsquo;Union du langage C pour optimiser la m&amp;eacute;moire&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Utiliser les weakreference notamment pour le cache, afin de ne pas surcharger la m&amp;eacute;moire.&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&amp;nbsp;&lt;strong&gt;Framework&amp;nbsp;:&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Working Set : charger une assembly pour profiter d&amp;#39;une seule de ses m&amp;eacute;thodes c&amp;#39;est pas bien !&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Utiliser vadump.exe pour d&amp;eacute;tecter ca dans son framework&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Se servir de Perfmon et de ses attributs (nb de classes charg&amp;eacute;es, nombre de m&amp;eacute;thodes, temps pass&amp;eacute; &amp;agrave; loader, JITed, etc.)&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&lt;strong&gt;&amp;nbsp;Executables&amp;nbsp;:&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Pr&amp;eacute;compilation avec ngen.exe pour les exes critiques. Permet de pr&amp;eacute;compiler son application pour un premier lancement rapide.&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&lt;strong&gt;SQL&amp;nbsp;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;connexion ouverte longtemps &amp;lt; multiple ouverture /fermeture de connexion&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Datareader &amp;gt; dataset&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Annuler le transaction enlistment si inutile&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&amp;nbsp;SqlConnection conn = new SqlConnection(&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;&amp;quot;Server=exasrv01;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Times New Roman;"&gt;Integrated Security=true;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:auto 0cm;" class="xmsonormal"&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;Enlist=false&amp;quot;);&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1674838" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/valentin/archive/tags/Coding/default.aspx">Coding</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Optimization/default.aspx">Optimization</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Bonnes+Pratiques/default.aspx">Bonnes Pratiques</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Tutorial/default.aspx">Tutorial</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/XNA/default.aspx">XNA</category></item><item><title>Les meilleures sessions Xna aux techdays</title><link>http://msmvps.com/blogs/valentin/archive/2008/01/25/les-meilleures-sessions-xna-aux-techdays.aspx</link><pubDate>Fri, 25 Jan 2008 12:32:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1479993</guid><dc:creator>valentin</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/valentin/rsscomments.aspx?PostID=1479993</wfw:commentRss><comments>http://msmvps.com/blogs/valentin/archive/2008/01/25/les-meilleures-sessions-xna-aux-techdays.aspx#comments</comments><description>&lt;p&gt;&amp;nbsp;Pour ceux qui vont aux techdays voici ce que je selectionnerai pour approcher tout ce qui touche au multimédia, jeux, developpement :&lt;/p&gt;
&lt;p&gt;&lt;a href="http://galilee.microsoft.fr/TechDays2008/Recherche-Session.aspx?Key=xna&amp;amp;domID=&amp;amp;PRODUIT=&amp;amp;AUDIENCE=&amp;amp;LEVEL=&amp;amp;SpkID"&gt;http://galilee.microsoft.fr/TechDays2008/Recherche-Session.aspx?Key=xna&amp;amp;domID=&amp;amp;PRODUIT=&amp;amp;AUDIENCE=&amp;amp;LEVEL=&amp;amp;SpkID&lt;/a&gt;=&lt;/p&gt;
&lt;p&gt;&lt;a href="http://galilee.microsoft.fr/TechDays2008/Recherche-Session.aspx?Key=directx&amp;amp;domID=&amp;amp;PRODUIT=&amp;amp;AUDIENCE=&amp;amp;LEVEL=&amp;amp;SpkID"&gt;http://galilee.microsoft.fr/TechDays2008/Recherche-Session.aspx?Key=directx&amp;amp;domID=&amp;amp;PRODUIT=&amp;amp;AUDIENCE=&amp;amp;LEVEL=&amp;amp;SpkID&lt;/a&gt;=&lt;/p&gt;
&lt;p&gt;&lt;a href="http://galilee.microsoft.fr/TechDays2008/Recherche-Session.aspx?Key=&amp;amp;domID=&amp;amp;PRODUIT=897ed8b3-7e75-446c-b2d8-28adbd31f674&amp;amp;AUDIENCE=&amp;amp;LEVEL=&amp;amp;SpkID=&amp;amp;x=21&amp;amp;y=11"&gt;http://galilee.microsoft.fr/TechDays2008/Recherche-Session.aspx?Key=&amp;amp;domID=&amp;amp;PRODUIT=897ed8b3-7e75-446c-b2d8-28adbd31f674&amp;amp;AUDIENCE=&amp;amp;LEVEL=&amp;amp;SpkID=&amp;amp;x=21&amp;amp;y=11&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://galilee.microsoft.fr/TechDays2008/Session.aspx?CellID=4cde9cee-db06-4f5b-bd6e-a9d031a4fdb2"&gt;http://galilee.microsoft.fr/TechDays2008/Session.aspx?CellID=4cde9cee-db06-4f5b-bd6e-a9d031a4fdb2&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://galilee.microsoft.fr/TechDays2008/Session.aspx?CellID=b400af3d-5dfb-4b7f-afdb-af293ab0ba70"&gt;http://galilee.microsoft.fr/TechDays2008/Session.aspx?CellID=b400af3d-5dfb-4b7f-afdb-af293ab0ba70&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://galilee.microsoft.fr/TechDays2008/Session.aspx?CellID=4435849c-bd65-47da-9eff-1405877f996e"&gt;http://galilee.microsoft.fr/TechDays2008/Session.aspx?CellID=4435849c-bd65-47da-9eff-1405877f996e&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://galilee.microsoft.fr/TechDays2008/Session.aspx?CellID=64962a3a-9582-4d41-833a-e8a3e4fb986c"&gt;http://galilee.microsoft.fr/TechDays2008/Session.aspx?CellID=64962a3a-9582-4d41-833a-e8a3e4fb986c&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://galilee.microsoft.fr/TechDays2008/Session.aspx?CellID=24d5fe9e-3a1d-4f76-b0c3-e7d5b50fa59d"&gt;http://galilee.microsoft.fr/TechDays2008/Session.aspx?CellID=24d5fe9e-3a1d-4f76-b0c3-e7d5b50fa59d&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;Les sujets qu&amp;#39;on y trouve sont vastes... Peu abordent vraiment le multimedia, mais on peut facilement se débrouiller pour améliorer ses compétences dans des domaines paralleles mais au combien importants...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1479993" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/valentin/archive/tags/Bonnes+Pratiques/default.aspx">Bonnes Pratiques</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/News/default.aspx">News</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/XNA/default.aspx">XNA</category></item><item><title>Wanted : Ressources 3D/2D pour projets Xna</title><link>http://msmvps.com/blogs/valentin/archive/2007/12/20/wanted-ressources-3d-2d-pour-projets-xna.aspx</link><pubDate>Thu, 20 Dec 2007 09:53:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1407034</guid><dc:creator>valentin</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/valentin/rsscomments.aspx?PostID=1407034</wfw:commentRss><comments>http://msmvps.com/blogs/valentin/archive/2007/12/20/wanted-ressources-3d-2d-pour-projets-xna.aspx#comments</comments><description>&lt;p&gt;Je reçois bcp de mails de personnes qui me demandent comment trouver des resources 3D ou 2D ou bien savoir quels logiciels utiliser pour en créer. &lt;/p&gt;
&lt;p&gt;&amp;nbsp;Il y&amp;#39;a un grand nombre de visites sur ce blog (pratiquement 100000 en un an), je propose que chacun&amp;nbsp;d&amp;#39;entre nous indique où il trouve les ressources pour ses projets.&amp;nbsp;Chaque contribution sera ajoutée à ce post.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;Un gros merci.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;Je commence &amp;nbsp;:&lt;/p&gt;
&lt;p&gt;Les SDK DirectX : &lt;a href="http://msdn2.microsoft.com/en-us/directx/aa937788.aspx"&gt;http://msdn2.microsoft.com/en-us/directx/aa937788.aspx&lt;/a&gt;&lt;br /&gt;Ils contiennent un grand nombre de fichiers X, texture et modèles en tout genre&lt;/p&gt;
&lt;p&gt;Les projets MS Research : &lt;a href="http://research.microsoft.com/research/allegiance/"&gt;http://research.microsoft.com/research/allegiance/&lt;/a&gt;&lt;br /&gt;Un jeu complet à la Microosft Game, futuriste avec un très grand nombre de ressources (X animés notament)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1407034" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/valentin/archive/tags/Texture/default.aspx">Texture</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Mesh/default.aspx">Mesh</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/XNA/default.aspx">XNA</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Resources/default.aspx">Resources</category></item><item><title>"Le type de projet n'est pas pris en charge par cette installation" pour les projets NetRumble / Marblets / Racing Game</title><link>http://msmvps.com/blogs/valentin/archive/2007/12/19/quot-le-type-de-projet-n-est-pas-pris-en-charge-par-cette-installation-quot-pour-les-projets-netrumble-marblets-racing-game.aspx</link><pubDate>Wed, 19 Dec 2007 13:31:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1405379</guid><dc:creator>valentin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/valentin/rsscomments.aspx?PostID=1405379</wfw:commentRss><comments>http://msmvps.com/blogs/valentin/archive/2007/12/19/quot-le-type-de-projet-n-est-pas-pris-en-charge-par-cette-installation-quot-pour-les-projets-netrumble-marblets-racing-game.aspx#comments</comments><description>&lt;div class="CommentText3"&gt;
&lt;p&gt;Une réponse faite à feed dans les commentaires d&amp;#39;un de mes posts pour répondre à son probleme :&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;quot;Le template NetRumble se lance, mais pas Marblets ou Racing Game : &amp;quot;Le type de projet n&amp;#39;est pas pris en charge par cette installation&amp;quot;&lt;/p&gt;
&lt;p&gt;En deux mots, tous les exemples du Xna Game Studio Engine 2.0 n&amp;#39;ont pas été portés de la 1.0 vers la 2.0, les projets sont donc incompatibles.&lt;/p&gt;
&lt;p&gt;Différentes solutions pour utiliser ces projets d&amp;#39;exemple :&lt;/p&gt;
&lt;p&gt;Utiliser un wizard de mise à jour (&lt;a href="http://creators.xna.com/Education/GettingStarted.aspx" target="_new" rel="nofollow"&gt;creators.xna.com/.../GettingStarted.aspx&lt;/a&gt;) &lt;/p&gt;
&lt;p&gt;Créer un projet GSE 2.0 et ajoute manuellement tous les fichiers et ressources du projet au bon emplacement (un peu chiant :) )&lt;/p&gt;
&lt;p&gt;Installer à nouveau la 1.0 refresh qui peut cohexister avec la 2.0.&lt;/p&gt;
&lt;p&gt;Attendre la possible sortie d&amp;#39;une version upgradée de ces projets (soit de la part de MS soit de la part d&amp;#39;un passionné)&lt;/p&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1405379" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/valentin/archive/tags/Visual+Studio/default.aspx">Visual Studio</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/XNA/default.aspx">XNA</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Bug/default.aspx">Bug</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/.Net/default.aspx">.Net</category></item><item><title>Fenêtre de création de projets vide sous Visual Studio 2005</title><link>http://msmvps.com/blogs/valentin/archive/2007/04/04/fen-tre-de-cr-ation-de-projets-vide-sous-visual-studio-2005.aspx</link><pubDate>Wed, 04 Apr 2007 09:29:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:751791</guid><dc:creator>valentin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/valentin/rsscomments.aspx?PostID=751791</wfw:commentRss><comments>http://msmvps.com/blogs/valentin/archive/2007/04/04/fen-tre-de-cr-ation-de-projets-vide-sous-visual-studio-2005.aspx#comments</comments><description>&lt;P&gt;Je ne sais pas si ca vous est déjà arrivé mais moi oui. En gros après l'installation d'un produit qui ajoute des extensions à Visual Studio 2005 on se retrouve avec la fenêtre de création de projets complètement vide : plus aucun template (exit Application Windows, Class Library, Web Site etc.). Souvent, il ne reste d'ailleur que les templates liés à l'extension qu'on vient de mettre (supppeeeer).&lt;/P&gt;
&lt;P&gt;On se retrouve donc complètement bloqué. J'ai eu ce problème plusieurs fois, notamment avec WWF, Ajax et VSTO. C'est peut être moi qui opère mal,en tout cas, je me souviens que je n'étais pas le seul&amp;nbsp;sur le net lorsque le problème s'est présenté la première fois.&lt;/P&gt;
&lt;P&gt;Je viens d'aider deux personnes qui ont eu cette *** et je me suis dis qu'il&amp;nbsp;serait cool de placer une solution en Francais sur le net, la voici :&lt;/P&gt;
&lt;P&gt;Il suffit tout simplement d'aller dans Tools/Options/Environmet/International Settings/Language. A priori par défaut vous avez en langage celui de Windows. Changez ce langage pour English. Fermez Visual Studio et reouvrez le. Normalement tout est rétabli.&lt;/P&gt;
&lt;P&gt;A l'époque de 2003 je me souviens d'un deven.exe /installvstemplates mais si cette option ne plante pas, elle ne change rien à ce problème.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Pas la peine de me demander le pourquoi du comment : je ne sais pas pourquoi ca rétabli tout :)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;A bientôt sur ce Blog !&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=751791" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/valentin/archive/tags/Visual+Studio/default.aspx">Visual Studio</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Bug/default.aspx">Bug</category></item><item><title>Annexe : Transformations et Matrices</title><link>http://msmvps.com/blogs/valentin/archive/2007/02/05/azrr.aspx</link><pubDate>Mon, 05 Feb 2007 23:58:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:547370</guid><dc:creator>valentin</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/valentin/rsscomments.aspx?PostID=547370</wfw:commentRss><comments>http://msmvps.com/blogs/valentin/archive/2007/02/05/azrr.aspx#comments</comments><description>&lt;p&gt;&lt;font face="verdana,geneva"&gt;&lt;img style="WIDTH:24px;HEIGHT:24px;" height="24" src="http://msmvps.com/photos/valentin/images/887626/original.aspx" width="24" align="absMiddle" border="1" alt="" /&gt;&lt;font style="BACKGROUND-COLOR:#ffff00;" face="Arial"&gt;Retourner au &lt;/font&gt;&lt;a class="" href="http://msmvps.com/blogs/valentin/archive/2007/03/30/tutoriaux-xna-sommaire-g-n-ral.aspx"&gt;&lt;font style="BACKGROUND-COLOR:#ffff00;" face="Arial"&gt;sommaire des cours&lt;/font&gt;&lt;/a&gt;&lt;font face="Arial"&gt;&amp;nbsp;&lt;/font&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;Les transformations dans l&amp;#39;espace représentent le traitement clé de voute dans toute application 3D. C&amp;#39;est par les transformations que les objets prennent vie. Une transformation pour parler simplement est une suite de multiplication de matrices. Généralement on distingue 3 types de&amp;nbsp;matrices pour travailler sur un modèle 3D avant son affichage à l&amp;#39;écran : les matrices de rotation, les matrices de redimentionnement, les matrices de translation. Lorsqu&amp;#39;on veut déplacer un objet de le faire tourner il suffit donc de réaliser des traitements du type :&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="courier new,courier"&gt;&amp;nbsp;matriceTransformation = matriceRotation * matriceTranslation&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;Ici nous réalisons une rotation puis une translation. L&amp;#39;objet représente le résultat de cette transformation et peut être vu comme un condensé unique des deux matrices. C&amp;#39;est cette matrice qui sera affectée à la matrice monde (ou World) pour placer l&amp;#39;objet à l&amp;#39;écran avant son affichage.&amp;nbsp;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;Vous devez, lorsque vous effectuez ce genre de calculs, garder en tête que : &lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;&lt;font face="verdana,geneva"&gt;Toute transformation sur un objet s&amp;#39;effectué par rapport au repère de cet objet.&lt;/font&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;font face="Verdana"&gt;La multiplication de matrices, n&amp;#39;est pas commutative.&lt;/font&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&amp;nbsp;Revenons justement sur ces deux notions.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&lt;/font&gt;&lt;/p&gt;&lt;font face="verdana,geneva"&gt;&amp;nbsp;&lt;/font&gt; 
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&lt;strong&gt;&lt;font size="4"&gt;Repère de l&amp;#39;objet&lt;/font&gt;&lt;/strong&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&amp;nbsp;Lorsqu&amp;#39;on effectue une transformation sur un objet, cette transformation se fait par rapport au point d&amp;#39;origine dans le repère de l&amp;#39;objet. Le repère de l&amp;#39;objet est le repère par rapport auquel vous vous référez lorsque vous placez les vertices du modèle que vous voulez afficher.&lt;/font&gt;&lt;font face="verdana,geneva"&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;Prenons par exemple les huits points de ce cube :&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0cm 0cm 0pt;mso-layout-grid-align:none;"&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;&lt;font color="#000000"&gt;vertices[0].Position = &lt;/font&gt;&lt;span style="COLOR:blue;"&gt;new&lt;/span&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;&lt;font color="#000000"&gt;(-10f, -10f, -10f);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0cm 0cm 0pt;mso-layout-grid-align:none;"&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;&lt;font color="#000000"&gt;vertices[1].Position = &lt;/font&gt;&lt;span style="COLOR:blue;"&gt;new&lt;/span&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;&lt;font color="#000000"&gt;(-10f, -10f, 10f);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0cm 0cm 0pt;mso-layout-grid-align:none;"&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;&lt;font color="#000000"&gt;vertices[2].Position = &lt;/font&gt;&lt;span style="COLOR:blue;"&gt;new&lt;/span&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;&lt;font color="#000000"&gt;(10f, -10f, 10f);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0cm 0cm 0pt;mso-layout-grid-align:none;"&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;&lt;font color="#000000"&gt;vertices[3].Position = &lt;/font&gt;&lt;span style="COLOR:blue;"&gt;new&lt;/span&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;&lt;font color="#000000"&gt;(10f, -10f, -10f);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0cm 0cm 0pt;mso-layout-grid-align:none;"&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;&lt;font color="#000000"&gt;vertices[4].Position = &lt;/font&gt;&lt;span style="COLOR:blue;"&gt;new&lt;/span&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;&lt;font color="#000000"&gt;(10f, 10f, 10f);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0cm 0cm 0pt;mso-layout-grid-align:none;"&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;&lt;font color="#000000"&gt;vertices[5].Position = &lt;/font&gt;&lt;span style="COLOR:blue;"&gt;new&lt;/span&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;&lt;font color="#000000"&gt;(10f, 10f, -10f);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0cm 0cm 0pt;mso-layout-grid-align:none;"&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;&lt;font color="#000000"&gt;vertices&lt;img src="http://msmvps.com/emoticons/emotion-14.gif" alt="Devil" /&gt;.Position = &lt;/font&gt;&lt;span style="COLOR:blue;"&gt;new&lt;/span&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;&lt;font color="#000000"&gt;(-10f, 10f, -10f);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0cm 0cm 0pt;mso-layout-grid-align:none;"&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;&lt;font color="#000000"&gt;vertices[7].Position = &lt;/font&gt;&lt;span style="COLOR:blue;"&gt;new&lt;/span&gt;&lt;font color="#000000"&gt; &lt;/font&gt;&lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;&lt;font color="#000000"&gt;(-10f, 10f, 10f);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;Ici le cube fait 20 unités de coté (de -10 à +10).&amp;nbsp; Le point d&amp;#39;origine (0, 0, 0) du repère qui lui est associé se trouve pile au centre du cube. Si nous effectuons une rotation du cube, celle-ci s&amp;#39;effectuera donc par rapport à cette origine qui, étant au centre du cube, donnera l&amp;#39;impression que le cube tourne sur lui-même. L&amp;#39;image suivant illustre cela :&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&lt;img title="Le cube tourne par rapport au centre du repère associé qui se trouve au centre du cube" style="WIDTH:475px;HEIGHT:473px;" height="473" alt="Le cube tourne par rapport au centre du repère associé qui se trouve au centre du cube" src="http://msmvps.com/photos/valentin/images/558816/original.aspx" width="475" align="absMiddle" border="2" /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&amp;nbsp;(nous effectuons ici une rotation sur X et Y).&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&amp;nbsp;Maintenant regardons un cube créé avec les 8 points suivants :&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;vertices[0].Position = &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;(0f, 0f, 0f);&lt;/font&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;vertices[1].Position = &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;(0f, 0f, 20f);&lt;/font&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;vertices[2].Position = &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;(20f, 0f, 20f);&lt;/font&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;vertices[3].Position = &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;(20f, 0f, 0f);&lt;/font&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;vertices[4].Position = &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;(20f, 20f, 20f);&lt;/font&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;vertices[5].Position = &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;(20f, 20f, 0f);&lt;/font&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;vertices&lt;img src="http://msmvps.com/emoticons/emotion-14.gif" alt="Devil" /&gt;.Position = &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;(0f, 20f, 0f);&lt;span style="COLOR:green;"&gt;//&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;vertices[7].Position = &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;(0f, 20f, 20f);&lt;/font&gt;&lt;/span&gt; 
&lt;p&gt;&lt;font face="verdana,geneva"&gt;Là encore, chaque coté du cube possède une taille de 20 unités. Mais le centre du repère (0 ,0 ,0) correspond au premier point. La rotation que nous avons effectué précédemment associée à ce cube se fera par rapport à ce point. Le cube ne tournera donc plus sur lui-même mais par rapport à un de ses sommets. L&amp;#39;image suivant illustre celà :&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&lt;img title="La rotation est excentrée parcequ&amp;#39;effectuée par rapport au centre du repère associée qui n&amp;#39;est pas au centre du cube" style="WIDTH:477px;HEIGHT:474px;" height="474" alt="La rotation est excentrée parcequ&amp;#39;effectuée par rapport au centre du repère associée qui n&amp;#39;est pas au centre du cube" src="http://msmvps.com/photos/valentin/images/558849/original.aspx" width="477" align="absMiddle" border="2" /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&amp;nbsp;Ici, c&amp;#39;est le point de couleur jaune qui est au centre du repère. &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;Nous venons de faire un grand pas pour bien comprendre comment maitriser les matrices et les transformations associées.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva" size="4"&gt;&lt;strong&gt;Ordre des transformations / Communativité&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;&lt;font face="Verdana"&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;Au tout début de cet article, nous avons vu l&amp;#39;instruction suivante :&amp;nbsp;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&amp;nbsp;&lt;/font&gt;&lt;font face="Courier New"&gt;&amp;nbsp;matriceTransformation = matriceRotation * matriceTranslation&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;Sachant que la classe &lt;span style="COLOR:teal;"&gt;Matrix&lt;/span&gt; nous offre un ensemble de méthodes statiques clé en main pour créer ce type de matrices, en langage C# nous aurions quelque chose du genre&amp;nbsp;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&lt;font face="Courier New"&gt;matriceTransformation = Matrix.CreateRotationY(MathHelper.PIOver2)* Matrix.CreateTranslation(20, 0, 0)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;Pour créer&amp;nbsp;une rotation de 90° &lt;strong&gt;&lt;font color="#ff0000"&gt;suivie&lt;/font&gt;&lt;/strong&gt; d&amp;#39;une translation. Le verbe&amp;nbsp;au participe passé &amp;quot;suivie&amp;#39; est important dans cette phrase. Je n&amp;#39;ai pas utilisé le complément &amp;quot;et&amp;quot;. En effet il y&amp;#39;a une notion d&amp;#39;ordre dans le multiplication des matrices ; &lt;font face="verdana,geneva"&gt;C&amp;#39;est au niveau de ce genre de traitement qu&amp;#39;il nous faut faire attention. La multiplication de matrices n&amp;#39;est en effet pas commutative ; l&amp;#39;instruction précécent ne donne pas le même résultat que :&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;&lt;font face="courier new,courier"&gt;matriceTransformation = matriceTranslation *matriceRotation&lt;/font&gt; &lt;/font&gt;&lt;/p&gt;&lt;/font&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;On peut se référer au premier point de cet article où les transformations s&amp;#39;effectuent par rapport au modèle de l&amp;#39;objet. Prenons l&amp;#39;affichage suivant :&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;&lt;img title="Notre cube au départ" style="WIDTH:400px;HEIGHT:300px;" height="300" alt="Notre cube au départ" src="http://msmvps.com/photos/valentin/images/546254/original.aspx" width="400" align="absMiddle" border="2" /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;Nous disposons ici d&amp;#39;un cube. Si nous effectuons une rotation&amp;nbsp;sur l&amp;#39;axe Z, l&amp;#39;arrete située sur l&amp;#39;axe X se&amp;nbsp;trouvera sur l&amp;#39;axe Y. Le pavé aura tourné autour de son origine. Si maintenant nous effectuons une translation sur l&amp;#39;axe X, le pavé tourné va être déplacé et nous obtiendrons comme résultat pour :&amp;nbsp;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;&amp;nbsp;&lt;font face="Courier New"&gt;&amp;nbsp;matriceTransformation = matriceRotation * matriceTranslation&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;&amp;nbsp;Le rendu :&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="WIDTH:400px;HEIGHT:300px;" height="300" src="http://msmvps.com/photos/valentin/images/546260/original.aspx" width="400" align="absMiddle" border="2" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;Revenons maitenant au premier affichage et essayons l&amp;#39;instruction :&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;&lt;font face="Courier New"&gt;matriceTransformation = matriceTranslation *matriceRotation&lt;/font&gt; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;La transformation commence d&amp;#39;abord ici par une translation d&amp;#39;une distance que nous appelerons D. Nous obtenons donc le même résultat que l&amp;#39;image précédente mais avec un pavé non tourné. Une rotation est ensuite effectée. C&amp;#39;est là que la différence se fait pleinement sentir : la rotation se situe non pas par rapport au pavé mais par rapport au centre du repère de l&amp;#39;objet qui se situe à une distance D de l&amp;#39;objet. La rotation va donc faire tourner l&amp;#39;objet autour d&amp;#39;un cercle imaginaire possèdant un rayon d&amp;#39;une taille équivalente à D. Le résultat donne donc :&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="WIDTH:400px;HEIGHT:300px;" height="300" src="http://msmvps.com/photos/valentin/images/546261/original.aspx" width="400" align="absMiddle" border="2" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;Cet exemple illustre parfaitement la non commutativité de la multiplication de matrices. Même si cet exemple est simple, il faut toujour garder à l&amp;#39;esprit cette loi fondamentale, surtout lorsqu&amp;#39;on travaille sur un très grand nombre de matrices qui interagissent entre elles.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana" size="4"&gt;&lt;strong&gt;Exemple de classe &amp;quot;Transform-Safe&amp;quot;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;Pour terminer cet article, voici une classe dont hérite la plupart des objets métier affiché à l&amp;#39;écran dans les applications 3D que je réalise. Elle donne à ses objets enfants un ensemble de propriétés et de méthodes simples qui permettent d&amp;#39;interragir avec l&amp;#39;objet de manière transparente et intuitive pour modifier l&amp;#39;objet avant son rendu.&lt;/font&gt;&lt;/p&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;mso-ansi-language:EN-GB;"&gt;&lt;font face="verdana,geneva"&gt;&lt;span style="mso-spacerun:yes;"&gt;&lt;span style="FONT-SIZE:10pt;COLOR:gray;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;///&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:green;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:gray;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:gray;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;///&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:green;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:gray;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:green;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;Defines a transformable object.&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:gray;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:gray;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;///&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:green;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:gray;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;public&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; &lt;span style="COLOR:blue;"&gt;class&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;TransformBase&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#region&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; Private members&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[System.Diagnostics.&lt;span style="COLOR:teal;"&gt;DebuggerBrowsable&lt;/span&gt;(System.Diagnostics.&lt;span style="COLOR:teal;"&gt;DebuggerBrowsableState&lt;/span&gt;.Never)]&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Matrix&lt;/span&gt; _translation;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[System.Diagnostics.&lt;span style="COLOR:teal;"&gt;DebuggerBrowsable&lt;/span&gt;(System.Diagnostics.&lt;span style="COLOR:teal;"&gt;DebuggerBrowsableState&lt;/span&gt;.Never)]&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Matrix&lt;/span&gt; _rotation;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[System.Diagnostics.&lt;span style="COLOR:teal;"&gt;DebuggerBrowsable&lt;/span&gt;(System.Diagnostics.&lt;span style="COLOR:teal;"&gt;DebuggerBrowsableState&lt;/span&gt;.Never)]&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Matrix&lt;/span&gt; _scale;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[System.Diagnostics.&lt;span style="COLOR:teal;"&gt;DebuggerBrowsable&lt;/span&gt;(System.Diagnostics.&lt;span style="COLOR:teal;"&gt;DebuggerBrowsableState&lt;/span&gt;.Never)]&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; _rotationX, _rotationY, _rotationZ;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#endregion&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#region&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; Properties&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Gets the associated transformation matrix.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Matrix&lt;/span&gt; Transform&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale * &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotation * &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Gets or sets the current object&amp;#39;s position.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt; Position&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt;(&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M41, &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M42, &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M43);&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M41 = &lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;.X;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M42 = &lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;.Y;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M43 = &lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;.Z;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Gets or sets the position on the X axis.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; X&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M41;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M41 = &lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Gets or sets the position on the Y axis.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; Y&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M42;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M42 = &lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Gets or sets the position on the Z axis.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; Z&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M43;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M43 = &lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Gets or sets the current rotation in radian on X axis.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; XRotation&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationX;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;.Rotate(&lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;, _rotationY, _rotationZ);&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Gets or sets the current rotation in radian on Y axis.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; YRotation&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationY;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;.Rotate(_rotationX, &lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;, _rotationZ);&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Gets or sets the current rotation in radian on Z axis.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; ZRotation&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationZ;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;.Rotate(_rotationX, _rotationY, &lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;);&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Gets or sets the current scale on X axis.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; XScale&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M11;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M11 = &lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Gets or sets the current scale on X axis.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; YScale&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M22;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M22 = &lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Gets or sets the current scale on X axis.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; ZScale&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M33;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M33 = &lt;span style="COLOR:blue;"&gt;value&lt;/span&gt;;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#endregion&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#region&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; Constructor&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Default constructor.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; TransformBase()&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Reset();&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#endregion&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#region&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; Public methods&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Reset the matrices to default position.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;void&lt;/span&gt; Reset()&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation = &lt;span style="COLOR:teal;"&gt;Matrix&lt;/span&gt;.Identity;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotation = &lt;span style="COLOR:teal;"&gt;Matrix&lt;/span&gt;.Identity;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale = &lt;span style="COLOR:teal;"&gt;Matrix&lt;/span&gt;.Identity;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationX = _rotationY = _rotationZ = 0.0f;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#endregion&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#region&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; Transform methods&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#region&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; Translate&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Move current object to the specified location.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;x&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Position X-axis value.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;y&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Position Y-axis value.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;z&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Position Z-axis value.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;void&lt;/span&gt; MoveTo(&lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; x, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; y, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; z)&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M41 = x;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M42 = y;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._translation.M43 = z;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Move current object to the specified location.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;translation&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Position&amp;#39;s vector.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;void&lt;/span&gt; MoveTo(&lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt; translation)&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;.MoveTo(translation.X, translation.Y, translation.Z);&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Translate current object from the current position with the specified vector.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;x&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Vector X-axis value.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;y&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Vector Y-axis value.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;z&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Vector Z-axis value.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;void&lt;/span&gt; Translate(&lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; x, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; y, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; z)&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;_translation.M41 += x;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;_translation.M42 += y;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;_translation.M43 += z;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Translate current object from the current position with the specified vector.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;translation&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Translation vector&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;void&lt;/span&gt; Translate(&lt;span style="COLOR:teal;"&gt;Vector3&lt;/span&gt; translation)&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;.Translate(translation.X, translation.Y, translation.Z);&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#endregion&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#region&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; Rotate&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Rotate current object on the X,Y,Z axis.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;x&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;X axis rotation in radians&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;y&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Y axis rotation in radians&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;z&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Z axis rotation in radians&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;void&lt;/span&gt; Rotate(&lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; x, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; y, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; z)&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationX = x;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationY = y;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationZ = z;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotation = &lt;span style="COLOR:teal;"&gt;Matrix&lt;/span&gt;.CreateRotationX(x)*&lt;span style="COLOR:teal;"&gt;Matrix&lt;/span&gt;.CreateRotationY(y)*&lt;span style="COLOR:teal;"&gt;Matrix&lt;/span&gt;.CreateRotationZ(z);&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;para&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Make a rotation from the current rotation.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/para&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;x&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;X axis rotation in radians&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;y&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Y axis rotation in radians&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;z&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Z axis rotation in radians&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;void&lt;/span&gt; Turn(&lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; x, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; y, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; z)&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationX += x;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationY += y;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationZ += z;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;.Rotate(&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationX, &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationY, &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._rotationZ);&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#endregion&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#region&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt; Scale&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Resize the current object.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;x&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Scale factor for X values.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;y&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Scale factor for Y values&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;z&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Scale factor for Z values&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;void&lt;/span&gt; Resize(&lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; x, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; y, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; z)&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M11 = x;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M22 = y;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M33 = z;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Scale current object from current size.&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;x&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;X&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;y&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Y&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;///&lt;/span&gt;&lt;span style="COLOR:green;"&gt; &lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;param name=&amp;quot;z&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="COLOR:green;"&gt;Z&lt;/span&gt;&lt;span style="COLOR:gray;"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;void&lt;/span&gt; Scale(&lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; x, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; y, &lt;span style="COLOR:blue;"&gt;float&lt;/span&gt; z)&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M11 += x;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M22 += y;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M33 += z;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#endregion&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#endregion&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;COLOR:blue;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;}&lt;/span&gt; 
&lt;p class="MsoNormal" style="MARGIN:0cm 0cm 0pt;mso-layout-grid-align:none;"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;font face="verdana,geneva"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0cm 0cm 0pt;mso-layout-grid-align:none;"&gt;&lt;font face="verdana,geneva"&gt;Vous remarquerez ici des instructions du type :&lt;/font&gt;&lt;/p&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M11 = x;&lt;/font&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M22 = y;&lt;/font&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Courier New&amp;#39;;mso-no-proof:yes;"&gt;&lt;font face="verdana,geneva"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;._scale.M33 = z;&lt;/font&gt;&lt;/span&gt;&amp;nbsp; 
&lt;p&gt;&lt;font face="Verdana"&gt;Les propriété comme M11 ou M23 correspondent à des valeurs situées dans la matrices. Nous reviendrons dans un prochain article sur&amp;nbsp;leur&amp;nbsp;raison d&amp;#39;être.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva" size="4"&gt;&lt;strong&gt;Conclusion&amp;nbsp;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="verdana,geneva"&gt;Cet article est incontournable si vous ne maitrisez pas encore la notion de transformation. Ayez toujours en tête les principes élémentaires qu&amp;#39;il a énuméré afin de vous éviter de nombreuses heures de recherches après des invraissemblances graphiques, qui sont, au final, relativement simples à éviter.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;A bientôt sur ce Blog !&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;Valentin Billotte&lt;/p&gt;
&lt;p&gt;N&amp;#39;hesitez surtout pas à me faire part de vos incomprehensions afin de pemettre d&amp;#39;améliorer ce cours pour le rendre plus accessible aux autres (trèèèès important)!&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img style="WIDTH:24px;HEIGHT:24px;" height="24" src="http://msmvps.com/photos/valentin/images/887626/original.aspx" width="24" align="absMiddle" border="1" alt="" /&gt;&lt;font style="BACKGROUND-COLOR:#ffff00;"&gt;Retourner au &lt;/font&gt;&lt;a class="" href="http://msmvps.com/blogs/valentin/archive/2007/03/30/tutoriaux-xna-sommaire-g-n-ral.aspx"&gt;&lt;font style="BACKGROUND-COLOR:#ffff00;"&gt;sommaire des cours&lt;/font&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=547370" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/valentin/archive/tags/Coding/default.aspx">Coding</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Bonnes+Pratiques/default.aspx">Bonnes Pratiques</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Tutorial/default.aspx">Tutorial</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Maths+3D/default.aspx">Maths 3D</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Matrix/default.aspx">Matrix</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Transformations/default.aspx">Transformations</category></item><item><title>Coût de l'application des states au Device</title><link>http://msmvps.com/blogs/valentin/archive/2007/01/02/co-t-de-l-application-des-states-au-device.aspx</link><pubDate>Tue, 02 Jan 2007 16:16:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:465134</guid><dc:creator>valentin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/valentin/rsscomments.aspx?PostID=465134</wfw:commentRss><comments>http://msmvps.com/blogs/valentin/archive/2007/01/02/co-t-de-l-application-des-states-au-device.aspx#comments</comments><description>&lt;P&gt;&lt;FONT face="times new roman,times"&gt;Changer l'état (state) du device que ce soit pour le texture stage, le render stage ou autre ... a un coût.&amp;nbsp;Ce post vise a les expliciter afin que vous puissiez fournir à vos application une gestion&amp;nbsp;intelligente qui évitera de changer les états quand il y'en a pas besoin, réduira le nombre de changements&amp;nbsp;et surtout qui va&amp;nbsp;regrouper l'affichage des objets par état...&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;Voici les différents états applicables au device et leur coût&amp;nbsp;(classés du&amp;nbsp;plus important au plus faible) :&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&lt;/FONT&gt; 
&lt;TABLE class=MsoNormalTable style="BORDER-RIGHT:medium none;BORDER-TOP:medium none;BORDER-LEFT:medium none;BORDER-BOTTOM:medium none;BORDER-COLLAPSE:collapse;mso-padding-alt:0cm 0cm 0cm 0cm;mso-border-alt:solid windowtext 1.5pt;mso-border-insideh:1.5pt solid windowtext;mso-border-insidev:1.5pt solid windowtext;" cellSpacing=0 cellPadding=0 class="MsoNormalTable"&gt;

&lt;TR style="mso-yfti-irow:0;mso-yfti-firstrow:yes;"&gt;
&lt;TD class="" style="BORDER-RIGHT:windowtext 1.5pt solid;PADDING-RIGHT:0cm;BORDER-TOP:windowtext 1.5pt solid;PADDING-LEFT:0cm;BACKGROUND:#4c4c4c;PADDING-BOTTOM:0cm;BORDER-LEFT:windowtext 1.5pt solid;WIDTH:204.1pt;PADDING-TOP:0cm;BORDER-BOTTOM:windowtext 1.5pt solid;"&gt;
&lt;P style="TEXT-ALIGN:center;" align=center&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;&lt;FONT color=#ffffff&gt;API Call&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT:windowtext 1.5pt solid;PADDING-RIGHT:0cm;BORDER-TOP:windowtext 1.5pt solid;PADDING-LEFT:0cm;BACKGROUND:#4c4c4c;PADDING-BOTTOM:0cm;BORDER-LEFT:#f0f0f0;WIDTH:84.35pt;PADDING-TOP:0cm;BORDER-BOTTOM:windowtext 1.5pt solid;mso-border-left-alt:solid windowtext 1.5pt;"&gt;
&lt;P style="TEXT-ALIGN:center;" align=center&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN&gt;&lt;FONT color=#ffffff&gt;Avg # of Cycles&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow:1;mso-yfti-lastrow:yes;"&gt;
&lt;TD class="" style="BORDER-RIGHT:windowtext 1.5pt solid;PADDING-RIGHT:0cm;BORDER-TOP:#f0f0f0;PADDING-LEFT:0cm;BACKGROUND:#ffff99;PADDING-BOTTOM:0cm;BORDER-LEFT:windowtext 1.5pt solid;WIDTH:204.1pt;PADDING-TOP:0cm;BORDER-BOTTOM:windowtext 1.5pt solid;mso-border-top-alt:solid windowtext 1.5pt;"&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetVertexDeclaration&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetFVF &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetVertexShader &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetPixelShader &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SPECULARENABLE &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetRenderTarget &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetPixelShaderConstant (1 Constant) &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;NORMALIZENORMALS&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;LightEnable &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetStreamSource &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;LIGHTING &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;DIFFUSEMATERIALSOURCE&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;AMBIENTMATERIALSOURCE &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;COLORVERTEX &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetLight &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetTransform &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetIndices &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;AMBIENT &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetTexture &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SPECULARMATERIALSOURCE &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;EMISSIVEMATERIALSOURCE &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetMaterial &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;ZENABLE &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;WRAP0 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;MINFILTER &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;MAGFILTER&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetVertexShaderConstant (1 Constant)&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;COLOROP &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;COLORARG2 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;COLORARG1&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;CULLMODE &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;CLIPPING &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;DrawIndexedPrimitive &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;ADDRESSV &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;ADDRESSU&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;DrawPrimitive&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SRGBTEXTURE&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;STENCILMASK &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;STENCILZFAIL&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;STENCILREF &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;ALPHABLENDENABLE&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;STENCILFUNC &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;STENCILWRITEMASK &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;STENCILFAIL &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;ZFUNC &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;ZWRITEENABLE&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;STENCILENABLE &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;STENCILPASS &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SRCBLEND &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;TWOSIDEDSTENCILMODE &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;ALPHATESTENABLE &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;ALPHAREF &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;ALPHAFUNC&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;DESTBLEND &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;COLORWRITEENABLE&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;CCW_STENCILFAIL&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;SPAN style="mso-ansi-language:EN-GB;"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;CCW_STENCILPASS &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;CCW_STENCILZFAIL &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SCISSORTESTENABLE&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;CCW_STENCILFUNC&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;SetScissorRect &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT:windowtext 1.5pt solid;PADDING-RIGHT:0cm;BORDER-TOP:#f0f0f0;PADDING-LEFT:0cm;PADDING-BOTTOM:0cm;BORDER-LEFT:#f0f0f0;WIDTH:84.35pt;PADDING-TOP:0cm;BORDER-BOTTOM:windowtext 1.5pt solid;BACKGROUND-COLOR:transparent;mso-border-left-alt:solid windowtext 1.5pt;mso-border-top-alt:solid windowtext 1.5pt;"&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;6500 - 11250&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;6400 - 11200 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;3000 - 12100 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;6300 - 7000 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1900 - 11200 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;6000 - 6250 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1500 - 9000 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;2200 - 8100&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1300 - 9000 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;3700 - 5800 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1700 - 7500 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;900 - 8300&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;900 - 8200 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;800 - 7800 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;2200 - 5100 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;3200 - 3750 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;900 - 5600 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1150 - 4800 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;2500 - 3100 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;900 - 4600 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;900 - 4500 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1000 - 3700 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;700 - 3900 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1600 - 2700 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1700 - 2500 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1700 - 2400&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1000 - 2700&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1500 - 2100 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1300 - 2000 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1300 - 1980&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;500 - 2570 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;500 - 2550 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1200 - 1400 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1090 - 1500 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1070 - 1500&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;1050 - 1150&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;150 - 1500&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;570 - 700 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;500 - 800&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;550 - 700 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;550 - 700&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;560 - 680 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;520 - 700 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;500 - 750 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;510 - 700 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;520 - 680 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;540 - 650&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;560 - 630&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;500 - 685&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;450 - 590 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;470 - 525 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;460 - 530 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;450 - 540&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;475 - 510 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;465 - 515&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;340 - 560 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;340 - 545 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;330 - 495 &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;375 - 440&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;250 - 480&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;&amp;nbsp;150 - 340&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT face="times new roman,times"&gt;Conclusion&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;&amp;nbsp;On evite les&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;device.VertexDeclaration = ...&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;en masse :)&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;A bientôt sur ce Blog !&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="times new roman,times"&gt;Valentin&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.gamedev.net/community/forums/topic.asp?topic_id=260153"&gt;&lt;FONT face="times new roman,times"&gt;&lt;/FONT&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=465134" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/valentin/archive/tags/Coding/default.aspx">Coding</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Optimization/default.aspx">Optimization</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Bonnes+Pratiques/default.aspx">Bonnes Pratiques</category><category domain="http://msmvps.com/blogs/valentin/archive/tags/Tips/default.aspx">Tips</category></item></channel></rss>