(0,0,0) に単純な立方体があり、(10,0,0) に光点があります。何らかの理由で、キューブの右側と左側の両方が照らされています。立方体の反対側が光っています。ブレンダーを使用して法線を生成しているので、正しいことがわかります。また、手動でチェックして反転させました。しかし、結果は同じです。
当然、立方体の右側だけが点灯するはずですよね?
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glEnable(GL11.GL_LIGHT0);
GL11.glLightModeli(GL11.GL_LIGHT_MODEL_LOCAL_VIEWER, GL11.GL_TRUE);
//
GL11.glLightModel(GL11.GL_LIGHT_MODEL_AMBIENT, floatBuffer(new float[] {0.2f, 0.2f, 0.2f, 1.0f}));
GL11.glLight(GL11.GL_LIGHT0, GL11.GL_DIFFUSE, floatBuffer(new float[] {0.8f, 0.8f, 0.8f, 1.0f}));
GL11.glLight(GL11.GL_LIGHT0, GL11.GL_SPECULAR, floatBuffer(new float[] {1.0f, 1.0f, 1.0f, 1.0f}));
//
GL11.glLight(GL11.GL_LIGHT0, GL11.GL_POSITION, floatBuffer(new float[] {10, 0, 0, 1}));
//
GL11.glEnable(GL11.GL_COLOR_MATERIAL);
GL11.glColorMaterial(GL11.GL_FRONT, GL11.GL_AMBIENT_AND_DIFFUSE);
// もう少し作業を進めた結果、球体ができて、どの方向から見てもまったく同じ光が表示されます。光源の反対側の球体の背面は、実際の生活のように暗いはずではありませんか?
// 写真を撮ったのですが、投稿するには評判ポイントが 10 必要だとサイトに書かれています :(.