
Na computação gráfica 3D, o ray tracing (ou traçado de raios) é uma técnica de modelagem de transporte de luz utilizada em uma ampla variedade de algoritmos de renderização para a geração de imagens digitais.
Em um espectro de custo computacional e fidelidade visual, as técnicas de renderização baseadas em traçado de raios — tais como ray casting, traçado de raios recursivo, traçado de raios distribuído, mapeamento de fótons e path tracing — são geralmente mais lentas e oferecem maior fidelidade do que os métodos de renderização por varredura (scanline). Assim, o traçado de raios foi inicialmente empregado em aplicações nas quais um tempo de renderização relativamente longo podia ser tolerado, como em imagens estáticas geradas por computador (CGI) e efeitos visuais (VFX) para cinema e televisão, sendo menos adequado para aplicações em tempo real, como jogos eletrônicos, onde a velocidade é crítica na renderização de cada fotograma.
Desde 2018, contudo, a aceleração por hardware para ray tracing em tempo real tornou-se padrão em novas placas de vídeo comerciais, e as APIs gráficas seguiram essa tendência, permitindo aos desenvolvedores utilizar uma abordagem híbrida de traçado de raios e renderização baseada em rasterização em jogos e outras aplicações em tempo real, com menor impacto no tempo de renderização dos quadros.
O traçado de raios é capaz de simular uma variedade de efeitos ópticos, tais como reflexão, refração, sombras suaves, espalhamento de luz, profundidade de campo, desfoque de movimento, cáusticas, oclusão de ambiente e fenômenos de dispersão (como a aberração cromática). Também pode ser utilizado para traçar o caminho de ondas sonoras de maneira similar às ondas de luz, tornando-se uma opção viável para um design de som mais imersivo em jogos eletrônicos ao renderizar reverberação e ecos realistas. De fato, qualquer fenômeno físico de onda ou partícula com movimento aproximadamente linear pode ser simulado com o traçado de raios.
Técnicas de renderização baseadas em traçado de raios que realizam amostragem de luz sobre um domínio normalmente geram múltiplos raios e frequentemente dependem de algoritmos de desruído (denoising) para reduzir o ruído resultante.


A ideia do traçado de raios remonta ao século XVI, quando foi descrita por Albrecht Dürer, a quem se atribui sua invenção. Dürer descreveu múltiplas técnicas para projetar cenas tridimensionais sobre um plano de imagem. Algumas delas projetam a geometria escolhida sobre o plano da imagem, tal como se faz com a rasterização na atualidade. Outras determinam qual geometria é visível ao longo de um determinado raio, como ocorre no traçado de raios.
A primeira publicação referente ao uso de um computador para traçado de raios visando gerar imagens sombreadas é atribuída a Arthur Appel em 1968 (embora softwares comerciais de traçado de raios já estivessem sendo apresentados no final de 1967 pela MAGI (Mathematical Applications Group, Inc.)). Appel utilizou o traçado de raios para determinar a visibilidade primária (identificando a superfície mais próxima da câmera em cada ponto da imagem) traçando um raio através de cada ponto a ser sombreado em direção à cena para encontrar a superfície visível. A superfície mais próxima interceptada pelo raio era a considerada visível. Esse algoritmo de renderização não recursivo baseado em traçado de raios é denominado atualmente ray casting. Seu algoritmo traçava em seguida raios secundários em direção à fonte de luz a partir de cada ponto sombreado para determinar se o ponto se encontrava em sombra ou não.
Mais tarde, em 1971, Goldstein e Nagel, da MAGI, publicaram 3-D Visual Simulation, artigo no qual o traçado de raios foi empregado para produzir imagens sombreadas de sólidos. No ponto de intersecção entre o raio e a superfície, eles computavam a normal da superfície e, conhecendo a posição da fonte luminosa, calculavam o brilho do pixel na tela. A publicação descreve um curta-metragem (de 30 segundos) produzido utilizando o hardware de exibição da Universidade de Maryland equipado com uma câmera de 16 mm. O filme exibia o helicóptero e uma simples posição de artilharia em terra. O helicóptero foi programado para realizar uma série de manobras, incluindo curvas, decolagens e pousos, etc., até ser finalmente abatido e colidir contra o solo. Foi utilizado um computador CDC 6600. A MAGI produziu um vídeo de animação intitulado MAGI/SynthaVision Sampler em 1974.

