Một cách cơ bản nhất để kiểm tra hàm có thực hiện hay không là in thông báo lên console để kiểm tra.
Trở lại cửa sổ web Script Reference, gõ vào khung search dòng chữ "print to console". Khi đó bạn sẽ thấy trong kết quả tìm kiếm có dòng "Debug.Log - Logs message to the Unity Console" ( Thông báo ghi chú lên Console ). Nhấp chọn vào kết quả này để xem cách thức sử dụng của hàm này. Ngoài ra, lần sau, bạn cũng có thể giành chút thời gian để xem qua hàm MonoBehaviour.print cũng tương tự như Debug.Log và dễ nhớ hơn.
B1. Chèn dòng code tô đỏ dưới đây vào hàm OnMouseDown( ) như sau:
#pragma strict
function OnMouseDown ( ) {
Debug.Log("This object was picked");
}
B2. Lưu file script lại.
Phần hướng dẫn trên web có để là "Hàm được gọi mỗi khi nhấp chuột lên button của GUI Element hoặc Collider". Ở đây chúng ta không sử dụng GUI nên chúng ta phải tạo collider.
B3. Trở lại Unity Editor, nhấp chọn Cube ở thẻ Hierarchy và qua thẻ Inspector bạn sẽ thấy nó đã có collider sẵn:
B4. Để dễ nhấp trúng khối hợp hơn bạn nên tắt phần dịch chuyển đi. Tại thẻ Hierarchy, nhấp chọn Cube Parent và qua thẻ Inspector điều chỉnh như sau:
B5. Kéo thả file Js (JavaScript) MousePick vào Cube ở thẻ Hierarchy như sau:
B6. Nhấn nút Play và thử nhấp vào Cube.
B7. Nhấn Ctrl + Shift + C để xem thông báo trong hộp thoại Console.
Lưu ý: Nếu không thấy thông báo xuất hiện, chắc rằng bạn đã kéo thả file Js PickUp vào Cube, không phải Cube Parent nhé. Vì Cube Parent không có collider.
Vật thể không cần phải hiện hình hoặc được render mới có thể nhấp chọn. Điều này giúp tăng tính sáng tạo thêm trong các môi trường game.
B8. Nhấp chọn Cube ở thẻ Hierarchy và nhớ vị trí của nó.
B9. Qua thẻ Inspector, bỏ chọn Mesh Render để ẩn khối hộp đi.
Khối hộp đã được ẩn khỏi khung nhìn Game. Trong khung nhìn Scene, mặc dù nó vẫn còn thấy các cạnh màu xanh của khối hộp khi nhấp vào Box Collider ở thẻ Inspector.
B10. Nhấp nút Play và rà chuột nhấp chọn vào chỗ của khối hộp đã được ẩn.
Bạn sẽ thấy dù khối hộp không hiển thị lên màn hình nhưng khi nhấp chuột thông báo vẫn xuất hiện trên Console.
B11. Nhấp nút Play để thoát khỏi quá trình chạy game. Nhấp chọn Cube ở thẻ Hierarchy và qua thẻ Inspector mở Mesh Render lên lại và tắt nút kế bên tên Cube đi như sau:
Khi đó bạn sẽ thấy khối hộp không còn thấy nữa trên khung nhìn Scene kể cả khi bấm vào Box Collider, còn trên thẻ Hierarchy bạn sẽ thấy Cube chuyển sang màu tối hơn
B12. Hãy nhấn nút Play và nhấp chuột vào vùng mà bạn đã nhớ vị trí của khối hộp, lúc này sẽ không có thông báo xuất hiện khi nhấp trúng vào khối hộp nữa.
Trường hợp tương tự sẽ xuất hiện nếu bạn bật trở lại và tắt Box Collider đi vì lúc đó không có collider để kiểm tra va chạm nữa. Nên thông báo sẽ không hiện lên hộp thoại Console.
No comments:
Post a Comment