public class CoverFlow : MonoBehaviour
{
public int numberOfPhotos = 4;
public ArrayList PhotoObjects = new ArrayList();
private Vector2 first = Vector2.zero;
private Vector2 second = Vector2.zero;
void Start(){
LoadImage();
}
void LoadImages()
{
for(int nLoop = 0; nLoop < numberOfPhotos; nLoop++)
{
GameObject PhotoObject = GameObject.CreatePrimitive(PrimitiveType.Plane);
PhotoObjects.Add(PhotoObject);
PhotoObject.transform.position = Vector3(8 + (nLoop - numberOfPhotos / 2) * 8.2, 0.5, 0);
PhotoObject.transform.eulerAngles = Vector3(-270, (nLoop - numberOfPhotos / 2) * -45, 0);
PhotoObject.renderer.material.mainTexture = Resources.Load("photo" + nLoop);
}
}
void MoveObject(int dir)
{
for(int nLoop = 0; nLoop < numberOfPhotos; nLoop++)
{
GameObject PhotoObject = PhotoObjects[nLoop];
PhotoObject.transform.position.x += dir * 0.2;
PhotoObject.transform.eulerAngles.y += dir * 2;
}
}
void OnGUI()
{
if(Event.current.type = EventType.MouseDown)
{
first = Event.current.mousePosition;
}
if(Event.current.type == EventType.MouseDrag)
{
second = Event.current.mousePosition;
}
if(second.x < first.x)
{
print ("Left");
MoveObject(-1);
}
else if(second.x > first.x)
{
print ("Right");
MoveObject(1);
}
first = second;
}
}
随便弄几张图放到Assets/Resources目录下,取名叫photo0, photo1.........