Outro exemplo pioneiro de ray casting ocorreu em 1976, quando Scott Roth criou uma animação em flip book no curso de computação gráfica de Bob Sproull no Caltech. As páginas escaneadas são exibidas como vídeo na imagem ao lado. O programa de computador de Roth registrava um ponto de borda na localização de um pixel se o raio interceptasse um plano delimitado diferente do de seus vizinhos. Naturalmente, um raio poderia interceptar múltiplos planos no espaço, mas apenas o ponto de superfície mais próximo da câmera era considerado visível. A plataforma consistia em um DEC PDP-10, um monitor de tubo de armazenamento Tektronix e uma impressora que reproduzia a imagem da tela sobre papel térmico em rolo. Roth expandiu a estrutura teórica, introduziu o termo ray casting no contexto da computação gráfica e da modelagem sólida, e publicou seu trabalho em 1982 enquanto atuava nos Laboratórios de Pesquisa da General Motors (GM Research Labs).
Turner Whitted foi o primeiro a demonstrar o traçado de raios recursivo para reflexão especular e refração através de objetos translúcidos — com um ângulo determinado pelo índice de refração do sólido — e a aplicar o traçado de raios para anti-aliasing. Whitted também apresentou sombras geradas por traçado de raios. Ele produziu um filme demonstrativo com traçado de raios recursivo intitulado The Compleat Angler em 1979, enquanto atuava como engenheiro nos Bell Labs. O algoritmo de traçado de raios profundamente recursivo de Whitted reformulou a renderização, transformando-a de um problema focado primordialmente na determinação da visibilidade de superfícies em um problema de transporte de luz. Seu artigo inspirou uma série de trabalhos subsequentes de outros pesquisadores, incluindo o traçado de raios distribuído e, finalmente, o path tracing não enviesado, que fornece o arcabouço da equação de renderização, viabilizando a produção de imagens geradas por computador fidedignas à realidade física.
Por décadas, a iluminação global em grandes produções cinematográficas com imagens geradas por computador foi aproximada mediante a inserção de luzes adicionais. A renderização baseada em traçado de raios acabou por transformar esse cenário ao viabilizar o transporte de luz com base física. Entre os primeiros longas-metragens inteiramente renderizados com path tracing figuram Monster House (2006), Cloudy with a Chance of Meatballs (2009) e Monsters University (2013).


