1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu về ngôn ngữ actionscript và cơ bản về lập trình game trên cs5

28 1,6K 7

Đ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

Định dạng
Số trang 28
Dung lượng 1,44 MB

Nội dung

Tìm hiểu về ngôn ngữ actionscript và cơ bản về lập trình game trên cs5

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC KHOA HỌC KHOA CÔNG NGHỆ THÔNG TIN

Báo cáo

Thực tập chuyên ngành cuối khóa

ĐỀ TÀI: Tìm hiểu về ngôn ngữ Actionscript

và cơ bản về lập trình game trên CS5

Huế, 15/3/2012

Trang 2

Mục Lục A.

I.

Tìm hiểu về CS5 3

Các khái niệm cơ bản trong Adobe Flash CS5 3

1 2 3 4 5 6 7 II 1 2 3 4 III 1 2 3 4 Layer 3

Frame 3

Scene 4

Movie 4

Biểu tượng Graphic 4

Biểu tượng Movie Clip 5

Biểu tượng Button 7

Tìm hiểu về ngôn ngữ Actionscript 3.0 7

Vùng soạn thảo ActionScript 8

Lập trình cơ bản với Actionscript 8

Lập trình hướng đối tượng trong AS3 11

Sự kiện trong AS3 12

Cơ bản về lập trình game trong Actionscript 13

Ưu nhược điểm của lập trình game bằng Actionscript 13

Sơ lược về thiết kế Game 14

Các đối tượng, phương thức trong thiết kế Game 15

The Display list 16

B 1 2 3 Demo 18

Ý tưởng và luật chơi 18

Các đối tượng trong game 19

Các cảnh chính trong game 23

Trang 3

A Tìm hi u v CS5 ểu về CS5 ề CS5

I Các khái ni m c b n trong Adobe Flash CS5 ệm cơ bản trong Adobe Flash CS5 ơ bản trong Adobe Flash CS5 ản trong Adobe Flash CS5.

1 Layer

Là các lớp được dung trong việc sáng tác, mỗi một khung hình có thể có

nhiều layer khác nhau, mỗi đối tượng thường được xây dựng trên mỗi layer

Hình 1 Tạo mới layer-

-Các biểu tượngxóa layer

Các biểu tượng

: lần lượt là tạo mới layer, tạo mới thư mục,

: lần lượt là ẩn hoặc hiện layer đã chọn, khóakhông cho phép chỉnh sửa đối tượng trên layer, cho phép đối tượng trênlayer chỉ hiển thị đường viền với màu nền hay chỉ là đường viên

2 Frame

Là khung hình dùng trong kỹ thuật chuyển động, vật thể chuyển động được

là nhờ vào sự thay thế khác khung hình, mắt người chỉ có thể lưu được

không quá 24 hình ảnh trên 1 giây, vì vậy khi ta di chuyển nhanh các frame

thì chúng ta không thể nhận thấy được sự thay đổi mà chỉ có cảm giác như

hình ảnh đang chuyển động

Trang 4

3 Scene.

Là các cảnh quay trong Flash, mỗi cảnh quay là tập hợp các khung hình lần

lượt thay thế nhau tạo thành các chuyển động

Hình : tạo Scene mới

- Các biểu tượng lần lượt là: tạo một Scene mới, tạo mới Scene

bằng cách copy Scene đang chọn

-Nhờ các Scene này mà chúng ta có thể tạo một thước phim dài màkhông phải quản lý các lớp một cách quá phức tạp khi số lượng đốitượng trên cảnh quay đó quá nhiều

Khi số lượng cảnh quay lớn, tập hợp các cảnh quay đó có thể tạo thànhmột đoạn phim

4 Movie

- một Movie là tập hợp các cảnh quay Scene, biểu tượng quản lý cáccảnh quay trong movie

5 Bi u t ểu về CS5 ượng Graphic ng Graphic

- Là một hình ảnh tĩnh, nó có thể được sử dụng lại để tạo ra chuyển động

Trang 5

Hình : Convert một đối tượng sang Graphic-

-Name: tên của graphic cần tạo

Type: loại biểu tượng cần chuyển

Các thuộc tính của biểu tượng

Position and size: chúng ta có thể thay đổi tọa độ của đối tượng ở stage,kích cỡ của đối tượng

Swap: thay đổi biểu tượng đã chọn của đối tượng

Color Effect: tùy chọn này cho phép ta hiệu chỉnh thuộc tính Brightness,Tint, Advanced, Alpha của đối tượng

