1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài tập lớn môn phát triển phầm mềm phân tán

16 9 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Bài tập lớn môn phát triển phần mềm phân tán
Tác giả Trần Văn Đồng, Trần Đình Văn
Trường học Trường Đại Học
Chuyên ngành Phát Triển Phần Mềm Phân Tán
Thể loại Bài tập lớn
Định dạng
Số trang 16
Dung lượng 3,09 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

2.Mô tả game Người chơi điều khiển 1 nhân vật trong game di chuyển theo bản đồ có sẵn để đến được đích đã định trước và thu thập nhưng vật phẩm tăng điểm, khi thu thập được hết các vậ

Trang 2

Bài tập lớn môn phát triển phầm mềm

phân tán

Trần Đình Văn

2

Trang 3

I Cơ sở lý thuyết

1.Nhu cầu

Ngày nay với mức sống của con người ngày càng cáo, do đó như cầu giải trí cũng

ngày càng được nâng cao về mặt chất lượng Trong đó, Game là một trong những

mảng giải trí được quan tâm nhiều và đánh giá cao.

2.Mô tả game

Người chơi điều khiển 1 nhân vật trong game di chuyển theo bản đồ có sẵn để đến

được đích đã định trước và thu thập nhưng vật phẩm tăng điểm, khi thu thập được hết

các vật phẩm ấy người chơi sẽ chuyển sang màn khác Các màn phía sau độ khó sẽ

tăng dần lên Trên đường di chuyển thu nhập các vật phẩm người chơi phải tránh các

quát vật.

3.Yêu cầu game

Trang 4

II Phân tích thiết kế game

4

A Phân tích thiết kế

B Phân tích game

Trang 5

A Phân tích thiết kế

1 Phân tích thiết kế

Phân tích thiết kế là quá trình tìm hiểu và mô phỏng lại hiện tượng, quy trình

nghiệp vụ trong dự án từ đó xây dựng được hệ thống để giải quyết được các vấn đề

bài toán đặt ra.

2.Hướng phân tích thiết kế hệ thống:

+ Hướng đối tượng

+ Hướng chức năng

Trang 6

1 Cơ chế điều khiển

6

Cơ chế điều khiển góc nhìn thứ nhất cơ bản được sử dụng trong trò chơi với các nút di chuyển là

W,A,S,D hoặc các phím mũi tên

Việc điều kiển nhân vật do ‘’ Character Controller ’’

và script ‘’ First Person Contronller ’’ thực hiện

-Ngoài cơ chế điều kiển thì cơ chế ‘’ Trạng thái ’’

cũng được thêm vào dùng để xác định tốc độ

của người chơi người chơi có 4 trạng thái:

a

Trang 7

2 Thiết kế màn chơi

Emission map là một chức năng giúp ta có thể tạo ra hiệu ứng pháp sáng dựa trên đồ vật.

Hoa văn đen trắng(trái),có thể áp lên tất cả các mặt sung

