Lập Trình Android Game Với Game Maker Studio (Phần 1)

Thông qua lập trình game các bạn sẽ học được thêm các câu lệnh , rèn tư duy và tìm hiểu thêm được một platform rất mạnh cho việc phát triển game 2D

Đầu tiên, có hàng trăm, thậm chí hàng ngàn nền tảng cho phát triển game, phát triển phần mềm, ứng dụng,... Điển hình trong đó là Unity, với các thư viện Asset được xây dựng sẵn khá dồi dào, các bạn có thể làm game và hoàn thiện nó chỉ trong 1 ngày. Tuy nhiên, theo mình đánh giá, unity là một platform thực sự khó tiếp cận nếu các bạn chỉ mới bước vào làm game.

Nhiều bạn từ lâu đã muốn tự mình hoàn thiện một sản phầm đầu tay nhưng không biết nên bắt đầu từ đâu, bài blog này sẽ là câu trả lời cho tất cả các vấn đề các bạn đang vướng phải, vậy tóm lại lý do mình chọn Game Maker Studio để hướng dẫn là gì?

Tại sao lại là Game Maker Studio?

  • Giao diện trực quan: Giao diện của Game Maker Studio thật sự dễ tiếp cận, mình đã tìm hiểu một số người bạn và trung bình họ sẽ mất tầm 10-30 phút là có thể làm chủ được Workspace của Game Maker Studio và thao tác trên đó.
  • Phù hợp cho thể loại 2D cơ bản: Unity rất tốt trong việc tạo game đồ họa 3D, tuy nhiên game trên nền tảng 2D chỉ cần dùng Game Maker Studio là đủ.
  • Không cần biết nhiều về các function: Với Game Maker Studio, 90% các chức năng cơ bản để bạn tạo nên một con game hoàn chỉnh điều đã được các nhà phát triển viết sẵn, và việc của bạn, chỉ là gọi hàm (hay thủ tục) đó ra là có thể tiết kiệm được rất nhiều thời gian.
  • Là nơi thể hiện sự sáng tạo: tuy Game Maker Studio cung cấp khá nhiều hàm dựng sẵn, nhưng điều khó nhất trong lập trình game vẫn là sự sáng tạo của bạn, hãy dựa vào những chức năng có sẵn để kết hợp, chỉnh sửa và tạo chức năng mới, đó cũng là điều mà phần mềm này cho phép các bạn thao tác.
  • Nâng cao tư duy lập trình: không chỉ là những dòng code khô cứng như Netbean hay Eclipse, không chỉ là kéo thả nhân vật vào là ra một game như Unity, Game Maker Studio như là một sự trung gian, đòi hỏi các bạn phải hiểu về thuật toán, cũng như cung cấp cho các bạn giao diện trực quan để thiết kế game, vì vậy đối với người mới theo mình nó là lựa chọn hàng đầu.

Sau một thời gian nữa, tạo những game như thế này sẽ trở nên dễ dàng đối với các bạn

Tải Game Maker Studio 2

  • Tải phần mềm tại đây
  • Tạo một tài khoản và dùng thử trong 30 ngày (không giới hạn tính năng), nếu hết 30 ngày thì mình tạo một tài khoản khác thôi, không khuyến khích các bạn xài crack nhé

Cài đặt JDK, SDK và NDK và thông chỉnh Project

Lần đầu tiên sử dụng, việc cài đặt sẽ có phần phức tạp, tuy nhiên các bạn hãy làm từ từ và khi hoàn thành, các project sau các bạn sẽ không cần cài đặt lại nữa. Đừng nản chí nhé!

  • Cài mấy cái SDK và NDK để làm gì?
    • Để xây dựng game cho nền tảng android, bắt buộc trên window bạn phải cài hai bộ này
    • NDK là một SDK, NDK là một công cụ cho phép bạn lập trình trong C/C++ cho các thiết bị Android. JDK thì quá quen thuộc với các bạn lập trình Java, để tìm hiểu thêm các bạn có thể tìm hiểu tại đây 
  • Cài đặt JDK: tại đây
  • Cài đặt SDK và NDK: thông qua Android Studio, tải Android Studio tại đây


Cài SDK vào máy


Truy cập mục Setting, đảm bảo rằng android phiên bản mới nhất được cài, và các bạn hãy nhớ đường dẫn SDK (khoanh đỏ)

  • Tạo Project mới


