How I Made Media Artworks with Ruby and Never Lost a Yen

50 %
50 %
Information about How I Made Media Artworks with Ruby and Never Lost a Yen

Published on June 21, 2007

Author: eto

Source: slideshare.net

私はいかに Ruby で メディア・アート作品 をつくり,しかも一円 も損をしなかったか メディア・アーティスト , 独立行政法人 産業技術総合研究所 , 東京大学大学院 情報理工学研究科 江渡浩一郎 How I Made Media Artworks with Ruby and Never Lost a Yen Kouichirou Eto, AIST, u-tokyo, Media Artist, Rubyist.

メディア・アーティスト ,

独立行政法人 産業技術総合研究所 ,

東京大学大学院 情報理工学研究科

アジェンダ メディア・アート作品の制作に Ruby を活用 Perl + Java による開発の時代 Ruby による開発, 2 つの実例 Ruby を用いた教育の実践 制作した作品の実演

メディア・アート作品の制作に Ruby を活用

Perl + Java による開発の時代

Ruby による開発, 2 つの実例

Ruby を用いた教育の実践

制作した作品の実演

タイトルの説明 「私はいかにハリウッドで 100 本の映画をつくり,しかも 10 セントも損をしなかったか」ロジャー・コーマン自伝 タイトルはこの本からのパクリです

「私はいかにハリウッドで 100 本の映画をつくり,しかも 10 セントも損をしなかったか」ロジャー・コーマン自伝

タイトルはこの本からのパクリです

WebHopper (1996) Web ブラウジングの軌跡を世界地図上で視覚化

Web ブラウジングの軌跡を世界地図上で視覚化

Perl バックエンド + Java アプレット サーバ側は Perl ,クライアントは Java で記述 WIDE プロジェクトの海外回線を tcpdump した tcpdump -> ip2fqdn -> fqdn2zip -> zip2latlong ドメイン名の逆引きを非同期化する必要があった ドメイン名から緯度経度への情報は mSQL に保管 Perl5 で DBI+DBD を利用

サーバ側は Perl ,クライアントは Java で記述

WIDE プロジェクトの海外回線を tcpdump した

tcpdump -> ip2fqdn -> fqdn2zip -> zip2latlong

ドメイン名の逆引きを非同期化する必要があった

ドメイン名から緯度経度への情報は mSQL に保管

Perl5 で DBI+DBD を利用

Perl の問題点 サーバ側の処理もだんだんと複雑化してくる Perl は Thread が無いので非同期処理が面倒 Perl でこみいったプログラムを書くのはもう限界 Perl でオブジェクト指向を学ぶのは不可能

サーバ側の処理もだんだんと複雑化してくる

Perl は Thread が無いので非同期処理が面倒

Perl でこみいったプログラムを書くのはもう限界

Perl でオブジェクト指向を学ぶのは不可能

Java の問題点 Java applet は制約が大きく表現力が足りない OpenGL を使いたい場合はどうすればいいの ? Java の世界は閉じてて拡張するのが難しい サーバサイド Java としても当時はまだ未成熟

Java applet は制約が大きく表現力が足りない

OpenGL を使いたい場合はどうすればいいの ?

Java の世界は閉じてて拡張するのが難しい

サーバサイド Java としても当時はまだ未成熟

二つの異なるプログラミングモデル 二つの異なるプログラミング言語 つまり,二つの異なるプログラミングモデル どちらも細かいところまで知っておく必要がある どちらもバッドノウハウの固まりである 両者の併用は手間が二倍になる

二つの異なるプログラミング言語

つまり,二つの異なるプログラミングモデル

どちらも細かいところまで知っておく必要がある

どちらもバッドノウハウの固まりである

両者の併用は手間が二倍になる

理想のプログラミング言語を求めて 1999 年,理想のプログラミング言語を探し始める Scheme, JPython, Python, Ruby とにかく使ってみて考えた 最後に生き残ったのは Ruby だった 何が決め手だったのか思い出すのは難しい 日本語,英語の文化圏の違い ? コミュニティが決め手だったように感じる 2001 年, Ruby を本番へ投入し始めた

1999 年,理想のプログラミング言語を探し始める

Scheme, JPython, Python, Ruby

とにかく使ってみて考えた

最後に生き残ったのは Ruby だった

何が決め手だったのか思い出すのは難しい

日本語,英語の文化圏の違い ?

コミュニティが決め手だったように感じる

2001 年, Ruby を本番へ投入し始めた

お台場 日本科学未来館における常設展示物 転がる玉でインターネットの仕組みを表現 インターネット物理モデル (2001)

お台場 日本科学未来館における常設展示物

転がる玉でインターネットの仕組みを表現

パケットを作って送ってみよう 送信機 パケットを作る 表示器 中身を表示する ルータ ルーティングする

インターネット物理モデルの実装 (2001) 実装に使えた期 間は 1 週間程度だった I2C バスで全体を接続, 1 台の PC で全体を制御 DeVaSys 社 USB I2C/IO を使って PC から接続 VB と VC のサンプルコードしか手元に無い 少しでも間違った信号を送ると全体がハング Ruby+Win32API を使って全体を制御した require "win32api" 最強伝説の誕生

実装に使えた期 間は 1 週間程度だった

I2C バスで全体を接続, 1 台の PC で全体を制御

DeVaSys 社 USB I2C/IO を使って PC から接続

VB と VC のサンプルコードしか手元に無い

少しでも間違った信号を送ると全体がハング

Ruby+Win32API を使って全体を制御した

require "win32api" 最強伝説の誕生

くまうた (2003) くまに演歌を 教えます 演歌を自動生成 SCEI , 2003

くまに演歌を 教えます

演歌を自動生成

SCEI , 2003

「くまうた」はどんなゲームか 2003 年に SCEI から発売した PS2 用のゲーム あなたは引退した元演歌歌手です 宇宙からくまがやってきて,弟子入りします あなたはくまに 演歌の心を教えます くまを立派な演歌歌手 に育てるのが目標です つまり一種の育てゲー

2003 年に SCEI から発売した PS2 用のゲーム

あなたは引退した元演歌歌手です

宇宙からくまがやってきて,弟子入りします

あなたはくまに 演歌の心を教えます

くまを立派な演歌歌手 に育てるのが目標です

つまり一種の育てゲー

どのようにゲームが進んでいくか くまはあなたの家に居候しています くまは勝手に作詩してきます ( 自動作詩 ) 気にいらない個所を指摘します くまはその個所を直してきます 良い歌詞ができるまでそれを繰り返します くまに新しい言葉を教えることもできます 歌詞が完成したらくまが歌います 曲は勝手にくまが作曲します ( 自動作曲 )

くまはあなたの家に居候しています

くまは勝手に作詩してきます ( 自動作詩 )

気にいらない個所を指摘します

くまはその個所を直してきます

良い歌詞ができるまでそれを繰り返します

くまに新しい言葉を教えることもできます

歌詞が完成したらくまが歌います

曲は勝手にくまが作曲します ( 自動作曲 )

くまうた自動作曲部分の実装 (2001) 私の担当 : 演歌の自動作曲の部分 自動作詩された歌詞に対応したメロディーを生成 3444 などの音韻数に対して音符を合わせる メロディーに対して背景をつける 最後に「おかず」をつけて出来上がり Ruby で実装 -> Sony 社員が C++ に変換 直接 PS2 で Ruby を動かしたかったが無理だった

私の担当 : 演歌の自動作曲の部分

自動作詩された歌詞に対応したメロディーを生成

3444 などの音韻数に対して音符を合わせる

メロディーに対して背景をつける

最後に「おかず」をつけて出来上がり

Ruby で実装 -> Sony 社員が C++ に変換

直接 PS2 で Ruby を動かしたかったが無理だった

sgl: simple generic library require 'sgl' window 100,100 # 100x100 のウィンドウ生成 background 100,100,0 # 背景に黄色を指定 color 0,0,100 # 描画色に青を指定 rect 20,20,80,80 # 四角を描く wait

インタラ クティブ な表現 四隅から カーソルへ 線を引く require 'sgl' def setup window -200,-200,200,200 end def display x = mouseX y = mouseY line -200, -200, x, y line 200, -200, x, y line -200, 200, x, y line 200, 200, x, y end mainloop

四隅から カーソルへ 線を引く

美大生のためのプログラミング環境 美大でのプログラミング教育のために作成した ex. 多摩美情報デザイン学科 , 芸大先端芸術表現科 動的なグラフィックを簡単に作れる Ruby/SDL + OpenGL のラッパとして実装 simple graphics library -> simple generic library

美大でのプログラミング教育のために作成した

ex. 多摩美情報デザイン学科 , 芸大先端芸術表現科

動的なグラフィックを簡単に作れる

Ruby/SDL + OpenGL のラッパとして実装

simple graphics library -> simple generic library

自分自身の作品制作の基盤として インタラクティブなグラフィックスの実験 百本の線がテーマ 動きに応じて音を再生

インタラクティブなグラフィックスの実験

百本の線がテーマ

動きに応じて音を再生

実演

Thank you Special thanks to: Ruby! Ruby/SDL and Ruby/OpenGL Ruby/Win32API and bass.dll rubymidi and VisualuRuby

Special thanks to:

Ruby!

Ruby/SDL and Ruby/OpenGL

Ruby/Win32API and bass.dll

rubymidi and VisualuRuby

Add a comment

Related presentations

Related pages

Artfinder | Discover and Buy Original Art Online, Shop ...

... Win an Artwork a Day! ... Original mixed media on crumpled paper, Dimensions 34 by 24 inch, ... Artfinder; Made with in London ...
Read more

Lauren Child - Wikipedia, the free encyclopedia

Child introduced Charlie and Lola in 2000 with I will not ever Never eat a tomato and ... media including magazine ... Ruby Redfort (Lauren Child is ...
Read more

WikiArt - WikiPaintings.org - the encyclopedia of painting

Featured artwork. The Creation of the World. ... Leger was never quite happy with his designs, ... WikiArt (WikiPaintings) on ...
Read more

Artwork | Houzz

Artwork; Paintings; Mixed Media Art; Photographs; ... Lost Art Salon; ... Sculptures made from metal or glass can also have a modern tone.
Read more

Learn More | Chihuly

... Dale Chihuly was introduced to glass ... in the early 1960s that I made my first artistic use of ... and transporting the artwork.
Read more

How to Make a Certificate of Authenticity for Artwork ...

If you are here looking for free certificate of authenticity ... but as I never really looked into selling my artwork before these issues have never ...
Read more

Amazon.com: Art

Find artwork from art galleries all the world featuring paintings, ... mixed media, and prints in the Amazon Art store. ... ACX Audiobook Publishing Made Easy:
Read more

Embedding Album Art in MP3 Files | Richard Farrar

Windows Media Player embeds album artwork as 200 x 200 ... To be honest I have never used this Mp3tag but ... Embedding Album Art in MP3 Files ...
Read more

eHow | How to - Discover the expert in you! | eHow

Learn how to do just about everything at eHow. Find expert advice along with How To videos and articles, ... Go ahead and follow us on social media. ...
Read more

Creative Uncut - Video Game Art & Pictures

Creative Uncut welcomes you to add us to ... Artwork updates are made a few times a ... CU offers 5 ways to follow so your feed will never lack art ...
Read more