2007年05月27日
2007/05/19 SOURレコ発ライブ+PV設置
応援してるバンド、SOURのレコ発ライブがあったので行ってきました。

@AOYAMA月見ル君想フ
初めて行ったけど、すごく雰囲気が良いハコでした。
このところSLすごいSLすごいと発見の連続ばかりだけれども、こう、音楽で内臓を揺らされる体験ってのはさすがにRLならではだなーと感じて、RLすごい!と変な感心の仕方をしてしまいました…。

で。
PVも完成したのでメグロテレビにセットしてみました。
影絵ネタなんだけど、タイミング的にbjorkとかVolkswagenとかと被っちゃっててアレーっていうか…。
ライブのほうは1,2番手がecho、野愛の輪という女性ボーカルバンド。
3番手がクラムボンのミトさんのmicromicrophone。
「一人かぁ?」「一人だ…」
ちょうシブい。
ラストにSOURが登場して
アンコール代わりに上記PVが流れました。

現物もらった。
おつかれさまでしたー。
ライブの様子

@AOYAMA月見ル君想フ
初めて行ったけど、すごく雰囲気が良いハコでした。
このところSLすごいSLすごいと発見の連続ばかりだけれども、こう、音楽で内臓を揺らされる体験ってのはさすがにRLならではだなーと感じて、RLすごい!と変な感心の仕方をしてしまいました…。

で。
PVも完成したのでメグロテレビにセットしてみました。
影絵ネタなんだけど、タイミング的にbjorkとかVolkswagenとかと被っちゃっててアレーっていうか…。
ライブのほうは1,2番手がecho、野愛の輪という女性ボーカルバンド。
3番手がクラムボンのミトさんのmicromicrophone。
「一人かぁ?」「一人だ…」
ちょうシブい。
ラストにSOURが登場して
アンコール代わりに上記PVが流れました。

現物もらった。
おつかれさまでしたー。
ライブの様子
Posted by みやおか at 12:01
│Comments(4)
2007年05月27日
2007/05/19 ビジネス&クリエイターフェア

ビジネス&クリエイターフェアというのが開催中とのことで行ってきました。
http://secondlifefan.jp/2007/05/post_3.html

入ってすぐのところにはAsimon JacksさんとHidenori Glushenkoさんのお二人によるINNXのブース。
http://asimon.slmame.com/
http://lol.slmame.com/
柱がアニメーションテクスチャ上手く使っててかっこいいー。

遠隔ボタンで色が変えられる椅子。
さりげなく置いてある外箱も凝っていて、ダンボールマニア垂涎の出来。

こっちのボタンでは…

ブース自体の色が変わっちゃいます。
おもしろー。
ロゴの字も抜きにしてあるのがうまいなー。
さて。
今日足を運ぶきっかけになったのはこちら、、、

「あの」家!!

外から覗いてるのは…

トチロー!

家の中に入ったところ。
いろいろネタが。ネタが。
このへん、虹裏あたりのアレなんでしょうか?

「おきのどくですがぼうけんのしょ1ばんはきえてしまいました」
いやー、半挿しだからね。

ボタンはやっぱり四角ボタン!

場違い。って掛け軸が全てを物語ってるというか。
ビジネスは100%関係ないですね。すごい。

で。
こちらはその出展者の方の家。shibuyakuに建築中のニューMAHO堂です。
以前はharajukuにあったのですが、最近移転したそうなので覗きに行ってみました。
どれみは見てないのでネタを知らないのが惜しいけど、普通の家として見ても良い出来です。
そしたらちょうどオーナーのAikoさんが現れたのでちょっとご挨拶。
http://sweethouse.slmame.com/
土地も増えてこれからのんびり作っていくそう。
期待してます。
Posted by みやおか at 11:03
│Comments(0)
2007年05月27日
2007/05/27 タイニーの世界展+布団試作
以前から考えていたこととして、SLの中で寝たいなーという気持ちがあったので布団を作ってみました。

これはアバターに装着するオブジェクトとして作ってあって、ふだんは透明化されているのですが、しゃがみ時や落下時に自動的に布団を表示して寝ます。
Cキー一発で気軽に出せて、歩き出せば解除になるので、なかなか使いやすいかなーと。

で。
特に、ひとんちで寝れるのがすごくいい!
どこでもじぶんち感覚。

大自然の中でも!

はい。
そんなのを作ってるうちに時間になったので、タイニーアバターの世界展に行ってきました。
反転パンダは相変わらずかわいすぎてズルい。

一点一点ライトアップされてしっかりした展示会ムード。

この消火器がとんでもないことに…

途中でMadiさんと(ブログの女王)Yoshizakiさんに会って、できたての布団を渡してみた。
展示そっちのけで通路で寝てしまう不届きな僕ら。すみませんー。

タイニーぞろぞろ。(+2次元人)
異世界!

あれ、、
jetsさん…。なんか…キモ

少年ジェッツ。
これはなかなかいいかも。

Tiny用に調整した布団もその場で作ってみて、配布してみました。
集団お昼寝。
なにはともあれ、人いっぱい夢いっぱい大盛況のタイニー展でした、
いやー…、しかし正直どうにも布団づくりに夢中になってしまっていたので、まだしっかり見れてないかも。。また見に行きます。
とりあえずは、スタッフの皆さん、おつかれさまでした。
布団は好評だったのであとで売ってみようと思います。
高級羽毛布団なので70万リンデンドルです!!

これはアバターに装着するオブジェクトとして作ってあって、ふだんは透明化されているのですが、しゃがみ時や落下時に自動的に布団を表示して寝ます。
Cキー一発で気軽に出せて、歩き出せば解除になるので、なかなか使いやすいかなーと。

で。
特に、ひとんちで寝れるのがすごくいい!
どこでもじぶんち感覚。

大自然の中でも!

はい。
そんなのを作ってるうちに時間になったので、タイニーアバターの世界展に行ってきました。
反転パンダは相変わらずかわいすぎてズルい。

一点一点ライトアップされてしっかりした展示会ムード。

この消火器がとんでもないことに…

途中でMadiさんと(ブログの女王)Yoshizakiさんに会って、できたての布団を渡してみた。
展示そっちのけで通路で寝てしまう不届きな僕ら。すみませんー。

