Jump to content

ragecom

Membros
  • Content Count

    216
  • Joined

  • Last visited

  • Days Won

    7

Everything posted by ragecom

  1. ragecom

    Blizzard joga a toalha no mundo dos MOBAs

    Depois do Diablo mobile acho que eles não vão bem é da cabeça mesmo.
  2. Até uns 2 anos atrás eu nem sabia que Magic ainda existia lol Joguei até a época do Ice Age mais ou menos. Bons tempos.
  3. ragecom

    Warner Bros. anuncia Mortal Kombat 11

    Pelo trailer não dá pra ter muita noção do jogo. Trailer cinematográfico é sempre assim... Quero ver os crossovers. Jason e Leatherface foram impagáveis lol. Quero Pennywise.
  4. Então, Eu tenho tentado entender como funciona o famoso ray-tracing, e resolvi postar aqui à medida que eu vou lendo. Na verdade o que me levou a começar a estudar isso é um desejo de tentar compreender porque o ray-tracing é tão pesado computacionalmente falando. Até andei conversando no Whatsapp com alguns chapas sobre isso tem umas duas semanas. Mas antes de tudo, queria dizer que 1) apesar de eu ser de computação, nunca tive nenhum contato com computação gráfica, então algumas das minhas "conclusões" vão ser óbvias para quem já estudou a fundo esse tópico e; 2) vou tentar escrever da forma mais simples e compreensível que eu conseguir. Eu tenho um background matemático ok na minha opinião, mas sei que nem todo mundo tem. Então... Qual é a do ray-tracing? A ideia é até simples, mas antes vou estabelecer alguns termos pra deixar claro sobre o que eu estou falando: . Câmera - seria um "olho" imaginário que é de onde se enxerga a cena. . Renderização - é o processo de transformar um conjunto de modelos 3D em uma imagem 2D, que depende do ponto de vista da câmera. Ok, vamos ao ray-tracing: a parada é disparar um "tiro": um raio imaginário para cada pixel, a partir do ponto de vista da câmera. Até aqui, é o que sempre foi feito: calcular parâmetros associados à colisão desse raio imaginário com o sólido que foi colidido para determinar a cor exata daquele pixel. Claro, esses parâmetros são definidos no próprio sólido, e são associados à cor, à transparência, à absorção de luz do objeto, e por ai vai. O ray-tracing faz a mesma coisa, mas quando colide, ele define mais outros três vetores: um de reflexão, um de refração e um de sombra. Até ai, ok, mas o grande lance, e que é o que faz as renderizações ficarem fodas, é que o mesmo processo é repetido para a colisão destes vetores de forma recursiva, ou seja, criando "reflexões de reflexões", e dependendo da quantidade de vezes que essa recursão ocorrerá, o resultado é que uma imagem bastante realista será criada. Pensem em duas esferas espelhadas (como bolas de natal) viradas uma pra outra na cena - se o ray tracing tiver 10 recursões, será possível observar 10 esferas uma "dentro" do outra e cada uma cada vez menor que a outra, que é uma reflexão extremamente realista. Por outro lado, essa recursão tem um custo computacional alto, ainda mais se a gente parar pra pensar que se espera atingir o ray tracing em 4K, que seria esse cálculo do parágrafo anterior feito 530.841.600 por segundo, tendo como meta 60 fps. Tá, beleza... Como eu falei, eu não sou um cara de computação gráfica, então comecei a ler do início. O que acontece quando um dos "tiros" do ray-tracing acerta uma esfera? Bem, tem três coisas que podem acontecer: 1) Ele acertou na "borda" da esfera. Nesse caso, o tiro acertou no ponto onde o plano tangente toca a esfera, ou seja, atingiu a esfera em apenas um ponto. 2) O tiro acertou a esfera por um lado e saiu pelo outro. Nesse caso, o tiro passa por algum plano secante, atingindo a esfera duas vezes. 3) O tiro não atingiu a esfera. Ok, agora vem a parte legal. Mas pra isso, por favor, tenham paciência comigo. Eu não estou escrevendo num editor LaTeX (lol :P) então vamos adotar umas convenções aqui: . sqrt é raiz quadrada, ou seja, sqrt(4) = 2 . ^ é exponenciação, ou seja, 2^2 = 4 Beleza, a equação genérica que define uma esfera é (x - x0)^2 + (y - y0)^2 + (z - z0)^2 = r^2 onde, r é o raio da esfera, x, y e z são as coordenadas espaciais em R3 (euclidiano de três dimensões) do centro da esfera, e x0, y0 e z0 são as coordenadas espaciais em R3 da origem. Óbvio que se o centro for a origem, eles são dispensáveis. Mas meio que foda-se as coordenadas. Pra gente generalizar, dá pra escrever na notação vetorial assim: ||x - c||^2 = r^2 onde, r é o raio da esfera, c é o centro (as coordenadas estão embutidas aí dentro desse c), e x são os pontos da esfera.  Agora vamos definir uma equação genérica de segmento de reta: x = o + dl onde, x são os pontos do segmento de reta, o é a origem do segmento de reta, d é o tamanho do segmento de reta l é um vetor de direção. Então, juntando as duas a gente tem a seguinte equação: (o + dl - c)^2 = r^2 Dai, desenvolvendo essa equação a gente chega no formato da equação do segundo grau: d^2(l*l) + 2d(l(o - c)) + (o - c)(o - c) - r^2 = 0 Vou pular o desenvolvimento da equação. Resolvendo ela, chegamos ao seguinte resultado:  d = -(l(o - c)) +- sqrt(l(o - c)^2 - (o - c)^2 + r^2) O que de, novo, nos dá três possibilidades: 1) Se o resultado daquela raiz quadrada ali for maior que zero, existem duas soluções para d, ou seja, o segmento de reta passou pelo plano secante e o "tiro" pegou na entrada e na saída da esfera. 2) Se o resultado for exatamente 0, só existe uma solução de d: o tiro bateu no ponto onde o plano tangente toca a esfera. 3) Se o resultado da raiz quadrada for menor que zero, não há solução (o tiro não atingiu a esfera). E assim, com geometria básica, conseguimos identificar as formas de como um tiro de ray-tracing atinge uma esfera a partir da câmera. Dá pra notar também que não há complexidade algorítmica significativa aqui, e que esse exemplo não leva em consideração a angulação do tiro em relação à esfera, justamente pra facilitar o entendimento (até porque na real, não se usaria uma equação pra definir um segmento de reta secante, e sim um segmento de reta até onde o tiro "entrou" na esfera, e os outros três vetores do ray-tracing seriam calculados).  À medida que eu for compreendendo mais coisas (como um tiro atinge outras formas geométricas, como a luminosidade influencia na cor, etc), vou postando. Caso alguém ache um erro no que eu escrevi, corrige ai: vamos aprender juntos.
  5. Mas a ideia não é ruim não... O que ele faz na prática é simplificar a equação da renderização com o método de Monte Carlo, depois passa um algotitmo de denoising pra corrigir. A solução é esperta, ele "mata" a integral da equação de renderização com um somatório até n, onde esse n é o sampling de Monte Carlo. Mesmo que existisse poder computacional pra resolver essas integrais em tempo real, a solução da NVidea é extremamente inteligente.
  6. Boa Seifer. Esse vídeo da Disney que tem nesse link que você postou é muito foda. Super didático. Eu já tinha visto ele mas tinha até esquecido lol
  7. Marmitão requentado do Vita. Não curto tanto turn-based.
  8. ragecom

    RESIDENT EVIL 2 REMAKE - TÓPICO OFICIAL

    Po esses "leaks" tem spoilers até da segunda metade do jogo lol Ah, e Mister X sem destruir nenhuma parede foi fail.
  9. Acabei de ver esse trailer no canal oficial do PS no YT. Cara, juro que meu coração bateu com mais força aqui...
  10. ragecom

    Ace Combat 7: Skies Unknown ‘F-15C’ trailer

    Nego está pedindo versão VR desse Ace Combat. Eu não aguento nem 10 segundos sem passar mal. Ace Combat em VR = versão moderna de G-Loc na Sega R360 lol
  11. Minha opinião ficou divida. Uma parte de mim ficou com pena de quem comprou a collectors edition e não recebeu o que foi prometido. A outra parte de mim riu forte porque quero mais é que se foda quem paga 200 trumps num monte de cacareco.
  12. ragecom

    Darksiders III ‘Horse with No Name’ trailer

    Desse trailer nem essa versão do clássico A Horse With no Name ficou boa lol
  13. Esse SOMA é da Frictional (galera do Amnesia). Deve ser bom também.
  14. Po, como assim crap? Asterix carisma infinito. Eu me amarro em platformers assim, com elementos de beat 'em up. Ia ser irado se fizessem alguma referência a AC Odyssey no jogo lol
  15. Falou tudo! Merecia ser desenterrado, mas é sonho: SNK só está fazendo cagada. Lembro de zerar World Heroes 2 no arcade, rodeado de um monte de gente. Bons tempos.
  16. ragecom

    "Safadinhos" na PSN

    Hahahahaha me lembrou o #sexo da BrasNET (mIRC) há 10 mil anos atrás.
  17. ragecom

    Warriors Orochi 4 – Análise

    Joguei o 3 e me amarrei. Mas eu gosto de musou e meio que não é de hoje que eu jogo Dynasty Warriors por exemplo. Boa análise, me deixou na pilha de jogar o Warriors Orochi 4.
  18. ragecom

    Confira a abertura de Darksiders III

    Po que trailer fajuto lol Darksiders é uma franquia estranha pra mim... Eu não gostei do primeiro, gostei do segundo e esse terceiro não me deixou com nenhum hype até agora.
  19. Olha, sinceramente, tem um monte de jogos VR que fazem você parecer um imbecil jogando. Mas acho que esse é o top 1. Pior que você nem se dá conta da vergonha por causa do capacete, não é como Dance Dance Revolution lol. Fico imaginando eu jogando isso de capacete e headphones, com dois PS dildos na mão e a minha mulher chega em casa. Vê se não dá divórcio uma cena patética dessas lol.
  20. Nintendo é foda... Qualquer funcionalidade online parece eu quando comecei a faculdade me enrolando todo com as coisas mais simples do mundo lol
  21. Eu gostei. Boa premissa essa de utilizar a cultura indígena brasileira. O negócio está bem em alpha mesmo, os inimigos parecem não ter a IA fechadinha ainda, mas a animação deles está legal. Gosto dessa forma de esmaecer os corpos, como se estivessem sendo queimados de dentro pra fora. O boss também está animal - maneiríssimo. Os movimentos também estão do caralho, batendo com os dois extremos da arma no combo, ataques aéreos e em 0:49 dá pra ver o que eu imagino ser um ataque "carregado". Achei ótimo pro estágio de desenvolvimento do jogo.
  22. ragecom

    Path of Exile anunciado para PlayStation 4

    Ano passado portaram pra X1. Só achei CURIOSO anunciarem esse port logo depois do fiasco da Blizzcon lol
  23. ragecom

    Diablo Immortal anunciado para smartphones

    E tem outra: sendo mobile e vindo da Activision, o jogo deve ter mais microtransação que qualquer outra coisa. Quer a espada lvl 99 do mal que com um hit tu mata o Diablo? Paga aqui ou espera ela aparecer com um drop rate de 0,000000001% de um inimigo específico *hehehehe
  24. ragecom

    Diablo Immortal anunciado para smartphones

    Esse foi o fiasco do ano. Mas o lance foi mais a forma como ele foi anunciado. Se tivessem falado algo como "Olha galera, a gente sabe o que vocês querem, a gente tem trabalhado numa continuação full de Diablo pra PC e tudo mais, mas nesse momento a gente não tem um protótipo bom o suficiente pra mostrar. Mas a gente tem esse Diablo Immortal aqui pra vocês verem, que tal?" era uma coisa. Outra coisa foi deixar todo mundo no hype pra vir com jogo de celular.
  25. ragecom

    [VGBR] Central de ID´s Oficial

    PSN: ragecom Live: ragecom666
×