3
我試圖在opengl中模仿手電筒。基本上我想要的焦點是在相同的位置,攝像頭和點相機在指向同一個方向opengl讓聚光燈像手電筒一樣行動
這裏是我的代碼:
gluLookAt (xAt, yAt, zAt, xLookAt, yLookAt, zLookAt, 0, 1, 0);
light_pos [4] = {xAt, yAt, zAt, 1.0};
glLightfv (GL_LIGHT0, GL_POSITION, light_pos);
spotDir [] = {xLookAt - xAt, yLookAt - yAt, zLookAt - zAt};
glLightfv (GL_LIGHT0, GL_SPOT_DIRECTION, spotDir);
我做了調用初始化光和我計算了我所有物體的表面法線。
現在上面的代碼類作品,當相機被移動,然後聚光燈下面。但是,當我將相機靠近物體時,物體的光線較少。當我將相機移開時,物體會變得更亮。
我想要發生相反的情況 - 相機距離物體越遠,物體照射的光線越少。這是如何完成的?或者,這不是一個opengl聚光燈的行爲?