Tải bản đầy đủ (.pptx) (21 trang)

bài tập lớn môn đồ họa và hiện thực ảo: game Unity3D shutter island

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.15 MB, 21 trang )

Game Unity 3D:
SHUTTER ISLAND
Nhóm sinh viên:
Nguyễn Đức Hưởng Tin Pháp K52
Trần Kim Toản Tin Pháp K52
Nguyễn Trung Kiên CNPM K53
Nội dung trình bày
1. Phân công công việc
2. Tổng quan về Unity Engine
3. Ý tưởng kịch bản
4. Mô tả các đối tượng trong game
5. Phát triển game
6. Kết luận
1. Phân công công việc
Họ và tên Công việc
Hoàn
thành
Nguyễn Đức
Hưởng
xây dựng các hiệu ứng, hoạt cảnh
trong game . Xây dựng các mức
level cho người chơi
30%
Nguyễn
Trung Kiên
tìm kiếm các modul hình ảnh , âm
thanh và ghép vào game
30%
Trần Kim
Toản
thiết kế tìm kiếm và mở rộng bản


đồ , xây dựng bối cảnh , tạo menu
30%
Phát triển thêm nội dung , đồ họa : cả nhóm
2. Giới thiệu về Unity Engine

3D game engine: giúp tạo ra nhân vật, xe cộ, nhà cửa, các yếu
tố môi trường (nước, bầu trời, gió, trọng lực…) và liên kết
chúng lại với nhau theo ý muốn.

Các 3D game engine nổi tiếng:

Source engine, Id Tech engine

Cry engine, Unreal engine,

Unity engine, RenderWare engine, Game Bryo engine.

Orge engine, Panda3D engine, Irrlicht engine…

Unity engine:

Không đòi hỏi máy cấu hình cao.

Dành cho các member không chuyên: kéo thả, kế thừa, viết
scripts, import/export tài nguyên, đóng gói, …
3. Ý tưởng

Kịch bản:

Số lượng người chơi : 1


Cảnh sát truy tìm và giết tên tướng cướp (robot). Robot
này len lỏi trong đối robot quân để bảo vệ, nếu bắn hạ
robot này thì người chơi chiến thắng.

Chướng ngại vật : robot , ụ súng , cẩn thận với thùng
xăng…

Bản đồ các level:
4. Các đối tượng trong game
4.1. Player
4.2. Robot
4.3. Ụ súng
4.4. Boss
Player

Vị trí ban đầu : Đầu toàn nhà

Thông số :

Máu : 300

Tốc độ : 6

Tốc độ nhảy : 8

Trọng lượng : 20

Vũ khí trang bị : Súng Aka, súng phóng lựu


Hành động:

Đi : w, a, s, d hoặc phím mũi tên

Nhảy : space

Bắn : left-mouse

Đổi súng: 1, 2

Người chơi chết : hết máu hoặc rơi xuống biển

Âm thanh:

Player đi

Player bắn

Player chết
Robot

Thông số :

Máu : 100

Tốc độ : 3

Tốc độ quay : 5

Phạm vi bắn (shoot range ): 15


Phạm vi tấn công: 30

Sức tấn công : 4

Thời gian bắn lại : 0.35s

Vũ khí trang bị : Súng bazoka

Trạng thái :

Đi : tự động

Bắn : Khi người chơi trong tầm bắn và phạm vi bắn

Robot chết : Khi người chơi bắn hết máu , hay rơi xuống biển

Âm thanh

Robot đi

Robot bắn

Robot chết
Ụ súng

Thông số :

Máu : 100


Tầm bắn (Attach range) : 40

Khoảng cách góc bắn : 10

Thời gian bắn lại : 0.5s

Vũ khí trang bị : Súng

Trạng thái :

Bắn : Khi người chơi trong tầm bắn và phạm vi bắn

Ủ súng biến mất : Khi người chơi bắn hết máu

Âm thanh

Ụ súng bắn

Ụ sung biến mất khi bị người chơi bắn hết máu
Boss

Thông số :

Máu : 300

Tốc độ : 5

Tốc độ quay : 7

Phạm vi bắn (shoot range ): 25


Phạm vi tấn công (attack range): 40

Sức tấn công : 6

Thời gian bắn lại : 0.2s
Thùng xăng

Nổ tung khi bị người chơi bắn hay robot bắn vào
Gói tăng lực

Giúp người chơi tăng máu sau khi bị
ụ súng hay robot bắn
5. Phát triển game
5.1. Thêm hồng tâm cho player
5.2. Thêm vũ khí cho player
5.3. Thêm menu
5.4. Phát triển level, map
Thêm hồng tâm cho player

Biến:
var crosshairTexture : Texture2D; //Lưu ảnh hồng tâm
var position : Rect; //Xác định tọa độ hồng tâm

Hàm khởi tạo xác định vị trí hồng tâm:
function Start()
{
position = Rect( ( Screen.width - crosshairTexture.width ) / 2,
( Screen.height - crosshairTexture.height ) / 2,
crosshairTexture.width, crosshairTexture.height );

}

Hàm hiển thị:
function OnGUI()
{
GUI.DrawTexture( position, crosshairTexture );
}
Thêm vũ khí cho player (RocketLauncher)

Tạo đối tượng FirstPerson Player/Main
Camera/Weapons.

Kéo file PlayerWeapons.js (điểu khiển đổi súng) vào
đối tượng Weapons.

Tạo đối tượng FirstPerson Player/Main
Camera/Weapons/RocketLauncher

Đính kèm file RocketLauncher.js (điều khiển súng
bắn) vào trong đối tượng RocketLauncher.
Thêm menu

Tạo file Options.js điều khiển hoạt động của menu và thả vào FirstPerson
Player/Main Camera.

Dùng biến static isWin trong script Boss.js của Boss để ghi nhận lúc Boss chết.

Hàm lắng nghe sự kiện ấn nút ‘p’ hoặc Boss chết:
function LateUpdate () {
if (showfps || showfpsgraph) { FPSUpdate(); }

if (Input.GetKeyDown("p")) {
switch (currentPage) {
case Page.None: PauseGame(); break;
case Page.Main: if (!IsBeginning()) UnPauseGame();
break;
default: currentPage = Page.Main;
}
}
if(Boss.isWin == true) { WinGame(); }
}
Phát triển level, map

Mở rộng từ map cơ bản ban đầu .

4 level:
Level 1
Level 2
Level 3
Level 4
6. Kết luận

Nêu ý tưởng và thực hiện xây dựng một game FPS
bằng Unity3D

Tạo được 1 demo nhỏ game FPS với các chức năng bắt
buộc và cơ bản nhất.

Các hiệu ứng trong game còn khá đơn giản.

Nội dung: khá sơ sài, các misson và level khá dễ và ít

khác biệt nhau

×