Ваше зображення, безумовно, не виглядає правильним, і, здається, ви неправильно обчислюєте внутрішній шлях променів світла, коли вони проходять через вашу сітку. З огляду на це я б сказав, що ви обчислюєте відстань між точкою, де оглядовий промінь вперше потрапляє в куб і де він вперше потрапляє на внутрішню стінку, і використовуєте це як відстань поглинання. Це по суті передбачає, що світло завжди буде виходити зі скла при першому попаданні в стіну, що є поганим припущенням.
Насправді, коли світло потрапляє у скло з повітря, воно часто не одразу виходить із скла. Це тому, що коли світло потрапляє на інтерфейс скло / повітря, може статися явище, відоме як повне внутрішнє відбиття (МДП). TIR виникає, коли світло рухається від середовища з більш високим показником заломлення (IOR) до одного із нижчим IOR, що саме відбувається у випадку попадання світла на внутрішню стінку скляного предмета. Цей образ із Вікіпедії є гарною наочною демонстрацією того, як він виглядає, коли виникає:
У принципі, це означає, що якщо світло потрапляє під неглибоким кутом, то світло повністю відбиватиметься від внутрішнього середовища середовища. Для цього потрібно оцінити рівняння Френелящоразу, коли ваш промінь світла потрапляє на інтерфейс скла / повітря (AKA внутрішня поверхня вашої сітки). Рівняння Френеля підкажуть вам відношення відбитого світла до кількості заломленого світла, тоді як у випадку TIR буде 1. Потім ви можете обчислити відповідні напрямки відбитого та заломленого світла та продовжувати простежувати шлях світла або через середовище, або поза ним. Якщо припустити просту опуклу сітку з рівномірним коефіцієнтом розсіювання, то відстань, яку слід використовувати за законом Бера, буде сумою всіх внутрішніх довжин шляху до виходу із середовища. Ось як виглядає куб із коефіцієнтами розсіювання та коефіцієнтом корисної дії 1,526 (скляна вапняна сода), виведений за допомогою мого власного трасера, який враховує як внутрішні, так і зовнішні відбиття та заломлення:
Зрештою, внутрішні відображення та заломлення є основною частиною того, що робить скло схожим на скло. Прості наближення насправді не перерізають це, як ви вже з’ясували. Це стає ще гірше, якщо ви додасте декілька сіток та / або не випуклі сітки, оскільки вам не тільки доведеться враховувати внутрішні відбиття, але й потрібно враховувати промені, що залишають середовище та вводять його в іншій точці.