Hiển thị các bài đăng có nhãn game. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn game. Hiển thị tất cả bài đăng

Thứ Tư, 27 tháng 5, 2015

Google Play Games đã có bản nâng cấp, đã cài được ở Việt Nam và một số nước khác

Giống như ý tưởng của Game Center Apple trên các máy iOS, Google Play Games được xây dựng nhằm mục đích đóng vai trò là cầu nối chia sẻ giữa những người mê game trên điện thoại chạy hệ điều hành Android.

Để thực hiện được chức năng trên, các ứng dụng game sản xuất cho hệ điều hành Android cần được nhúng thư viện Google Play Games được cung cấp sẵn bởi Android SDK.
Khi người dùng bật game lên, GPG sẽ tự động login và request quyền truy xuất dữ liệu game bằng tài khoản gmail của bạn trên thiết bị. Sau khi bạn chấp nhận các request đó, thì bạn đã có thể chơi cùng bạn bè, cũng như là chia sẻ tiến trình chơi game của mình với bạn bè.

Tuy nhiên, nếu bạn hay chơi game trên Android thì có lẽ bạn cũng biết là lâu nay Google Play Games mới chỉ được cho phép cài đặt ở một số quốc gia. Và có lẽ bạn sẽ gặp một chút khó khăn để đăng nhập account game của mình, ví dụ như các game COC, BoomBeach.
Để vượt qua được hạn chế này, thì bạn có thể phải download bản cài đặt APK ở đâu đó trên mạng internet được chia sẻ, và bạn cài đặt thủ công mà không có gì bảo đảm do không được Google Play (CH Play) hỗ trợ sẵn.

Rất may là ở lần nâng cấp mới nhất này, phiên bản 3.0.11, Google đã bỏ hạn chế các quốc gia, trong đó có cả Việt Nam.
Ngay bây giờ, bạn có thể cài đặt bản mới nhất ở đây để enjoy games cùng với bạn bè của mình.



Thứ Tư, 4 tháng 3, 2015

Gaming - Lập trình game với Cocos2D-JS - Hello Game World

Sau khi đã chuẩn bị đầy đủ môi trường phát triển như đã làm trong bài Giới thiệu, bài viết này nhằm hướng dẫn bạn cách khởi đầu làm game với Cocos2d-JS, cũng như có cái nhìn đầu tiên về làm game với framework này.

Phương pháp học là, thông qua những project demo, ta sẽ tiếp cận dần dần từ dễ đến khó, và nhờ đó hiểu biết cùng kỹ năng cũng sẽ tăng theo.
Ở bài này, chúng ta sẽ làm những công việc sau:
  • Tạo một project mới để làm với Cocos2D-JS
  • Code game Hello World
  • Tham khảo


Source code cho toàn bộ các bài học trong series này có thể download ở GitHub.

Đây là hình ảnh của game sau khi đã hoàn thành:

Thứ Hai, 2 tháng 3, 2015

Gaming - Lập trình game với Cocos2D-JS - Giới thiệu

Cocos2D-JS là framework sản xuất game opensource, hoàn toàn miễn phí.
2014 là một năm có nhiều đổi thay lớn đến với Cocos2D-JS, bằng sự kết hợp của Cocos2d-html5 và Cocos2d-x JSB. Với nền tảng này, việc làm game support cross-platform, cross-browser, trở nên dễ dàng hơn nhiều lần. Đi kèm với đó là một hệ thống tools, APIs,... giúp cho việc "Code one, run anywhere" dễ dàng đạt đến. Cách viết game là consistent cho các nền tảng khác nhau, Mac OS X, Android, iOS, Windows,... và nhờ đó, bạn dễ dàng cung cấp phiên bản game của mình đến nhiều đối tượng hơn, tăng thêm các kênh phân phối game.


Với phiên bản 3.0, một số điểm quan trọng được hoàn thiện trong framework Cocos2D-JS gồm:
  • Dung nhập 2 engine game Cocos2d-html5 và native Cocos2d-x Javascript thành một bộ duy nhất là Cocos2D-JS, hỗ trợ đa nền tảng cross-platform, đa trình duyệt cross-browser
  • Cung cấp một quy trình làm việc thống nhất consistent workflow cho mọi nền tảng
  • Tiến một bước lớn trong việc cải thiện performance cho engine, cả về web lẫn native
  • Dựng sẵn hàng tá các tính năng mới, mà cần thiết ví dụ như là Facebook Integration, Assets Manager, Object Pool, JS to Objective-C/JAVA reflection, ...

Dưới đây là sơ đồ các thành phần kiến trúc được tích hợp trong Cocos2D-JS.


Requirement để làm được Cocos2D-JS

