我有一个游戏的2D网格系统,我用树木填充它。我希望有25%的机会在一块瓷砖上放一棵树。但是,我已经完成了下面的代码,并且树木在4中完美排列。我不会认为25%的机会总会导致如此统一的方式来制作完美的树木和树木。他们根本不会交错。这可能只是我不理解这一点,但如果我想要25%的机会放置一棵树,我会期待更多的可变树放置。我在这里缺少什么?
srand(time(NULL));
for (row = 0; row < 800; row++)
{
for (col = 0; col < 800; col++)
{
// 1 - 100
int num = rand() % 100 + 1;
// 25% chance to have a tree
if (num <= 25)
{
// cal center tile position
Vec3 pos;
pos.x = ((col * .32) - (256 / 2)) + (.32 / 2);
pos.y = 0;
pos.z = (256 / 2) - (row * .32) - (.32 / 2);
// create the tree object just to fill in it's data
Item tree;
tree.item_id = itemsList[(rand() % 2)];
tree.owner_id = 0;
tree.y_rotation = (rand() % 360);
tree.x = pos.x;
tree.z = pos.z;
}
}
}