Зафарбування Фонга передбачає інтерполяцію не розрахованих значень інтенсивностей, а інтерполяцію векторів нормалей. Такий підхід вимагає значно більших обсягів обчислень, але при цьому виходить краща апроксимація кривизни поверхні і більш реалістичне зображення. У цьому випадку дзеркальні властивості поверхні відображаються набагато краще.
Цей метод дозволяє виправити деякі недоліки Гуро, але не всі. Зокрема, ефект смуг Маху в деяких випадках у методі Фонга ще сильніший, хоча в більшості випадків апроксимація Фонга дає кращі результати.
На рис. 3.19, наведені результати зафарбовування поверхні обертання, апроксимованої многогранником, який складається з трикутних граней:
плоске зафарбовування,
зафарбовування по методу Гуро,
зафарбовування по методу Фонга
Перший варіант дає зображення ребристої поверхні з дуже контрастними переходами від однієї грані до іншої. Друга модель дає більш гладке зображення, але в районі відблисків явно спостерігаються лінії ребер, хоча й згладжені. Третій варіант вийшов найбільш гладкий, дзеркальні відблиски мають досить реалістичну форму.
Розглянемо більш складне завдання – включимо в модель не тільки відображення, але і показник заломлення.
При проходженні променя з одного середовища в інше, його напрямок змінюється відповідно до закону Снелліуса (Віллеброрд Снелл ван Ройен): переломлений промінь лежить у площині, утвореної нормаллю до площини і падаючим променем, а кути, утворені променями з нормаллю, зв'язані формулою
Проходження світла також може бути дифузним (якщо частина енергії світла розсіюється середовищем) або спрямованим. У першому випадку ми маємо справу з напівпрозорими тілами, які змінюють забарвлення видимих через них об'єктів. У другому випадку тіло прозоре, і воно візуально виявляється тільки завдяки перекручуванню об'єктів через заломлення променів.
Якщо в просторовій сцені є прозорі або напівпрозорі об'єкти, необхідно враховувати, що зображення інших об'єктів буде відрізнятися від звичайної проекції на площині зображення (рис. 3. 21).
Ці ефекти добре знайомі кожному, хто стикається з різними лінзами. Щоб побудувати зображення в цьому випадку, використовують алгоритми зі зворотним трасуванням променів