Hiển thị các bài đăng có nhãn Giới thiệu. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Giới thiệu. Hiển thị tất cả bài đăng

Bài 23 - Giới thiệu CocoStudio - Công cụ tạo Animation cực cool (Part 1)

Người đăng: chisenhungsuutam on Thứ Năm, 19 tháng 6, 2014

Hi mọi người!

Animation là 1 phần không thể thiếu trong Game. Ở bài trước, chúng ta đã cùng nhau nghiên cứu cách tạo Animation bằng Sprite Sheet. Cách này có ưu điểm là đơn giản dễ làm, tuy nhiên sẽ gặp phải vấn đề về bộ nhớ  nếu khối lượng Sprite Sheet lớn, số lượng ảnh chuyển động phải vẽ là khá nhiều, nếu game mà có nhiều nhân vật chuyển động thì chắc cũng hơi oải nhỉ.

Trong bài này mình sẽ hướng dẫn các bạn Cách sử dụng CocoStudio để tạo Animation. Loại Animation tạo ra bởi CocoStudio có ưu điểm là mềm mại hơn, linh hoạt hơn, giải quyết được vấn đề bộ nhớ, quy trình làm cũng không quá khó. Đó chính là Skeleton Animation - Chuyển động dạng khung xương

Nội dung chủ yếu của bài:

+ Giới thiệu về CocoStudio và các chức năng chủ yếu của nó
+ Làm quen với giao diện thiết kế Animation
+ Các bước thiết kế Animation từ việc: dựng khung xương, kéo thả hình ảnh, gắn xương, tạo chuyển động với keyframe trên timeline

OK, thế thôi nhỉ! À, bài này khiến mình hơi phân vân trong việc

+ Hướng dẫn chi tiết bằng hình ảnh
+ Hay quay video + chú thích với từng bước

Thôi, cứ làm cách 1 đã, Video hẹn hôm sau

B1 - Giới thiệu về Cocos Studio, Các chức năng của nó

CocoStudio - cái tên nói lên tất cả. là phần mềm chuyên để thiết kế giao diện, animation, scene, data cho Engine Cocos2d-x. Soft nào mà gắn chữ Studio là bạn biết rồi đấy, chuyên để design.

Bạn hoàn toàn có thể chỉ dùng mỗi Engine Cocos2d-x để build game với từng dòng Code. Tuy nhiên nhờ sự hỗ trợ mạnh mẽ của các extension, plugin hoặc các soft của bên thứ 3 như CocoStudio mà việc thiết kế Game của bạn đơn giản đi rất nhiều. Tất nhiên nó sẽ không làm cho việc thiết kế game đơn giản tới mức chỉ việc ngồi rung đùi, uống cà phê và kéo thả đâu. Nó chỉ làm đơn giản hóa 1 vài công đoạn viết code cho bạn thôi. Tất nhiên đều là những công đoạn quan trọng cả.

Giao diện chính


Những tính năng chủ yếu của CocoStudio

+ Thiết kế Animation
+ Thiết kế Giao diện
+ Thiết kế Màn chơi
+ Thiết kế Data

Bạn có thể download bản mới nhất tại trang chủ của Cocos2d-x. Hiện phiên bản mới nhất là 1.4.x, hỗ trợ Engine 3.1.1

B2 - Làm quen với giao diện thiết kế Animation

Các bạn mở CocoStudio lên, chọn nút đầu tiên : Animation Editor

Giao diện thiết kế của phần Animation như ảnh dưới


Chọn New Project ở bên trái, trọn tên và vị trí lưu Project



Và dưới đây là toàn bộ giao diện WorkSpace của CocoStudio 1.4.x,

Chế độ Pose Mode ( dựng xương, và hình )
















Chế độ Aniatmion : Dựng hoạt hình






Sau đây sẽ là các lệnh, và nút lệnh cơ bản CocoStudio. Thực sự khi mới bắt đầu dùng thì mình cũng thấy hơi khó khăn, do chưa quen nút lệnh, menu chuột phải thì rất ít tác vụ. Nhưng chỉ sau khoảng 1h đồng hồ tìm hiểu là các bạn biết cách sử dụng thành thạo phần Animation này ngay ấy mà. Mình chắc chắn đấy.

