2015-05-22 14 views
7

Tôi có cảnh 2D được cho là hiển thị danh sách các cảnh các tông có sẵn (như hình thu nhỏ). Sau khi người dùng chạm vào hình thu nhỏ, tôi đang cố gắng gửi anh ấy đến cảnh bìa cứng đã chọn. Tuy nhiên, tôi không thể bắt các sự kiện liên lạc trong cảnh đầu tiên (danh sách). Sau một lần chạm, không có gì xảy ra, chỉ cần đặt. (EDIT: Tôi sẽ thêm rằng tôi đã thử nghiệm này chỉ có trên Android)Sử dụng SDK Cardboard trong Unity 5 - không có sự kiện chạm?

Đây là những gì tôi đã làm để kiểm tra:

  1. tôi có thể tạo một dự án mới (Unity 5.0.2f) - 2D
  2. Tôi đặt một nút giao diện người dùng và trường văn bản vào cảnh
  3. Tôi thêm tập lệnh được kích hoạt sau khi nhấp vào nút - nó chỉ thay đổi văn bản của trường văn bản thành "Đã nhấp" --- >>> TẤT CẢ CÔNG TRÌNH RƯỢU, khai thác nút trên màn hình cảm ứng hoạt động như mong đợi, văn bản đã thay đổi < < < ---
  4. Tôi nhập SDK Carboard của Google --- >>> KHÔNG CÓ CÔNG VIỆC TOUCH EVENT! Nhấn vào xử lý không bao giờ kích hoạt < < < ---
  5. tôi delete Tông SDK của Google --- >>> TAPS hoạt động trở lại < < < ---

Các kịch bản của nhấp chuột được kích hoạt đơn giản:

using UnityEngine; 
using System.Collections; 
using UnityEngine.UI; 

public class TestScript : MonoBehaviour { 

    public Text text; 

    // Use this for initialization 
    void Start() { 

    } 

    // Update is called once per frame 
    void Update() { 

    } 

    public void ButtonClicked() { 
     text.text = "Clicked!"; 
//  Application.LoadLevel ("DemoScene"); 
    } 
} 

Vì vậy, về cơ bản, nhập SDK Cardboard hoàn tất ngắt sự kiện liên lạc trong Unity 5. Nếu tôi kiểm tra trực tiếp sự thống nhất, sự kiện chuột làm việc ổn. Văn bản được thay đổi ngay cả khi SDK Cardboard được nhập. Có ai có ý tưởng nào không? Tôi có làm điều gì sai hay đây là lỗi Unity?

Trả lời

0

Tắt "Nhấn vào trình kích hoạt" trong cài đặt Cardboard.SDK. Lưu ý, bản phát hành v0.5 mới không còn gặp sự cố này nữa.

0

Trong trường hợp của tôi, sự cố này chỉ xảy ra khi bạn chuyển từ cảnh cardboard sang cảnh không phải tông.

Giải pháp của tôi là: Khi bạn muốn tải cảnh từ cảnh Tông để phi Tông-cảnh, trước khi bạn thực hiện LoadLevel(), vô hiệu hóa các VR Chế độ Enabled trong CarboardMain đối tượng trò chơi, dưới Cardboard.cs kịch bản, sau đó bạn thực hiện LoadLevel().

ps: Khi bạn tắt VR Chế độ Enabled trước loadLevel(), bạn sẽ được trải nghiệm Tông camera thay đổi từ chế độ VR để phi VR trong một giây (có thể nhìn thấy nhưng ngay lập tức), trước khi bạn hoàn toàn nhảy tới LoadLevel () cảnh mới. Điều này thật xấu.

VÀ giải pháp của tôi là,

Bạn có thể khắc phục điều này bằng cách vô hiệu hóa máy ảnh đầu tiên, sau đó chỉ bạn tắt chế độ VR Enabled trong đối tượng trò chơi CardboardMain, vì vậy dòng chảy cảnh-chuyển đổi sẽ được xuất hiện mịn .

1

Một cách khác để làm điều đó, giả sử bạn muốn giữ TapIsTrigger/muốn có cảnh 2D này trong VR Mode được sử dụng:

if(Cardboard.SDK.CardboardTriggered){ 
    //what you want to happen when the user touches the screen 
} 

Một lần nữa, bạn không cần phải có TapIsTrigger đánh dấu cho điều này để công việc.

0

Hãy thử làm theo các bước sau:

  1. Xóa MainCamera
  2. Kéo CarboardMain vào Scene
  3. Từ Prefabs/nơi UI CardboardReticle dưới Main Máy ảnh
  4. Thêm Physics Raycaster để Component camera chính
  5. Add Hệ thống sự kiện GameObject
  6. Thêm GazeInputModule Script vào Hệ thống sự kiện
  7. Thêm mô-đun đầu vào cảm ứng vào hệ thống sự kiện
Các vấn đề liên quan