typescript生成0-1之间的随机数,满足正太分布,期望值为0.5
正太随机分布,使用typescript语言实现
在游戏的开发过程中,尤其是大量敌人或者怪物出现的时候,希望他们能够随机,但是又不是均匀的随机。希望他们往一点,或者某个区域进行靠拢。这个时候就需要用到正太随机算法。
在使用cocos creator进行游戏开发过程中遇到的问题。
实现双发对抗的游戏过程中,一方攻击城门,一方防守城门。都往城门拥挤,但是攻击方或者防守方,挤不下的时候,需要往两边挤,但是这些出生或者移动的双方,需要随机生成,否则太假了,不符合常理。这个时候就就要,满足正太随机分布。
public static getRandomNumBtw01():number{
let u = Math.random();
let v = Math.random();
let z = Math.sqrt(-2 * Math.log(u)) * Math.cos(2 * Math.PI * v);
z = (z + 3)/6;
//将返回值控制到[0-1]之间
return math.clamp01(z);
}
经测试,该算法可用。
很赞哦! (0)