6 Bi u t ểu về CS5 ượng Graphic ng Movie Clip

-Là một mẫu hoạt hình của flash có thể được tái sử dụng, khác với graphic,

MovieClip có riêng một TimeLine với vô số Frame của mình Một

MovieClip có thể bao gồm một hoặc nhiều biểu tượng Graphic hoặc thậm

chí là MovieClip Cũng tương tự như Button, bạn có thể cài đặt một tên

hiển thị cho nó để điều khiển nó bằng Actionscript

Để tạo một biểu tượng MovieClip ra chọn đối tượng cần Swap, nhấn F8

Trang 6

Hình : Tạo một biểu tượng MovieClip

Hình: Thuộc tính của MovieClip

- Instance name: tên hiển thị của biểu tượng, dùng đề làm việc với

ActionScript

Trang 7

-Instance of: thay đổi biểu tượng cho đối tượng hiển thị

Position and size: thay đổi kích thước và vị trí của đối tượngColor effect: chọn hiệu ứng màu sắc cho đối tượng, bao gồm: Brightness,Tint, Advanced và Alpha

7 Bi u t ểu về CS5 ượng Graphic ng Button

-Biểu tượng Button dùng để bổ sung một tương tác với movie, đáp trả các sựkiện kích thuộc, ấn phím, kéo các thanh kéo và các hành động khác, mộtbiểu tượng button sẽ có bốn Frame tương tác: Up, Down, Over, Hit

Thao tác tạo một button tương tự như tạo một MovieClip, các thuộc tínhcủa Button cũng tương tự như MovieClip

Hình : Tạo một biểu tượng Button

II Tìm hi u v ngôn ng Actionscript 3.0 ểu về CS5 ề CS5 ữ Actionscript 3.0

 Actionscript được giới thiệu năm 1996 cùng với sự phát hành của Flash

 Flash 5 được phát hành năm 2000 với sự ra đời của Actionscript 1.0

 Flash MX2004 hay Flash 7 cung cấp phiên bản Actionscript 2.0

 Actionscript 3.0 được giới thiệu năm 2006 cùng với sự phát hành của Flex

2, Flex cho phép các nhà phát triển xây dựng các ứng dụng đòi hỏi phải cóflash player Tuy nhiên, Flash cung cấp một giao diện trực quan hơn chocác ứng dụng phát triển và thích hợp cho phát triển game

Trang 8

1 Vùng so n th o ActionScript ạn thảo ActionScript ản trong Adobe Flash CS5.

 Bộ thao tác phía trên vùng soạn thảo Actionscript

 Bổ sung thêm các thành phần vào Actionscript

 Tìm kiếm và thay thế

 Chèn target vào trong vùng soạn thảo Actionscript

 Kiểm tra lỗi cú pháp

 định dạng mã nguồn tự động

 xem các chỉ dẫn về mã nguồn

 Tạo các điểm thoát trong debug chương trình

 3 biểu tượng tiếp theo: Đóng mở các khối mã lệnh chương trình

 Hỗ trợ khi viết script

2 Lập trình cơ bản với Actionscript.

2.1 Ưu và Nhược điểm của Actionscript

a Ưu điểm của Actionscript

 Flash player được cài đặt trên 97% máy tính có kết nối Internet

 Dễ tiếp cận và thực hiện nó

 Được xây dựng giao thức xử lý sự cố trong sản xuất sản phẩm flash

 Debug nhanh, play and upload dễ dàng

b Nhược điểm của Actionscript

 Có nhiều vấn đề mới nên việc học Actionscript lúc đầu rất khó khăn

 Screen- readers cho người xem không thể bao quát hết tất cả cáckhía cạnh của flash

 Không đủ mạnh để chạy các chương trình- độ phức tạp cao hơn

2.2 Các kiểu dữ liệu thông dụng trong AS3

c Kiểu số nguyên

Trang 9

Có 2 dạng số nguyên được hổ trợ trong AS là kiểu số nguyên có dấuint và số nguyên có dâu uint Cả 2 loại số nguyên này điều chiếm

4byte, nghĩa là vùng giá trị của int là -231 đến 231-1 và giá trị của uint

là 0…231-1

Note: trong kiểu dữ liệu, thì chỉ có kiểu số nguyên có chữ cái đầu

tiên viết thường

d Kiểu số thực

Số thực trong AS chiếm 32bit, từ khóa khai báo là Number

Note: Number viết hoa chữ cái đầu tiên