O traçado de raios óptico descreve um método para a produção de imagens visuais construídas em ambientes de computação gráfica 3D, com maior fotorrealismo do que as técnicas de ray casting ou renderização por varredura. Ele funciona traçando uma trajetória a partir de um olho imaginário através de cada pixel em uma tela virtual e calculando a cor do objeto visível por meio dele.
Cenas no traçado de raios são descritas matematicamente por um programador ou por um artista visual (normalmente utilizando ferramentas intermediárias). As cenas também podem incorporar dados de imagens e modelos capturados por meios como fotografia digital.
Tipicamente, cada raio deve ser testado quanto à intersecção com algum subconjunto de todos os objetos na cena. Uma vez identificado o objeto mais próximo, o algoritmo estimará a luz incidente no ponto de intersecção, examinará as propriedades materiais do objeto e combinará essas informações para calcular a cor final do pixel. Certos algoritmos de iluminação e materiais reflexivos ou translúcidos podem exigir que mais raios sejam relançados para o interior da cena.
A princípio, pode parecer contraintuitivo ou ao contrário disparar raios a partir da câmera para longe dela, em vez de em direção a ela (como a luz real faz na natureza), mas fazer isso é muitas ordens de magnitude mais eficiente. Visto que a esmagadora maioria dos raios de luz provenientes de uma dada fonte luminosa não atinge diretamente o olho do observador, uma simulação direta poderia potencialmente desperdiçar uma enorme quantidade de processamento computacional em trajetórias de luz que jamais seriam registradas.
Portanto, o atalho adotado no traçado de raios consiste em pressupor que um dado raio intercepta o plano de visão. Após atingir um número máximo de reflexões ou após um raio percorrer uma determinada distância sem intersecção, o raio cessa sua trajetória e o valor do pixel é atualizado.
Como entrada temos (nos cálculos utilizamos a normalização vetorial e o produto vetorial):
A ideia consiste em encontrar a posição do centro de cada pixel da viewport , o que nos permite traçar a reta que parte do olho através desse pixel e finalmente obter o raio descrito pelo ponto e pelo vetor (ou sua normalização ). Primeiro precisamos encontrar as coordenadas do pixel inferior esquerdo da viewport e obter o próximo pixel efetuando um deslocamento ao longo de direções paralelas à viewport (vetores , ) multiplicados pelo tamanho do pixel. Abaixo apresentamos as fórmulas que incluem a distância entre o olho e a viewport. Contudo, esse valor será cancelado durante a normalização do raio (de modo que se pode assumir e suprimi-lo dos cálculos).
Pré-cálculos: determinamos e normalizamos o vetor e os vetores paralelos à viewport (todos representados na figura acima):
Note-se que o centro da viewport é ; a seguir, calculamos as dimensões da viewport divididas por 2, incluindo a proporção de aspecto inversa :
e calculamos em seguida os vetores de deslocamento entre pixels vizinhos ao longo de direções paralelas à viewport (), e o centro do pixel inferior esquerdo :
Cálculos: observe que e o raio é , logo:
Na natureza, uma fonte luminosa emite um raio de luz que se propaga até atingir uma superfície que interrompe sua trajetória. Pode-se conceber esse raio como um feixe contínuo de fótons percorrendo o mesmo caminho. Em vácuo perfeito, esse raio constituirá uma linha reta (desconsiderando efeitos relativísticos). Qualquer combinação de quatro fenômenos fundamentais pode ocorrer com esse raio de luz: absorção, reflexão, refração e fluorescência. Uma superfície pode absorver parte do raio luminoso, resultando em perda de intensidade da luz refletida e/ou refratada. Pode também refletir toda ou parte da radiação em uma ou mais direções. Se a superfície possuir propriedades transparentes ou translúcidas, ela refrata uma fração do feixe luminoso em seu interior em uma direção distinta, enquanto absorve parte (ou a totalidade) do espectro visível (alterando potencialmente a cor resultante). Menos frequentemente, uma superfície pode absorver uma fração da luz e reemiti-la por fluorescência em um comprimento de onda maior e em direção aleatória, embora esse fenômeno seja suficientemente raro para poder ser desconsiderado na maioria das aplicações de renderização. Somando absorção, reflexão, refração e fluorescência, toda a luz incidente deve ser rigorosamente contabilizada, sem excedente: uma superfície não pode, por exemplo, refletir 66% de um raio de luz incidente e refratar 50%, pois a soma totalizaria 116%. A partir desse ponto, os raios refletidos e/ou refratados podem incidir sobre outras superfícies, onde suas propriedades de absorção, refração, reflexão e fluorescência voltam a atuar sobre os raios incidentes. Alguns desses raios percorrem caminhos tais que acabam atingindo nossos olhos, permitindo-nos visualizar a cena e compondo, assim, a imagem renderizada final.
A ideia por trás do ray casting, o antecessor do traçado de raios recursivo, consiste em lançar raios a partir do ponto de vista do observador (um por pixel) e encontrar o objeto mais próximo que bloqueia a trajetória desse raio. Pode-se visualizar a imagem como uma tela aramada, onde cada quadrículo corresponde a um pixel: o objeto interceptado é aquilo que o olho visualiza através daquele pixel específico. Utilizando as propriedades do material e os parâmetros das fontes luminosas na cena, o algoritmo consegue calcular o sombreamento desse objeto. Adota-se a premissa simplificadora de que, se uma superfície estiver voltada para uma fonte de luz, a radiação a alcançará sem bloqueios ou sombras intermediárias. O sombreamento da superfície é então processado mediante modelos tradicionais de sombreamento da computação gráfica 3D. Uma vantagem marcante que o ray casting oferecia em relação aos antigos algoritmos de varredura era sua capacidade de lidar facilmente com sólidos e superfícies não planares, como cones e esferas. Se uma superfície matemática puder ser interceptada analiticamente por uma reta, ela poderá ser renderizada por ray casting. Objetos elaborados podem ser concebidos mediante técnicas de modelagem sólida e prontamente renderizados.
No método de volume ray casting (traçado de raios volumétrico), cada raio é traçado de modo que a cor e/ou a densidade possam ser amostradas continuamente ao longo do trajeto do raio e, em seguida, compostas na cor final do pixel. Esse procedimento é comumente empregado quando os elementos não podem ser adequadamente representados por superfícies explícitas (como malhas poligonais triangulares), como ocorre na renderização de nuvens, fumaça ou exames de tomografia computadorizada 3D na medicina.

