我正在使用此函数随机化我的一个精灵的x坐标:
static inline CGFloat skRandf(){
return rand() / (CGFloat) RAND_MAX;
}
static inline CGFloat skRand(CGFloat low, CGFloat high){
return skRandf() * (high - low) + low;
}
它工作正常,但如果我多次玩游戏,我会注意到我每次使用它的精灵的x坐标是相同的。有没有办法改变这个或随着时间播种它来解决这个问题?任何帮助将不胜感激。
答案 0 :(得分:1)
尝试使用arc4random(),因为它不需要设置种子,并使用更高级的算法。
static inline CGFloat skRandf(){
return arc4random() / (CGFloat) RAND_MAX;
}
static inline CGFloat skRand(CGFloat low, CGFloat high){
return skRandf() * (high - low) + low;
}