1. Không có thực hành tốt nhất chung.
Nếu bạn có rất nhiều yếu tố (hình phức tạp), các hạt, v.v. trong trò chơi của mình, cách tiếp cận bộ đệm bitmap sẽ nhanh hơn nhiều . Bộ đệm bitmap cũng sẽ mở rộng tốt hơn với độ phức tạp tăng dần của các họa tiết của bạn. Trình kết xuất vector sẽ trở nên chậm hơn với các hình dạng phức tạp hơn hoặc hoạt hình tween (hình dạng tween), nó có một số lợi ích khác:
- Bạn có thể tự do phóng to tài sản của mình hoặc thậm chí phóng to cảnh mà không làm giảm chất lượng.
- Xoay hoặc các phép biến đổi khác như xiên sẽ dễ thực hiện hơn trên đồ họa vector
Vì vậy, cuối cùng, nó tập trung vào loại trò chơi bạn đang xây dựng.
2. Sử dụng MovieClips thay vì các tấm sprite bitmap
Tôi đoán bạn có nghĩa là "bitmap sprite-sheet" chứ không phải lớp AS3 Sprite ?
Điều này không tạo ra sự khác biệt, thực sự. Bạn luôn có thể biến hoạt hình dựa trên MovieClip của mình thành bitmap hoạt hình. Bằng tay, bằng cách xuất phim thành khung và biến chúng thành một tấm sprite , hoặc động, bằng cách hiển thị một tấm sprite từ MovieClip của bạn khi chạy. Đây là cách tôi sẽ làm điều này:
- Tạo một thể hiện của MovieClip và
stop()
nó.
- Tạo một
new BitmapData
đối tượng có cùng chiều rộng và chiều cao với Movieclip.
- Sử dụng phương thức draw () để kết xuất MovieClip thành BitmapData.
- Lưu trữ đối tượng BitmapData trong Mảng hoặc Vector.
- Chuyển đến khung tiếp theo của MovieClip của bạn và lặp lại Bước 2 - 4, thực hiện việc này cho đến khi bạn đạt đến khung cuối cùng của MovieClip. Bạn cũng nên cập nhật hai biến có chiều rộng tối đa và chiều cao tối đa của các khung MovieClip của mình (vì các biến này có thể thay đổi từ khung này sang khung khác).
- Bây giờ bạn có thể kết hợp tất cả các Đối tượng BitmapData được lưu trữ vào Bảng Sprite (sử dụng BitmapData.copyPixels () )
3. Hoạt hình dựa trên Sprite
Như đã đề cập trong câu trả lời cho câu hỏi đầu tiên của bạn, không có câu trả lời chắc chắn cho điều đó. Nếu bạn cần thực hiện nhiều biến đổi với các đối tượng của mình, vd. chia tỷ lệ và xoay bạn có thể tốt hơn bằng cách sử dụng trình kết xuất flash gốc. Nếu bạn có các hình động được xác định trước có thể được nướng thành các tấm sprite (thủ công hoặc động) và nếu bạn cần hiển thị hàng trăm họa tiết cùng một lúc, thì hãy sử dụng công cụ kết xuất bitmap.