9-volt/ghost_land

语言: JavaScript

git: https://github.com/9-volt/ghost_land

幽灵之地:投射在墙上的真人射击游戏
Ghost Land: Real life shooter projected on wall
README.md (中文)

幽灵之地

关于

真人射击游戏。游戏的目标是在他们到达房子之前拍摄尽可能多的鬼魂。

游戏场景投射在墙上,并用球射击。使用kinect跟踪球。 球与墙壁的碰撞点是射击。

Ghoster Land Gameplay

Ghoster Land Overview

视频在这里。

目标

该游戏的目的是改善手眼协调能力,并提供一种有趣的锻炼方式。

技术

挑战是使用现代技术的好处建立一个“活着”的游戏,例如:投影仪/投影仪Kinect Processing WebSockets * Phaser

要求

  • Kinect(第一代)
  • 处理2.x
  • SimpleOpenNi
  • websocketP5
  • blobscanner
  • 谷歌Chrome 45
  • Phaser 2.4.3

怎么运行的

  1. 在浏览器中打开网页并将其投影在墙上
  2. 运行处理草图
  3. 在打开的窗口中,单击投影图像的角。角落顺序是左上角,右上角,右下角,左下角
  4. 应该出现一个矩形。这意味着深度图像处理开始了
  5. 专注于浏览器(如果没有聚焦,Phaser会停止)。如果正在播放游戏音乐,则一切正常。
  6. 把球扔到墙上
  7. 玩的开心!

技术问题仍有待解决

  • 碰撞点并不完美。现在通过获取最远的检测点来计算它。更好的方法是计算球的轨迹并获得与墙的交点
  • 投影点与游戏矩形不完全匹配。您可以在视频(右下角)看到红色圆圈(Kinect检测到的碰撞点)和白色圆圈(游戏中的点)被移动。仿射变换应该更好地解决这个问题。

球队

  • 艺术总监 - @cip
  • 设计负责人 - @cip
  • CTO - @bumbu
  • 质量保证 - @leoşa
  • 研究开发团队 - @bumbu
  • 故事写作 - @cip
  • 作曲家 - @cip
  • 音响工程师 - @cip
  • 制作助理 - @bumbu,@ jud
  • 分期付款 - @bumbu
  • 高级图形设计师 - @cip
  • 少年图形设计师 - @bumbu
  • 物流经理 - @bumbu
  • On - @sip
  • 视频制作 - @cip
  • 摄影师 - @cip,@ bumbu
  • HR - @cip
  • 技术主管 - @bumbu
  • 自述作家 - @bumbu
  • 自述文稿共同作者 - @cip

伙伴

  • Antioffice
  • 大像素
  • 不美不.么
  • FAF
  • 摩尔多瓦技术大学
  • 最好

论文未在本项目工作期间发表

  • 将球扔到墙上的长期影响
  • 在黑暗的环境中玩一个明亮的游戏
  • 可怕的背景音乐在黑暗环境中播放明亮游戏时的短期效果
  • 使用Kinect计算空间中物体的轨迹
  • 将点坐标从梯形形状映射到矩形形状

时间表

48小时的努力。

资金

没有人。

本文使用googletrans自动翻译,仅供参考, 原文来自github.com

en_README.md

Ghost Land

About

Real life shooter game. The goal of the game is to shoot as many ghosts before they reach the house.

The game scene is projected on the wall, and a ball is used to shoot. The ball is tracked using a kinect.
The collision point of the ball with the wall is the shot.

Ghoster Land Gameplay

Ghoster Land Overview

Video here.

Aim

The aim of the game is to improve hand-eye coordination and provide a fun way to exercise.

Technologies

The challange was to build an "alive" game using the benefits of modern technologies like:
projector/beamer
Kinect
Processing
WebSockets
* Phaser

Requirements

  • Kinect (first generation)
  • Processing 2.x
  • SimpleOpenNi
  • websocketP5
  • blobscanner
  • Google Chrome 45
  • Phaser 2.4.3

How it works

  1. Open the web page in browser and project it on the wall
  2. Run the processing sketch
  3. In opened window click on the corners of projected image. Corners order is top-left, top-right, bottom-right, bottom-left
  4. A rectangle should appear. It means that depth image processing started
  5. Focus on browser (Phaser stops if it is not focused). If game music is playing then everything is ok.
  6. Throw the ball to the wall
  7. Have fun!

Technical problems that still have to be solved

  • Collision point is not perfect. Right now it is computed by taking the fartherst detected point. A better approach would be to compute ball trajectory and get the intersetion with the wall
  • Projected points are not perfectly matched with game rectangle. You can see in video (borrom-right corner) that red circle (collision point detected by Kinect) and white circle (point in game) are shifted. A affine transformation should solve this problem much better.

Team

  • Art director - @cip
  • Head of design - @cip
  • CTO - @bumbu
  • Quality Assurance - @leoșa
  • Research Development Team - @bumbu
  • Story Writing - @cip
  • Composer - @cip
  • Sound engineer - @cip
  • Production assistant - @bumbu, @cip
  • Installments - @bumbu
  • Senior Graphical Designer - @cip
  • Junior Graphical Designer - @bumbu
  • Logistics manager - @bumbu
  • PR - @cip
  • Video Production - @cip
  • Cameraman - @cip, @bumbu
  • HR - @cip
  • Technical Lead - @bumbu
  • Readme Writer - @bumbu
  • Readme Co-writer - @cip

Partners

Papers not published during the work on this project

  • Long term effects of throwing a ball to a wall
  • Playing a bright game in a dark environment
  • Short term effect of scary background music in a dark environment while playing a bright game
  • Computing the trajectory of an object in space using Kinect
  • Mapping points coordinates from trapezoidal shapes to rectangle shapes

Time table

48 hours of hard work.

Funding

Nobody.