Kỹ thuật tốt nhất để chia tỷ lệ một sprite thành kích thước chính xác là gì. Thuộc tính scale là một số nhân, nhưng nếu bạn muốn một sprite chính xác là x pixel, thì có một kỹ thuật đơn giản không? Hoặc, nó sẽ đòi hỏi chỉ cần sử dụng kích thước mong muốn và các sprites thực tế contentsize
để tính toán hoạt động cần thiết scale
?Quy mô CCSprite với kích thước chính xác
7
A
Trả lời
19
tôi tin rằng công trình này:
-(void)resizeSprite:(CCSprite*)sprite toWidth:(float)width toHeight:(float)height {
sprite.scaleX = width/sprite.contentSize.width;
sprite.scaleY = height/sprite.contentSize.height;
}
Đặt nó trong trò chơi của bạn, và sử dụng như thế này:
[self resizeSprite:mySprite toWidth:350 toHeight:400];
0
Bạn có thể sử dụng hai thuộc tính sau: scaleX và scaleY. Ví dụ: , sử dụng trong Thanh HP.
hpBarSprite.scaleX = hpCurrent/hpMax;
+0
tôi nghĩ rằng bạn có nghĩa là tối đa/hiện tại, phải không? – johnbakers
+0
Đối với một thanh, nó phải là '((1.0/max) * hiện tại)' từ 1.0 là 100%. – Voldemort
Các vấn đề liên quan
- 1. Làm thế nào để có được kích thước CCSprite sau khi thay đổi quy mô
- 2. Quy mô Chrome flash không chính xác
- 3. in css chính xác kích thước
- 4. Đo chính xác kích thước đối tượng
- 5. Xác định kích thước chính xác trong loadView
- 6. Cách nhận kích thước bộ nhớ được chia sẻ chính xác của một quy trình?
- 7. Quy mô kích thước của nội dung CALayer
- 8. Kích thước văn bản quy mô tự động
- 9. Kích thước chính xác của UIModalPresentationFormSheet trong iPad
- 10. Cách xác định quy trình "kích thước ảo" (WinXP)?
- 11. Xác định quy trình kích thước ảo bằng delphi
- 12. Kích thước quy trình trên UNIX
- 13. C++: Nhận kích thước tệp không chính xác
- 14. CTFramesetterSuggestFrameSizeWithConstraints đôi khi trả về kích thước không chính xác?
- 15. Thay đổi kích thước hàng chính xác trên NSTableView
- 16. Có văn bản mở rộng quy mô kích thước để phù hợp với container
- 17. In một âm mưu MATLAB theo kích thước chính xác trên giấy
- 18. PIL cách quy mô kích thước văn bản có liên quan đến kích thước của hình ảnh
- 19. Gửi kích thước tệp chính xác với tập lệnh tải xuống PHP
- 20. Trình bao bọc Fancybox không tự động định kích thước chính xác thành kích thước hình ảnh
- 21. Thay đổi kích thước IMAGEVIEW trên quy mô hình ảnh android
- 22. Zoom UILabel & Hiển thị lại phông chữ ở kích thước chính xác
- 23. MySQL chính/kích thước khóa ngoài?
- 24. Kích thước kích thước ngăn xếp được ocupied bởi hàm đệ quy
- 25. Kích thước/độ dài biểu thức chính quy tối đa trong trình duyệt web "hiện đại"?
- 26. Xác thực e-mail với biểu thức chính quy VB.Net
- 27. Cách mở JFileChooser với kích thước được xác định trước
- 28. Cách lấy kích thước chính xác của thư mục bộ nhớ cache: android
- 29. Hoạt ảnh trên quy mô Android theo kích thước được chỉ định
- 30. Các thành phần Java Swing không có Kích thước chính xác khi được thêm vào JPanel
Thành thực mà nói, tôi đã luôn luôn được tiến hành theo đề nghị của bạn (tính scaleX và scaleY), không tìm kiếm câu trả lời khác. Tôi sẽ chỉ thêm câu hỏi này như là một yêu thích, xem những gì các nhà khoa học nạo vét lên như một câu trả lời. – YvesLeBorg
Tính toán hệ số nhân với kích thước mới và kích thước hiện tại là cách duy nhất để đi (hoặc bạn luôn có thể tạo phương thức cho điều đó) vì nội bộ, cocos2d chỉ gửi các giá trị 'scaleX' và' scaleY' tới hàm 'glScalef' openGL khi đó là thời gian để vẽ sprite. – Lukman