* Các menu chính

FILE:


EDIT


VIEW


WINDOW


2 Menu Help, Language thì thôi nhé. Các menu kể trên rất gọn gàng và đơn giản phải không.

* Các Nút lệnh




Các nút màu đỏ là khá quan trọng, thường hay dùng nhé, 2 chế độ Pose Mode và Animation đều dùng chung các nút này.

Quên 1 nút chưa chú thích là nút Selection hình mũi tên và dấu +

* Các khung cửa sổ cơ bản



Cửa sổ Action và Timeline chỉ xuất hiện ở Mode Animation nhé

Cửa sổ ẩn, Bones Relationship ( quan hệ xương ), trông khá giống cây gia phả nhỉ, Xương "cha" nằm phía trên, xương "con" nằm phía dưới, khi di chuyển xương "Cha", xương "con" sẽ di chuyển theo






Cửa sổ Resource Editor ( Sửa tài nguyên ), ở đây bạn có thể chỉnh vị trí điểm neo ( dấu + đỏ ) là điểm gắn vào xương. Còn mấy cái vẽ khung hình ( vẽ ra khung màu xanh ) trong này mình cũng chưa biết ý nghĩa để làm gì nữa.



Xong bước làm quen với Giao diện, Work Space của CocoStudio rồi, chúng ta sẽ đi vào 1 phần rất hay của bài hôm nay, đó là tạo Dựng khung Xương

B3: Thiết kế Animation qua từng bước

1/ Dựng khung xương

Mở khung làm việc, chọn Create Bones ( Alt + K ), vẽ 1 bộ khung xương người như sau, chỉ việc kéo chuột từ điểm này tới điểm kia thôi, khi cần di chuyển xương, nhấn Alt + S, khi cần xoay xương chọn nút "Cử Động Xương". Cần kéo dài, hoặc rút ngắn xương hãy chọn Alt + D. Trông khá giống khung xương người nhỉ



2/ Liên kết khung xương với nhau, mục đích để chúng chuyển động hài hòa, ăn ý với nhau gần giống thật nhất
( Ví dụ: liên kết 2 xương tay, 2 xương chân, liên kết chân với người, đầu với người ) Càng nhiều liên kết thì chuyển động càng uyển chuyển, nhưng cũng khó quản lý hơn đấy

Có 3 cách để liên kết khung xương
C1 : Sử dụng menu chuột phải, chọn Binding Parent ( Alt +P ) : bạn Click chọn 1 Xương - mục đích làm xương con ( nó sáng màu ) sau đó chuột phải chọn Binding Parent ( hoặc nhấn Alt +P ), sau đó chọn 1 xương Cha, 1 thông báo Binding thành không sẽ hiện ra, như sau


C2 : Sử dụng bảng quan hệ Bones RelationShip, với cách này bạn làm như sau: Kéo xương con vào xương cha là xong, mối quan hệ cha con sẽ được thể hiện qua mũi tên, đầu nhọn mũi tên là con, đầu ko có mũi tên là cha
C3 : Sử dụng nút "Gắn xương" để chuyển sang Binding Mode, rồi kéo xương Con vào xương Cha

Mỗi cách có 1 điểm mạnh điểm yếu riêng:

- Cách 1 nhìn được vị trí các xương, có thể xác định được xương nào với xương nào, nhưng ko thể nhìn thấy được mối quan hệ giữa các xương, ko biết xương cha con,
- Cách 2 không nhìn thấy vị trí các xương, vẫn có thể xác định được xương nào = cách click vào layer, nhìn thấy được mối quan hệ cha con.
- Cách 3: nhìn được vị trí các xương, không nhìn thấy mối quan hệ, nhưng có khả năng kéo thả tiện dụng

Hãy phối hợp cả 3 cách để xây dựng khung xương linh hoạt.

* Lưu ý khi tạo liên kết xương:

+ 1 Con không thể có >1 Cha, Khi bạn tạo cha mới cho 1 xương con đã có cha, thì Xương con sẽ nhận Xương Cha sau cùng
+ 1 Cha có thể có nhiều con
+ 1 Xương con, lại có thể là Cha của 1 hoặc nhiều xương con khác