quanh của vật thể(hình bên phải

Việc tạo ra level cho map có thể được thực hiện bằng

cách kéo thả các khối vuông, tuy nhiên việc này rất

mất thời gian và độ sai lệch có thể xảy ra rất cao

TileMap 2d là một mặt phẳng lưới

Sử dụng công cụ vẽ của TileMap(Tile Pallette),

ta tiến hành tô màu các ô muốn dựng khối lên

trên.Sau đó, thông qua đoạn code ở dưới để

thực hiện việc tạo các khối vuông:

Trang 8

2.Thiết kế màn chơi

Đoạn code sẽ quét tất cả các ô trong lưới, với những ô được đánh dấu cho ‘’Tường’’ sẽ tạo ra các khối vuông

theo khuôn mẫu được lưu trữ lại từ trước trong mục Prefab

Đối với những đối tượng hay vật thể mà ta dự định sử dụng nhiều lần, ta có thể tiến hành tạo ra bản mẫu cho

chúng – những bản mẫu này được gọi là ‘’Prefab’’

Để tạo ra prefab, ta kéo thả đối tượng muốn tạo bản

mẫu từ trên scene vào thư mục prefabs

Kéo thả khối cầu có tên ‘’ forPrefab ’’ này vào

thư mục ‘’Prefabs’’ đang được bật

Lúc này khuôn mẫu đã được tạo thành công,

các bản sao tạo ra từ khuôn mẫu sẽ có màu xanh như trên

a

8

Trang 9

3.Small Pellet và Power Pellet

Hạt Small Pellet được tạo từ các khối cầu kích thước cỡ nhỏ, với bề mặ là vật liệu phát sáng mà ta đã nói ở phần trước

Hạt trắng là ‘’Power Pellet’’

Hạt vàng là ‘’Power Pellet’’

- Bên trái là mê cung khi trò chơi chưa bắt đầu

- Bên phải là mê cung khi trò chơi đã bắt đầu

Để các hạt Pellet có hiệu ứng tốt hơn, một

đoạn code được sử dụng để di chuyển các

hạt lên xuống ngẫu nhiên theo đồ thị hình Sin

Trò chơi còn sử dụng ParticleSytem để tạo

hiệu ứng vỡ cho các pellet khi được pacman

chạm vào

Trang 10

4.Thiết kết quái vật(bot)

10

Quái vật(bot) là kẻ địch của pacman trong tất cả các phiên bản

Bot gồm có 4 con:

“Blinky” – màu đỏ

“Pinky” – màu hồng

“Inky” – Màu xanh

“Clyde” – màu vàng cam

Cơ chế điều khiển các bot trong trò chơi pacman bao gồm 3 phần:

+Điều khiển trạng thái(State Controller)

+Điều khiển di chuyển (Movement Controller)

+Điều khiển hiệu ứng(Effect Controller)

a

Trang 11

4.Thiết kết quái vật(bot)

11

Điều khiển trạng thái(State Controller) đây là thành phần quan trọng nhất trong bộ điều khiển bot

Mỗi bot có 4 trạng thái:

+Chase<Trạng thái truy đuổi>

+Scatter<trạng thái tuần tra>

+Frightened<trạng thái sợ hãi>

+Eaten<trạng thái chết>

Ở trạng thái Scatter thay vì theo đuổi người chơi

Bot sẽ di chuyển trong vùng riêng biệt

Chuyển đổi giữa <Chase> và <Scatter>: Đối với 3 bot: Blinky, Pinky và Inky sẽ có sự thay đổi liên tục

giữa 2 trạng thái <chase> và <scatter> trong khoảng thời gian đầu của trò chơi

Khoảng thời gian cụ thể của các lần chuyển đổi như sau:

Trang 12

4.Thiết kết quái vật(bot)

12

Điều khiển di chuyển

Các bot sẽ di chuyển dựa theo trạng thái hiện tại của nó

-Blinky: Mỗi frame, Blinky sẽ tìm đường di chuyển đến vị trí

của người chơi

-Pinky: Hướng di chuyển của Pinky y hệt Blinky nhưng chậm hơn

-Inky: Inky sẽ xác định Vector nối giữa Pacman và Blinky,

sau đó trên vector này chọn ra một điểm và di chuyển

đến đó

Clyde:

-Clyde có thể di chuyển khác với các bot còn lại

-Clyde sẽ xác định một vùng bán kính xung quanh người chơi:

Nếu ở ngoài vùng, Clyde sẽ di chuyển đến vị trí của người chơi

Nhưng nếu đi vào trong vùng, Clyde lúc này sẽ chuyển lại trạng thái về <Tuần tra>

và di chuyển đến vùng tuần tra của mình

a

Trang 13

4.Thiết kết quái vật(bot)

-Hiệu ứng hình ảnh của các bot được thiết lập dựa theo trạng thái hiện tại của bot đó: trạng thái <Chase> hoặc <Scatter>

-Ở trạng thái <Frightened> ngay trước khi chuyển trạng thái, màu hiệu tại của bot sẽ được lưu lại

Theo thứ tự, đây là màu tương ứng với: Thân cách và đầu của Blinky

Sau khi màu sắc đã được lưu Blinky sẽ chuyển sang màu xanh hoàn toàn

Nếu như không bị pacman ăn, các bot sẽ quay trở lại màu sắc ban đầu của mình Tuy nhiên, trong khoảng 30% thời gian cuối, các bot còn ở trạng thái <Frightened> sẽ nhấp nháy giữa 2 màu xanh và xám để báo hiệu

Ở trạng thái <Eaten>: Nếu bj pacman ăn, các bot sẽ chuyển qua trạng thái <Eaten>

Trang 14

5.Thiết kế âm thanh

14

-Âm thanh trong trò chơi được thiết kế riêng biệt,

không gắn hoàn toàn vào trong các vật thể

-Âm thanh được phát ra thông qua

<AudioSource> một module của Unity

Để kiểm soát các <AudioSource>, ta có

sử dụng một script <AudioManager>

-Script này sẽ giúp ta tùy chỉnh các

đặc điểm của âm thanh (âm lượng,

tần số, lặp/không lặp) ngay trên màn hình editor

Các âm thanh được sử dụng sẽ được chia làm 2 loại:

+Âm thanh của pacman

+Âm thanh của bot

Trang 15

5.Thiết kế âm thanh

Âm thanh của pacman

-Trong trò chơi, pacman sẽ có 2 âm thanh:

Khi pacman ăn các hạt pellet ( trạng thái

consume/powerup), khi pacman chết(trạng

thái dead).Cả 2 âm thanh đều sẽ được

gắn ngay trên người pacman và được kích

hoạt khi người chơi chuyển trạng thái sang tương ứng

Âm thanh của bot

Có 3 loại âm Thanh với bot riêng biệt:

+Âm thanh tiếng hú(trạng thái Chase/Scatter)

+Âm thanh sợ hãi(trạng thái Frightened)

+Âm thanh chết(trạng thái Eaten)

Trang 16

THANK YOU !

16

Ngày đăng: 22/05/2023, 05:54

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w