Pular para o conteúdo

Reflexões Especulares & Refração de Snell (Raytracer3D.cs)

O arquivo Raytracer3D.cs simula espelhos, metais cromados e esferas de vidro transparente por meio de Recursão de Raios.


Para superfícies refletivas (espelhos), o raio refletido R⃗\vec{R} a partir da direção do raio incidente D⃗\vec{D} e da normal N⃗\vec{N} é dado por:

R⃗=D⃗−2(D⃗⋅N⃗)N⃗\vec{R} = \vec{D} - 2(\vec{D} \cdot \vec{N}) \vec{N}

Quando a luz passa do ar (η1≈1.0\eta_1 \approx 1.0) para o vidro (η2≈1.5\eta_2 \approx 1.5), sua trajetória se curva:

η1sin⁡θ1=η2sin⁡θ2\eta_1 \sin\theta_1 = \eta_2 \sin\theta_2
graph TD
K_Test["Teste de k = 1 - eta^2 * (1 - cos^2)"]
K_Test -->|k menor que 0| TIR["Reflexao Interna Total - O raio vira espelho 100 porcento"]
K_Test -->|k maior ou igual a 0| Refratado["Raio Refratado - Atravessa o vidro curvando a trajetoria"]

Calcula a proporção exata de luz que deve ser refletida versus a proporção que deve ser refratada dependendo do ângulo de visão do observador:

R0=(η1−η2η1+η2)2,R(θ)=R0+(1−R0)(1−cos⁡θ)5R_0 = \left( \frac{\eta_1 - \eta_2}{\eta_1 + \eta_2} \right)^2, \quad R(\theta) = R_0 + (1 - R_0)(1 - \cos\theta)^5

Próximo Passo: Consulte o Mapeamento do Plano de Ensino da Disciplina.