Danh hiệu: Administration
Nhóm: Gia nhập: 20-08-2014(UTC) Bài viết: 60
Cảm ơn: 2 lần Được cảm ơn: 2 lần trong 2 bài viết
|
Phần tiếp theo của hướng dẫn của bạn Cherry Pham là: Phần 2: XÂY DỰNG CHƯƠNG TRÌNH “HELLO WORLD” TRÊN UNITY======================== Đầu tiên, để thêm tài nguyên (hình ảnh, âm thanh, …), ta click chuột phải vào Assets -> Import New Assets, rồi đưa đường dẫn đến tài nguyên muốn thêm vào:
Vì ban đầu khởi tạo Project ta lựa chọn là 2D nên hình ảnh được định dạng sẵn là kiểu sprite. Các bạn có thể click vào hình ảnh đó rồi chọn Texture Type để thay đổi định dạng:
Sprite Mode là chế độ của sprite, gồm 2 loại: Single (hình ảnh đơn) hoặc multiple (đa hình ảnh). Với chế độ multiple các bạn có thể lựa chọn sprite editor để chỉnh sửa các hình ảnh trong đó:
+ Name: Tên của đối tượng. + Position: Vị trí, độ rộng, độ cao. + Pivot: Tâm đối tượng. Sau khi tùy chỉnh xong, các bạn click vào Apply để hoàn thành chỉnh sửa. Với lần cắt đầu tiên các bạn không cần quan tâm đến Method của công cụ slice, nhưng với các lần sau thì các bạn cần hết sức để ý, nếu method là Delete Exiting, nó sẽ xóa toàn bộ những cái mà bạn đã cắt trước đó, nếu muốn giữ các bạn để method là Safe. Sau khi đã có đối tượng bạn muốn, kéo từng đối tượng vào cửa sổ scene. Có 1 điều cần lưu ý là màn hình game chỉ hiển thị những đối tượng trong camera, nên nếu muốn hiển thị lên màn hình game, các bạn phải đặt đối tượng vào trong camera:
Để quản lý các animation, các bạn cần tạo ra animator cho đối tượng bằng cách vào Assest -> Create -> Animator controller. Ở đối tượng bạn muốn tạo animator, add component -> Animator.
Để thiết kế Animation, vào window -> animation. Trong bài này, mình sẽ hướng dẫn các bạn 1 kỹ thuật là Key Frame (sử dụng 1 sprite cho 1 key frame của hành động). Tiếp theo là tạo ra hành động cho nhân vật bằng cách vào Assets -> Create -> Animation và sau đó kéo animation vào trong animator của đối tượng. Để thiết kế animation, vào window -> animation. Trong bài này, mình sẽ hướng dẫn các bạn thiết kế animation bằng kỹ thuật Key Frame (mỗi sprite là một key frame cho hành động):
Sau khi đã có animation, để điều khiển nhân vật, viết script để xử lý (sử dụng ngôn ngữ javascript hoặc C# hoặc Boo). Đối với C#:
void Update () { if (Input.GetKey(KeyCode.LeftArrow)) // Nếu mã ký tự nhập từ phím là mũi tên trái { transform.rotation = Quaternion.Euler(transform.rotation.x, transform.rotation.y, 180f); // Thay đổi rotation của nhân vật, cụ thể là z = 180f; transform.position += transform.right*Time.deltaTime*4f;// Di chuyển } if (Input.GetKey(KeyCode.RightArrow)) { transform.rotation = Quaternion.Euler(transform.rotation.x, transform.rotation.y, 0f); transform.position += transform.right * Time.deltaTime * 4f; } if (Input.GetKey(KeyCode.UpArrow)) { transform.rotation = Quaternion.Euler(transform.rotation.x, transform.rotation.y, 90f); transform.position += transform.right * Time.deltaTime * 4f; } if (Input.GetKey(KeyCode.DownArrow)) { transform.rotation = Quaternion.Euler(transform.rotation.x, transform.rotation.y, 270f); transform.position += transform.right * Time.deltaTime * 4f; } }
Gắn đoạn script vừa tạo ra vào đối tượng bạn muốn điều khiển:
Để xác định va chạm giữa các đối tượng, chọn add component -> Box Collider2D cho tất cả các đối tượng. Chèn script xử lý va chạm vào đối tượng:
void OnCollisionEnter2D(Collision2D hit) { if (hit.gameObject.tag == "bullet") //Nếu va chạm với đối tượng có tag là bullet { Destroy(hit.gameObject);// Destroy đối tượng mà nó chạm phải (bullet) } }
Bài về nhà: Thiết kế map sao cho có thể add đc box collider vào các vị trí mà nhân vật không được đi qua và tự thiết kế vị trí các vật cản:
Link Project Resource bài về nhà và Project mẫu: https://drive.google.com...cjZNUW8/edit?usp=sharing MỤC TIÊU BUỔI HỌC THỨ 2 + Start Game -> PlayGame. + Chèn âm thanh vào game. + Xử lý âm thanh như nhạc nền, âm thanh khi va chạm, ăn, chết. + Cộng điểm. + Làm 1 cái AI đơn giản nhất cho 1 con quái dạng khác tự di chuyển.
|