Tôi đang thêm vào điểm số của người chơi và tôi đang sử dụng công thức cho mỗi khung hình như:
int score, displayedScore ;// score is ACTUAL score player has,
// displayedScore is what is shown this frame to the player
// (the creeping/"rolling" number)
float disparity = score - displayedScore ;
int d = disparity * .1f ; // add 1/10 of the difference,
if( !d ) d = signum( disparity ) ; // last 10 go by 1's
score += d ;
Ở đâu
inline int signum( float val ){
if( val > 0 ) return 1 ;
else if( val < 0 ) return -1 ;
else return 0 ;
}
Vì vậy, nó là loại công việc mà nó tạo ra những thay đổi lớn một cách nhanh chóng, sau đó nó leo lên trong một vài lần cuối cùng.
Nhưng tôi đang tìm kiếm các chức năng leo điểm tốt hơn (hoặc có thể được biết đến?). Bất kỳ ai?