Nếu bạn muốn tạo nhiều người chơi cục bộ với màn hình chia nhỏ, cách tốt nhất là có hai camera và thay đổi chế độ xem trực tiếp của chúng:
https://docs.unity3d.com/ScriptReference/Camera-rect.html
Đối với màn hình chia dọc: (x, y, chiều rộng, chiều cao)
- Camera thứ 1: (0, 0, 0,5, 1) ► trái
- Camera thứ 2: (0,5, 0, 0,5, 1) ► phải
Đối với màn hình chia ngang: (x, y, chiều rộng, chiều cao)
- Camera thứ 1: (0, 0,5, 1, 0,5) ► trên cùng
- Camera thứ 2: (0, 0, 1, 0,5) ► dưới cùng
Không cần phải có hai thế giới. Tuy nhiên, nếu bạn muốn người chơi có GUI riêng, bạn sẽ phải xem mặt nạ loại bỏ
https://docs.unity3d.com/ScriptReference/Camera-cullingMask.html
Đặt tất cả các đối tượng của người chơi 1 vào một lớp mới ("Player1Layer"), tất cả các đối tượng của người chơi 2 trong một đối tượng khác ("Player2Layer") và đảm bảo rằng máy ảnh của người chơi 1 không có "Player2Layer" được kiểm tra loại bỏ mặt nạ trong khi máy ảnh của người chơi 2 không được kiểm tra "Player1Layer" trong mặt nạ loại bỏ.
LƯU Ý QUAN TRỌNG
Có vẻ như cần phải có cấu hình bổ sung để hiển thị GUI cho một trình phát cụ thể. Tôi thực sự không biết tại sao.
Mỗi người chơi phải có cái riêng:
Camera chính có:
- Đúng khung nhìn trực quan
- Một
Depth
giá trị thiết lập để 0
- Một mặt nạ loại bỏ
Everything
, ngoại trừ Player1Layer
vàPlayer2Layer
Một camera thứ hai có:
- Đúng khung nhìn trực quan
- Một
Depth
giá trị thiết lập để 1
- Một mặt nạ loại bỏ
Player1Layer
(hoặc Player2Layer
cho người chơi thứ 2)
Một bức tranh chuyên dụng với:
- Chế độ kết xuất được đặt thành Không gian màn hình - Camera
- Máy ảnh chính xác được định cấu hình ở # 2
Để đơn giản, hãy gắn hai camera của một người chơi nhất định vào một phụ huynh duy nhất và di chuyển cha mẹ để hai camera sẽ theo sau. Có lẽ, bạn có thể giữ máy ảnh số 2 ở (0, 0, 0). Tôi chưa thử.