e Kiểu Boolean

Kiểu Boolean trong AS chỉ nhận 2 giá trị là true and false

Note: chữ Boolean viết hoa chữ cái đầu tiên

f Kiểu xâu String

Trong kiểu xâu String, thứ tự được đánh từ 0 đến n-1( n là độ dài củaxâu)

Note: chữ String viết hoa chữ cái đầu tiên

g Kiểu mảng Array

Trong kiểu mảng Array, thứ tự được đánh từ 0 đến n-1( n là độ dài

của xâu)

Note: chữ String viết hoa chữ cái đầu tiên

h Kiểu đối tượng Object

Tương tự như trong ngôn ngữ C, nhưng nó mềm dẻo hơn rất nhiều

2.3 Biến và Hằng

a Biến

 Biến trong Actionscript tương tự như trong ngôn ngữ lập trình C,

nhưng chỉ khác trong cách khai báo biến

 Cách khai báo biến trong Actionscript 3.0

Var Tên_Biến:Kiểu_dữ_liệu=[giá trị khởi tạo ];

Vd:

Var st:String = “Hello Word”;

Var i:Number = 10;

b Hằng

 Hằng có giá trị không thay đổi

 Cách khai báo Hằng tương tự như khai báo Biến chỉ thay đổi từ

khóa var thành const

const Tên_Hằng:Kiểu_dữ_liệu= giá_trị_khởi_tạo ;

Vd:

Trang 10

const st:String = “Hello Word”;

const i:Number = 10;

c Note: khi khai báo biến giá trị khởi tạo có thể có hoặc không, nhưng

trong khai báo hằng thì giá trị khởi tạo là thành phần bắt buộc phải

2.4 Toán tử và biểu thức

Tương tự như trong c

2.5 Các cấu trúc điều khiển trong AS3

 Trong AS3 câu trúc If(), If() Else(), While(), Do While(), For()

tương tự như trong C

 Chức năng: Index là chỉ số mảng được khai báo trực tiếp trong

vòng lặp, khi thực hiện vòng lặp index sẽ tăng cho tới

Array.length -1, mỗi lần như vậy index sẽ tăng lên 1 và thực hiệnLệnh trong vòng lặp

b Câu lệnh For Each in

 Chức năng: giống như câu lệnh lặp For in nhưng ở đây index

được thay bằng item, nó là phần tử của mảng chứ ko phải là chỉ

số của mảng như trong For in

Trang 11

3 Lập trình hướng đối tượng trong AS3.

 Lập trình hướng đối tượng trong AS3 cơ bản giống như trong ngôn ngữ

lập trình C, những điểm cần chú ý trong lập trình hướng đối tượng AS3.3.1 Định nghĩa lớp

Public class Tên_Class{

// Khai báo các thuộc tính của lớp// Các phương thức của lớp

}Với class có các từ khóa chỉ định sau

 Dynamic: các thuộc tính có thể được bổ sung vào trong thể hiện lớptại thời điểm runtime

 Internal: có thể nhìn thấy được trong cùng một package

 Final: không cho phép kế thừa

 Public: có thể nhìn thấy ở mọi nơi

3.2 Tính kế thừa trong AS3

AS3 là ngôn ngữ đơn kế thừa, tức là một lớp chỉ có thể kế thừa từ mộtlớp cơ sở để thể hiện tính kế thừa ta khai báo theo cú pháp sau:

Public class Tên_Class extends Tên_lớp_kế_thừa{

}

Trang 12

3.3 Interface trong AS3

Dù tính đơn kế thừa phản ánh đúng thực tế của mỗi thực thể, nhưng tính

đa kế thừa mang lại cho ngôn ngữ sức mạnh lập trình hướng đối tượng,

vì vậy AS3 cũng như các ngôn ngữ lập trình khác, nó bổ sung khái niệmInterface

Sự khác nhau giữa AS3 với các ngôn ngữ lập trình khác là nó không hỗtrợ lớp abstract, trong interface nó chỉ chưa khai báo phương thức chứkhông chứa thuộc tính

Một lớp có thể kế thừa từ 1 lớp cơ sở nhưng nó có thể thực thi nhiềugiao diện- interface

4 Sự kiện trong AS3.

4.1 Sự kiện chuột

a Thư viện: import flash.events.MouseEvent;

b Cú pháp tạo sự kiện: stage.addEventListener(MouseEvent.Click,func);

a Thư viện: import flash.events.KeybroadEvent;