+ Bạn không đảo liên kết Cha - Con, Ông - Cháu với nhau khi còn liên kết Ông - Cha - Con. Tức là bạn ko thể thiết lập cho Cháu lại làm "bố" của Ông, và Con ko thể làm "bố" của Cha. Giống với thực tế đấy chứ. Nhưng khi bạn hủy bỏ liên kết Ông - Cha - Con đi, thì bạn hoàn toàn có thể chọn xương nào làm Cha, xương nào làm Con cũng được, nhưng phải tuân thủ 3 điều trên

Hãy nắm vững 3 quy tắc đó là bạn sẽ dựng được khung xương dễ dàng

Đây là bảng khung xương mình đã dựng ( hình của bạn có thể khác )











OK giờ sang bước tiếp theo là, gắn "da thịt" cho bộ xương này. Có bạn sẽ thắc mắc, lấy "da thịt" này ở đâu? Da thịt ở đây chính là hình ảnh của nhân vật bạn định tạo ra trong game, hình ảnh nhân vật thì bạn phải vẽ rồi. Khi vẽ nhân vật bạn hãy hình dung ra nhân vật sẽ cử động như thế nào, càng nhiều cử động trên cơ thể thì khung xương càng phức tạp. Đơn giản thì chia cử động nhân vật thành các phần: Đầu, thân, tay, chân, bàn chân, bàn tay, vũ khí..... Khi có nhân vật tổng thể bạn phân chia hình ảnh ra các phần Đầu, thân, tay, chân, bàn chân, bàn tay, vũ khí....có thể mỗi phần chia sẽ lẹm của nhau một tý nhưng ko sao đâu, làm thế nào khi ghép lại trông không quá rời rạc là được.

Ở bài này mình lấy sẵn thư viện của CocoStudio để minh họa nhé, tất nhiên chỉ lấy phần tài nguyên hình ảnh thôi.

Nhân tiện về phần Tài nguyên của CocoStudio mình giới thiệu luôn là, nó có thể Import các loại tài nguyên sau đây:

+ Hình ảnh
+ File Json
+ File Plist
+ File Fla?? ( Chưa thử )

Rất phong phú phải không, hình ảnh thì bình thường rồi, nhưng 3 cái sau rất quan trọng nhé, JSon, Plist có thể dùng cho Particle, Physic, tuyệt không?

* Đắp da thịt cho Xương
+ Trước tiên bạn Import Tài nguyên vào bằng lệnh Import Folder / hoặc Import Files ( Chuột phải ở ô Resource ), rồi chọn Tài nguyên ( Image, Json, Plist, Fla)


Tiếp theo là bước quan trọng, đắp da, thịt cho nhân vật, có 2 cách như sau