タイニーぞろぞろ。(+2次元人)
異世界!

あれ、、
jetsさん…。なんか…キモ

少年ジェッツ。
これはなかなかいいかも。

Tiny用に調整した布団もその場で作ってみて、配布してみました。
集団お昼寝。
なにはともあれ、人いっぱい夢いっぱい大盛況のタイニー展でした、
いやー…、しかし正直どうにも布団づくりに夢中になってしまっていたので、まだしっかり見れてないかも。。また見に行きます。
とりあえずは、スタッフの皆さん、おつかれさまでした。
布団は好評だったのであとで売ってみようと思います。
高級羽毛布団なので70万リンデンドルです!!
Posted by みやおか at 04:28
│Comments(6)
2007年05月21日
2007/05/21 エイムズの部屋
錯視の実験。


白黒ウサギはおんなじ大きさ。
エイムズの部屋(Ames room)という有名な錯視です。
SLでぜひやろうやろうと思っていたけど忘れてたので、ちょっとやってみました。
いやー、海外SIM探せばごろごろありそうだけど…。

壁の形状を歪めるだけで済むかと思ったけど、テクスチャが綺麗に反映されないみたい。
ちゃんとコレ用に歪めたテクスチャが必要だなー。
カメラコントロールを固定にして、歩き回れるといい感じかな。
あとでちゃんと作ろう。
参考:
http://en.wikipedia.org/wiki/Ames_room
http://psylux.psych.tu-dresden.de/i1/kaw/diverses%20Material/www.illusionworks.com/html/ames_room.html
http://www.errolmorris.com/commercials/quaker_ames.html


白黒ウサギはおんなじ大きさ。
エイムズの部屋(Ames room)という有名な錯視です。
SLでぜひやろうやろうと思っていたけど忘れてたので、ちょっとやってみました。
いやー、海外SIM探せばごろごろありそうだけど…。

壁の形状を歪めるだけで済むかと思ったけど、テクスチャが綺麗に反映されないみたい。
ちゃんとコレ用に歪めたテクスチャが必要だなー。
カメラコントロールを固定にして、歩き回れるといい感じかな。
あとでちゃんと作ろう。
参考:
http://en.wikipedia.org/wiki/Ames_room
http://psylux.psych.tu-dresden.de/i1/kaw/diverses%20Material/www.illusionworks.com/html/ames_room.html
http://www.errolmorris.com/commercials/quaker_ames.html
Posted by みやおか at 23:08
│Comments(0)
2007年05月19日
2007/05/18 地下開発
ちょっと気が向いてメグロテレビの地下掘ったりしてみました。

土管。
うん、まあ、分かりやすいようにね…。

で。
Shop SALAのよっしーさんところで、水草と金魚を買ってきました。
http://akira.slmame.com/e3187.html
これやりたかったんだー。
なごむなあ。
地下はけっこう深くまで掘れるので、なかなか広い空間です。
金魚も水草も普通に見えて、実はかなり大きくしてあったり…。
(※追記)

金魚の向きが逆だったみたいなので修正。
=Shop SALAでのショット=



土管。
うん、まあ、分かりやすいようにね…。

で。
Shop SALAのよっしーさんところで、水草と金魚を買ってきました。
http://akira.slmame.com/e3187.html
これやりたかったんだー。
なごむなあ。
地下はけっこう深くまで掘れるので、なかなか広い空間です。
金魚も水草も普通に見えて、実はかなり大きくしてあったり…。
(※追記)

金魚の向きが逆だったみたいなので修正。
=Shop SALAでのショット=



Posted by みやおか at 17:29
│Comments(6)
2007年05月19日
2007/05/17 Hello, real world!
KNN神田さんのbarTubeでのSL内動画中継があるというので行ってみた。

テレビモニタ風の画面の中に渋谷barTubeの生中継動画が。
barTubeのモニタにはSLが映し出されていて合わせ鏡というか。

遅延がけっこう大きくていまいちピンと来なかったけど、SL外部とのインタラクションが進んでいくと嬉しいなあ。
そんなbarTubeですが。
SL以前にケチャットさんというライブカメラが設置されていてそちらのインタラクションの試みもなかなか面白いです。

http://ketchup.jp/ketchat/
Heinzのケチャップ型のライブカメラになってて、PC側からはケチャットさんから見たbar内の映像と音声が、barの中からはチャットの文字だけが表示される仕組み。
この「文字 対 音声」という不平等なコミュニケーションがとても好き。
工夫としては、
・チャットの文章はひらがなしか通らないこと
・ケチャットさんが喋っているという見せ方であること
barのお客はお酒も入っているので話すことにだいぶ抵抗が減るし、ケチャットさんというマイルドなキャラに包まれているのでカメラ相手ということをあんまり意識させなくて、ほんと良くできてるなーと感心してます。
以前行ったJetsさんのライブもそういう感触が近いなーと思っていて、Jetsさんが音声を独占していて、観客はチャットだけというところが自分はなんとなく好きです。うーん、実況感覚なのかも。
ケチャットさんの制作はイマジナティブの深澤さんと水藤さん。
http://www.imaginative.co.jp/
ビデオ編集にはウチのTori Teatimeも関わってます。

テレビモニタ風の画面の中に渋谷barTubeの生中継動画が。
barTubeのモニタにはSLが映し出されていて合わせ鏡というか。

遅延がけっこう大きくていまいちピンと来なかったけど、SL外部とのインタラクションが進んでいくと嬉しいなあ。
そんなbarTubeですが。
SL以前にケチャットさんというライブカメラが設置されていてそちらのインタラクションの試みもなかなか面白いです。