b Cú pháp tạo sự kiện: stage.addEventListener(KeybroadEvent.Click,func);

 Func: là một hàm sẽ thực thi khi sự kiện được gọi

4.3 Sự kiện Frame

a Thư viện: import flash.events.Event;

b Cú pháp tạo sự kiện:

stage.addEventListener(Event.ENTER_FRANE, func);

Trang 13

c Giải thích:

 Hàm addEventListener dùng để add sự kiện cho đối tượng, cụ thể

ở đây là stage

 Chức năng: hàm func sẽ được gọi khi mở frame

 Func: là một hàm sẽ thực thi khi sự kiện được gọi

 Func: là một hàm mà sự kiện sẽ gọi

III C b n v l p trình game trong Actionscript ơ bản trong Adobe Flash CS5 ản trong Adobe Flash CS5 ề CS5 ập trình game trong Actionscript.

1 u nh Ưu nhược điểm của lập trình game bằng Actionscript ượng Graphic c đi m c a l p trình game b ng Actionscript ểu về CS5 ủa lập trình game bằng Actionscript ập trình game trong Actionscript ằng Actionscript.

1.1 Ưu điểm

Trang 14

dễ dàng và game của bạn sẽ ai cũng có thể chơi được nó.

AS3 cho phép bạn tạo ra các hệ thống phức tạp theo dõi các yếu tố tròchơi quan trọng như thanh máu, điểm số, kịch bản đối phương và thaotác nhân vật, điều này cho phép bạn tạo ra các trò chơi vui nhộn và thú

vị với các điều khiển phức tạp

Flash là công cụ tốt cho việc tạo hình ảnh động, đèn flash của các tínhnăng như Tweeen, sẽ giúp bạn cung cấp cho các hình ảnh động trò chơitrơn tru của bạn mà không cần tạo rất nhiều nghệ thuật sprite hoặc tạohiệu ứng động các mô hình 3D

Flash primarially sử dụng đồ họa vector Điều này có nghĩa rằng bạn cóthể bao gồm rất nhiều đồ họa độc đáo và kích cỡ sẽ vẫn còn trương đốinhỏ Nó cũng có nghĩa rằng đồ họa của trò chơi của bạn sẽ có quy môtùy thuộc vào kích cỡ màn hình của người dùng

-ActionScript là ngôn ngữ lập trình được sử dụng trong nhiều trang web

và các trò chơi máy tính, chủ yếu chạy trên web

Ngôn ngữ được sử dụng chủ yếu trong Adobe Flash với định dạng fla,điều này được xem trên web với định dạng swf, Ngôn ngữ lập trình nàylàm việc tốt nhất cho phim hoạt hình và các ứng dụng trên web, cácngôn ngữ lập trình được chơi bên trong trình duyệt

Flash không được thích hợp cho lập trình cấp thấp

Trường hợp ngôn ngữ cấp cao sẽ được tải các tập tin lớn hơn nhanhhơn, điều này là nhanh hơn để viết so với một ngôn ngữ cấp thấp, bởi vìmột dòng của kịch bản sẽ so sánh với 10 mã máy, so với ngôn ngữ cấpthấp chỉ đơn giản là sẽ có một dòng cho một mã máy

ActionScript cũng được chứa trong mã html của trang web

2 Sơ l ượng Graphic về thiết kế Game c

2.1 Giới thiệu thiết kế game trong flash

Quá trình thiết kế game có thể giúp bạn cấu trúc lại ý tưởng và xây dựnggame của bạn tốt hơn, linh hoạt hơn, hoàn hảo hơn Một thiết kế tốt cần

có kế hoạch tốt, ý tưởng, mã nguồn, âm thanh và đồ họa của game

- Tất cả các trò chơi nên có quy tắc và mục tiêu, tiêu chí cho sự thành

công hay thất bại

Trang 15

Người chơi sẽ có thể đạt được một mục tiêu của game.

Các trò chơi nên có một sự thách thức với người chơi

Chế độ khen thưởng, ưu đãi trong game để tạo ra sự hứng thú cho ngườichơi

Các trò chơi nên có thể dễ dàng tìm hiểu nhưng khó khăn để làm chủ

Rules nên đơn giản và nhanh chóng phản hồi nên có sẵn thông quacác trò chơi

hiệu ứng âm thanh nên được sử dụng để tăng niềm vui và hứng thú

2.2 Ví dụ về thiết kế game

3 Các đối tượng, phương thức trong thiết kế Game.

3.1 Đối tượng Array

