KỸ THUẬT SỐ 11
ĐỐI TƯỢNG DI CHUYỂN THEO PHƯƠNG NGANG TRONG CẢNH TĨNH
Tác giả: Trần Phước Tiến
Mục đích: Bài này chúng tôi trình bày kỹ thuật hướng tới thực hiện nhân vật trong Alice di chuyển, nhưng cảnh không di chuyển, và nhân vật không bị lệch hướng khi di chuyển (luôn di chuyển thẳng trong cảnh). Trong bài này, chúng tôi thực hiện trên ví dụ làm cho đối tương ninja di chuyển trong rừng
Các đối tượng được sử dụng trong bài này
1.Nền
Chúng tôi sử dụng ảnh cảnh rừng để làm nền (Background)
Chúng ta đưa vào Alice dưới dạng các billboard. Sau đó, chúng ta sẽ nhân bản các billboard này và xếp liền nhau để tạo thành một chuỗi cảnh liên tiếp để tạo thành bản đồ của trò chơi
2.Nhân vật Ninja
Chúng ta thực hiện tạo các chuyển động của nhân vật bằng cách sử dụng phương pháp Set pose – Kỹ thuật số 3.(tham khảo tại địa chỉ http://kieutrongkhanh.net/index.php/alice-programming/121-k-thut-s-3) để tạo các tư thế mà chúng ta mong muốn đi và phối hợp lại để tạo nên việc di chuyển cho ninja
Các hình ảnh thế hiển tư thế của ninja.
3. Tạo di chuyển trong chương trình
a.Quản lý vị trí
Để tạo hiệu ứng cho nhân vật di chuyển qua cảnh (Background), chúng ta thêm vào chương trình 02 miếng gạch.
Miếng gạch thứ nhất Gachdichuyen (Màu đỏ) có tác dụng di chuyển Forward và Backward.
Miếng gạch thứ hai Gachxoay (Màu trắng) được dùng để xoay hướng.
Sau đó, chúng ta thêm vào 02 vật thể (ví dụ ở đây là 2 cái tủ lạnh) lần lượt ở background đầu tiên và background cuối cùng.
Miếng gạch trắng sẽ vehicle theo miếng gạch đỏ. Nhân vật Ninja sẽ vehicle theo miếng gạch trắng. Điều này có nghĩa, một khi miếng gạch đỏ di chuyển thì nhân vật Ninja sẽ di chuyển
Ngoài ra, một khi miếng gạch trắng xoay thì nhân vật Ninja sẽ xoay theo
b. Quản lý tốc độ
Chúng ta tạo một biến ở world kiểu số mang tên là GachdichuyenSpeed để quản lý tốc độ di chuyển của nhân vật Ninja.
c. Tạo chuyển động
Chúng ta tạo 1 method để cho nhân vật Ninja di chuyển có tên là NinjaRunMotion. Method này thực hiện việc chuyển đổi pose và lặp theo số lần nhất định để tạo ra chuyển động theo ý muốn.
Bên cạnh đó, chúng ta tạo một method chạy sang phải cho Ninja mang tên RunRight. Trong phương thức này, Gachxoay sẽ chỉ về hướng tủ lạnh và đồng thời lặp vô cùng hành động di chuyển của Ninja, kết hợp sự di chuyển của gạch đỏ tạo nên sự di chuyển của Ninja tạo nên hiệu ứng là Ninja đang chạy.
Áp dụng nội dung trên tương tự cho việc Ninja chạy sang trái với phương thức RunLeft.
Chúng ta tạo thêm method JumpMotion để miêu tả hành động nhảy cho Ninja
d. Thực hiện tương tác
Khi người dùng nhấn phím Space bar thì Ninja sẽ nhảy bằng cách sử dụng method JumpMotion
Để Ninja di chuyển chúng ta sử dụng biến cố While với Begin – During - End.
.
Sau đó, chúng ta kết hợp với các method
Cuối cùng, chúng ta hoàn tất việc di chuyển tới,lui của Ninja trong bản đồ đã dựng trong các phần trước.
Chúc mừng quí vị, chúng ta vừa hoàn tất kỹ thuật di chuyển nhân vật trong một cảnh theo phương ngang mà không bị lệch trong quá trình di chuyển
Không có nhận xét nào:
Đăng nhận xét