Tutorial de Ray-Casting [+ faça seu Doom o.O]

Qualquer assunto que não seja relacionado a DOOM...
Avatar do usuário
Fabio914
Mensagens: 1757
Registrado em: Dom Mai 21, 2006 4:38 pm
Answers: 0
19
Localização: Sampa/Sanca
Contato:

Tutorial de Ray-Casting [+ faça seu Doom o.O]

Mensagem por Fabio914 »

Acho que eu deveria estar postando isso no sub-fórum de programação mas acho que isso seria de interesse não apenas de desenvolvedores mas também de fans de Doom e de Wolfenstein 3D.

Para aqueles que não sabem, Ray-casting é uma técnica de rendering 3D (ou pseudo-3D para alguns) utilizada pelo John Carmack nos jogos Wolfenstein 3D e Doom (por isso eu postei isso aqui no Off-Doom mesmo :wink: ). Essa técnica consiste em projetar "raios" (como os vetores utilizados no estudo de ótica no Ensino Médio) dos "olhos do jogador", um para cada pixel da tela, e checar quando estes chegam a algum objeto, e assim medir a distância dos olhos do jogador ao objeto e determinar o "tamanho" e a "posição" com que o objeto será desenhado na tela. Além disso com a distâncias também pode-se criar efeitos de shading (objetos mais distantes possuem iluminação menor) e através dos ângulos de visão também podemos obter efeitos como o de crouching (agaichar) e de flying (voar), além, é claro, de termos a possibilidade de rotacionar em 360º. Assim, com essa técnica podemos criar/editar engines de jogos semelhantes a Wolfenstein 3D e Doom (no caso do Doom, teríamos que fazer algumas adaptações pois temos paredes , chãos e tetos de alturas e tamanhos diferentes, mas nada impede de criarmos nosso Source-Port).

Mas ai após ler isso vocês se perguntariam... "E o kiko?"...

Bom, recentemente eu achei na internet o que eu procurava à muito tempo, um tutorial bom e simples de "Ray-Casting" (para, principalmente, que eu pudesse aplicar essa técnica no Core e transforma-lo num FPS "de verdade"). E além disso, esse tutorial não requer que o leitor saiba programar (o que é necessário saber é trigonometria básica do Ensino Médio) e pode ser lido e compreendido por todos (que saibam ler em inglês...). Então é pelo fato deste tutorial ser simples (e poder ser lido em ~30 minutos) que eu to postando ele aqui, pois, imagino eu, que muitos de vocês já devem ter pensado em montar algum Doom (ou Source-Port) ou em simplesmente saber como ele funciona.

Observação para programadores/desenvolvedores: Embora esse tutorial não tenha códigos ele mostra vários algoritmos que podem ser, com não muito esforço, compreendidos e transformados em código.

Tutorial

Espero que gostem! 8)

Off: Se alguém, que leu, tiver alguma dúvida sobre alguma parte do tutorial, favor perguntar neste tópico....
Projetos em andamento
the Core
Eclipse

Projetos parados
Doom 3 on GZDoom
FSD Project

PC
AMD Athlon 64 X2 5200+ (2x 2.6Ghz)
2GB RAM (2x 1GB DDR2)
240GB (160GB SATA + 80GB SATA)
XFX nVidia GeForce 8600 GT (600mhz 256mb)
Placa Mãe ASUS M2N4 SLI (2x PCI-E 16x SLI, 4x DDR2 800, nForce 4)
Fonte 500W reais (esqueci o nome da marca)
Monitor LG Flatron 19'' LCD
Avatar do usuário
Space Marine
Mensagens: 1920
Registrado em: Sáb Fev 11, 2006 6:47 pm
Answers: 0
19
Localização: Brasil
Gender:
Contato:

Re: Tutorial de Ray-Casting [+ faça seu Doom o.O]

Mensagem por Space Marine »

Eu devo ter ateh hoje um tutorial parecido com esse, porem esse parece ser mais completo.

No dia que eu for criar meu proprio doom eu leio isso ae :mrgreen:

Voltar para “Assuntos Gerais”