+ Cách 1: Kéo thả từng ảnh vào WorkSpace : ví dụ ảnh cái đầu ( bạn có thể phóng to thu nhỏ ảnh cho phù hợp khung hình. Sau đó chuột phải vào Ảnh, chọn Binding Bones( Alt + I) rồi tiếp theo chọn cái Xương đầu là xong. Một khi đã gắn Thịt vào Xương, bạn không thể tách ra được, không còn menu chuột phải trên hình ảnh, bạn chỉ có thể xóa Xương đó khỏi khung xương, hoặc Ctr + Z

Để kiểm tra Ảnh đã được gắn vào Xương chưa, chọn nút Xoay Xương, nếu thấy ảnh xoay theo thì là thành công

+ Cách 2: Bạn chọn vào Xương cần gắn, nhìn vào bảng bên phải, ở Tab Layer, xương nào được chọn sẽ sáng lên, tiếp đó bạn Click vào Tab Properties. Tab này chứa các thông số của Xương như: Tên, chiều dài, góc quay, tọa độ, GRAPHIC. bạn có thể dùng các thông số này để hiệu chỉnh Xương khi chưa gắn Ảnh, hoặc hiệu chỉnh cả Ảnh khi được gắn vào Xương. ( Nếu không nhìn thấy 2 Tab này hãy vào menu Window/Reset Window Layout)



Bạn để ý 1 ô quan trọng, GRAPHIC, hãy kéo hình ảnh vào đây, nó sẽ gắn luôn với Xương được chọn, nhưng hình ảnh sẽ không đúng tỷ lệ mong muốn, và thường bị quay đi 1 góc. Hãy chỉnh lại tỷ lệ ảnh, và góc quay với Lưu ý bên dưới.

* Lưu ý đặc biệt quan trọng

2 Cách đều có cái hay riêng:

Cách 1: Kéo thả ảnh, chỉnh ảnh - xoay ảnh thoải mái rồi mới gắn xương. Tuy nhiên có thể gắn nhầm xương, hoặc chọn nhầm ảnh ( do nhiều ảnh ) để gắn.

Cách 2: Khó để nhầm ảnh hoặc Xương, gắn phát dính luôn,

Và cái dở:

Cách 1: Bạn không thể tách xương khỏi ảnh, tuy nhiên vẫn có thể dùng Ctrl + Z để trở lại bước chưa gắn xương

Cách 2: Bạn cũng ko thể tách xương khỏi ảnh, và Đặc Biệt, bạn ko thể dùng Ctrl + Z để trở lại bước trước khi gắn Xương, nghĩa là bạn chỉ có thể mở lại Project ( nếu chưa lưu bước gắn xương mà thôi ), hoặc chỉ có thể xóa Xương và Ảnh khỏi khung xương. Sẽ rắc rối nếu Xương đó là xương Cha của nhiều xương, lại phải gắn khung xương lại rồi.

Và có 1 điều khó chịu khi làm theo cách 2  ( thậm chí là cách 1) . Khi gắn xương theo cách 2, ảnh sẽ bị quay 1 góc, bạn phải làm như sau:
- Trước tiên Bạn phải chỉnh tỷ lệ hình ảnh = 4 nút vuông ở 4 góc ảnh, nhớ giữ SHIFT
- Sau đó bạn mới quay ảnh = 1 nút vuông nằm trên 1 Cạnh của ảnh
- Nếu ko làm theo thứ tự này, tức bạn xoay ảnh trước, rồi mới chỉnh tỷ lệ, thì sẽ cực khó chịu vì phương chiều sẽ bị đảo lộn rất ức chế. Bạn thử đi là biết.

Vậy mình khuyên các bạn dùng cách 1 đi, bớt khó chịu hơn cách 2

Và đây là khung xương đã gắn da thịt của mình ( Mình lấy tạm Project của CocoStudio nhé )






Mình dừng bài học ở đây nhé, cũng khá dài rồi. Phần Animation mình hẹn ở Phần 2 nha. Trong bài này chúng ta đã học được:

+ Các chức năng chính của CocoStudio
+ Làm quen giao diện WorkSpace
+ Dựng khung xương, gắn xương với nhau
+ Đắp "da thịt" cho bộ xương

Chào và hẹn gặp lại các bạn ở bài sau!

Bài 24 - Giới thiệu CocoStudio - Công cụ tạo Animation cực cool (Part 2)
More about

Cách xài chùa phầm mềm TexturePacker 3.3.4 vĩnh viễn

Người đăng: chisenhungsuutam on Thứ Tư, 28 tháng 5, 2014

Hi all!

Lâu lâu không viết bài, cũng thấy ngứa ngáy tay chân. Cơ mà tại sếp dạo này chăm chỉ ở nhà, cứ dí việc vào đầu, thành thử không rảnh để nghiên cứu tiếp. Tuy nhiên hôm nay mình sẽ tranh thủ hướng dẫn cho mọi người cách làm 1 thứ rất hay ho.

Hẳn các bạn đã biết, trong Làm game thì ngoài ý tưởng, code nguồn, còn 1 thành phần rất quan trọng khác đó là HÌNH ẢNH, âm thanh. Game bạn có thể không cần âm thanh, nhưng Hình ảnh thì chắc hẳn không thể thiếu.

Mình xin giới thiệu với mọi người 1 phần mềm quản lý file Hình ảnh rất tuyệt vời đó là TexturePacker - http://www.codeandweb.com/texturepacker

Một số tính năng chính của nó:

+ Tạo và quản lý các Sprite Sheet
+ Nén hình ảnh, tối ưu hóa cho chương trình
+ Hỗ trợ nhiều nền tảng Engine nổi tiếng 2D và 3D
+ Hỗ trợ nhiều định dạng: PNG, PSD, SWF, v..v..
+ Publish ra nhiều định dạng phù hợp với các loại Engine ( Plist, pvr, ccz ,....)

Quá tuyệt vời phải không, và giá nó cũng không quá cao ~800k VNĐ thôi. :))