http://ketchup.jp/ketchat/
Heinzのケチャップ型のライブカメラになってて、PC側からはケチャットさんから見たbar内の映像と音声が、barの中からはチャットの文字だけが表示される仕組み。
この「文字 対 音声」という不平等なコミュニケーションがとても好き。
工夫としては、
・チャットの文章はひらがなしか通らないこと
・ケチャットさんが喋っているという見せ方であること
barのお客はお酒も入っているので話すことにだいぶ抵抗が減るし、ケチャットさんというマイルドなキャラに包まれているのでカメラ相手ということをあんまり意識させなくて、ほんと良くできてるなーと感心してます。
以前行ったJetsさんのライブもそういう感触が近いなーと思っていて、Jetsさんが音声を独占していて、観客はチャットだけというところが自分はなんとなく好きです。うーん、実況感覚なのかも。
ケチャットさんの制作はイマジナティブの深澤さんと水藤さん。
http://www.imaginative.co.jp/
ビデオ編集にはウチのTori Teatimeも関わってます。
Posted by みやおか at 17:17
│Comments(0)
2007年05月19日
2007/05/14 ナイトクレイバー宮岡
麻雀卓テストしてるというので行ってみた。
Kandaだったかな?

うわーすごい。
人居なくて実際に進行はできなかったけど。
なんていうか、HUDつけたときの画ヅラに感心しちゃうなー。
もうSLじゃなくてすっかり麻雀ゲームでしかなくなっちゃって、既存のSLが背景化するこの感じ。このスクリーンショット。
別の言い方すれば、格ゲーの背景のキャラが全部アバターというか…。
うーん。なんだ。
メインだったものを背景として使うのはものすごいリッチだなーというか。
あと、麻雀とかこういうゲームだと背景が重要なのよね。
5人中、1人が休憩しててマンガ読んでるとか。買い出し行ったりとか。
ざわ・・・ざわ・・・言ったりとか。
まあ観客要素ってところだろうけど、特に観客未満、ってのも含めた背景かな。
うーん。
まあ、なんだろね。
あと具体的な要素としてはストリート麻雀感かな。
むかし稲光伸二が描いてた七対子だけで成立させるすごい麻雀マンガがあったけど。あのストリート感はバカっぽくて好きだったなー。
Kandaだったかな?

うわーすごい。
人居なくて実際に進行はできなかったけど。
なんていうか、HUDつけたときの画ヅラに感心しちゃうなー。
もうSLじゃなくてすっかり麻雀ゲームでしかなくなっちゃって、既存のSLが背景化するこの感じ。このスクリーンショット。
別の言い方すれば、格ゲーの背景のキャラが全部アバターというか…。
うーん。なんだ。
メインだったものを背景として使うのはものすごいリッチだなーというか。
あと、麻雀とかこういうゲームだと背景が重要なのよね。
5人中、1人が休憩しててマンガ読んでるとか。買い出し行ったりとか。
ざわ・・・ざわ・・・言ったりとか。
まあ観客要素ってところだろうけど、特に観客未満、ってのも含めた背景かな。
うーん。
まあ、なんだろね。
あと具体的な要素としてはストリート麻雀感かな。
むかし稲光伸二が描いてた七対子だけで成立させるすごい麻雀マンガがあったけど。あのストリート感はバカっぽくて好きだったなー。

Posted by みやおか at 16:46
│Comments(1)
2007年05月19日
2007/05/13 kabukiパーティ
シリアスギグルのKirinさんから
「これからkabukiでパーティやるんで来ませんか?」
とお誘い。
おー。kabukiはまだちゃんと見てないな。行こう行こう。
けど、なんのパーティ?

戦略的撤退記念祝賀会!
えー
そうか。なるほど、なるほどー。
よし。
明日のために、今日は飲もう!(下戸だけど…)

エレベーターを二つ乗り継いで高空のスカイラウンジへ。
あ、Tinyな人たちが…!

KUROBORO WORKSの御三方。
NobunagaさんのBlog見てて以前からすごいファンだったので、オンラインだけどオフ会気分というか…。いやー、緊張緊張。
特に話すこともなく、じっと観察しました。

そしてMadiさん
「俺が居てスイマセン」
「自虐は疲れるだろう」
Kirinさんのツッコミも手馴れたものですね。いいもの見ました。
こちらも特に話すこともなく、じっと観察しました。


動揺のあまり酒とパフェを持て余す。
いやー、人数多い場ってRL同様になかなかアレね。
トークがどうにも不得手なので、そこは第二の人生でも変わらないなあと。

で。
パーティモードから、ステノさんを交えてのちょっとシリアスモードに。
今回の撤退に至る顛末について、スライドを交えながらおはなし。おーSLってこういうの便利かも。
今やってる『電脳コイル』とかもそうだけど、空中ディスプレイが使える未来がもうここに来てるんだなーとか。ちょっとSF的に感心したり。
そしてまあ、フランス出店からそこでのやりとり、和解に至るまで一通りふり返ってくれました。
うん。うん。
なるほど。
(詳しくはお二方のBlogを見ればいい)
やっぱりこういうのは単に成功とか失敗とかじゃなくて、SLが無かったら全く生まれなかったコミュニケーションなのだから、そういう点で得るものが大きいなーと思いました。

はいはい。
シリアス先生のサイン会だよー
「これからkabukiでパーティやるんで来ませんか?」
とお誘い。
おー。kabukiはまだちゃんと見てないな。行こう行こう。
けど、なんのパーティ?

戦略的撤退記念祝賀会!
えー
そうか。なるほど、なるほどー。
よし。
明日のために、今日は飲もう!(下戸だけど…)

エレベーターを二つ乗り継いで高空のスカイラウンジへ。
あ、Tinyな人たちが…!

KUROBORO WORKSの御三方。
NobunagaさんのBlog見てて以前からすごいファンだったので、オンラインだけどオフ会気分というか…。いやー、緊張緊張。
特に話すこともなく、じっと観察しました。

そしてMadiさん
「俺が居てスイマセン」
「自虐は疲れるだろう」
Kirinさんのツッコミも手馴れたものですね。いいもの見ました。
こちらも特に話すこともなく、じっと観察しました。


動揺のあまり酒とパフェを持て余す。
いやー、人数多い場ってRL同様になかなかアレね。
トークがどうにも不得手なので、そこは第二の人生でも変わらないなあと。

で。
パーティモードから、ステノさんを交えてのちょっとシリアスモードに。
今回の撤退に至る顛末について、スライドを交えながらおはなし。おーSLってこういうの便利かも。
今やってる『電脳コイル』とかもそうだけど、空中ディスプレイが使える未来がもうここに来てるんだなーとか。ちょっとSF的に感心したり。
そしてまあ、フランス出店からそこでのやりとり、和解に至るまで一通りふり返ってくれました。
うん。うん。
なるほど。
(詳しくはお二方のBlogを見ればいい)
やっぱりこういうのは単に成功とか失敗とかじゃなくて、SLが無かったら全く生まれなかったコミュニケーションなのだから、そういう点で得るものが大きいなーと思いました。

