HomeĐời SốngCocos2d là gì

Cocos2d là gì

21:31, 30/03/2021
Giới thiệu tổng quan tiền về khái niệm cơ bản, một trong những giải pháp dùng làm khởi tạo nên một sprite, các nằm trong tính của sprite với cũng như những thao tác làm việc cơ phiên bản cùng với các thuộc tính của sprite trong games cùng với cocos2d-x
*

*

Sprite là yếu tắc không thể không có vào game, là đối tượng bối cảnh được vẽ lên Screen (màn hình), rất có thể làm việc lên chúng với tạo nên chúng dịch rời.Quý Khách sẽ xem: Cocos2d là gì

Sprite bao gồm:

Đối tượng bối cảnh đang di chuyển (Sprite)Đối tượng bối cảnh đã đứng yên (Node).

Bạn đang xem: Cocos2d là gì

1 Sprite trong game 2 chiều có tương đối nhiều trực thuộc tính như:

Anchor Point (Điểm neo)Postion (Vị trí của Sprite bên trên Screen)Màu sắc (Màu sắc)Scale (Độ pchờ đại)Skew (Độ nghiêng)Opađô thị (Độ trong),…

Khởi chế tạo Sprite trong Cocos2d-x

Trong Cocos2d-x, có rất nhiều phương pháp để tạo ra 1 Sprite. cũng có thể tạo ra 1 Sprite trường đoản cú phần đa hình hình ảnh cùng với những định dạng giao diện không giống nhau như: png, jpg, …

// Khởi tạo nên 1 Sprite là spriteSinstự động spriteSins = Sprite::create("sins.png");


*

Đoạn code trên sẽ khởi tạo ra 1 Sprite, nó áp dụng hình hình họa gốc sins.png. Kết quả là sẽ khởi tạo ra 1 Sprite có kích thước bởi size hình hình ảnh cội. Nếu áp dụng hình ảnh nơi bắt đầu bao gồm kích thước là 200x200 thì form size của Sprite là 200x200.

Crúc ý: Trong Cocos2d-x, hình ảnh thường được chứa trong thỏng mục Resources. Nếu hình hình ảnh gốc chứa ở hồ hết tlỗi mục không giống rất cần được diễn đạt đúng băng thông tới thư mục cất hình hình ảnh cội đó.

Khởi chế tác 1 Sprite với 1 Rect

Vấn đề đề ra là: Nếu chỉ muốn tạo nên 1 Sprite tất cả form size 1 phần nào đó của hình hình ảnh nơi bắt đầu thì sao? cũng có thể làm được điều đó bằng phương pháp xác định 1 Rect (Khung hình chữ nhật).

Xem thêm: Đầu Số 0377 Là Mạng Gì - Bán Sim Đầu Số 0377, Sim Số 0377 Là Mạng Gì

Rect gồm 4 giá bán trị:

xywidthheight

// Khởi chế tạo ra 1 Sprite là spriteSins cùng với Rect có mức giá trị x=0, y=0, width=0, height=0tự động spriteSins = Sprite::create("sins.png", Rect(0,0,100,100));Đoạn code trên Sprite được tạo nên vì chưng 1 Rect(0, 0, 100, 100).

Giá trị 0, 0,100,100 tương xứng cùng với x, y, widh, height.

Lúc này lúc vẽ lên screen sẽ tiến hành Sprite tất cả hình hình ảnh bởi nửa với kích cỡ hình ảnh cội.

Xem thêm: Cách Chơi Và Lên Đồ Jinx Dtcl : Build Đội Hình, Cách Lên Đồ Jinx Dtcl Mùa 3


*

auto spriteSins = Sprite::create("sins.png");tự động spriteSins = Sprite::create("sins.png", Rect(0,0,200,200));

Khởi sản xuất 1 Sprite trong Sprite Sheet

Thuộc tính với thao tác với cùng một Sprite

Anchor Point

Là nơi bắt đầu tọa độ tốt điểm neo của Sprite. Anchor Point có tình dục mật thiết tới các tính năng của Sprite như Position, Scale, Rotation, Skew cùng không ảnh hưởng tác động tới những trực thuộc tính Color với Opacity. 

Anchor Point được khẳng định bởi vì 1 quý giá (x, y) tương xứng cùng với cội tọa độ phía dưới phía bên trái. Giá trị mặc định của toàn bộ những Sprite là (0.5, 0.5).


*

Giải thíchA: Anchor point của spriteSins với tọa độ là (0.0f, 1.0f)B: Anchor point của spriteSins với tọa độ là (1.0f, 1.0f)C: Anchor point của spriteSins với tọa độ là (1.0f, 0.0f)D: Anchor point của spriteSins với tọa độ là (0.0f, 0.0f)E: Anchor point mặc định của tất cả Sprite với tọa độ là (0.5f, 0.5f)

Sự ảnh hưởng của Anchor Point cho tới các trực thuộc tính của Sprite ra làm sao thì đang tra cứu làm rõ hơn giữa những phần sau. Để đặt lại quý hiếm Anchor Point trong Cocos2dx, áp dụng thủ tục setAnchorPoint()

// Giá trị khoác định của tất cả SpritespriteSins->setAnchorPoint(Point(0.5f, 0.5f));// Anchor Point của Sprite nằm ở góc dưới bên tráispriteSins->setAnchorPoint(Point(0.0f, 0.0f)); // Point::ZERO// Anchor Point của Sprite nằm tại góc trên mặt tráispriteSins->setAnchorPoint(Point(0.0f, 1.0f));// Anchor Point của Sprite nằm ở góc bên dưới bên phảispriteSins->setAnchorPoint(Point(1.0f, 0.0f));// Anchor Point của Sprite nằm ở góc trên bên phảispriteSins->setAnchorPoint(Point(1.0f, 1.0f));


Chuyên mục: Đời Sống