Tất nhiên mình giới thiệu phần mềm này không phải để các bạn mua nó của mình, vì mình có bán đâu. Mà là vì theo truyền thống của người Việt Nam chúng ta vẫn thích dùng đồ chùa hơn. Nên sau đây mình sẽ hướng dẫn các bạn cách đề xài chùa phần mềm rất ngon này.

Các bạn download bản mới nhất ( 3.3.4) tại trang chủ theo Link ở trên. Cài đặt như bình thường thôi, Click and Next là xong.

Bạn bật phần mềm lên, có 2 trường hợp xảy ra

1/ Bạn cài lần đầu

Nó sẽ tự động lựa chọn cho bạn chế độ Trial Pro 6 ngày ( dùng thử bản Pro trong 6 ngày ). Chế độ này bạn được full chức năng, không bị hạn chế bất cứ điều gì. Rất ngon, nhưng chỉ 6 ngày thôi ( hix ) .

2/ Bạn đã cài đặt và dùng hết 6 ngày, bật lên chỉ hiện ra lựa chọn sau














Bạn chỉ được chọn Lite version, với nhiều hạn chế ví dụ, hình ảnh sẽ bị đóng dấu, giới hạn định dạng file,v..v...

(Bản Lite bị giới hạn - rất giống bản Pro nhưng có dòng chữ phái dưới bên phải, chức năng bị giới hạn)



Vậy làm thế nào để được xài chùa mãi mãi đây? Bạn chỉ cần làm theo các bước sau đây:

B1: Bạn mở Registry Editor lên ( Run> gõ vào regedit)
B2: Tìm tới khóa sau :

HKEY_CURRENT_USER\Software\code-and-web.de\TexturePacker\licensing\data




Chú ý vào 2 dòng mình đánh dấu đỏ ( bên phải )
+ expiryDate : là ngày hết hạn, như mình đã cài, và bị hết hạn vào ngày 04-05, Click đúp vào đó và sửa thành 2999-04-05 chẳng hạn. Thế là xong, never hết hạn

+ licenseType: Essential, nghĩa là bạn đang dùng bản Lite, hãy Click vào và sửa thành trial 

Để chắc ăn, bạn có thể thực hiện thêm Bước 3

B3: Chỉnh trong Registry khóa sau về false


Xong rồi đó 

Chúng ta sẽ được dùng trial phiên bản Pro vĩnh viễn nhé

(Hãy chú ý thời hạn trial của phần mềm qua ảnh bên dưới )



những 359711 ngày ~ 100 năm ( Chỉnh 1000 năm cũng được )

Thử Test nào, xem có bị gì không, Oh NOOOOOOOOOO!!!!!!!!

(Đã bị đóng dấu "kiểm dịch")

Nhưng các bạn đừng lo, mình đã tìm ra được 1 cách khắc phục bệnh này. Lúc đầu cũng loay hoay, rầu lòng phết, xong cuối cùng cách của mình cũng khá đơn giản. 

Bạn chú ý ở hình dưới này, cái expiryDate là ngày 2014-04-05, đến thời điểm này 28/5, đã bị hết hạn. Phần mềm nó lưu lại ở đâu đó ( chịu ko tìm ra ). Do đó nó sẽ vẫn đóng dấu "kiểm dịch" khi ta Publish, mặc dù thời gian Trial là 100 năm ( khi chỉnh ở trên )


Mình sẽ bày với các bạn 1 cách đơn giản đó là, CHỈNH THỜI GIAN CỦA HỆ THỐNG về trước thời điểm hết hạn này là xong, ( Bạn tích vào đồng hồ trên Startbar Window ấy, chọn dòng rồi Change date and time settings, rồi chỉnh thôi) ví dụ mình chỉnh giờ hệ thống về thời điểm 2013-04-05 , lùi hẳn 1 năm đi cho ăn chắc. Và đây là kết quả sau khi chỉnh thời gian. ( Nhớ là khi chỉnh time xong, bạn phải tắt phần mềm TexturePacker đang chạy rồi chạy lại nhé, mới có hiệu quả )