はいはい。
シリアス先生のサイン会だよー
Posted by みやおか at 16:19
│Comments(0)
2007年05月13日
2007/05/13 マウスイベント試作(2)
作成中のマウスイベントモジュール。
harayokiさんの作りにならって、
MessageLinkを使ってまとめてみました。
■イベント通知側
■イベント受け手側サンプル
・定義したイベント
・mouseUp
・mouseDown
・mouseHeld(一定時間長押しで発生)
・singleClick
・doubleClick
・tripleClick(3回以上連続クリックで発生)
・いちおう標準でトリプルクリックまで定義してみました。
・リンク全体に対して、イベント名と、touchされているlinknumber、それとtouchしている人のkeyが通知されます。
・あと、マルチクリックイベントの判定とは別に単純なマウスアップ・ダウンも通知するようにしてみた。ユーザーへのフィードバックとしてのボタン表示ハイライトとか用に。
・今回のマウスイベントは処理の都合から1ユーザーのみの排他処理としているけど、たとえば長押し途中でその人が落ちたりするとmouseUpが通知されなくてholdされたままだったりするので対処が必要。touchイベントで連続押しを判定するか、一定時間後に強制リリースかなあ。

(各種イベントの確認。中段がハイライト中)
harayokiさんの作りにならって、
MessageLinkを使ってまとめてみました。
■イベント通知側
//MouseEventGenerator
float MOUSE_DOWN_TIMER = 0.8;
float MOUSE_UP_TIMER = 0.25;
integer NO_SELECT = -5;
integer iTouchedLinkNum;
integer iClickCount;
integer bOnPress;
key kToucher;
//mouse events
MouseDown()
{
llMessageLinked(LINK_SET, iTouchedLinkNum, "miyaoka.event.mouseDown", kToucher);
}
MouseUp()
{
llMessageLinked(LINK_SET, iTouchedLinkNum, "miyaoka.event.mouseUp", kToucher);
}
SingleClick()
{
llMessageLinked(LINK_SET, iTouchedLinkNum, "miyaoka.event.singleClick", kToucher);
}
DoubleClick()
{
llMessageLinked(LINK_SET, iTouchedLinkNum, "miyaoka.event.doubleClick", kToucher);
}
TripleClick()
{
llMessageLinked(LINK_SET, iTouchedLinkNum, "miyaoka.event.tripleClick", kToucher);
}
MouseHeld()
{
llMessageLinked(LINK_SET, iTouchedLinkNum, "miyaoka.event.mouseHeld", kToucher);
}
Init(){
iTouchedLinkNum = NO_SELECT;
iClickCount = 0;
bOnPress = FALSE;
kToucher = NULL_KEY;
}
default
{
state_entry()
{
Init();
}
touch_start(integer detected)
{
//set link num
integer num = llDetectedLinkNumber(0);
if(iTouchedLinkNum != num){
iTouchedLinkNum = num;
iClickCount = 0;
}
//set toucher key
key toucher = llDetectedKey(0);
if(NULL_KEY == kToucher){
//first toucher
kToucher = toucher;
iClickCount = 0;
} else if(toucher == kToucher){
//same toucher
} else{
//another toucher
return;
}
//raise mouseDown event
MouseDown();
//mouseDown start
bOnPress = TRUE;
llSetTimerEvent(MOUSE_DOWN_TIMER);
}
touch_end(integer detected)
{
//is same toucher?
if(llDetectedKey(0) != kToucher) return;
//raise mouseUp event
MouseUp();
//after mouseHeld event?
if(!bOnPress) {
Init();
return;
}
//add click
iClickCount += 1;
//mouseUp start
bOnPress = FALSE;
llSetTimerEvent(MOUSE_UP_TIMER);
}
timer()
{
llSetTimerEvent(0);
if(bOnPress){
MouseHeld();
//release mousePress
bOnPress = FALSE;
}
else if(1 == iClickCount){
SingleClick();
Init();
}
else if(2 == iClickCount){
DoubleClick();
Init();
}
else if(2 < iClickCount){
TripleClick();
Init();
}
}
}
■イベント受け手側サンプル
default {
link_message(integer sender, integer num, string message, key id)
{
if (message == "miyaoka.event.mouseDown")
{
HighlightColor(num);
llOwnerSay("mouseDown:" + (string)num);
}
else if (message == "miyaoka.event.mouseUp")
{
ResetColor(num);
llOwnerSay("mouseUp:" + (string)num);
}
else if (message == "miyaoka.event.mouseHeld")
{
// ResetColor(num);
llOwnerSay("mouseHeld:" + (string)num);
}
else if (message == "miyaoka.event.singleClick")
{
ResetColor(num);
llOwnerSay("singleClick:" + (string)num);
}
else if (message == "miyaoka.event.doubleClick")
{
ResetColor(num);
llOwnerSay("doubleClick:" + (string)num);
}
else if (message == "miyaoka.event.tripleClick")
{
ResetColor(num);
llOwnerSay("tripleClick:" + (string)num);
}
}
}
・定義したイベント
・mouseUp
・mouseDown
・mouseHeld(一定時間長押しで発生)
・singleClick
・doubleClick
・tripleClick(3回以上連続クリックで発生)
・いちおう標準でトリプルクリックまで定義してみました。
・リンク全体に対して、イベント名と、touchされているlinknumber、それとtouchしている人のkeyが通知されます。
・あと、マルチクリックイベントの判定とは別に単純なマウスアップ・ダウンも通知するようにしてみた。ユーザーへのフィードバックとしてのボタン表示ハイライトとか用に。
・今回のマウスイベントは処理の都合から1ユーザーのみの排他処理としているけど、たとえば長押し途中でその人が落ちたりするとmouseUpが通知されなくてholdされたままだったりするので対処が必要。touchイベントで連続押しを判定するか、一定時間後に強制リリースかなあ。

