Android sử dụng cấu trúc RectF để vẽ bitmap. Tôi đang làm việc về cấu trúc trò chơi của mình, ví dụ, một Sprite sẽ có và phối hợp x/y, chiều rộng, chiều cao, tốc độ, v.v. Điều này có nghĩa là mỗi lần trong vòng lặp render của tôi, tôi phải truyền các số nguyên đó sang float khi tìm ra nguồn/đích RectF sử dụng ... cách khác, tôi có thể phổ biến hơn nhiều và sử dụng float ở mọi nơi để khi mô phỏng vật lý và kết xuất, tất cả các loại đã có cùng loại ... ngay cả khi nó không cần thiết cho thuộc tính (Tôi không cần phao cho "vị trí x", nhưng sẽ phải bỏ nó khi render nếu không phải).Đối với Android, tôi có nên sử dụng kiểu dữ liệu nổi thường xuyên hơn cho trò chơi của mình hay chỉ truyền tải nổi khi vẽ?
nếu nổi thường là 2-10x không hiệu quả hơn (mỗi http://developer.android.com/guide/practices/performance.html), khóa học thích hợp để thực hiện là gì?
TLDL: Tôi có nên cast int để nổi trên render, hoặc chỉ có tất cả các biến đóng góp được nổi để bắt đầu, ngay cả khi nổi không hiệu quả? Làm thế nào không hiệu quả là một typecast?
Tôi xem một khoảng thời gian chuyên biệt để định hình trong tương lai gần .... :) Vì tất cả giá trị của nó, tính toán trên phao chậm, và do đó là đúc liên tục ... có thể profiling cho thấy rằng nó tốt hơn cho bạn dính vào phao thay vì thay đổi chúng liên tục. – Shark
Câu trả lời đúng duy nhất ở đây là: thử cả hai và điểm chuẩn. Nó phụ thuộc vào việc tính toán hoặc đúc chiếm ưu thế. (Hoặc nếu một trong hai thực sự là một vấn đề để bắt đầu với.) – millimoose
Trong nhiều, nếu không nhất, trường hợp bạn chỉ đơn giản là không thể tránh arithmetics điểm nổi. Cũng lưu ý rằng liên kết mà bạn cung cấp cho biết rằng điểm nổi có thể lên tới 2 lần trên các thiết bị không có FPU. Sự khác biệt tốc độ 10x được đề cập như một sự so sánh giữa hai thiết bị khác nhau. – harism