ヒマをみつけてWeb開発
その場の思い付きを、ヒマをみつけてWebサイトにしてみるブログ

ARの力でVRをカオスにする、カソウセカイカメラをリリースしました

Friday, 3 August 2012 02:18 by sabro

仮想世界カメラ

世の中はいま、アクセルワールド、SAOみたいな仮想世界アニメが好調で、先日はサマーウォーズのテレビ放送なんかもありましたが、セカンドライフの話題はまったくありませんでしたね。そんなちょっと忘れられ気味なセカンドライフ向けの新サービスをリリースしたので紹介させていただきます。

カソウセカイカメラ
http://www.kasousekaicamera.com/

ARとVRの先端技術を組み合わせれば、超最先端になるはずという思い込みを出発点に、仮想世界の中で拡張現実ができるサービスになってます。詳しくは、発表会で使った資料をみてもらうとわかりやすいと思います。

 

 

このブログはウチの技術ブログという位置づけなので、内部で使用している技術をちょっと紹介( ̄∇  ̄ )

仮想世界向け独自GeoHash

緯度、経度の情報をハッシュ化し、位置のインデックスを作るGeoHashという技術があります。当然、カソウセカイカメラのコメントインデックスにも応用できそうなのですが、あれは緯度、経度が有限という前提なので、無限に広がる仮想世界ではうまく使えませんでした。そこで、4バイト整数の最大値2,147,483,647メートル四方をインデックスできる、独自のGeoHashを作成しました。といっても、ハッシュ自体の作り方は全く同じです。個人的にはGPSにしろGeoHashにしろ、人が住むのは地球だけという狭い視野で作られているので、月面基地、スペースコロニー、仮想世界など、人が活動するあらゆる場所から一意に特定できる新しい仕組みが必要になるときが来るとおもいます。

3次元空間の位置を2D画面にマッピングする透視投影変換

3次元空間上にあるコメントを、HUDの2次元座標に変換するのに透視投影変換を使いました。ゲームではおなじみのアルゴリズムですね。ただ、ゲーム制作の場合はライブラリがこのあたりを受け持ってくれることが多いみたいですが、セカンドライフのスクリプトLSLにはそんな機能はもちろんないので、ローレベルなところから実装が必要で大変でした。

技術的に面白く、内容もそこそこ面白い、カソウセカイカメラをよろしくおねがいします( ̄∇  ̄ )

セカンドライフ向けクエスト作成サービス「クエストマイスター」をリリースしました

Saturday, 6 August 2011 20:29 by sabro

久々の更新です。

今だにセカンドライフで活動しているのですが、今回、セカンドライフ向けのクエスト作成サービスを作ったので紹介させていただきます。

クエストマイスター
http://questmeister.com/

QuestMeister

クエスト作成

クエストマイスターは、Web上でクエストの情報を入力して、インワールドでミスティックストーンというオブジェクトを設置するだけでクエストの作成ができます。全くスキルが必要ないので誰でもクエストを作成でき、公開してわずか数日ですが、すでにクエストを色々作っていただいてます。

クエストプレイ

プレイする場合は、ミスティックストーンを探しだして、特定のキーワードをチャットするなどしてクリア条件をみたす必要があります。クリア条件は、セカンドライフのLSLスクリプトでプログラム的に設定可能なので拡張性が大きく、工夫次第で面白いものも作れるようになってます。

世間ではセカンドライフの評価は相変わらず低いですが、Webサービスと連携することで大きく可能性は広がると思いますよ。みなさんは、どう思われますか( ̄∇  ̄ )

Tags:   , ,
Categories:   Second Life
Actions:   Permalink | Comments (15) | Comment RSSRSS comment feed

表情をCGMする新感覚アバター、クリエモンをバージョンアップしました

Wednesday, 11 August 2010 08:45 by sabro

クリエモンとは、表情をWebで共有できる新感覚のアバター。Web上の目や鼻のパーツを組み合わせて表情を作り、セカンドライフのアバターに適用して使います。セカンドライフの中でも高度なWeb連携を実現しているところが特長です。ちなみに、バックグラウンドはCassandra。
クリエモン

今回のバージョンアップで、具体的には以下のような機能を追加しました。

  • ブックマーク
  • タグクラウド
  • コンビネーションページ
  • フェイスレスポンス
  • ライセンスをパブリックドメインへ変更

詳しい機能解説は、こちらのブログエントリへ。
http://sabro.slmame.com/e943628.html

さらに、クリエモンのプロモーションビデオも、ニコニコ動画へアップ済み! ネタが満載で楽しめる内容になってます。

説明編


活劇編

オリジナルの表情可変アバターを作ることも可能なので、新たなアバターCGMの基盤になる可能性もないこともないかも。気になった方はぜひアクセスしてみてください( ̄∇  ̄ )

クリエモン
http://www.creamon.net/

Tags:   ,
Categories:   Second Life
Actions:   Permalink | Comments (47) | Comment RSSRSS comment feed