Giờ thì dùng thoải mái rồi, không bị đóng dấu, ko bị giới hạn tính năng, không giới hạn thời gian. Mình test được mấy ngày mà chưa bị vấn đề gì. Mọi người cùng Test nhé.

Việc chỉnh thời gian có thể khiến 1 số phần mềm gặp lỗi khi chạy đó, các bạn chú ý nhé. Tuy có hơi phiền 1 chút khi chỉnh thời gian nhưng giá trị mang lại khá lớn nhỉ, 800K, hehe. Khi nào làm game có tiền Donate sau cũng được. Chúc các bạn thành công.

Bên lề 1 chút: 

+ Bộ TexturePacker + Physics Editor của CodeAndWeb thực sự là 1 bộ đôi hoàn hảo để làm game 2D, thậm chí 3D, nhưng tiếc là Physics Editor chưa có bản C.Rack nào trên mạng hết.
+ Bạn nào có quen cao nhân Hack, nhờ Crack giúm nhé, nếu không có thể mua chỉ với 448K/năm, hỗ trợ thanh toán bằng tiền Việt tại đây http://sites.fastspring.com/codeandweb/product/all

Ngoài ra các bạn có thể tìm hiểu phần mềm tạo Sprite Sheet khác là ShoeBox, cũng rất hay, có thêm cả mấy chức năng tách ảnh từ Sprite Sheet, các bạn hãy tìm hiểu thêm.

Về phần mềm Physics, mình giới thiệu 1 số phần mềm sau

+ R.U.B.E ( có lẽ là hay nhất ) 30$ mua bằng Paypal
+ Physics Editor ( hay thứ nhì ) 448K
+ Physics Body Editor ( open Source )
+ TS4 ( free, online ) http://ts4.us/tools/box2deditor.html

Các bạn lựa chọn nhé.

ĐÃ CÓ BẢN PATCH cho TP 3.5.3 + PE 1.0.9

Cảm ơn bạn vn kakalat đã cung cấp bản Patch tốt nhé

TexturePacker 3.5.3 nhé, DOWNLOAD tại đây ( Down về quẳng vào thư mục cài đặt ) - Chú ý là win 64 hay win 32 đều dùng bản cài TexturePacker 3.5.3 cho win32 nhé

Physics Editor 1.09, tại đây ( Down về sửa tên lại thành PhysicsEditor rồi quẳng vào thư mục cài đặt là xong )

Trọn bộ Phần mềm TP 3.5.3 + PE 1.0.9 và Patch tại đây



Hẹn gặp lại các bạn trong các bài học sau.
More about

BÀI 1: Giới thiệu về Cocos2d-X

Người đăng: chisenhungsuutam on Thứ Năm, 3 tháng 4, 2014

Xin chào tất cả các bạn yêu thích Lập trình nói chung và Lập trình game nói riêng!

Đầu năm 2014, Flappy Bird của Nguyễn Hà Đông đã làm sôi sục cộng đồng Game Developer toàn thế giới. Nó như một cú hích mạnh vào đam mê làm Game của nhiều người. Chắc hẳn nhiều bạn trẻ đã từng "ước gì mình được như anh ấy" ,"mình cũng làm được", và tôi cũng vậy. Nhưng để trở thành một Game Developer thật sự, Dev được những game để lại ấn tượng cho người chơi, con đường phía trước của bạn và tôi thật sự sẽ có quá nhiều chông gai. Tôi cam đoan vậy!

Nhưng đừng ai vội nản lòng nhé, Thành quả bạn đạt được sẽ rất có ý nghĩa ( thậm chí rất đáng tự hào) nếu chặng đường bạn trải qua có đủ gian nan. "Không có ước mơ nào quá lớn, và không có kẻ mộng mơ nào quá nhỏ ". Chỉ cần bạn muốn mình là ai, bạn sẽ trở thành người mình muốn.

Dài dòng quá rồi, mình vào đề luôn nhé.

1/ Sơ lược Cocos2Dx

+ Cocos2Dx là 1 Engine hỗ trợ lập trình Game đa nền tảng : Mobile ( IOS, ANDROID, Blackberry, TIZEN, WP) Window, MacOS, HTML5,.. đại loại là đủ cả.

+ Engine này do Các bạn lập trình viên Trung Quốc ( hay Korean? ) phát triển. Mình thật sự chưa thấy nói về nguồn gốc ở đâu.. Nhưng ko sao, có tiếng Anh để có thể đọc, và cũng không quan trong bởi ngôn ngữ vì chúng ta có thể hiểu được qua bộ Code của nó.

+ Ngôn ngữ để Code: Cocos2Dx hỗ trợ chủ yếu 3 ngôn ngữ: C++, Lua, Javascript.

+ Phiên bản mới nhất là Cocos2Dx - 3 RC0; (RC1 vừa ra lúc mình viết bài này). Và hiện thời đang là V3.2 Beta

+ Web chính thức: http://www.cocos2d-x.org/

+ Trang web Việt Nam có thể tham khảo: http://cocos2d-x.vn/

+ Mã nguồn mở.

+ Hỗ trợ Window, Mac OS IDE.( môi trường lập trình).

+ Đã phát triển nhiều Game nằm TOP của Appstore, CHPlay (tìm lại đã). Đại loại là 1 Engine khá mạnh

+ Có 1 phiên bản khác là Cocos2d-iphone - dành riêng để phát triển Game cho Iphone ( dùng ngôn ngữ lập trình Object - C nhé) nhưng mà học cũng ko khó lắm đâu. Và 1 bản Cocos2d-JS, dành để phát triển ứng dụng nền Web, dùng ngôn ngữ Java Scrípt. Nhưng mình nghĩ dùng bản Cocos2d -x sẽ tốt hơn vì ĐA NỀN TẢNG cơ mà ( viết code 1 lần, chạy được cho nhiều hệ thống khác nhau ) chả sướng hơn à. Mình đoán trong tương lai sẽ hợp nhất 3 bản vào làm 1 cho mà xem.

+ Có 1 bộ CocosStudio đi kèm để hỗ trợ cho việc thiết kế giao diện, hiệu ứng chuyển động...

Làm cái ảnh cho máu



2/ Tại sao lại là Cocos2d -x?

Nói về Engine game thì nhiều lắm. Các bạn search Google là ra hẳn 1 trang Wiki liệt kê các loại Engine game,...

Vậy tại sao lại là Cocos2d -x.?

Lúc đầu khi mới bắt đầu tìm hiểu vào việc Làm game, mình cũng kiếm rất nhiều các công cụ để hỗ trợ cho việc này nhưng cuối cùng chọn ra được Cocos2d -x là phù hợp nhất, vì:

+ Đa nền tảng, viết code 1 lần xuất ra cho mấy hệ điều hành, và nhiều loại thiết bị khác nhau.

+ Hỗ trợ cả Window ( Win7 trở lên) và MacOS, hỗ trợ các IDE nổi tiếng: Eclipse, Visual 2012 trở lên, Xcode

+ Ngôn lữ lập trình C++, Lua, JavaScript, tương đối phổ biến, gần gũi dễ học với hầu hết mọi người. C++ là chính nhé.

+ Mã nguồn mở ( quan trọng nè, hầu hết Engine hay đều thu phí cắt cổ ra ấy). Chừng nào có nhiều tiền và muốn phát triển theo cách như 1 công ty game chuyên nghiệp thì hãy mua.

+ Đã có nhiều game nổi tiếng bằng Cocos2d-x để tham khảo và học hỏi.

+ Cộng đồng lớn, Code ví dụ cũng nhiều ( chủ yếu tiếng Anh, Trung, Nhật, Hàn) Việt Nam hơi bị ít và hầu hết toàn copy, dịch. Cũng tại có ít Lập trình viên chuyên nghiệp ở Việt Nam, và hầu hết đều giữ nghề thôi.

