我正试图在openGL中创建一个太阳系(只有太阳,地球和月亮).我唯一的光源是太阳,它应该点亮其他行星.到目前为止我已经开始工作了,但是这个行星的面向太阳的面也被照亮了,我希望它们是黑暗的.

对象是glutSolidSpheres,太阳在原点,也有我的光源.这是我的照明设置的代码:
GLfloat light_position[] = {0.0, 0.0, 0.0, 1.0};
GLfloat light_ambient_color[] = {0.0, 0.0, 0.0, 0.0};
GLfloat light_diffuse_color[] = {1.0, 1.0, 1.0, 1.0};
glLightfv(GL_LIGHT0, GL_POSITION, light_position);
glLightfv(GL_LIGHT0, GL_AMBIENT, light_ambient_color);
glLightfv(GL_LIGHT0, GL_DIFFUSE, light_diffuse_color);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glColorMaterial ( GL_FRONT, GL_DIFFUSE ) ;
glEnable(GL_COLOR_MATERIAL);
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?你们能给我一个暗示吗?