(各種イベントの確認。中段がハイライト中)
Posted by みやおか at 08:40
│Comments(0)
2007年05月12日
2007/05/12 マウスイベント試作
Harayokiさんのダブルクリックモジュールのエントリを読んで、
http://harayoki.slmame.com/e4781.html
自分でもちょっと作ってみました。
シングルクリック、ダブルクリックの区別に加えて、長押しもできるようにするあたりがねらいです。
というわけで、とりあえずスクリプトはこんな感じ…
------------------------------------------------
↓ここから
↑ここまで
-----------------------------------------------------
(PREタグ中にBR改行が入って間延びしてしまうので、CSSでPREタグのline-heightを70%程度にしてみました。大丈夫かな?)
と、いうわけで
シングル・ダブルクリック、長押しの各イベントをどう考えて定義してるか以下に図を交えて説明してみます。
■シングルクリック

シングルクリックですが、まずは図の説明をすると…
・下矢印で表しているのが、タッチしたときのイベント。「touch_start」
・上矢印で表しているのは、タッチをやめたときのイベント。「touch_end」
・touch_startイベントと同時にMOUSE_DOWNタイマー(直線、0.8秒間)を走らせます。
・touch_end時にはMOUSE_UPタイマー(点線、0.25秒間)が走ります。
というイメージです。
普通はクリックの検出なんて単純なもので、touch_start時、またはtouch_end時に処理を入れればいいのですが、今回はダブルクリックの検出を考慮しているのでちょっと違います。
「シングルクリックである」ということはつまり「ダブルクリックではない」こと。マウスアップから一定時間経過したら初めてシングルクリックと判定しています。
■長押し

長押しについては、touchし始めると同時にMOUSE_DOWNタイマーを走らせて、マウスが離される前にタイマーが経過した場合に「長押しである」と判定しています。
この場合タイマー経過後にtouch_endイベントが来るのですが、そこは無視するような作りにしてます。
■ダブルクリック

続いてダブルクリックのほうはこんな感じです。
マウスアップと同時にMOUSE_UPタイマーが走って、そのタイマーが経過する前に新しいマウスダウンが来ると継続されていくというイメージです。このときにクリックカウントを加算していて、1回なら即ちシングルクリック、2回ならダブルクリックという振り分け。作りとしてはシングルもダブルもカウント数が違うだけで同じ検出の仕方をしています。
今回は2回以上をダブルクリックとみなすようにしてますが、必要であればトリプルクリック、4回クリックといったカウント別のイベントを定義することも出来ます。(だからといってそのへん細かくしても決して実用的ではないけど…。ただ秀丸エディタなんかだとトリプルクリックでURLを開いたりもするので、1回押し/2回押し/ガチャガチャ押し、というくらいの意識でユーザーが区別して操作できればわりと使えるかな。あ…、というかWindows自体がダブルクリックで一部選択、トリプルクリックで全体選択になってるから、けっこう一般的なのか)
あと今回はHUD用に作ってるので、ルートにこれを仕込んで、どのパーツが押されているか?という判定をしており、ダブルクリックの場合は1,2回目ともに同一のパーツが押されていることも条件になってます。
http://harayoki.slmame.com/e4781.html
自分でもちょっと作ってみました。
シングルクリック、ダブルクリックの区別に加えて、長押しもできるようにするあたりがねらいです。
というわけで、とりあえずスクリプトはこんな感じ…
------------------------------------------------
↓ここから
float MOUSE_DOWN_TIMER = 0.8;
float MOUSE_UP_TIMER = 0.25;
integer NO_SELECT = -5;
integer iTouchedLinkNum;
integer iClickCount;
integer bOnPress;
SingleClick(integer num)
{
llOwnerSay("click " + (string)num);
}
DoubleClick(integer num)
{
llOwnerSay("dclick " + (string)num);
}
Press(integer num)
{
llOwnerSay("press " + (string)num);
}
Init(){
iTouchedLinkNum = NO_SELECT;
iClickCount = 0;
bOnPress = FALSE;
}
default
{
state_entry()
{
Init();
}
touch_start(integer detected)
{
bOnPress = TRUE;
integer num = llDetectedLinkNumber(0);
if(iTouchedLinkNum != num){
iClickCount = 0;
iTouchedLinkNum = num;
}
llSetTimerEvent(MOUSE_DOWN_TIMER);
}
touch_end(integer detected)
{
bOnPress = FALSE;
if(NO_SELECT == iTouchedLinkNum)
return;
iClickCount += 1;
llSetTimerEvent(MOUSE_UP_TIMER);
}
timer()
{
llSetTimerEvent(0);
if(bOnPress){
Press(iTouchedLinkNum);
}
else if(1 == iClickCount){
SingleClick(iTouchedLinkNum);
}
else if(1 < iClickCount){
DoubleClick(iTouchedLinkNum);
}
iTouchedLinkNum = NO_SELECT;
iClickCount = 0;
}
}
↑ここまで
-----------------------------------------------------
(PREタグ中にBR改行が入って間延びしてしまうので、CSSでPREタグのline-heightを70%程度にしてみました。大丈夫かな?)
と、いうわけで
シングル・ダブルクリック、長押しの各イベントをどう考えて定義してるか以下に図を交えて説明してみます。
■シングルクリック

シングルクリックですが、まずは図の説明をすると…
・下矢印で表しているのが、タッチしたときのイベント。「touch_start」
・上矢印で表しているのは、タッチをやめたときのイベント。「touch_end」
・touch_startイベントと同時にMOUSE_DOWNタイマー(直線、0.8秒間)を走らせます。
・touch_end時にはMOUSE_UPタイマー(点線、0.25秒間)が走ります。
というイメージです。
普通はクリックの検出なんて単純なもので、touch_start時、またはtouch_end時に処理を入れればいいのですが、今回はダブルクリックの検出を考慮しているのでちょっと違います。
「シングルクリックである」ということはつまり「ダブルクリックではない」こと。マウスアップから一定時間経過したら初めてシングルクリックと判定しています。
■長押し

長押しについては、touchし始めると同時にMOUSE_DOWNタイマーを走らせて、マウスが離される前にタイマーが経過した場合に「長押しである」と判定しています。
この場合タイマー経過後にtouch_endイベントが来るのですが、そこは無視するような作りにしてます。
■ダブルクリック

