Giới thiệu tổng quan lại về có mang cơ bạn dạng, một trong những giải pháp dùng để làm khởi chế tạo ra một sprite, những trực thuộc tính của sprite cùng cũng giống như các thao tác cơ bạn dạng cùng với những thuộc tính của sprite vào games với cocos2d-x
*

*

Sprite là yếu tắc không thể không có trong game, là đối tượng bối cảnh được vẽ lên Screen (màn hình), có thể thao tác làm việc lên bọn chúng và tạo nên bọn chúng di chuyển.

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

Sprite bao gồm:

Đối tượng đồ họa sẽ dịch chuyển (Sprite)Đối tượng giao diện vẫn đứng lặng (Node).

1 Sprite trong game 2 chiều có không ít 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 (Độ pđợi đại)Skew (Độ nghiêng)Opađô thị (Độ trong),…

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

Trong Cocos2d-x, có khá nhiều cách để tạo ra 1 Sprite. cũng có thể tạo thành 1 Sprite từ bỏ rất nhiều hình ảnh với các format hình ảnh không giống nhau như: png, jpg, …

// Khởi sinh sản 1 Sprite là spriteSinsauto spriteSins = Sprite::create("sins.png");

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

Chụ ý: Trong Cocos2d-x, hình hình ảnh thường xuyên được đựng trong thỏng mục Resources. Nếu hình hình ảnh gốc đựng sinh sống những tlỗi mục không giống cần được miêu tả đúng đường truyền cho tới thư mục chứa hình hình họa nơi bắt đầu kia.

Khởi chế tạo ra 1 Sprite với một Rect

Vấn đề đề ra là: Nếu chỉ ao ước tạo nên 1 Sprite tất cả kích cỡ một phần như thế nào đó của hình ảnh gốc thì sao? Có thể làm được điều đó bằng cách khẳng định 1 Rect (Khung hình chữ nhật).

Rect có 4 giá chỉ trị:

xywidthheight

Rect được bước đầu tính điểm đầu ở góc phía trên phía bên trái với tọa độ (x, y) của hình hình ảnh cội và từ bỏ điểm bắt đầu này Sprite vẫn rước độ rộng với độ nhiều năm tương ứng với width, height.

Xem thêm: 550+ Những Câu Nói: &Quot;Nhằm Thẳng Quân Thù Mà Bắn&Quot; Là Của Ai?

// Khởi tạo nên 1 Sprite là spriteSins cùng với Rect 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 sản xuất vị 1 Rect(0, 0, 100, 100).

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

Trong thời điểm này khi vẽ lên screen sẽ được Sprite gồm hình ảnh bởi nửa với kích cỡ hình hình họa nơi bắt đầu.

*

Với 1 hình hình ảnh có size 200x200, 2 đoạn code sau đây có thuộc 1 kết quả.

Xem thêm: Tiểu Sử Jack Ma Tiểu Sử - Thông Tin Tiểu Sử Jack Ma

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

Khởi tạo ra 1 Sprite trong Sprite Sheet

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

Anchor Point

Là gốc tọa độ giỏi điểm neo của Sprite. Anchor Point bao gồm quan hệ nam nữ mật thiết tới những tính năng của Sprite nhỏng Position, Scale, Rotation, Skew và không ảnh hưởng tác động tới những thuộc tính màu sắc và Opađô thị. 

Anchor Point được xác minh bởi vì 1 quý giá (x, y) khớp ứng cùng với cội tọa độ phía dưới bên trái. Giá trị mang đị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 khoác định của tất cả Sprite với tọa độ là (0.5f, 0.5f)

Sự tác động của Anchor Point tới những nằm trong tính của Sprite ra làm sao thì sẽ kiếm tìm hiểu rõ hơn giữa những phần sau. Để đặt lại quý hiếm Anchor Point trong Cocos2dx, sử dụng cách tiến hành setAnchorPoint()

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

Position




Chuyên mục: Ý NGHĨA
Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *