スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

プログラミング初心者4人が作った「オーラ診断」という作品

プロローグ

昨年度は、コムメディアデザイン(=CMD)という研究室に所属していました。卒業研究、のような卒業制作。の前期のお話です。

CMDではモノを使って作品を作ります。例えばWebカメラだったり、携帯電話だったり、自作タッチパネルだったり。得てして、それらを扱うアートとなると、多少のプログラミングが必要になってくるわけです。

しかしCMDに集まったメンバーは全員プログラミング初心者。授業以外で触った事はないレベル。そういうことなので、前期はグループで制作活動を行い、勉強することになりました。

そんなこんなしながら、前期にぼくのグループが作った作品が「オーラ診断」です。

「オーラ診断」の概要

「オーラ診断」は体験者のオーラを診断する作品です。自分のオーラの色や形を見て、脳内メーカーのように楽しんでもらうことが狙いです。

こんなかんじです。

オーラ  ぴろりんのオーラ

この作品のキモ

いわゆる脳内メーカー系サービスは、名前や誕生日を入力させる事で結果を算出しています。そうしないと、分析する手がかりがないので当然です。

しかし、オーラを診断するにあたって、体験者に“入力”をさせたくありませんでした。厳密には、入力した事を気がつかせない。ここがこの作品のキモになっています。

そのために使ったデバイスが、バランスWiiボードです。

バランスWiiボード

バランスWiiボード

NINTENDO Wii用の周辺機器であり、Wii FitでおなじみのバランスWiiボード。Wii Fitではバランスゲームや筋トレ、ヨガなどを楽しめます。

このバランスWiiボードは、乗った人の重心を求めることができます。具体的には、左右の足の前後、合計4カ所にかかる重さを得ており、それぞれを比べる事で重心を調べています。

このバランスWiiボードなら、体験者に意識させずに情報を入力させることができる!と思ったわけです。なぜなら、そこに立たせるだけで重心の情報を得る事ができちゃうんですから。

BBOSC

バランスWiiボードとMacを接続するためにBBOSCというソフトを利用させていただきました。

Download « 4nchor5 la6
http://456.im/wp/download/

立ち上げて、Wiiボードの電池ボックスの中にあるSyncボタンを押すだけ。びっくりするほど簡単に接続できました。

そうしてMacに送られてくる4カ所の体重の情報を、Processingに渡すわけです。このあたりは、Web Designing 3月号(2008年)の記事 [Beyond the Browser]を参考にさせていただきました。

大雑把に言えば、BBOSCが体重の情報をOSCという規格で送信し続けてくれるので、proecssing側ではoscP5というライブラリを使ってキャッチする、という感じです。

Processing

Processingはビジュアル表現が容易なオブジェクト指向のプログラミング言語、らしい。はっきり言って名前すら知りませんでした。

Processingでは体重の情報を元にオーラを描画していきます。

人の重心は絶えず動いているもの。それだとちょっと扱いにくいので、その人の平均的な重心位置を求めるために、数秒の判定時間を設けました。その間、体験者には画面に集中しておいてもらいます。

そうして見つかった重心の位置を使って、その人の基準となる1色を設定します。

基準の1色だけだと画面が寂しいので、重心の移動に合わせてある程度、色が変化するようにしました。この変化の幅も重心の位置から設定しています。より“その人だけのオーラ”が診断できるようになりました。

書いてないこともまだまだたくさんあるんですが、作品のおおまかな仕組みを紹介してみました。

おわりに

「オーラ診断」は、オープンキャンパス・学祭・卒展と3度展示しました。ありがたいことに、3度とも「オーラ診断」は好評をいただきまして、のべ1000枚近くのオーラを撮影しました。

オーラの画像

協力してくれたCMDのみんな!大好き!!!

電王隊:しらす・ぴろりん・つん・ふっちー

スポンサーサイト

theme : アート
genre : 学問・文化・芸術

processingの情報をActionScript3で受け取る方法

processingで得た数値をAS3で使いたかったので調べていると、この記事を見つけました。

workshop - processing -> Flashのデータ送受信
http://www.vector-scan.com/ws/2007/07/processing_flash.php

サンプルを見てみると確かにprocessingでマウスの位置を取得し、flashに送っています。

しかしActionScriptが3.0で書かれていなかったので、自分なりにAS3で書き直してみました。

processing側

import processing.net.*;

Server server ;
Client client ;

boolean connected ;

void setup() {
  size(200,200) ;
  server = new Server(this, 8080) ;
}

void draw() {
  background(255) ;
  line(0,mouseY,width,mouseY) ;
  line(mouseX,0,mouseX,height) ;
  updateSocket() ;
}

void updateSocket() {
  String xmlStr = "<?xml version='1.0'?><p2f>" ;
  xmlStr += "<mX>" + mouseX + "</mX>" ; // write data here
  xmlStr += "<mY>" + mouseY + "</mY>" ; // write data here
  xmlStr += "</p2f>\0" ;
  server.write(xmlStr) ;
}

void serverEvent(Server srv, Client clt) {
  println("connected") ;
  if (client != null) server.disconnect(client) ;
  client = clt ;  
}

ActionScript側

package {
	
	import flash.events.*;
	import flash.ui.*;
	import flash.display.*;
	import flash.net.*;
	import flash.text.*;
	import flash.media.*;
	import flash.xml.*;
	
	public class Main extends MovieClip{
		
		//XMLSocketx通信
		var hostName:String = "localhost";
		var port:uint = 8080;
		var socket:XMLSocket;
		
		//通信で受け取ったXML
		var resXML:XML;
		
		//サンプルで動く円
		var kivat:Shape;
		
		public function Main() {

			createCircle();
			
			socket = new XMLSocket();
			socket.addEventListener(DataEvent.DATA, onData);
			socket.connect(hostName, port);
			
		}
		
		private function onData(event:DataEvent):void {
			
			resXML = XML(event.data);
			//trace(resXML);
			
			//数値を取得
			//trace(resXML.mX[0]);
			//trace(resXML.mY[0]);
			
			kivat.x = resXML.mX[0];
			kivat.y = resXML.mY[0];
			
		}
		
		private function createCircle():void{
			
			kivat = new Shape();
			kivat.graphics.beginFill(0xff0000);
			kivat.graphics.lineStyle(0, 0xdddddd);
			kivat.graphics.drawCircle(5, 5, 5);
			kivat.graphics.endFill();
			addChild(kivat);
			
		}	
	}
}

processingを走らせた状態で、このActionScriptを実行すると情報のやりとりができていることを確認できました。processingのウインドウでマウスを動かすと、それに合わせてflash側の赤い円も動くと思います。

theme : プログラミング
genre : コンピュータ

processing + バランスWiiボード

作品イメージ

そろそろ中間発表です。
前期はこんな作品を作ってました。

バランスWiiボードをMacにつなげて
乗った人のオーラを表示しています。
ざっくり言えば、脳内メーカー系。

processingという言語で動いています。

詳しいことは今度ゆっくり書きたいと思います。

theme : デザイン
genre : 学問・文化・芸術

tag : Wii processing Mac

Webカメラで映した物をコントローラーにする「CamSpace」

Webカメラで色を認識して、ゲームのコントローラーとして使っているみたいです。



これやべええええって思い、メアドを登録しといたら
クローズドベータ版?っぽいのに招待されたみたいで、
このツールのシリアルを頂けました。
windows用だったので、近いうちに研究室で試してみようと思います。

CamSpace - any game, any webcam

theme : デザイン
genre : 学問・文化・芸術

RSS
  • 最近記事のRSS
最新記事
カテゴリ
月別アーカイブ
コンタクト

名前:
メール:
件名:
本文:

Ads
検索フォーム
プロフィール

gryng

gryng

MEやってます。twitter

Amazon
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。