+ Sao chỉ là 2D mà ko là 3D? Các bạn ơi, hãy bắt đầu từ học bò rồi mới lo học chạy nhé. 3D khó hơn nhiều đấy. Nếu cá nhân hoặc Team nhỏ thì phát triển game 2D sẽ đỡ vất hơn 3D. và Engine 3D toàn tính tiền bản quyền cả nhé, rẻ nhất cũng vài chục chai. : ((

+ Còn nhiều nữa. Vì mình mới tìm hiểu nên nắm bắt được tới đây thôi. Có gì bổ sung sau nhé.

3/ Những ai có thể sử dụng Engine này để học lập trình Game?

Theo cá nhân mình thì những đối tượng như sau có thể đọc và học lập trình Game với Cocos2d -x

- Có đam mê lập trình ứng dụng hoặc game. Là lập trình viên ứng dụng thì càng tốt.

- Đã từng học lập trình ở trường, đặc biệt là ngôn ngữ C, hoặc C++, Lua, hoặc Java (ko dùng thằng này nha nhưng mà phong cách lập trình của nó khá giống C++).

- Kiến thức về toán càng nhiều càng ít. Bạn nào học toán tin thì quá tuyệt, xử lý phần thuật toán sẽ có tư duy tốt hơn.

- Kiến thức về Vật lý cũng nên có, để còn xử lý mấy hiên tượng vật lý trong game chứ. Vì game là một thế giới mô phỏng thế giới thật dựa trên các nguyên tắc toán học và vật lý mà ( Tất nhiên các nguyên tắc này mình chủ động thay đổi được để tạo sự khác biệt).

- Biết thiết kế đồ họa, hoặc có tí năng khiếu đồ họa. "Code là xương, gameplay là hồn, đồ họa là diện mạo", bạn không muốn đứa con cao to, giỏi giang của mình xấu xí chứ?.

- Máy tính Window 7, hoặc Mac OS. Mình dùng Win 7 32 bít, nên ko rõ Mac OS cần gì. Có điện thoại, máy tính bảng để test thực tế thì tốt.

- A, cuối cùng là biết tiếng Anh, Hàn, Trung là một lợi thế lớn, vì hầu hết bài Tut trên mạng là tiếng Trung, rồi tiếng Anh, bạn có thể đọc code, nhưng ko thể hiểu phần comment giải thích của code thì học làm sao?

- Còn điều kiện nào nữa ko nhỉ? Tất nhiên là thời gian, phân bổ thời gian hợp lý nhé, kẻo học nhiều + nhanh quá là tẩu hỏa nhập ma thì toi.

- Có gì bổ sung sau nhé....


4/ Lời cuối:

Sẽ có bạn hỏi, sao mình ko tham gia các diễn đàn trên, ở đó cũng có nhiều người cùng đam mê, chẳng phải tốt hơn sao. Mình xin trả lời thế này:

+ Blog này là 1 công cụ để mình học Lập trình Cocos2d - x . Tất cả những gì mình biết, mình học được, làm được, mình sẽ viết vào Blog này như là một hình thức lưu trữ tài liệu và ký ức. Học như vậy sẽ dễ dàng hơn, nhớ lâu hơn, tuy có mất thời gian hơn.

+ Mọi bài viết trong này đều do mình tự nghiên cứu, hoặc thực hành viết ra những gì đã làm được, sẵn sàng chia sẻ cho tất cả mọi người yêu thích. Trang nào có copy thì xin ghi cho mình cái nguồn về đây để thể hiện sự tôn trọng lẫn nhau nhé.

+ Các bài học mới, hoặc bài nghiên cứu Code ví dụ ( của người khác ) mình sẽ cố gắng hướng dẫn cặn kẽ để giúp CHÍNH MÌNH và người khác có thể hiểu được và làm được.

+ Hệ thống trợ giúp của mình là chiếc LAPTOP cùi Core2Duo, ram 2G chạy Win 7 32 bít + 1 điện thoại Android nên nhiều khi không thể thực hiện trên các thiết bị khác, mong mọi người thông cảm.

+ Những ai là lập trình Pro, hoặc làm game Pro rồi nếu đọc thấy gì không đúng, thì cũng đừng chỉ trích mà hãy Chỉ Giáo giúp mình và mọi người khác nhé.

Cám ơn tất cả đã đọc bài này!!!

Vậy nhé, chuẩn bị tinh thần chiến đấu, chinh phục đam mê nào!

Bài 2: Phương pháp học Cocos2d-x của tôi.

More about