続いてダブルクリックのほうはこんな感じです。
マウスアップと同時にMOUSE_UPタイマーが走って、そのタイマーが経過する前に新しいマウスダウンが来ると継続されていくというイメージです。このときにクリックカウントを加算していて、1回なら即ちシングルクリック、2回ならダブルクリックという振り分け。作りとしてはシングルもダブルもカウント数が違うだけで同じ検出の仕方をしています。
今回は2回以上をダブルクリックとみなすようにしてますが、必要であればトリプルクリック、4回クリックといったカウント別のイベントを定義することも出来ます。(だからといってそのへん細かくしても決して実用的ではないけど…。ただ秀丸エディタなんかだとトリプルクリックでURLを開いたりもするので、1回押し/2回押し/ガチャガチャ押し、というくらいの意識でユーザーが区別して操作できればわりと使えるかな。あ…、というかWindows自体がダブルクリックで一部選択、トリプルクリックで全体選択になってるから、けっこう一般的なのか)
あと今回はHUD用に作ってるので、ルートにこれを仕込んで、どのパーツが押されているか?という判定をしており、ダブルクリックの場合は1,2回目ともに同一のパーツが押されていることも条件になってます。
Posted by みやおか at 17:57
│Comments(0)
2007年05月06日
2007/05/05 M2J Core前夜祭ライブ
M2J Coreのライブに行ってきました。

GW中は5日、6日の2Days公演とのことで、サーバーの人数制限もあるので前夜祭の方を見ることに。

今日の会場は、前回のお隣。
おー、地下なんですね。

中にはバーカウンターなどアダルトな雰囲気…。
あ、気が付くと目の前にKirinさんが。
ドラゴンに頭食われてる。

新作メガネとドラゴンをもらっちゃいました。
わーい。
ダメキャラ感UP!

一緒に誘った百合若さんからはぷるこぎTシャツもらいました。
ありがとー。
なんかもらってばっかりだなー。
自分もそのうち人にあげられるもの作ろう。

というわけで、
開演だー

じぇっつー

もなかー

またたびー

ロボ子とのりたま会長。

RenderGlowをオンに。






デブが最前列でノリノリ。

突然ですが、
ここでTIPSとして、ジェスチャーの使いかたを書いときます。
あらかじめパターン決めて掛け声出すような場合は、セリフをジェスチャーとして登録しておくとファンクションキー一発で呼び出せるので便利です。

GesturesフォルダでNew Gesture作って、適当なアニメーションとセリフを設定します。
ひとつのファンクションキーで、「F2、Shift+F2、ctrl+F2」のように3種類登録できるのでキーごとにバリエーション作ると使いやすいかな。衣服と同じように右クリックからフォルダ単位で装着できます。
ライブラリのアニメーションでは
・Wave(右手を振る)
・JumpforJoy(ヤッホーイ!と飛び跳ねる)
なんかがセリフと一緒に使いやすい感じ。
同時に音も設定できるけど、ラグが大きいのでここぞというタイミングでは使いづらいかも。演奏に混ざっちゃうし。
で。自分の場合、セリフ例としては
・じぇっつー!
・またたびー!
・もなかー!
・のりたまー、かいちょー
のようにメンバーの名前を呼んだり…、
・いえーい!
・ノリノリだぜー
・抱いてー
と、ノリに合わせて叫んでみたり…
・ノリタメーン!
・ボナペティ~
・ソクラテスー
といった感じで曲の歌詞を登録したりしてます。
うまくタイミング合わせると盛り上がります。自分が。

最後に、またパノラマです。
クリックしてご覧下さい。

GW中は5日、6日の2Days公演とのことで、サーバーの人数制限もあるので前夜祭の方を見ることに。

今日の会場は、前回のお隣。
おー、地下なんですね。

中にはバーカウンターなどアダルトな雰囲気…。
あ、気が付くと目の前にKirinさんが。
ドラゴンに頭食われてる。

新作メガネとドラゴンをもらっちゃいました。
わーい。
ダメキャラ感UP!

一緒に誘った百合若さんからはぷるこぎTシャツもらいました。
ありがとー。
なんかもらってばっかりだなー。
自分もそのうち人にあげられるもの作ろう。

というわけで、
開演だー

じぇっつー

もなかー

またたびー

ロボ子とのりたま会長。

RenderGlowをオンに。






デブが最前列でノリノリ。

突然ですが、
ここでTIPSとして、ジェスチャーの使いかたを書いときます。
あらかじめパターン決めて掛け声出すような場合は、セリフをジェスチャーとして登録しておくとファンクションキー一発で呼び出せるので便利です。

GesturesフォルダでNew Gesture作って、適当なアニメーションとセリフを設定します。
ひとつのファンクションキーで、「F2、Shift+F2、ctrl+F2」のように3種類登録できるのでキーごとにバリエーション作ると使いやすいかな。衣服と同じように右クリックからフォルダ単位で装着できます。
ライブラリのアニメーションでは
・Wave(右手を振る)
・JumpforJoy(ヤッホーイ!と飛び跳ねる)
なんかがセリフと一緒に使いやすい感じ。
同時に音も設定できるけど、ラグが大きいのでここぞというタイミングでは使いづらいかも。演奏に混ざっちゃうし。
で。自分の場合、セリフ例としては
・じぇっつー!
・またたびー!
・もなかー!
・のりたまー、かいちょー
のようにメンバーの名前を呼んだり…、
・いえーい!
・ノリノリだぜー
・抱いてー
と、ノリに合わせて叫んでみたり…
・ノリタメーン!
・ボナペティ~
・ソクラテスー
といった感じで曲の歌詞を登録したりしてます。
うまくタイミング合わせると盛り上がります。自分が。

最後に、またパノラマです。
クリックしてご覧下さい。
Posted by みやおか at 08:44
│Comments(1)
2007年05月02日
2007/05/02 WiiリモコンでSecondLife
ちょっと雑談してたら知人のKちゃんが「SecondLifeの操作は全然できない」というので、うーんやっぱ普段PCゲームやらない人はよっぽどキーボード+マウスって馴染みがないんだなーということを改めて実感。まあやれば慣れるんだろうけど、そこの壁はなかなか高そうだなーと。
じゃあよく言われてそうな話として、、、
直感的で、先進的で、日本人に馴染みがあり、子供からお年寄りまで使える、あのWiiリモコンで操作できるようにしちゃえば、やれるのかな?
あー、それってできるじゃん。…ということでちょっとセッティング。

