Game Studio
Liên kế mạng xã hội

Game Studio


Cocos2d-x 3.3 final chính thức ra mắt: kích thước nhỏ gọn, nhiều tính năng 3D, audio engine mới…

Cocos2d-x vừa thông báo rằng họ đã ra mắt phiên bản Cocos2d-x 3.3 final.

“Với 3,3, trò chơi của bạn có thể sẽ nhỏ gọn hơn. Nhiều trò chơi 3D phức tạp và sặc sỡ hơn có thể được tạo ra. Audio cho phép kiểm soát một cách linh hoạt những âm thanh trò chơi. Có rất nhiều tính năng và cải tiến khác cho những nền tảng được hỗ trợ, thư viện của bên thứ 3 và UI.

Chúng tôi đề nghị bạn sử dụng NDK r10c hoặc phiên bản mới hơn, vì nó fix một số lỗi tồn tại trên Android 5.0"  cocos2d-x.org cho biết.

Download

cocos2d-x 3.3

Những điểm nổi bật trong v3.3

Size

  • Module hóa: tự động giảm kích thước bằng liên kết c++, và chỉ có 2 thư viện trong cocos2d-x, một cho c++, một cho Lua

Lấy lua-empty-test làm ví dụ:

  • libluaemptytest.so sẽ là 9.5Mb trong v3.2
  • libluaemptytest.so sẽ là 5.5Mb trong v3.3

Performance

  • Added ClippingRectangeNode, tăng hiệu quả hơn cho cắt hình chữ nhật
  • Renderer: added triangle command
  • Cocos Studio Reader: sử dụng Flat Buffer cho các định dạng data

Usability

  • Bổ sung một cách để thiết lập các thuộc tính GL context cho tất cả các nền tảng
  • Node: schedule/unschedule với hàm lambda
  • Bổ sung hỗ trợ c++11 random trong cocos2d::random(a,b)
  • RenderTexture: bổ sung một hàm callback cho saveToFile()
  • DrawNode: bổ sung thêm nhiều hàm như DrawPrimitive,
  • Bổ sung setKeepScreenOn() trên iOS và Android

Những cải tiến

Infrastructure

  • Bổ sung audio engine mới trên iOS và Android
  • Bổ sung AssetsManagerEx cho hot-update
  • Tilemap: hỗ trợ staggered tile map
  • Primitive: Hỗ trợ Points, Lines, và Triangles cho rendering
  • SpriteFrameCache: hỗ trợ load data từ tập tin plist

UI

  • Bổ sung Application::OpenURL()
  • Bổ sung WebView trên iOS và Android
  • Bổ sung ui::Scale9Sprite

3D

  • 3D light: directional light, point light, spot light và ambient light
  • BillBoard
  • Camera
  • Reskin
  • Attachment
  • Hỗ trợ tốt hơn cho FBX, và fbx-conv mới
  • AABB, OBB và Ray

Dưới đây là ảnh gif về các hiệu ứng của Light. Bạn có thể chạy cpp-tests để kiểm tra hiệu ứng của các module

Thư viện của bên thứ 3

  • Facebook SDK tích hợp trong plugin trên iOS và Android
  • Updated Spine runtime đến v2.0.18
  • Platforms
  • Android: Hỗ trợ Android ARM 64 bit, thử nghiệm trên Nexus 9
  • WP8:
  • Bổ sung hỗ trợ win8.1 univeral app
  • Update cho Visual Studio 2013 update 3 để sử dụng Cocos2dShaderCompiler

Documentation

Ví dụ 3D

Chúng tôi tạo ra một ví dụ 3d, FantasyWarrior3D, để thể hiện cách sử dụng cocos2d-x khi phát triển trò chơi 3d. Nó sử dụng tất cả các tính năng 3D hỗ trợ bởi cocos2d-x.

Trò chơi chạy rất mượt mà điện thoại Android cũ với CPU lõi đơn 1G HZ.

Chú ý

Tất cả các file internal lua sẽ được sao chép vào src/Cocos khi tạo một lua project mới. Và chúng tôi đã add Cocos/init.lua để load tất cả các file internal lua. Cocos/init.lua được load theo mặc định, có nghĩa là bạn không cần phải load các file lua của bạn. Vì vậy, bạn cần phải loại bỏ tất cả các code này trong lua code của bạn nếu bạn cập nhật từ phiên bản cũ:

  • require "Cocos2d"
  • require "Cocos2dConstants"
  • require "bitExtend"
  • require "DrawPrimitives"
  • require "extern"
  • require "json"
  • require "Opengl"
  • require "OpenglConstants"
  • require "CCBReaderLoad"
  • require "AudioEngine"
  • require “CocoStudio”
  • require “StudioConstants”
  • require “ControllerConstants”
  • require “ExtensionConstants”
  • require “NetworkConstants”
  • require “GuiConstants”

require “experimentalUIConstants” luaj và luaoc thì đặc biệt hơn. Chúng không thể được load trong Cocos/init.lua vì chúng sẽ trả về một đối tượng được sử dụng trong code. Vì vậy, bạn cần phải thay thế các mã như thế này:

  • require "luaj" -> require "cocos.cocos2d.luaj"
  • require "luaoc" -> require "cocos.cocos2d.luaoc"

Tất cả các tập tin lua  sử dụng các API lỗi thời không được load theo mặc định. Nếu bạn muốn sử dụng API này, bạn nên uncomment  một dòng trong src/main.lua như thế này:

-- uncomment this line to use deprecated API
-- CC_USE_DEPRECATED_API = true 
require "cocos.init"

Thông tin thêm

Để biết thêm thông tin xin vui lòng đọc:

J.Black

Gamestudio.vn

 

 

Xem thêm:

cocos2d-x


Đăng sự kiện cho developer