LSLのSyntaxHighlighter Plugin

Thursday, 24 September 2009 09:15 by sabro

SyntaxHighlighterという、ソースコード色付けツールがありますが、実は、さぶろーはそれのLSLプラグインを作ってます。今回そのプラグインをまとめたページを作った方がいまして、LSLプラグインも紹介していただけるとのことなので、ここに使い方を書いてみます。

List of available brushes for Gorbatchev’s SyntaxHighligher
http://www.undermyhat.org/blog/2009/09/list-of-brushes-syntaxhighligher/

LSL用のプラグインは、ここにあります。これは、Google Page Creator上に置いてあるのですが、ざっと規約を読んだところ、おそらく直接参照しちゃっても大丈夫だと思います(勘違いしてたら教えてください)。
for ver.1.5 http://public.webkai.net/shBrushLsl.js
for ver.2.0 http://public.webkai.net/shBrushLsl2.0.js

 

ver 2.0の設定

1、Webページのヘッダーに、以下を追記します。alexgorbatchev.comというのは公式のホスティング先なので、直接参照しちゃって大丈夫です。
<head>
・・・
・・・
<!-- ▼追加部分▼ -->
<link type="text/css" rel="stylesheet" href="http://alexgorbatchev.com/pub/sh/current/styles/shCore.css" />  <link type="text/css" rel="stylesheet" href="http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css" />  <script type="text/javascript" src="http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js"></script>  <script type="text/javascript" src="http://alexgorbatchev.com/pub/sh/current/scripts/shLegacy.js"></script>  <script type="text/javascript" src="http://public.webkai.net/shBrushLsl2.0.js"></script> <script type="text/javascript">  window.onload = function () { SyntaxHighlighter.config.stripBrs=true; //←改行無視が不要なら消す SyntaxHighlighter.config.clipboardSwf = 'http://alexgorbatchev.com/pub/sh/current/scripts/clipboard.swf'; SyntaxHighlighter.all(); dp.SyntaxHighlighter.HighlightAll('code'); } </script> 
<!-- ▲追加部分▲ -->
</head>

2、LSLをブログに書き、preタグで囲みます。
<pre name="code" class="brush: lsl">
/*
   マルチラインコメント
*/

// 1行コメント

string single = "文字列";
string multi  = "マルチライン
                 文字列";

default
{
    state_entry()
    {
        if (TRUE) {
            llSay(0, "テスト");
        }
    }
}
</pre>

 

 

ver 1.5の設定

1、Webページのヘッダーに、以下を追記します。
<head>
・・・
・・・
<!-- ▼追加部分▼ -->
<link type="text/css" rel="stylesheet" href="http://alexgorbatchev.com/pub/sh/1.5.1/styles/SyntaxHighlighter.css" /> <script type="text/javascript" src="http://alexgorbatchev.com/pub/sh/1.5.1/scripts/shCore.js"></script>  <script type="text/javascript" src="http://public.webkai.net/shBrushLsl.js"></script> <script type="text/javascript">  window.onload = function () { dp.SyntaxHighlighter.BloggerMode(); //←不要なら消す dp.SyntaxHighlighter.ClipboardSwf = 'http://alexgorbatchev.com/pub/sh/1.5.1/scripts/clipboard.swf'; dp.SyntaxHighlighter.HighlightAll('code'); } </script> 
<!-- ▲追加部分▲ -->
</head>

2、LSLをブログに書き、preタグで囲みます。
<pre name="code" class="lsl">
default
{
    state_entry()
    {
        llSay(0, "ご存じ、ないのですか!? これがSyntaxHighlighterです!!");
    }
}
</pre>

 

以上です( ̄∇  ̄ ) LSLをブログに書く方は、ぜひ使ってみてください。

メタバース連動サービス、クリエモンを正式リリースしました

Saturday, 9 May 2009 21:28 by sabro

以前の記事で紹介したクリエモンを正式リリースしました。
クリエモン

クリエモンは、セカンドライフアバターの表情をWebに投稿、共有できる新感覚サービスです。アップロードされたパーツを組み合わせて表情を作成し、セカンドライフのアバターに適用できます。
クリエモンについて

もうすでにいろいろな表情がアップロードされていますよ。
表情パーツ

正式版での一番の変更点は、クリエモン対応アバター開発キットの提供です。
クリエモンアバター開発キット

これは、クリエモンの表情カスタマイズ機能をもったオリジナルアバターを開発するためのキットです。これでセカンドライフのアバターCGMが盛り上がる可能性がありますね。
きぐるみちゃん

クリエモンは、ちょっとWebサービスを組み合わせてみた程度のサービスではなく、全く新しいコンセプトのサービスとして、1年掛けてじっくり開発してきました。セカンドライフは、今明らかに下り坂であり、撤退企業もあいついでいる中で、あきらめかけたこともあったのですが、なんとか公開まで持って行けました。自分はそろそろWebだけで完結するサービスは衰退期に入っており、ちょっとの期間流行するようなものは出せても、個人ではメインストリームとなるようなものは作れなくなったのではと考えています。そんな環境の中で、メタバース連動サービスは、新規性があり、個人でもアイデア次第で大企業を凌駕できる可能性を秘めているのではないでしょうか。

Tags:  
Categories:   Second Life
Actions:   Permalink | Comments (68) | Comment RSSRSS comment feed

セカンドライフ連動Webサービス「クリエモン」の先行テスト版リリースしました

Thursday, 11 December 2008 15:50 by sabro

3月くらいからコツコツと、.NETで開発してきたセカンドライフ連動型Webサービス「クリエモン」の先行テスト版をリリースしました。

クリエモンは、セカンドライフで配布しているアバターの表情を、Webサイト上でCGMする、そこそこ画期的なサービスです。ユーザが日々アップロードする「目、鼻、口、その他装飾」のパーツを組み合わせて表情を作り、それをセカンドライフからロードして使います。

クリエモン
http://www.creamon.net/

[トップページ]

[マイページ]

アバターはちょっとしたハックで日本人向けのアニメ調に仕上げました。パッと見、セカンドライフに見えないのではないでしょうか。右上のパーツに表情がロードされてるのも確認できると思います。

[セカンドライフ]

アバター配布場所
nippori(155/166/23)

将来的に有料オプションはつけるかもですが、ずっと無料でも使えます。まずは、気軽に試してみてください。

Tags:   , ,
Categories:   Second Life
Actions:   Permalink | Comments (2) | Comment RSSRSS comment feed

メニーコアって使い道あんの? → メタバースに使えばいいんじゃないという話

Monday, 26 November 2007 05:36 by sabro

CPUをメニーコアにして、いったい何に使うの? っていう記事が、いたるところに見られるけどメタバースに使えばいいんじゃないかとふと思った。

SecondLifeやってても、サーバ側は明らかにマシン性能足りてないわけで、メニーコアのサーバが一般化してくれると、メタバースにとっては結構追い風になるんじゃないかなあ。

クライアント側も、1コアのCPUでメタバースはつらい状況だし、メニーコアにすれば快適さが増すかもしれない。

まあ、メモリとのやり取りやネットワークも高速化しないと効果も半減だろうけど。特にネットワークの高速化は、今の100Mbpsから1桁上げようと思うと、かなり時間がかかるだろうけどね。

Tags:  
Categories:   Second Life
Actions:   Permalink | Comments (2) | Comment RSSRSS comment feed

Second Life は 3次元インターネットじゃない、4次元なんだ

Wednesday, 3 October 2007 14:05 by sabro

お久しブリーフ。

いやぁ、セカンドライフ面白いわぁ。ブログ界隈では、けっこう批判的な意見も見られるけど、アイデアが出尽くして成熟してきた感のあるWebより、よっぽど刺激的で日々新たな発見があるよ。

最近は、セカンドライフ用のブログにいろいろ書いてるんだけど、今日はちょっとこっち向けの話題なので久々エントリ。

僕は、今日ものすごいことに気づいてしまった。

セカンドライフは3次元インターネットと言われることが多いけど、実は4次元だったんだ。

例えば、Webが2次元の世界というのは異論がないと思うけど、Webは、更新があるまで、ずっと同じコンテンツを表示するから、リアルタイム性がないよね(まあ、Flash、Ajax、Cometに代表される非同期Webとかもあるけど、基本的にこれらのコンテンツは生産された後も残り続けるもので、真のリアルタイムではないと思う)。

この考え方で3次元インターネットを考えると、時間が止まった3次元空間がそれにあたると思うんだよね。空間のある一瞬を切り取り、管理者およびユーザの更新があるまで変化のない、ただ止まった空間があるだけの世界が3次元Webなんだ。

こう考えると、明らかに時間軸を持つセカンドライフは4次元といわざるを得ない気がする。2次元から、3次元を飛び越していきなり2つも次元が広がったわけだ。同じ土地に行っても、時間が違えば当然会えないし、同じ時間にインしても場所が違えば会えない。

セカンドライフが、がら~んとしてるのも分かる気がする。Webでは、掲示板に顔を出すと良く見る顔が当たり前のようにいるが、セカンドライフで人と人が出会うことは、よほどの偶然がないと起きない。まさに一期一会なわけだ(だから、19時にNerimakuに集合みたいな、イベントとかが重視されてるのかも)。

って、まあ、こんなことに気づいても何も得ることはないのだが、なんかすごい発見をしたような、うれしい気分になったのでカキコしてみた(壮大な勘違いをしている気がしないでもないが)。

ついでに宣伝。僕は、今、セカンドライフで「精霊憑依型対戦アクションシューティング」を作ってます。もし、完成すればセカンドライフ上では、そこそこ画期的なものになると思うので、このブログの熱狂的ファンは、ぜひ遊ぶように(^^)

Tags:  
Categories:   Second Life
Actions:   Permalink | Comments (48) | Comment RSSRSS comment feed