No SDF ray marching (marcha de raios por SDF), ou sphere tracing, cada raio avança em passos múltiplos para aproximar o ponto de intersecção entre o raio e uma superfície definida por uma função de distância com sinal (SDF). A SDF é avaliada a cada iteração a fim de permitir passos tão longos quanto possível sem ultrapassar ou perder nenhuma porção da superfície. Um limiar de tolerância é estipulado para interromper as iterações quando se atinge um ponto suficientemente próximo da superfície. Esse método é frequentemente empregado na renderização de fractais tridimensionais.




Os algoritmos primitivos traçavam raios do olho em direção à cena até atingirem um objeto, mas determinavam a cor do ponto sem traçar novos raios recursivamente. O traçado de raios recursivo expande esse processo: quando um raio atinge uma superfície, raios adicionais podem ser lançados devido a fenômenos de reflexão, refração e sombra:
Esses raios recursivos conferem expressivo realismo às imagens geradas por traçado de raios.
A popularidade da renderização fundamentada em traçado de raios decorre de sua fidelidade na simulação física do transporte de luz, em contraposição a outros métodos, como a rasterização, que se concentram primariamente na projeção da geometria. Efeitos como reflexões especulares perfeitas e sombras nítidas ou suaves, que demandam aproximações complexas em outros algoritmos, constituem desdobramentos naturais do traçado de raios. A independência computacional de cada raio torna o processo favorável a níveis básicos de paralelização, embora a divergência das trajetórias dos raios no espaço tridimensional torne difícil alcançar alta taxa de ocupação em processadores fortemente paralelos na prática.
Uma desvantagem histórica considerável do traçado de raios reside em seu custo computacional, embora ele possa, teoricamente, ser mais rápido do que a renderização tradicional por linhas de varredura dependendo da complexidade da cena versus o número de pixels a exibir. Até o final dos anos 2010, o traçado de raios em tempo real para cenas complexas era geralmente considerado inviável em hardwares de consumo. Algoritmos de varredura aproveitam a coerência espacial para compartilhar cálculos entre pixels adjacentes, enquanto o traçado de raios normalmente inicia o processo de forma independente para cada raio que parte do olho. Não obstante, essa dissociação propicia vantagens notáveis, como a possibilidade de lançar raios adicionais sob demanda para realizar anti-aliasing espacial e refinar a qualidade visual onde for necessário.
O algoritmo recursivo clássico no estilo de Whitted calcula inter-reflexões e refrações, mas não atinge por si só o fotorrealismo integral. Um realismo aprimorado é obtido quando a equação de renderização é calculada plenamente, já que ela contempla formalmente todos os fenômenos físicos do fluxo luminoso. Todavia, a avaliação analítica exata é inviável perante os recursos computacionais disponíveis e as limitações na modelagem de materiais. O path tracing avalia numericamente essa equação mediante métodos de Monte Carlo, oferecendo simulações de alta fidelidade da iluminação no mundo real.
O procedimento de disparar raios a partir do olho em direção à fonte de luz para renderizar uma imagem é por vezes chamado de traçado de raios reverso (backwards ray tracing), visto que segue a direção oposta à percorrida pelos fótons na natureza. Todavia, essa terminologia gera ambiguidade. Os pioneiros da área sempre traçaram os raios a partir do ponto de observação, e autores como James Arvo empregavam a expressão backwards ray tracing para designar o disparo de raios a partir das fontes luminosas e a subsequente coleta dos dados. Assim, mostra-se mais preciso distinguir o traçado de raios baseado no olho (eye-based) daquele baseado na luz (light-based).
Enquanto a iluminação direta é amostrada com mais eficiência por raios partindo da câmera, determinados efeitos de iluminação indireta beneficiam-se do lançamento de raios originados nas lâmpadas. Cáusticas são padrões luminosos concentrados gerados pela reflexão ou refração da luz em regiões curvas sobre superfícies difusas. Um algoritmo que projeta raios diretamente das fontes sobre corpos refletores ou refratores, acompanhando sua trajetória até o olho, registrará esse fenômeno com precisão superior. A integração das abordagens baseadas no olho e na luz é formalizada no path tracing bidirecional, no qual trajetórias são traçadas simultaneamente a partir da câmera e das fontes de luz, unindo-se por um segmento conector intermediário.
O mapeamento de fótons é outro método que conjuga ambas as estratégias: em uma primeira etapa, pacotes de fótons energéticos são disparados a partir das fontes luminosas para compilar uma estimativa tridimensional do fluxo radiante acumulado no espaço (o mapa de fótons propriamente dito). Na etapa seguinte, raios são projetados a partir da câmera para determinar a visibilidade primária das superfícies, empregando-se o mapa de fótons para interpolar a iluminação incidente. A vantagem do mapeamento de fótons em relação ao traçado bidirecional reside na capacidade de reutilizar as informações de iluminação para múltiplos pixels vizinhos, atenuando o tempo de processamento em troca da introdução de um viés estatístico sutil.
Dificuldades suplementares surgem quando a luz precisa transpor aberturas minúsculas para iluminar um recinto (como uma fresta em uma porta comunicando uma sala escura a um cômodo iluminado), ou em configurações espaciais onde grande parte das superfícies carece de linha de visada direta com as luminárias. Nessas conjunturas, apenas uma fração ínfima das trajetórias transportará energia; o algoritmo de transporte de luz de Metropolis inicia com uma busca estocástica no espaço de caminhos e, ao detectar trajetórias energéticas, reutiliza essas informações explorando o espaço vetorial de raios vizinhos.