-Khai báo Array không đối số:

Var thisarray:Array = new Array();

Khi khởi tạo độ dài của Mảng sẽ bằng 0

Để lấy độ dài của mảng hiện tại ta dùng thisarray.lengthKhai báo Array có đối số

Var thisarray:Array = [“Red”,”Green”,”Blue”];

Khi khởi tạo độ dài của Mảng sẽ bằng số phần tử thêm vào

Phương thức splice(): dùng để thêm một hoặc nhiêu phần tử vào mảng ở

vị trí cho trước, phương thức trả về độ dài của mảng sau khi thêm vào

 Các đối số của splice()

 Số nguyên đầu tiên xác định vị trí chèn vào

 Số nguyên tiếp theo xác định có bao nhiêu mục cần xóavào thời điểm đó

 Đối số tiếp theo là danh sách các phần tử được chèn vào

Xóa phần tử mảng

Trang 16

Phương thức Pop(): dùng để xóa phần tử cuối cùng của mảng phươngthức trả về phần tử đã bị xóa.

Phương thức shift():dùng để xóa phần tử đầu của mảng phương thức trả

về phần tử đã bị xóa

Phương thức splice(): dùng để xóa một hoặc nhiều phần tử của mảng tại

vị trí cho trước, phương thức trả về mảng con đã bị xóa

 Các đối số của splice(): nếu số đối số của splice() là 2 thì gọi hàmsplice xóa, số đối số của splice() là 3 thì gọi hàm splice thêm vào

 Số nguyên đầu tiên xác định vị trí bắt đầu xóa

 Số nguyên tiếp theo xác định có bao nhiêu phần tử cầnxóa tại vị trí đối số đầu tiên

- Sắp xếp phần tử của mảng

Phương thức reverse(): dùng để đảo ngược mảng

Phương thức sort(): dùng để sắp xếp mảng tăng dần

3.2 Phương thức Drag và Drog

-StartDrag () phương pháp làm cho movie clip kéo mục tiêu tại thờigian chạy, Chỉ có một đoạn phim có thể được kéo tại một thời điểmsau khi một startDrag () được thực thi và kết thúc khi stopDrag()

Phương thức stopDrag dùng để kết thúc một MovieClip.startDrag()

4 The Display list.

Một trong những thay đổi ấn tượng nhất được giới thiệu bởiActionScript 3.0, đặc biệt cho các nhà thiết kế quen thuộc với các phiên bảntrước đó của ActionScript, là cách mà các yếu tố hình ảnh được thêm vào

một ứng dụng trong thời gian chạy

Trong các phiên bản trước của ActionScript, một cách tiếp cận riêngbiệt được sử dụng để thêm vào một ứng dụng trong thời gian chạy, đòi hỏi

cú pháp khác nhau Quản lý những tài sản đặc biệt, độ sâu quản lý, tạo ra vàphá hủy các đối tượng, cũng khá hạn chế ActionScript 3.0 mang đến cho

nó một cách hoàn toàn mớ, Đó là danh sách hiển thị Nó là một danh sách

phân cấp của tất cả các yếu tố hình ảnh trong tập tin của bạn Nó bao gồm

các đối tượng phổ biến như các đoạn phim, nhưng cũng là đối tượng như

hình dạng và sprites mà trước đây không có hoặc không thể lập trình

4.1 Các đối tượng trong Displaylist

Ngày đăng: 13/11/2014, 21:24

HÌNH ẢNH LIÊN QUAN

Hình 1. Tạo mới layer - Tìm hiểu về ngôn ngữ actionscript và cơ bản về lập trình game trên cs5
Hình 1. Tạo mới layer (Trang 3)
Hình : tạo Scene mới - Tìm hiểu về ngôn ngữ actionscript và cơ bản về lập trình game trên cs5
nh tạo Scene mới (Trang 4)
Hình : Convert một đối tượng sang Graphic - Tìm hiểu về ngôn ngữ actionscript và cơ bản về lập trình game trên cs5
nh Convert một đối tượng sang Graphic (Trang 5)
Hình : Tạo một biểu tượng MovieClip - Tìm hiểu về ngôn ngữ actionscript và cơ bản về lập trình game trên cs5
nh Tạo một biểu tượng MovieClip (Trang 6)
Hình : Tạo một biểu tượng Button - Tìm hiểu về ngôn ngữ actionscript và cơ bản về lập trình game trên cs5
nh Tạo một biểu tượng Button (Trang 7)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w