Để làm được cocos2d-js thì chuẩn bị cũng khá đơn giản, gồm:
  • IDE/Editor: Công cụ chính chủ là Cocos Code IDE. Ngoài ra, nếu bạn đã quen thuộc với các công cụ text editor khác thì bạn vẫn có thể tiếp tục dùng chúng nếu muốn.
  • Webserver: Để test project, bạn cần 1 webserver chạy trên máy của mình. Mình thường dùng XAMPP, các bạn cũng có thể dùng MAMP, WAMP,...
  • Browser: Ưu tiên test bằng Google Chrome và Safary trước.
  • Bộ cài đặt framework Cocos2D-JS download: http://www.cocos2d-x.org/download

Dựng môi trường để sẵn sàng working với Cocos2D-JS

Cocos2D Code Studio được tuỳ biến dựa trên bộ IDE Eclipse. Bạn download về và cài đặt như là đối với Eclipse, sau đó có thể sẵn sàng sử dụng bộ IDE này. Nếu bạn đang quen thuộc với các IDE hoặc tool text editor khác, bạn có thể tiếp tục sử dụng chúng theo sở thích mà không gặp phải khó khăn gì.
Cũng theo đường link trên, bạn cần down bộ framework về. Xả nén ra một nơi an toàn là được.

Gaming - Các khái niệm khởi đầu khi làm game

Hiện nay có nhiều framework hỗ trợ mạnh các developer trong việc sản xuất game theo ý thích của mình. Các gương mặt tiêu biểu có thể nhắc đến, có cộng đồng lớn như cocos2d-x (cocos2d series), Unity,...
Tuy nhiên, trước khi bắt tay vào làm game, bạn cũng nên nắm được một số khái niệm cũng như là thuật ngữ chuyên môn sử dụng trong sản xuất game.


Director - Đạo diễn
Việc làm game cũng giống như việc thực hiện một bộ film, chỉ khác một chút là khán giả cũng có thể thao tác trực tiếp để tạo nên câu chuyện chứ không chỉ đơn thuần là thưởng thức bằng cách xem như là film. Và để khởi đầu, bạn cũng tưởng tượng như bạn đang phải thực hiện một bộ film, và bạn chính là Executive Producer - Nhà điều hành sản xuất game. Bạn sẽ phải nói với Director - Đạo diễn về những gì cần làm cho game của mình.
Director - Đạo diễn sẽ điều khiển các Scene - Cảnh, việc thay cảnh này cảnh kia, chuyển đổi các Scenes.
Trong một game, Director thường là một singleton Object được shared dùng chung, bạn có thể gọi nó ở bất kỳ đâu trong code.


Scene
Tương tự như trên, Scene sẽ là nơi bạn tổ chức, phân bố các thành phần sẽ hiển thị trên màn hình: main menu, buttons, objectives,...
Các object hiển thị trên Scene theo một quy tắc hình cây như sau:

Các object sẽ được hiển thị lần lượt theo hình cây, theo hướng đường nét đứt. Từ trái qua phải, từ trên xuống dưới.
Bạn cũng cần hiểu thêm về z-index (z-order) là khái niệm có liên quan khi hiển thị các object. Z-order là chiều từ màn hình hướng về phía người chơi, ví dụ: background của game có z-index = 0, sau đó trên background có thể có nhà với z-index = 1, trên nhà lại có người ở bên ngoài có z-index = 2. Như vậy, khi người chơi nhìn vào màn hình sẽ thấy người đầy đủ, đằng sau người là nhà, và người không bị nhà che lấp đi.

Sprites
Sprite là các object graphics sẽ sử dụng để hiển thị việc move-di chuyển, trong game. Ví dụ như nhân vật chính với các hành động đi lại, đánh quái trong game của bạn.

Sprites Sheet
Sprites sheet là cách kết nối các sprite thành một file. Việc này giúp cho dung lượng của file tính về tổng là giảm đi so với việc để riêng rẽ từng file. Như vậy, cũng tương ứng với việc giảm được bộ nhớ phải sử dụng, thời gian tải object lên bộ nhớ. Ngoài ra còn tăng được tốc độ xử lý perfomance vì chỉ cần init một object graphics thôi. Việc làm này thường đã trở thành một chuẩn chung, thường gặp trong sản xuất game.


Nodes
So với Sprite, thì Node tương tự, nhưng nó là những object no-move, không cho phép bạn di chuyển chúng. Xem hình bên dưới đây để hiểu rõ hơn:


Trong hình đó, Sprites là các nhân vật, bạn có thể tap vào và drag để di chuyển. Còn các Nodes là Banners, tường gạch, bạn sẽ không di chuyển được.


Sequences và Spawns
Sequences là tập hợp các Actions chạy theo một thứ tự cố định được chỉ sẵn. Ví dụ, hành động mây bay trên trời ở nền của cảnh game thường được điều khiển tự động bằng sequence.
Khi mà nhiều sequences cùng chạy một lúc thì gọi là Spawn. Ví dụ, khi nhân vật được thăng cấp, có thể có các hiệu ứng cùng xảy ra một lúc vào thời điểm đó.

Parent Child Relationship - Quan hệ Cha Con
Các thay đổi được gán cho parent node, sẽ được apply vào children node của node đó, tương ứng ngay.