Anatoly Vorobey (avva) wrote,
Anatoly Vorobey


Интересное интервью с Тимом Свини, легендарным программистом компьютерных игр в 90-е (одним из авторов Unreal Engine).

Мне особенно понравился его рассказ (процитирован в оригинале ниже), как крутые графические программисты из Финляндии прислали ему скриншоты трехмерных сцен с реалистичным освещением. Он вообще не знал, что можно на тогдашнем железе такое сделать. Разобрался и ввел освещение в реальном времени в свой движок. Послал им в Финляндию, а они ему в ответ: "Круто, чувак, но вообще-то наша картинка - это экспорт из графического редактора, потому что в реальном времени мы не смогли это сделать".

Какой это был фантастический рассказ с той же идеей про изобретение антиграва, кто помнит?


"A lot of the features in Unreal arose from fallacies of what I misperceived other people did.
...A bunch of the former Future Crew demo-scene guys had formed a hardware company, and they had released some screenshots with incredibly realistic volumetric lighting in an indoor scene. There were some lights with really big spheres around them, and the volumetric lighting was really clearly clipped by all the geometry around it. It looked completely physically accurate. I was like "Oh my god, it's something I've never seen before, I have to figure it out!”

So I figured out that I needed to compute the line integral from the eye to every point on the screen. I learned some calculus in college, so I said to myself "I should be able to do this." So I figured out the formula for it with some crazy complicated trigonometry. I implemented it, but it was 100 times too slow. Then I realized, "Oh wait, I can do this in the lightmap space”, because the lightmap is a discretization of geometry into bite-sized chunks. I did that with lightmaps, so it was real-time.

I took a screenshot of it, and I emailed it to the guy I knew at the hardware company in Finland. He replied "Oh that's really awesome! But, our picture is just a rendering from 3D Studio Max because we couldn't figure out how to do that in real-time. [laughs]"
Tags: программирование
  • Post a new comment


    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.