Tạo project mới


Cách này đơn giản hơn cho các bạn mới làm quen


Sau khi tạo project xong, các bạn sẽ có 1 workspace như này, chúng ta sẽ thao tác trên đó sau

  • Chỉnh thông số cho project: truy cập vào File-> Preference -> Platform Settings -> Android (các bạn chỉ cần chỉnh và không cần hiểu quá sâu về phần này)

Chỉnh lại đường dẫn SDK, NDKJDK sao cho phù hợp, tìm đường dẫn của NDK bên trong SDK như hình trên


Lăn xuống và xem lại các trường khoanh đỏ (bắt buộc phải điền)

Làm một giao diện Game và chạy thử

1. Tạo ROOM(s) (Ấn ALT+R)

Room: Được hiểu nôm na là một nền chứa tập hợp các nút, các vật thể, các dòng chữ, ... xuất hiện trong game dưới dạng giao diện đồ họa. Một project của các bạn phải có nhiều hơn hoặc bằng 1 Room, trong đó "room0" hiển thị đầu tiên khi game chạy, nó có thể là các level, các menu, các cửa sổ trò chơi khác nhau, ...Ở đây, project của mình sẽ có 4 Room:

  • Menu: Room này mình sẽ tạo đầu tiên, vì thế nó sẽ hiển thị đầu tiên khi game chạy, chứ các nút như Start Game, Exit, ...
  • MainGame: Room này là room chính để chơi game
  • HighScore: Room này hiển thị bảng điểm
  • About: Room này giới thiệu về trò chơi

Tạo 4 room như hình vẽ, nhớ đổi tên "room0"->"menu" để Menu sẽ hiển thị đầu tiên khi game chạy

 


Tiếp đến, thay đổi độ phân giải cho các room thành 720x1520 (HD+) , độ phân giải này thịnh hành với nhiều thiết bị android

Ấn F5 và chạy thử, Game Maker Studio sẽ mặc định chạy thử trên Window, lúc này các bạn sẽ chỉ thấy một giao diện màu đen, vì Room "Menu" của chúng ta vẫn chưa có gì, hãy qua các bước tiếp theo

2. TẠO SPRITE(s) (Ấn ALT+S)

Sprite: Được hiểu là tài nguyên đồ họa của bạn, nó có thể là các ảnh nhân vật, ảnh nền, đồ họa cho các nút hay các object trong game, hoặc thậm chí là ảnh động (nâng cao ở các phần sau). Các bạn có thể lên mạng và tải về ảnh nhân vật mình thích, background mình thích và sau đó chỉ việc thêm nó vào game, hoặc những bạn nào siêng hơn có thể dùng Adobe PhotoShop để tự tạo cho mình một hình nền, nhân vật, ...

Import ảnh đã thiết kế sẵn vào, ở đây mình tự thiết kế một giao diện cho nút "Play" và thêm vào. Các bạn có thể chia các Sprite thành nhiều nhóm như trên để dễ quản lí

Thêm hình nền cho Room "Menu" bắng Sprite "bg1", chỉnh các thông số như trên thì hình nền sẽ chuyển động lên xuống để tăng thêm độ hấp dẫn

3. TẠO OBJECT(s) (Ấn Alt+O)

Object: Là các thành phần chính trong game, điểm khác biệt lớn nhất của nó và các thành phần khác là người chơi có thể tương tác với các Object, và diễn biến trong trò chơi sẽ thay đổi dựa vào sự tương tác này, nó có thể là 1 cú click chuột, 1 thao tác ấn phím, ...Một Object phải được hiển thị trực quan (hiện giao diện đồ họa) bằng một Sprite, nếu không thì object này tuy thực hiện đúng chức năng của nó nhưng sẽ không thể thấy được bởi người chơi trong game

Đầu tiên tạo 1 object, sau đó tạo một event cho object này, tìm kiếm trong Box chức năng 'Exit Game' để mỗi khi ấn và thả nút "Exit", game sẽ thoát

Tương tự, tạo lần lượt 3 nút còn lại, sử dụng các sprite đã import ở bước 2

