Bài giảng Thiết kế và phát triển trò chơi máy tính: Bài 4 - Trương Xuân Nam
lượt xem 6
download
Bài giảng Thiết kế và phát triển trò chơi máy tính: Bài 4 GameObject trong Unity cung cấp cho người học những kiến thức như: GameObject; C# Script; Làm việc với màn hình console; Viết mã tìm hiểu về vòng đời của GameObject. Mời các bạn cùng tham khảo!
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Thiết kế và phát triển trò chơi máy tính: Bài 4 - Trương Xuân Nam
- THIẾT KẾ VÀ PHÁT TRIỂN GAME Bài 4: GameObject trong Unity
- Nội dung 1. GameObject 2. C# Script 3. Làm việc với màn hình console 4. Viết mã tìm hiểu về vòng đời của GameObject TRƯƠNG XUÂN NAM 2
- Phần 1 GameObject TRƯƠNG XUÂN NAM 3
- GameObject ▪ GameObject là đối tượng cơ bản trong tất cả các màn hình game của unity ▪ Mỗi Game có nhiều Scene (màn hình) ▪ Mỗi Scene có nhiều GameObject ▪ Unity sử dụng cách tiếp cận “phi hướng đối tượng” trong việc xây dựng các đối tượng trong Scene ▪ Tất cả các đối tượng con đều là GameObject ▪ GameObject là sealed class (không thể được kế thừa) ▪ Các kiểu GameObject được làm phong phú và khác nhau bằng cách gắn thêm một hoặc nhiều component với các giá trị thuộc tính khác nhau TRƯƠNG XUÂN NAM 4
- GameObject ▪ Một GameObject rỗng, mới được tạo ra ▪ Tên là “Vung Trang” ▪ Chưa có tag, thuộc layer mặc định ▪ Component: Transform TRƯƠNG XUÂN NAM 5
- GameObject ▪ GameObject “camera”: ▪ Tên là “Main Camera” ▪ Có tag “MainCamera” ▪ Thuộc layer mặc định ▪ Component: • Transform • Camera • Flare Layer • Audio Listener TRƯƠNG XUÂN NAM 6
- GameObject ▪ GameObject “May Bay”: ▪ Tên là “May Bay” ▪ Chưa có tag ▪ Thuộc layer mặc định ▪ Component: • Transform • Sprite Renderer • May Bay (Script) • Ten May Bay??? • Sprites-Default??? TRƯƠNG XUÂN NAM 7
- GameObject ▪ Unity tạo sẵn nhiều loại Camera component UI Script Object ▪ Bằng việc kết hợp các component, lập trình Video 2D Objects viên tạo ra các loại Game Object GameObject khác nhau ▪ Như vậy: không thể đưa Effects 3D Objects một tính năng mới vào game nếu component Light Audio hỗ trợ nó chưa có TRƯƠNG XUÂN NAM 8
- GameObject TRƯƠNG XUÂN NAM 9
- GameObject ▪ GameObject có thể được tạo ra bằng nhiều cách khác nhau: 1. “By design”: tạo từ đầu trong Scene và thiết lập thuộc tính trực tiếp từ màn hình thiết kế 2. “By code”: tạo bằng script (tạo một GameObject rỗng rồi thêm các component, tất cả đều bằng code) 3. “From an instance”: tạo mới bằng cách tạo bản sao của đối tượng đã có và hiệu chỉnh (bằng code) 4. “From file”: nạp từ Resource (và hiệu chỉnh, tất nhiên) ▪ Kinh nghiệm: không nên tạo/hủy GameObject quá nhiều, nên tái sử dụng (object pooling) TRƯƠNG XUÂN NAM 10
- Phần 2 C# Script TRƯƠNG XUÂN NAM 11
- Vai trò của script trong Unity ▪ Về bản chất Unity coi việc chơi game là quá trình tương tác với các GameObject ▪ Script là một component đặc biệt ▪ Viết bằng C# hoặc Javascript ▪ Luôn kế thừa từ MonoBehaviour ▪ Nhiệm vụ chính của script: mang lại “phần hồn” cho các GameObject ▪ Xử lý xem GameObject phản ứng như thế nào đối với các tương tác trong màn chơi ▪ Bản thân tên lớp cha đã nói lên điều đó TRƯƠNG XUÂN NAM 12
- Vai trò của script trong Unity ▪ Script C# có thể được viết trong MonoDevelop hoặc Visual Studio hoặc một công cụ tương đương ▪ Tất nhiên là nên dùng MonoDevelop ▪ Kinh nghiệm: nên mở sẵn unity documents vì MonoDevelop hỗ trợ rất kém, đặc biệt với những bạn mới làm quen với unity ▪ Có thể dùng lẫn script C# và javascript trong cùng một dự án, nhưng cách tham chiếu đối tượng chéo giữa các class khá lộn xộn ▪ Không có lý do hợp lý nào cho việc dùng lẫn cả TRƯƠNG XUÂN NAM 13
- Phần 3 Làm việc với màn hình console TRƯƠNG XUÂN NAM 14
- Cửa sổ Console ▪ Vai trò giống như cửa sổ CMD trong Windows ▪ Rất quen thuộc với các phần mềm IDE truyền thống ▪ Visual Studio, Eclipse, Android Studio,… ▪ Vai trò chủ yếu để in thông tin gỡ lỗi hoặc cảnh báo ▪ Tất nhiên vẫn có những ứng dụng hay sử dụng console ▪ Console của unity mặc định hỗ trợ unicode ▪ In thông báo ra màn hình: ▪ Dùng phương thức print (của MonoBehaviour) ▪ Dùng Debug.Log, Debug.LogWarning, Debug.LogError tùy vào từng tình huống của game TRƯƠNG XUÂN NAM 15
- Cửa sổ Console ▪ Một vài chức năng cơ bản: ▪ “Clear”: xóa màn hình ▪ “Collapse”: thu gọn những dòng giống nhau lại làm một ▪ “Clear on Play”: xóa màn hình khi bắt đầu thử game ▪ “Error Pause”: dừng khi gặp lỗi ▪ Có bộ đếm số lần log, warning và error được in ra ▪ Kinh nghiệm: log ra file khi gặp những tình huống phức tạp TRƯƠNG XUÂN NAM 16
- Phần 4 Viết mã tìm hiểu về vòng đời của GameObject TRƯƠNG XUÂN NAM 17
- Tạo một scene thử nghiệm TRƯƠNG XUÂN NAM 18
- Vòng đời của Game Object using System.Collections; using System.Collections.Generic; using UnityEngine; public class Den : MonoBehaviour { void Awake() { print("Awake"); } void Start() { print("Start"); } void OnDisable() { print("OnDisable"); } void OnEnable() { print("OnEnable"); } } TRƯƠNG XUÂN NAM 19
- Vòng đời của Game Object TRƯƠNG XUÂN NAM 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Phân tích và thiết kế hệ thống hướng đối tượng - Nguyễn Thanh Bình
184 p | 543 | 156
-
Bài giảng Thiết kế logo - Nguyễn Hữu Phát
22 p | 264 | 74
-
Bài giảng Thiết kế web: Chương 1 - Giới thiệu về Internet và web
33 p | 188 | 22
-
Bài giảng Thiết kế Website: Chương 1 - ThS. Dương Thành Phết
26 p | 114 | 20
-
Bài giảng Thiết kế hạ tầng máy tính - Chương 3: Xác định hiện trạng mạng
10 p | 99 | 14
-
Bài giảng Ứng dụng tin học trong thiết kế - Chương 1: Cơ bản về thiết kế và phát triển sản phẩm
52 p | 62 | 11
-
Bài giảng Thiết kế và lập trình web: Bài 1 - Viện Công nghệ thông tin và truyền thông
57 p | 90 | 10
-
Bài giảng Thiết kế hệ thống thông tin: Chương 1 - Trần Thị Kim Chi
49 p | 85 | 9
-
Bài giảng Thiết kế và lập trình Web - Bài 1: Tổng quan về Thiết kế và lập trình Web
57 p | 42 | 8
-
Bài giảng Thiết kế và phát triển trò chơi máy tính: Bài 1 - Trương Xuân Nam
31 p | 45 | 8
-
Bài giảng Thiết kế và phát triển trò chơi máy tính: Bài 2 - Trương Xuân Nam
39 p | 50 | 7
-
Bài giảng Thiết kế và phát triển trò chơi máy tính: Bài 7 - Trương Xuân Nam
44 p | 45 | 7
-
Bài giảng Thiết kế và phát triển trò chơi máy tính: Bài 5 - Trương Xuân Nam
34 p | 40 | 7
-
Bài giảng Thiết kế và phát triển trò chơi máy tính: Bài 6 - Trương Xuân Nam
31 p | 43 | 7
-
Bài giảng Thiết kế và phát triển trò chơi máy tính: Bài 3 - Trương Xuân Nam
49 p | 45 | 6
-
Bài giảng Thiết kế và phát triển giao diện - Trịnh Thị Kim Chi
36 p | 76 | 4
-
Bài giảng Thiết kế hệ thống thông tin: Chương 10 - Trần Thị Kim Chi
35 p | 100 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn