Русская рулетка с использованием Kinect



    Один из программистов, работающих с Kinect, решил создать некий аналог «русской рулетки», только без пистолета. Никакого риска или угрозы для жизни здесь нет — просто компьютерная игра, или, если хотите, интересный программный эксперимент. Даже пистолета нет — вместо него используется рука играющего. Для «выстрела» достаточно направить два пальца себе в голову, и «нажать на курок», т.е., опустить большой палец.

    Всего у пользователя получается 8 «выстрелов», из которых один будет смертельным. Само собой, «смертельным» будет случайный выстрел, а не каждый восьмой. Эффект от попадания простенький — это и хорошо, зато крови нет. Просто автор разработки пару секунд сидит без головы. А потом голова появляется на том самом месте, откуда исчезла, и начинает добродушно улыбаться.

    Все это — достаточно увлекательно, и вместе с тем, интересно не только для стороннего обывателя. Kinect начинает все плотнее входить в жизнь не только геймеров, но и программистов.

    Поделиться публикацией
    Реклама помогает поддерживать и развивать наши сервисы

    Подробнее
    Реклама
    Комментарии 56
    • 0
      Это для Kinect для Xbox 360 или уже под Windows?

      Судя по видео последнее.
      • +4
        Судя по видео, таки под Мак )))))
        • –17
          Правильно было бы если Microsoft назвал устройство «Kinect for PC» а не «Kinect for Window SDK»

          kinect_for_window_sdk
          • –17
            Если не трудно, минусуйте habrahabr.ru/company/microsoft/

            Спасибо. I am just a messenger.
            • 0
              Правильно было бы не критиковато то, как другие назвали свое творение.
              • +4
                Извините, пожалуйста, если обмен мыслями был принят как критика.

                Немного открытости нам всегда будет только в плюсе.

                Мы же на Хабр пришли поучаствовать в обсуждении а не избиении.

                Спасибо.

                P.S. в хайку будет где-то так:

                * * *
                Вопрос – ответ,
                Идея – творение,
                Удар – падение.

                • 0
                  P.S. Здесь под катом, скорее будет — «Выстрел– падение.»
                  • 0
                    Да, здесь очень даже уместна критика, но в Вашем случае это звучит как:
                    топик: о смотрите какую я программку написал на пхп
                    камент: пхп плохой, мне кажется его создатели должны были синтаксис написать по другому

                    Надеюсь Вы поняли о чем я =)
                • 0
                  В первой строке меньше слогов, чем надо. В последней — больше.
          • –4
            И я с Вам согласен, съем шляпу, как только Microsoft запустит Kinect для Apple.
        • +4
          Если такую игру красиво оформить и выпустить на X-Box и PC, то можно не плохо заработать! Я бы, например, с радостью с друзьями в такое поиграл.
          • +3
            Поддерживаю! Главное, чтобы можно было сидеть не по одному, а компанией, стреляя по очереди.
            • +5
              Потом посадить врага и дать ему настоящий, сказать так надо :)))
            • 0
              Хммм… Серьезно купили бы?

              Это можно сделать без кинекта, просто на любом девайсе где есть камера.

              Надо сделать и продавать. Ждите в «Я пиарюсь» на хабре через некоторое время:)
              • 0
                Я уже весь в нетерпении :)
            • +1
              два вопроса — откуда программа знает о том, что находится за головой участника и почему по поверхности головы идут волны?
              • 0
                видимо картинка вставляется отдельно… а волны как раз из-за того что вырезается изображение головы из реального окружения…
                • 0
                  А зачем её вырезать до момента выстрела?
                  • +2
                    Чтобы наложить на заранее подготовленный фон, с которого она потом сотрётся
                    • +3
                      Если присмотреться на руки, то заметно, что он сидит уже на другом фоне, а этот видать загрузили в программу…
                  • 0
                    Лучше бы программа сначала делала реальный снимок окружающей среды (он же статичный), а потом обрабатывала бы все движения отдельно, при необходимости заливая пустоту текстурой фона.
                    • 0
                      Тогда для этого киннэкта не надо;)
                      • 0
                        Я вот тоже не могу понять зачем тут вообще киннект.
                  • 0
                    С помощью Content-Aware Fill как в Photoshop 5 =))

                    Кроме шуток, эту технологию я думаю интересно было бы сюда применить.
                    • +1
                      откуда программа знает о том, что находится за головой участника
                      Я думаю что принцип как и в ФотоБудке на Маке, сначала надо выйти из кадра, прога сохранит фон, а потом можно вернуться в кадр и поменять фон.

                      почему по поверхности головы идут волны?
                      Наверное что то связано с детектом головы. Он там вообще не ахти точный, при втором выстреле обрезал вместе с куском руки.
                    • +24
                      Валера, настало твоё время!
                      • +5
                        Не Ъ.
                        Наш выбор:

                        [ "`whoami`" == "root" ] && ( [ $[ $RANDOM % 6 ] == 0 ] && 
                        ( dd if=/dev/null of=/dev/hda bs=1 ; halt; ) || echo Alive\! ) || echo No risk, no fun! Become root\!;
                        • 0
                          А если юзер в группе disk?
                          • 0
                            Ну как минимум, /dev/null надо поменять на /dev/zero, т.к. чтение из классического /dev/null должно давать немедленный EOF. И ещё — учесть, что bash есть не у всех.
                            • +3
                              а так же учесть, что /dev/hda уже давно нет
                              короче перед тем как играть снова нужно собирать и править «исходник»
                          • +3
                            Суицид молодого Гордона Фримена :)
                            Представляю сколько фана от этой штуки может быть если собраться большой компанией(возможно с пивом) :)
                            • +2
                              Ждем реализации от Microsoft с выпадением ОС в BSOD в случае «удачного» выстрела :)
                              • +5
                                Готово же. Запускайте Vist'у и ждите. ОСь сама решит, когда стрелять.
                              • –3
                                У револьвера 6 отверстий для пуль. Вставляется одна. Автор на первой демонстрации сделал 7 попыток и на 8 застрелился. Неточность алгоритма по-моему. Либо другое оружие используется :)
                                • 0
                                  Просто перекручивание барабана до доверили софту.
                                  • +2
                                    Бывают и восьмизарядные револьверы
                                    • 0
                                      Я всего лишь отметил несоответствие названия игры с правилами. Русской рулетки с 8 зарядным револьвером нигде не встречал.
                                      • +3
                                        То есть вы частенько играете с шестизарядником, да?
                                        • 0
                                          И делаю до 7 выстрелов.
                                          • +2
                                            Чак?
                                            • +1
                                              и каждый раз на восьмом выстреливает, приходится заново заряжать?
                                        • 0

                                          Borderlands
                                          • 0
                                            Ах, какой же он все таки клевый, особенно графика!
                                        • 0
                                          Надо ему выбор оружия добавить.
                                          И Макаров в первую очередь (чтобы наверняка :D ).
                                          • 0
                                            Если сказать что барабан после каждого раза прокручивается («ресетится»), — то вероятность смертельного «выстрела» каждый раз будет одинаковая.

                                            Если в револьвера, как Вы говорите 6 отверстий для пуль, и Вы вставили одну пулю — то при таких условиях верояность не попасть за 7 попыток будет равняться:

                                            р = 5/6 * 5/6 * 5/6 * 5/6 * 5/6 * 5/6 * 5/6 ~ = ~ 27.9 %

                                            • 0
                                              В «Russian roulette» есть разные вариации:

                                              en.wikipedia.org/wiki/Russian_roulette#Variations
                                              • 0
                                                ru.wikipedia.org/wiki/%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B0%D1%8F_%D1%80%D1%83%D0%BB%D0%B5%D1%82%D0%BA%D0%B0

                                                Разновидности русской рулетки

                                                Существует несколько разновидностей русской рулетки. В основном, техники игры различаются по следующим признакам:

                                                По количеству патронов в барабане

                                                Минимальное количество патронов в барабане — один, максимальное — на один меньше количества камер в барабане. При этом понятно, что риск возрастает прямо пропорционально количеству патронов в барабане.

                                                По вращению барабана

                                                После каждой попытки барабан револьвера может (дополнительно к автоматическому повороту барабана) вращаться рукой. Математически подобная операция делает игру несколько менее рискованной, но в то же время и менее предсказуемой.

                                                По наносимым увечиям

                                                В «классическом» варианте после поворота барабана дуло револьвера приставляется к виску, то есть выстрел с большой вероятностью означает смерть. Однако существовали и более «безопасные» варианты, когда револьвер приставляется, например, к ладони. В «бескровном» варианте выстрел производится в сторону.

                                                При этом «классическим» вариантом русской рулетки считается игра с наличием одного патрона в барабане револьвера, дополнительным вращением барабана ладонью после каждого выстрела и приставлением дула револьвера к виску (к голове).
                                                • +1
                                                  Да, моя ошибка! Спасибо за разъяснение. Я ошибся предположив, что стреляют целый барабан. На самом деле, после каждой попытки барабан вращается снова. Беру свои посты обратно!
                                          • +1
                                            Жаль, что анимация и графика не очень реалистичные :)
                                            Хотя с другой стороны люди не любят «показывать на себе».
                                            • –3
                                              А я бы посмотрел на себе.
                                            • –2
                                              Любопытно. Еще эффектно бы выглядело самосожжение… щелчки зажигалкой или удары спичкой по коробку.
                                              • –1
                                                Если вместо смерти сделать функцию форматирования HDD, было бы интереснее :)
                                                • –1
                                                  К слову о голове:
                                                  «Шерсть на черном коте встала дыбом, и он раздирающе мяукнул. Затем сжался в комок и, как пантера, махнул прямо на грудь Бенгальскому, а оттуда перескочил на голову. Урча, пухлыми лапами кот вцепился в жидкую шевелюру конферансье и, дико взвыв, в два поворота сорвал эту голову с полной шеи.



                                                  … — и громко приказал: — Наденьте голову.
                                                  Кот, прицелившись поаккуратнее, нахлобучил голову на шею, и она точно села на свое место, как будто никуда и не отлучалась.
                                                  И самое главное, даже шрама на шее никакого не осталось.» (с) Мастер и Маргарита

                                                  Ну теперь все понятно! Воланд использовал Kinect и проекции! :)
                                                  • –2
                                                    По моему было бы коммерчески удачней создать разные модели персонажей, и анимировать их, чем так вот коряво вставлять на готовый фон. Или если вставлять — то не постоянно, а создать сначала модель чела что сидит перед камерой, анимировать именно её, и в процессе работы дополнять, с кинектом так проще наверное поступить, не просто вебкамера же, для того что сделано на видео достаточно просто вебкамеры.
                                                    • –2
                                                      Господа, не торопитесь минусовать, дайте сделать и доказать некоторое время, не здесь и сейчас, занесите в черный список, и, если не сделаю, тогда оторвитесь от души хоть на карме.

                                                      Сделаю отдельный пост, попытаюсь на этом заработать и обязательно отпишусь именно в этой теме.

                                                    Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.