Thứ Năm, 24 tháng 10, 2013

Cookbook - Chuyển đổi qua lại giữa các camera



  - Chuyển đổi qua lại giữa các camera -

Việc lựa chọn thay đổi góc nhìn trong game thường thấy ở nhiều thể loại game như: thể thao, đua xe, mô phỏng và nhiều thể loại khác. Trong bài viết này chúng ta sẽ học cách để cung cấp cho người chơi tính năng chọn lựa các góc nhìn bằng bàn phím số.

Chuẩn bị
basicLevel

Cách để làm


B1. Nhấp phải vào thẻ Project và chọn Import Package | Custom Package và mở file basicLevel đã tải ở trên. 

B2. Tại thẻ Hierarchy, bấm vào nút Create | Camera rồi tạo 2 camera khác nhau và đặt tên là cam1 và cam2.


B3. Nhấp chọn cam2, tại thẻ Inspector, điều chỉnh position và rotation lại như hình sau để tránh trùng với cam1.
 


B4. Vào Game Object | Create Empty và đổi tên thành Switchboard.
 

 

B5. Chọn cam1 và tắt dấu stick ở mục Camera và Audio Listener trong thẻ Inspector đi. Thực hiện tương tự với cam2.
 

 

B6. Tại thẻ Project, nhấp chuột phải vào vùng trống và chọn Create | C# Script và đặt tên là CameraSwitch.
 

 

B7. Double click vào file C# vừa tạo và chèn đoạn code sau vào:
 

using UnityEngine;

public class CameraSwitch : MonoBehaviour
{
    public GameObject[] cameras;
    public string[] shortcuts;
    public bool  changeAudioListener = true;

    void  Update ()
    { 
        int i = 0;
        for (i=0; i<cameras.Length; i++) { 
            if (Input.GetKeyUp (shortcuts [i]))
                SwitchCamera (i);
        }
    }

    void  SwitchCamera (int index)
    {
        int i = 0;
        for (i=0; i<cameras.Length; i++) { 
            if (i != index) {
                if (changeAudioListener) {
                    cameras [i].GetComponent<AudioListener> ().enabled = false;
                }
                cameras [i].camera.enabled = false;
            } else {
                if (changeAudioListener) {
                    cameras [i].GetComponent<AudioListener> ().enabled = true;
                }
                cameras [i].camera.enabled = true;
            }
        }
    }
}

B8.Kéo thả file CameraSwitch trong thẻ Project vào Switchboard trong thẻ Hierarchy.
 


B9. Click chọn file Switchboard, tại thẻ Inspector, đổi Size của Camera và Shorcuts lại thành 3. Kéo thả Main Camera, cam1, cam2 vào những dòng tương ứng, nhập các giá trị cho các dòng Element trong Shorcuts như hình sau:
 

 

B10. Click nút Play để kiểm tra thành quả. Ấn các phím số 1, 2, 3 để chuyển đổi qua lại giữa các camera.

Không có nhận xét nào:

Đăng nhận xét