<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Move C#</title><link>https://sourceforge.net/p/windowvrt/wiki/Move%2520C%2523/</link><description>Recent changes to Move C#</description><atom:link href="https://sourceforge.net/p/windowvrt/wiki/Move%20C%23/feed" rel="self"/><language>en</language><lastBuildDate>Sat, 16 May 2015 10:22:48 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/windowvrt/wiki/Move%20C%23/feed" rel="self" type="application/rss+xml"/><item><title>Move C# modified by Roberto Bobby Riva</title><link>https://sourceforge.net/p/windowvrt/wiki/Move%2520C%2523/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v1
+++ v2
@@ -1,59 +1,66 @@
 using UnityEngine;
 using System.Collections;
+public class Move : MonoBehaviour {
+public GameObject MainCamera;
+private bool ISIS;
+void Start(){
+    ISIS = false;
+}

-public class Move : MonoBehaviour {
-   public GameObject MainCamera;
-   private bool ISIS;
+private float i = -10;
+private int end = 0; 
+void OnMouseDown(){
+    ISIS = true;
+}
+void FixedUpdate () 
+{
+    if(ISIS)
+    {
+        if (end == 0) 
+        {
+            i++;
+            if(i&amp;gt;0)
+            {
+                end=1;
+            }
+        }
+        else if(end==1)
+        {
+            i++;
+            if(i&amp;gt;40)
+            {
+                end=2;
+            }
+        }
+        else if(end==2)
+        {
+            i--;
+            if(i&amp;lt;0)
+            {
+                end=3;
+            }
+        }
+        else if(end==3)
+        {
+            i=0;
+            ISIS = false;                                       
+        }

+        MainCamera.transform.Translate (Vector3.right * Time.deltaTime * i);
+        MainCamera.transform.Rotate (Vector3.up * -Time.deltaTime * i , Space.World);
+    }

-   void Start(){
-       ISIS = false;
-   }
-
-   private float i = -10;
-   private int end = 0; 
-   // Update is called once per frame
-   void OnMouseDown(){
-       ISIS = true;
-   }
-   void FixedUpdate () 
-   {
-       if(ISIS)
-       {
-           if (end == 0) 
-           {
-               i++;
-               if(i&amp;gt;0)
-               {
-                   end=1;
-               }
-           }
-           else if(end==1)
-           {
-               i++;
-               if(i&amp;gt;40)
-               {
-                   end=2;
-               }
-           }
-           else if(end==2)
-           {
-               i--;
-               if(i&amp;lt;0)
-               {
-                   end=3;
-               }
-           }
-           else if(end==3)
-           {
-               i=0;
-               ISIS = false;                                       
-           }
-
-
-           MainCamera.transform.Translate (Vector3.right * Time.deltaTime * i);
-           MainCamera.transform.Rotate (Vector3.up * -Time.deltaTime * i , Space.World);
-       }   
-   
-   }
 }
+}
+Si tratta del primo codice sviluppato da 0 per il movimento nel Menù Principale. Il suo scopo è dare l'effetto di rotazione alla camera, che poi si ritroverà con Posizione e Angolazione differenti rispetto alla situazione iniziale (Cioè la visuale sul menù principale).
+Il seguente script è stato poi utilizzato anche per il LoadLevel, spiegato successivamente.
+Lo script di base gira sulla rotazione e sullo spostamento (transform) della camera:
+Prima di tutto lo stato del programma è "Passivo", in attesa di ricevere in Input da mouse; una volta ricevuto l'input, la variabile ISIS (Boolean) scatta a True, facendo partire le operazioni in Update.
+Il ciclo in Update (che si ripete a velocità in base al processore) verifica Prima lo stato della variabile end (che indica lo stato di rotazione della camera) e Poi modifica la variabile i (indicatore di velocità di rotazione) in base allo stato. Passati i controlli, la MainCamera subisce la rotazione in base al valore di i, Maggiore sarà, Maggiore sarà la velocità della rotazione.
+Alla fine degli stati, lo script esce dal loop.
+Gli end, o Stati della camera, rappresentano sia la posizione approssimativa che i limiti di velocità che la camera può raggiungere in rotazione.
+Esistono 4 stati: 
+1° stato: La camera parte da passiva ed ottiene la prima rotazione. Dato che i è impostato di base su -10 partirà con uno scatto in direzione opposta alla direzione iniziale, modifica puramente estetica per "Partire con una Carica". A ogni Update, i viene Incrementato di 1.
+2° stato: La camera torna ad uno stato passivo, a velocità i=0. In questo momento la camera entra effettivamente nella rotazione desiderata (i continua ad essere incrementato per ogni Update), effettuando la rotazione nella direzione esatta. Il tutto viene eseguito fino al limite i&amp;lt;40.
+3° stato: La camera è al massimo della velocità (Si troverà esattamente a metà strada dal punto di arrivo) ed incomincia a rallentare, decrementado i invece di incrementarlo. L'effetto di rallentamento graduale rende molto gradevole anche l'apparizione del Pianeta X sul background.
+4° stato: Ultimo stato della camera, completamente passiva di nuovo. Si esce dal loop dei controlli rendendo la Boolean ISIS nuovamente False ed azzerando le variabili.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Roberto Bobby Riva</dc:creator><pubDate>Sat, 16 May 2015 10:22:48 -0000</pubDate><guid>https://sourceforge.netaedb3a73a3cd747fe83ca9058c935c67071e5b89</guid></item><item><title>Move C# modified by Roberto Bobby Riva</title><link>https://sourceforge.net/p/windowvrt/wiki/Move%2520C%2523/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;using UnityEngine;&lt;br /&gt;
using System.Collections;&lt;/p&gt;
&lt;p&gt;public class Move : MonoBehaviour {&lt;br /&gt;
    public GameObject MainCamera;&lt;br /&gt;
    private bool ISIS;&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;void Start(){
    ISIS = false;
}

private float i = -10;
private int end = 0; 
// Update is called once per frame
void OnMouseDown(){
    ISIS = true;
}
void FixedUpdate () 
{
    if(ISIS)
    {
        if (end == 0) 
        {
            i++;
            if(i&amp;gt;0)
            {
                end=1;
            }
        }
        else if(end==1)
        {
            i++;
            if(i&amp;gt;40)
            {
                end=2;
            }
        }
        else if(end==2)
        {
            i--;
            if(i&amp;lt;0)
            {
                end=3;
            }
        }
        else if(end==3)
        {
            i=0;
            ISIS = false;                                       
        }

        MainCamera.transform.Translate (Vector3.right * Time.deltaTime * i);
        MainCamera.transform.Rotate (Vector3.up * -Time.deltaTime * i , Space.World);
    }

}
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;}&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Roberto Bobby Riva</dc:creator><pubDate>Sat, 16 May 2015 09:59:49 -0000</pubDate><guid>https://sourceforge.net803fed7de723f3201173abfdd132c5a09a056a06</guid></item></channel></rss>