C#で Vector3 を Vector2 に変換するには
こういうVector3があるとして、
Vector3 three = new Vector3 (1, 2, 3);
zを無視してVector2に変換する場合、もちろんこう書けばできるけど、
Vector2 two = new Vector2 (three.x, three.y);
暗黙的にキャストしてくれるので、これで大丈夫です。
Vector2 two = three;
ちなみに、Vector2からVector3への変換も暗黙的にキャストしてくれます。
Vector3 three = new Vector2 (1, 2);
でも、これはエラーになります。Vector3とVector2の加算はできないようです。
Vector2 offset = new Vector2 (1, 1);
Vector3 result = new Vector3 (2, 2, 2) + offset;
こう書けばうまくいきます。
Vector3 result = new Vector3 (2, 2, 2) + (Vector3)offset;
参考文献
スクリプトリファレンス - Vector2
http://docs.unity3d.com/ja/current/ScriptReference/Vector2.html