一応できたー。

用意するもの。
・Wiiリモコン
・Bluetoothアダプタ(1000~2000円。多分なんでもいい)
・赤外線センサーバー(Wii純正、またはろうそく等赤外線の出るもの。上記のは自作)

BluetoothでWiiリモコンをPCに接続。

WiinRemoteでキーマッピング。
http://onakasuita.org/wii/
あれー。
WiinRemoteはヌンチャクとリモコン同時に使えない、んだっけ…?

とりあえずヌンチャクは抜きにして、リモコンだけで動かせるようにセッティング。
移動は、デバッグオプションでAuto-Pilotをオンにしておいて
リモコンによる赤外線ポインタ指し+Bボタンで自動移動。
1、2キーが上昇下降。
押しっぱなしにしても秒間あたりの検出数が少ないためかFlyに移れないので、+キーにFlyボタンを設定。いちおうこれで空も動けるように。
十字キーのほうも検出回数が少ないためか、前後左右移動はものすごくスロー。これはほとんど使えない。あくまでAuto-Pilot頼みの移動。
それから、視点移動はアバターをドラッグして…
と思ってたけど、リモコンのポインタは絶対座標なので、マウス操作に比べてドラッグ時はギュンギュン回っちゃう…。カメラコントロールスピードを最低まで下げればギリギリ操作できると言えなくもないか…。
あ、それだったら、主観視点への切り替えキーを入れれば良かったかな。
あとAlt注目は是非入れたかったんだけど、WiinRemoteでは登録できなかった。まあ別のソフトでマッピングすればいけるんだろうけど。

という感じで、リビングSL。
チャットは全然無理だし、インベントリ操作とかもあきらめてるけど、
まあ、観光用と割り切れば、こんぐらいでもいいのかなー。
あと大きめのHUDを作るなりすれば、そこそこ本気で使えるようになるのかも。
じゃあよく言われてそうな話として、、、
直感的で、先進的で、日本人に馴染みがあり、子供からお年寄りまで使える、あのWiiリモコンで操作できるようにしちゃえば、やれるのかな?
あー、それってできるじゃん。…ということでちょっとセッティング。

一応できたー。

用意するもの。
・Wiiリモコン
・Bluetoothアダプタ(1000~2000円。多分なんでもいい)
・赤外線センサーバー(Wii純正、またはろうそく等赤外線の出るもの。上記のは自作)

BluetoothでWiiリモコンをPCに接続。

WiinRemoteでキーマッピング。
http://onakasuita.org/wii/
あれー。
WiinRemoteはヌンチャクとリモコン同時に使えない、んだっけ…?

とりあえずヌンチャクは抜きにして、リモコンだけで動かせるようにセッティング。
移動は、デバッグオプションでAuto-Pilotをオンにしておいて
リモコンによる赤外線ポインタ指し+Bボタンで自動移動。
1、2キーが上昇下降。
押しっぱなしにしても秒間あたりの検出数が少ないためかFlyに移れないので、+キーにFlyボタンを設定。いちおうこれで空も動けるように。
十字キーのほうも検出回数が少ないためか、前後左右移動はものすごくスロー。これはほとんど使えない。あくまでAuto-Pilot頼みの移動。
それから、視点移動はアバターをドラッグして…
と思ってたけど、リモコンのポインタは絶対座標なので、マウス操作に比べてドラッグ時はギュンギュン回っちゃう…。カメラコントロールスピードを最低まで下げればギリギリ操作できると言えなくもないか…。
あ、それだったら、主観視点への切り替えキーを入れれば良かったかな。
あとAlt注目は是非入れたかったんだけど、WiinRemoteでは登録できなかった。まあ別のソフトでマッピングすればいけるんだろうけど。

という感じで、リビングSL。
チャットは全然無理だし、インベントリ操作とかもあきらめてるけど、
まあ、観光用と割り切れば、こんぐらいでもいいのかなー。
あと大きめのHUDを作るなりすれば、そこそこ本気で使えるようになるのかも。
Posted by みやおか at 18:35
│Comments(3)
2007年05月01日
2007/04/30 MagSLTokyoマラソン?

最近MagSLタウンの道路に設置され始めた矢印。

気になって順路を辿って行ってみたら…

途中、
巣鴨で給水所をやってる人たちが。
…って、醤油じゃん。しぬよ!
思わず声をかけちゃいました。
KirinさんとMadiさん。
http://seriousegiggle.slmame.com/
http://madi.slmame.com/
おー眼鏡屋のひとだ。こんちはー。
お互いブログ見てるみたい。どもー。
マラソンやるんですか?
「やりません」
えー!
いやー勝手にやってるんだろなーと思いつつ、MagSLさんが準備してるところを利用して早々とこういうことするのがホント面白いなー。「公式」と銘打っちゃうあたりもいいです。
まあ実際のところはTokioの完成に合わせて一周イベントをやるんでしょうね。
そしたらこういう出店みたいなのはたくさん出そう。
ウチもいちおう通り沿いみたいなので何か用意しようかな。
(Meguroは競馬場があるので順路が分岐してます。右側行くとウチの前を通ります)

というわけで、醤油とトーフをいただいて、
あと参加賞に眼鏡もらっちゃいました。わーい。
いやーしかし、デザインメガネなので、髪型と服も変えないとアンバランス過ぎて…。
もっとおしゃれに精進しないと…!
ゴーグルタイプはまあギリギリかけられそう。すごい変態っぽいけど。
帽子でもかぶると良さそうかな。

で、そのまま進んでKandaへ。
あ!

KUROBORO日記のNobunaga Ogeeさんの店ってここだったんだー。
http://kuroboro.slmame.com/
うはー。
ロボ!まじょ!
Tinyアバターは見てて楽しいんだけど、自分が着るのはアイデンティティが崩壊してしまいそうでちょっとためらってたんですが…、SLは一期一会の機会が大事というか、これも巡り合わせということで買ってみました。

