Anatoly Vorobey (avva) wrote,
Anatoly Vorobey
avva

Categories:

полет в лабиринте (компьютерное)

Эта запись может быть интересна программистам и сочувствующим.

Notch, создатель игры Minecraft, выложил ссылку на очень впечатляющее демо, в джаваскрипте (технология canvas), полета в трехмерном лабиринте. Для программистов с опытом работы в графике и играх тут не будет ничего нового, но даже им понравится краткость кода. Все исходники можно видеть прямо на той же странице слева от окна демо (и даже менять самому и перезапускать - так устроен сайт jsfiddle), и видно, что всего в 200 строчек простого и нисколько не сжатого кода Нотч уместил:

- создание 16 разных блоков-текстур
- создание случайного лабиринта из этих блоков (точнее, куба, в котором пробита дырка-путь)
- поддержку яркости, как отдельно для каждой текстуры, так и меняющейся в зависимости от расстояния
- трехмерный рендеринг из произвольной точки с использованием ray-casting
- движение.

Код довольно простой (хоть имена переменных кое-где неудобные), и его внимательный разбор может многому научить.

Если вы хотите лучше понять создание текстур, и самих исходников не хватает, то оно подробно разбирается в этом скринкасте (англ.). См. также обсуждение на HN.
Subscribe

Recent Posts from This Journal

  • неоднозначное

    Просматривал сборник неоднозначных новостных заголовков (по-английски), отобрал несколько наиболее красивых на мой субъективный взгляд. Хотите больше…

  • день рождения

    Друзья, у меня сегодня день рождения. Если вам хочется меня поздравить, мне будет очень приятно, если вы пожелаете не просто самого хорошего, а…

  • скорость вояджера-2

    Скорость Вояджера-2 относительно солнца, по мере его удаления. Вертикальные линии показывают его гравитационные маневры около планет (Юпитер,…

  • Post a new comment

    Error

    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.
  • 19 comments

Recent Posts from This Journal

  • неоднозначное

    Просматривал сборник неоднозначных новостных заголовков (по-английски), отобрал несколько наиболее красивых на мой субъективный взгляд. Хотите больше…

  • день рождения

    Друзья, у меня сегодня день рождения. Если вам хочется меня поздравить, мне будет очень приятно, если вы пожелаете не просто самого хорошего, а…

  • скорость вояджера-2

    Скорость Вояджера-2 относительно солнца, по мере его удаления. Вертикальные линии показывают его гравитационные маневры около планет (Юпитер,…