Vậy là cuối cùng chúng ta cũng hoàn thiên xong 4 object cơ bản cho Room "Menu" của mình, bao gồm 4 nút ở hình trên: oPlay, oAbout, oExit, oHighScore. Chú ý, chắc chắn rằng khi ấn vào nút nào, thì nút đó sẽ làm đúng chức năng của mình (Vd: Khi ấn nút "Play", thì Room "MainGame" sẽ hiển thị thay cho Room "Menu"; ấn nút About, thì Room "About" sẽ hiển thị; ấn nút Exit, thì game sẽ thoát). Công việc tiếp theo chỉ là thêm những Object trên vào đúng vị trí trong menu của mình

4. Hoàn Thiện Menu

Kéo thả các Object ở bước trên vào Layer "Instances", Layer này sẽ được tạo mặc định để chức các thực thể trong game.

Các bạn chỉ việc kéo thả các object vào tab "Instances" trong game, và ấn F5 để thử nghiệm xem chức năng của các nút đã đúng chưa nhé

Thử nghiệm trên môi trường Android

  • Kết nối USB điện thoại với máy tính, bật chế độ USB DEBUGGING MODE (Tra trên google)
  • Chọn như hình dưới

Nếu điện thoại các bạn không tự động hiển thị, hãy ấn Detect Device nhé

Chạy thử trên Android thành công (cũng ấn F5 trên window để chạy nhé)

Tạm kết

Game này đã chạy được trên android nhưng nó đang dừng lại ở mức cơ bản, theo dõi series game của mình và xem mình đã phát triển game này như thế nào nhé.

Vậy qua phần 1, chúng ta đã hiểu được cách cài đặt môi trường cũng như các phần tử cơ bản của Game Maker Studio. Hiện tại vì giao diện game còn hết sức đơn giản và chưa có chức năng gì nhiều nên các bạn vẫn chưa thấy dùng code ở chỗ nào, chỉ kéo thả trong workspace là chính. Dành cho các bạn mới bắt đầu nên mình chỉ hướng dẫn sơ và phần phức tạp hơn mình sẽ để dành cho phần tiếp theo. Các bạn thấy hứng thú và muốn mình tiếp tục ra các phần tiếp theo hãy đánh giá 5 sao và share bài thật nhiều cho mình nhé, đạt cột mốc 5k view mình sẽ viết tiếp phần 2.

 

Cuối cùng, cảm ơn các bạn đã xem blog này, nếu các bạn có lỗi gì phát sinh trong quá trình thực hiện, các bạn có thể để lại tin nhắn và mình sẽ trợ giúp các bạn, chúc các bạn thành công.


  RATE: 3.9 

  2631 VIEW


chưa có bình luận nào ...
BÀI VIẾT LIÊN QUAN
Code Game 2D Dodge Block Bằng Unity (Phần 2)

Hiện có rất nhiều phần mềm Engine hỗ trợ việc lập trình game từ di động đến desktop, như Game Maker Studio, Unreal Engine 4, … trong đó có Unity. Nhìn sơ qua thì Unity có thể là một nền tảng khá khó cho người mới học, họ dễ bị sốc kiến thức khi lần đầu tiếp cận unity vì nó cung cấp 1 lượng lớn thư viện hỗ trợ gồm các thư viện Asset đồ sộ, các model, được dựng sẵn.

BÀI VIẾT LIÊN QUAN
Code Game 2D Dodge Block Bằng Unity (Phần 1)

Hiện có rất nhiều phần mềm Engine hỗ trợ việc lập trình game từ di động đến desktop, như Game Maker Studio, Unreal Engine 4, … trong đó có Unity. Nhìn sơ qua thì Unity có thể là một nền tảng khá khó cho người mới học, họ dễ bị sốc kiến thức khi lần đầu tiếp cận unity vì nó cung cấp 1 lượng lớn thư viện hỗ trợ gồm các thư viện Asset đồ sộ, các model, được dựng sẵn.

BÀI VIẾT LIÊN QUAN
Lập Trình Android Game Với Game Maker Studio (Phần 4)

Trong phần cuối cùng này, chúng ta hãy cùng nhau tiếp tục tìm hiểu sâu hơn về các tính năng khác trong GMS2 mà bạn có thể sử dụng để nâng cấp trò chơi lên cột mốc chuyên nghiệp hơn. Hãy chắc chắn rằng các bạn đã đọc các bài viết trước đó để có thể thao tác mượt mà trong phần 4