Я меняю форму больше, чем радиус по умолчанию 1, но, похоже, не работает; это то, что я пытаюсь:OpenGL - Невозможно изменить размер glutSolidIcosahedron()?
void glutSolidIcosahedron(GLdouble size);
glutSolidIcosahedron(9);
Это нормально, я сделал это (как показано ниже):
glScalef(9.0,9.0,9.0);
glutSolidIcosahedron();
Есть ли другой способ?
Как только я изменил размер, свет не кажется пораженным, это странно – Led
Когда вы масштабируете объект, он также масштабирует нормали, которые могут вызвать проблемы с освещением, если вы не включаете 'GL_NORMALIZE' или' GL_RESCALE_NORMAL' , См. Это [faq] (http://www.opengl.org/resources/faq/technical/lights.htm#ligh0090). –
благодарит Дэвида Ура за легенду – Led