着替え中…。
これはこれで、かっこいい。
足が逆関節タイプとかだとロボっぽくて憧れるな。

で、初Tiny。
うわーちっさい。視点が低い。かわいー。
ホントにこれが自分なのかと、まだ慣れずにオドオド…。

さらに進んで、新橋にSL機関車が。
ちょっと乗ってみる。

おー。すごい立体的。
動きも滑らかで面白い。
ちょうどTinyで乗るとサイズ的にぴったりかも。
Ida Keenさんのブログにも乗りましたってエントリが。
こちらは2両編成。
http://secondtourist.blogspot.com/2007/04/casey-jones.html
乗り終えてから。…あ、そうだ。
と思い出してKandaに引き返す。

そうそう、これこれ。
左下にしれっと画像が載ってるけど、ロボにドレス着せてるのが、なんというか…、反則で…。

ロボ子になった!
うひー
これはやばい。
いやーしかし、パッケージがムチャクチャ良いよね。
ここではロボ系がNobunagaさん、ガール系がCueさん、という形で共同でやってるみたいだけど、ロボにドレス着せたりできちゃうような互換性があるってのがTinyでは特に嬉しい感じです。プラモっぽいのかなー。

ウチに帰って記念撮影。


食べられちゃう!逃げて!

あ…、
これは関係ない。

巣鴨のお化け屋敷にて。
面白かったー。主観視点が活かされてます。
特に、ドアが勝手にバタンと閉まるのがねー、SLでは普通なんだけど、このシチュエーションではいい演出になってるなーと。

あと、ソラマメの5号さんが来てくれました。
http://ggg.slmame.com/
はじめましてー。お世話になってます。
ストームトルーパーじゃなかったから分からなかった…。
「たまには人間の格好をしようと思って」
なるほどー。
いろいろ話してお互い同年代だとか神奈川住んでたとかでほうほう、と。
「今は沖縄に住んでます」
えー。しかも、もう海開きしてるってびっくり。
SLは外国人と簡単にコンタクトできるのが面白いけど、日本人コミュニティだけでも、こうして北海道から沖縄までといろいろ異文化で発見がありますね。

Kirinさんに貰った醤油とトーフを並べて、食卓化計画が一歩前進。
いやーだいぶ賑やかと言うか、そろそろ「片付けなさい!」レベルになってきた。
Posted by みやおか at 14:14
│Comments(4)
2007年05月01日
2007/04/29 札幌の百合若さん
先日のライブでご一緒した百合若さんちをぶらっと訪問。

こんにちはー。
雪降る時計台の前とはいいロケーションですねー。
「狙ってましたもん」

いやー、ライブで見かけたときは、自分がデブで、百合若さんがジャージで…。
それだけでなんとなく共感をおぼえてしまったのでした(なんかダメっぽいところが)。

ほうほうユリワカフェ。
おじゃましますー。

RLでパスタを茹でたりしつつ雑談…。
百合若さんて、けっこう昔からWebやってたりします?
「うん。10年以上前から」
あ、やっぱり。なんか聞き覚えある名前だなーと。
「え。あせる」
うひひ。多分見てました。
いやー、以前のるじさんときもそうだけど、また覚えのある人に会ってしまいました。
10年くらい前のWebって、何がリッチかって絵が出るってだけでリッチなわけで。特に絵描きの人のサイトを見るのが楽しかったなと思ってます。
まだロボット型の検索がたいして発達してなかったから、Yahooなどによる人的インデックスだったり、いろいろ個人のリンク集とかが生きていた時期で。あれがちょうどSLのフレンドみたいな繋がりかなー。
そういうのを渡り歩いて探し回って、いろいろと自分なりに発見するのが面白かったんだろうなーと。
で、Googleが出てきて、「あーインターネットってこんなに広かったんだ」ってあっさり一気に視界が開けたように実感して、いろいろあって今に至る感じ。SLもいずれ検索が発達して「あーSLってこんなに広かったんだ」って言う日が来るのかな。そしたらどうなるんだろう。
まあ、ともかく今は10年前同様にいちいち発見が面白いなと思います。

あと、お互い自分自身に似せたアバターを使ってるってのも共感してしまうところ。
僕のはデブキャラだったりするけど、あれは、たくましい自分への憧れなんで…。
というわけで、おじゃましましたー。

こんにちはー。
雪降る時計台の前とはいいロケーションですねー。
「狙ってましたもん」

いやー、ライブで見かけたときは、自分がデブで、百合若さんがジャージで…。
それだけでなんとなく共感をおぼえてしまったのでした(なんかダメっぽいところが)。

ほうほうユリワカフェ。
おじゃましますー。

RLでパスタを茹でたりしつつ雑談…。
百合若さんて、けっこう昔からWebやってたりします?
「うん。10年以上前から」
あ、やっぱり。なんか聞き覚えある名前だなーと。
「え。あせる」
うひひ。多分見てました。
いやー、以前のるじさんときもそうだけど、また覚えのある人に会ってしまいました。
10年くらい前のWebって、何がリッチかって絵が出るってだけでリッチなわけで。特に絵描きの人のサイトを見るのが楽しかったなと思ってます。
まだロボット型の検索がたいして発達してなかったから、Yahooなどによる人的インデックスだったり、いろいろ個人のリンク集とかが生きていた時期で。あれがちょうどSLのフレンドみたいな繋がりかなー。
そういうのを渡り歩いて探し回って、いろいろと自分なりに発見するのが面白かったんだろうなーと。
で、Googleが出てきて、「あーインターネットってこんなに広かったんだ」ってあっさり一気に視界が開けたように実感して、いろいろあって今に至る感じ。SLもいずれ検索が発達して「あーSLってこんなに広かったんだ」って言う日が来るのかな。そしたらどうなるんだろう。
まあ、ともかく今は10年前同様にいちいち発見が面白いなと思います。

あと、お互い自分自身に似せたアバターを使ってるってのも共感してしまうところ。
僕のはデブキャラだったりするけど、あれは、たくましい自分への憧れなんで…。
というわけで、おじゃましましたー。
Posted by みやおか at 03:04
│Comments(2)