画随机点

时间:2012-10-10 16:13:49

标签: opengl

我的窗口大小为{0,0},{1e6,1e6}。我在这个区域内创建了1000 * 1000的网格 我想在这个区域创建随机点。

glEnable( GL_POINT_SMOOTH );
glEnable( GL_BLEND );
glPointSize( 200 );
for( int i = 0; i < 1e6; i++ )
{
    glColor3ub(0,255,0);
    // width and height are 1e6.
    int x = rand() % WIDTH; 
    int y = rand() % HEIGHT; 
    glBegin( GL_POINTS );
    glVertex2i( x, y );
    glEnd();
}
glFlush();  
glDisable( GL_BLEND );

x和y是随机数。但是,所有点仅在窗口的左下方绘制。

1 个答案:

答案 0 :(得分:0)

确保您平台上的RAND_MAX大于1e6。否则,您将看到的最大x / y值将是RAND_MAX-1,而不是您期望的1e6

或生成随机数without modulo