À direita ilustra-se um exemplo de trajetória de raios gerados recursivamente a partir da câmera (ou olho) até a fonte de luz. Uma superfície difusa reflete a luz incidente em todas as direções.
Primeiramente, um raio parte da posição da câmera, atravessa um pixel do plano de projeção e penetra na cena, interceptando uma superfície difusa. A partir desse ponto, o algoritmo gera recursivamente um raio de reflexão que avança pelo espaço até colidir com uma segunda superfície difusa. Dali, um novo raio secundário é lançado e atinge a fonte luminosa, onde é absorvido. A cor final do pixel dependerá dos pigmentos de reflectância da primeira e da segunda superfície difusa, bem como da intensidade e matiz da luz emitida pela fonte. Se, por exemplo, a lâmpada irradiar luz branca e ambas as superfícies possuírem tonalidade azul, a cor resultante computada para o pixel será azul.

Como demonstração prática dos princípios matemáticos do traçado de raios, considere-se o cálculo da intersecção analítica entre uma reta e uma esfera tridimensional. Trata-se da geometria subjacente à intersecção reta-esfera e à conseguinte determinação cromática do pixel correspondente.
Na notação vetorial, a equação de uma esfera de centro e raio expressa-se por:
Qualquer ponto situado ao longo de um raio que parte do ponto de origem com vetor de direção (sendo um vetor unitário) pode ser parametrizado como:
onde quantifica a distância escalar entre e . Em nosso problema, são conhecidos , , e , cabendo determinar o parâmetro . Substituindo na equação da esfera:
Definindo para simplificação:
Como é um vetor unitário (), obtém-se:
Esta equação do segundo grau fornece as soluções:
Os valores reais calculados para determinam os pontos onde o raio atravessa a fronteira da esfera.
Qualquer valor negativo para indica que a intersecção situa-se atrás da origem do raio (na semirreta oposta).
Se o valor sob o radical (o discriminante) for negativo, o raio não intercepta a esfera.
Assumindo a existência de soluções reais positivas, toma-se o menor valor de , que representa o impacto mais próximo. Supondo que a esfera seja o corpo mais próximo do ponto de observação e que seu material seja reflexivo, calcula-se a trajetória do raio refletido. A lei da reflexão estabelece que o ângulo de reflexão é igual e simétrico ao ângulo de incidência em relação ao vetor normal no ponto de impacto.
O vetor normal unitário à esfera no ponto de contato é expresso por:
onde é a coordenada de impacto. A direção do raio refletido é obtida pela reflexão vetorial de em relação a :
Assim, o raio refletido é parametrizado como:
Calcula-se então a intersecção desse novo raio com as demais superfícies e fontes luminosas da cena. Por fim, a cor apurada nessa cadeia recursiva é combinada com os coeficientes de cor da esfera para definir o tom cromático exibido no pixel correspondente.
O controle adaptativo de profundidade consiste em interromper a geração de novos raios refletidos ou transmitidos quando a intensidade luminosa residual estimada cai abaixo de um determinado limiar de relevância visual. Um limite máximo estrito de recursão deve ser sempre configurado, sob pena de o programa entrar em laço infinito de processamento. Todavia, não é mandatório atingir a profundidade máxima se os materiais não possuírem refletividade expressiva. O algoritmo mantém o produto cumulativo dos coeficientes de atenuação e reflexão à medida que os raios se propagam.
Exemplo: considere um coeficiente de reflexão Kr = 0,5 para um grupo de superfícies. O primeiro impacto contribuirá com no máximo 50% (0,5) para a cor final; o segundo, com 0,5 × 0,5 = 0,25 (25%); o terceiro, com 0,125; o quarto, com 0,0625; o quinto, com 0,03125, decrescendo progressivamente. Pode-se introduzir paralelamente um fator de atenuação pela distância quadrática (1/D²), atenuando ainda mais o sinal.
Para raios refratados aplica-se mecanismo equivalente, com a taxa de atenuação agravada pela absorção sofrida ao atravessar a espessura do meio. Avaliações conduzidas por Hall & Greenberg constataram que, mesmo em cenas com alta densidade de materiais reflexivos, limitar a profundidade máxima em 15 níveis resultou em uma árvore de raios com profundidade média de apenas 1,7 na prática.
O encapsulamento de grupos de objetos tridimensionais em estruturas de hierarquia de volumes envolventes (BVH, do inglês bounding volume hierarchies) reduz drasticamente a quantidade de testes de intersecção demandados pelo traçado de raios. O raio disparado é testado primariamente contra o volume delimitador externo; se houver intersecção com o invólucro, a estrutura é percorrida recursivamente subdividindo os volumes até alcançar a geometria original contida em seu interior. A tipologia do volume envolvente (esferas ou caixas delimitadoras alinhadas aos eixos — AABB) é selecionada em função da morfologia dos modelos: sólidos delgados e alongados geram excesso de espaço vazio se envolvidos por esferas, sendo mais adequadamente circunscritos por caixas, as quais também facilitam a estruturação hierárquica.
A adoção de esquemas hierárquicos otimizados reduz a complexidade assintótica dos cálculos de intersecção de uma relação linear com o número total de objetos para uma dependência sublinear ou logarítmica. Em um arranjo ideal, cada teste de volume descarta metade das geometrias candidatas, emulando uma busca em árvore binária. Ademais, essas estruturas de aceleração espacial tornam o processamento sensível à saída, fazendo com que o custo computacional dependa mais dos elementos que efetivamente cruzam os raios do que da densidade poligonal total da cena.
Kay & Kajiya formularam um conjunto de diretrizes de otimização para hierarquias de volumes envolventes:
A primeira implementação funcional de um sistema de traçado de raios interativo foi o computador LINKS-1, concebido em 1982 na Faculdade de Engenharia da Universidade de Osaka pelos professores Ohmura Kouichi, Shirakawa Isao e Kawata Toru, em cooperação com cinquenta estudantes. O equipamento constituía um arranjo de processamento massivamente paralelo dotado de 514 microprocessadores (257 unidades Zilog Z8001 e 257 unidades iAPX 86), dedicado à síntese acelerada de gráficos 3D. Segundo a Sociedade de Processamento de Informação do Japão (IPSJ), o LINKS-1 viabilizou a computação independente e paralela de cada pixel da imagem, permitindo gerar em alta velocidade projeções realistas apresentadas na Exposição Internacional de Tsukuba em 1985.
O sistema subsequente a alcançar taxas de amostragem em tempo real reconhecidas pela conferência SIGGRAPH de 2005 foram os módulos REMRT/RT, desenvolvidos em 1986 por Mike Muuss para o pacote de modelagem sólida BRL-CAD. Divulgado formalmente na conferência da USENIX de 1987, o motor operava em rede distribuída paralela, atingindo múltiplos quadros por segundo em tarefas de visualização científica através do motor otimizado LIBRT.
Ao longo dos anos 1990 e 2000, programadores da demoscene produziram motores gráficos experimentais em software baseados em traçado de raios voltados a computadores pessoais. Em 1999, pesquisadores da Universidade de Utah, liderados por Steven Parker, demonstraram um motor interativo capaz de renderizar um modelo de 35 milhões de esferas a 15 quadros por segundo com resolução de 512×512 pixels utilizando 60 CPUs em paralelo. O projeto de código aberto OpenRT buscou consolidar uma API similar ao OpenGL para padronizar o traçado de raios interativo, enquanto chips conceituais, como a Unidade de Processamento de Raios (RPU) desenvolvida na Universidade do Sarre, testavam a viabilidade de circuitos integrados dedicados.
A viabilização do traçado de raios em jogos eletrônicos atraiu atenção destacada nos anos 2000. O pesquisador Daniel Pohl, sob orientação de Philipp Slusallek na Universidade do Sarre, adaptou os motores de jogos de Quake III Arena e Quake 4 para operar integralmente via traçado de raios, exibindo os protótipos na feira CeBIT em 2007. A Intel contratou Pohl e financiou projetos de pesquisa para explorar a renderização como argumento técnico para chips multinúcleo.:99–100 Em 12 de junho de 2008, a Intel apresentou uma versão modificada de Enemy Territory: Quake Wars, denominada Quake Wars: Ray Traced, renderizada em resolução HD (720p) entre 14 e 29 quadros por segundo em uma estação de trabalho equipada com quatro processadores quad-core Intel Xeon Tigerton operando a 2,93 GHz.
Na conferência SIGGRAPH de 2009, a Nvidia lançou o OptiX, uma interface de programação de aplicações (API) programável desenhada para acelerar o traçado de raios em suas placas de vídeo, sendo integrada posteriormente a softwares como Autodesk Arnold, Blender, Adobe After Effects e Autodesk Maya. Em 2014, o jogo The Tomorrow Children, desenvolvido para o PlayStation 4, utilizou uma variação adaptada de traçado de cone de raios em grade de voxels em cascata para calcular iluminação e reflexões indiretas.
Em setembro de 2018, a Nvidia introduziu comercialmente suas placas gráficas GeForce RTX e Quadro RTX baseadas na arquitetura Turing, pioneiras no suporte a traçado de raios acelerado por núcleos funcionais dedicados em silício (os núcleos RT). Em novembro do mesmo ano, Battlefield V tornou-se o primeiro jogo comercial a incorporar a tecnologia no mercado por intermédio da API DirectX Raytracing (DXR) da Microsoft. A AMD, que disponibilizava soluções baseadas em OpenCL por meio do Radeon ProRender, oficializou em outubro de 2020 sua linha Radeon RX série 6000 com microarquitetura RDNA 2, trazendo suporte nativo por hardware ao traçado de raios. O advento da nona geração de consoles de videogame, representada pelo PlayStation 5 e pelo Xbox Series X e Series S, integrou circuitos integrados compatíveis com aceleração de traçado de raios nas plataformas de jogos domésticas.
No segmento móvel, a Imagination Technologies anunciou em novembro de 2021 a GPU IMG CXT com blocos dedicados de traçado de raios. Em janeiro de 2022, a Samsung apresentou o processador Exynos 2200 com GPU Xclipse fundamentada em RDNA 2. A Arm oficializou sua GPU Immortalis-G715 com suporte a ray tracing em junho de 2022, e a Qualcomm revelou o chip Snapdragon 8 Gen 2 em novembro de 2022 com aceleração de hardware correspondente.
Em setembro de 2023, a Apple introduziu núcleos de aceleração de traçado de raios em seu silício, iniciando com o processador A17 Pro no iPhone 15 Pro, e expandindo o suporte no mesmo ano para os computadores Mac equipados com a família de chips M3. Essa tecnologia é acessível em dispositivos iOS, iPadOS e macOS através da API Metal, suportando travessia de estruturas de aceleração acelerada por hardware e comandos via RayQuery e RayPipeline.
Diversos resultados formais de teoria da complexidade foram demonstrados para variantes do problema de traçado de raios. Em particular, ao modelar o problema sob uma formulação de decisão — dado o ponto inicial e a direção de um raio luminoso e um determinado ponto de destino, o raio acabará por alcançar esse ponto? — demonstram-se as seguintes conclusões analíticas: