Adobe Director 11 SW3D Demo
http://www.directorforum.de/showthread.php?t=75892
劇的ではないけど快適になってる?
http://www.directorforum.de/showthread.php?t=75892
劇的ではないけど快適になってる?
RICE GRAIN MEN
Flash Media Serverを使ったデモ。
いつから公開しているか知らないけど、開発が進むといいなぁ。
http://www.nhk.or.jp/kids/inai/utan3d/index.html
NHKは、思わぬところにすごいコンテンツが埋もれてたりする。
http://characters.butterfly-stroke.com/
国内で新しいShockwave3Dコンテンツが出てくるとは正直思ってなかった。
よく作ったなぁと感心。
IE7(RC)にて、Shockwave内のテキストエリアで入力中にBackspaceキーを押すと前のページに戻ってしまう。
Backspaceは「一つ前に戻る」のショートカット、なんだけど
Shockwaveコンテンツにフォーカスしている時に動作されるのは困るよ。
ちなみにFlashでは発生しない。
Shockwave内のFlashコンポーネントでは発生する。
果たしていつ直るのだろうか。
----------------------------------------------------------------------
※11/7追記
先日リリースされた正式版では、直ってました。良かったー。
----------------------------------------------------------------------
明るい所と暗い所を行き来したときの動的露出補正具合が素晴らしい。
(イニシャライズ処理がすごく重いので注意)
http://www.robotduck.com/misc/hdr/tweak.php
ワンダと巨像と同じやり方かなぁ。
ボーンアニメーションをw3dに書き出す際のメモ。
1つのポイントに対し複数のウェイトマップを設定しても良いが
そのポイントのウェイト合計が必ず100%になるようにする。
すべてのポイントに必ずウェイトを設定する。
すべてのボーンに必ずウェイトマップを割り当てる。
Layout上でのボーンプロパティ設定
Use Weight Map Only をON
Weight Normalization をOFF
Shockwave3D - 3D恐竜図鑑 恐竜島
よくできてます。
SW3Dコンテンツを見つけるとなんだかうれしい。
COCOROM、いつの間にか終了してたのね。
Shockwave3Dオンラインゲームの中ではかなり良くできていただけに残念だなぁ。
COCOROMを作った会社シリアルゲームズが、SWFからスクリーンセーバーを生成するソフト「
fla:ver Professional」を販売開始だそうで。
がんばってスクリーンタイムを超えてほしいな。
Director MX 2004 and Shockwave Player Update 10.1.1
Flash8に対応したDirector10.1.1アップデートが3月14日にでてた!
なんで日本法人はアナウンスしないの?
アドビになってから対応が遅くなった気がするよ。
Shockwave Playerのインストール完了時に表示されるページが思いっきり崩れてるんだけど、気付いてないのかな。
一応報告してみた、さて何時間で対応するだろうか。
■2006/5/1 20:40追記
思ったより早くメール返信があり、今日アドビとマクロメディアのサイト統合が行われたとのこと。それはいいんだけど、今ShockwavePlayerのダウンロードページに行こうとするとFlashPlayerダウンロードページに飛ばされる。いよいよShockwaveがなくなるのかと思っちゃうよ。
「mini AQUA」にディスカスを追加した。
![]()
ShockwavePlayerを再インストールして、改めて敷居の高さを感じた。
ダメなところリスト
1)Yahoo!ツールバーを当たり前の如くインストールしようとする
2)ブラウザを終了させないとインストールを続行できない
3)年齢確認ダイアログが出る
4)「13歳以上」を選ぶと、さらに名前とメルアドまで登録させようとする
プラグイン普及させる気が全く感じられないよー。
リリースされました。主な変更点は、
・Flash 8 Asset Xtraに対応。
・Lingo、ActionScript間での各種データ(imageとかarrayとか)コンバートに対応。
・QuickTime Asset Xtraのバグ修正。
Yahoo!ツールバーは相変わらず。
http://www.macromedia.com/shockwave/download/
Tom Higgins: Shockwave 10.1.1r16 Update Available
http://kisd.de/~lutz/chat3d/
ドイツのlutzという人が制作中のマルチプレイヤー3Dシューティングゲーム。
ホストアプリとpeer-to-peerで通信して、衝突判定はHavok。
最終的には自作マップを読み込めるようにするとのこと。
かなり良い感じだね。
--ワールド内のポリゴン数をカウントするハンドラ
on CountFace myWorld
totalnum=0
repeat with i=1 to myWorld.model.count
myModel=myWorld.model[i]
if findPos(myModel.modifier,#meshDeform)=void then
myModel.addModifier(#meshDeform)
myFlag=1
else
myFlag=0
end if
mynum=myModel.meshdeform.face.count
put myModel.name&&":"&&mynum
totalnum=totalnum+mynum
if myFlag then
myModel.removeModifier(#meshDeform)
end if
end repeat
put totalnum
return totalnum
end
Land of the Dead - Loot and Shoot
怖くてなかなか進めません。
Dawn of the Deadの時もShockwave3Dだったね。
「mini AQUA」 にカクレクマノミを追加。
「mini AQUA」 にプラチナエンゼルを追加。
「mini AQUA」
せっかくなのでブログに貼りやすいようにしてみたけど、設置する人いるだろうか。
ファイルサイズも表示負荷も極力抑えたのでロースペック環境でも大丈夫だと思うけど、要Shockwaveプラグインだから敬遠されるかなぁ。
プラグイン普及に少しでも貢献できたらいいな。
VIRTUAL AQUA
1年以上ほったらかしだった3Dネオンテトラをなんとかしようと思い立ち、熱帯魚屋で水草を撮ってきて背景に敷いてみた。挙動も少し改善させて公開。
http://havok.com/xtra/が消えてしまいましたが
Director Onlineにアーカイブされてました。
Director Online: Havok Developers Site Archive
Watch Me Change
Fuel Industries制作によるGAPのプロモサイト。
イカすダンスが見られます。
良い仕事しますねぇ。
ボーンは300本使ってるそうです。
自分でカスタマイズしたキャラ設定はURL化して誰かに見せられるようになってます。
http://www.watchmechange.com/indexe.php?pid=3fc37369d5733fb9dbcd4f30daef1d22
amazon sphere
なんとかSW3Dに絡めたくて試みたもののイマイチいい感じにならない。
AmazonにアクセスするためにCGIとFlashを経由したり、画像を読み込む時クロスドメインアラートがでないようにプロキシCGIを経由したりと、すごい迂回した。
これはこれで諦めて別のアイデアに着手しよう。
Shockwave3Dを使ったチュートリアル&ソース
QTVR_ShockWave3D Documentation Open Source
QTVR-Simulation mit Shockwave3D
Quads変形を使ったチュートリアル&ソース
QTVRLingoEngine documentation
QTVRLingoEngine Index
How to preprocess images in Photoshop for distortion-free mapping to W3D spheres
xonko interactive :: Shockwave3D Lab :: Spherical Correction
Safariにて3Dスプライトの表示位置が20ピクセル程ずれる不具合ですが、Tiger(Safari2.0)になって直るどころか51ピクセルにエスカレートしてます。
WebCore frameworkの問題らしいので同フレームワークを使ってるブラウザであればSafariに限らず起こりうるようです。
回避策は、ソフトウェアレンダラにすることです... :(
それかブラウザ判定して下にずらすとか?
TechNote: 3D sprites in a Shockwave movie shift location ...
Aldo's Blog: Safari Shockwave 3d offset bug
![]()
Shockwave Player普及率の変化を地域ごとにグラフ化してみた。
アジアのVer10の伸び悩みは何だ?
新しいコンテンツ作る人いないから当然といえば当然だけど、そろそろやばくないか。
元データ:Macromedia - Shockwave Player : Version Penetration
Directorで使える物理エンジンHavok Xtraの情報を集めてみた。
ShockwaveでHavokが使えるって結構すごいことだと思うんだけど、敷居が高いせいかせっかくの技術を生かした作品は少ない。
もったいないので何か作ってみようと思う。
Havok Developer Xtra
Havok社のサイト。ドキュメントとサンプルソースあり。
TechNotes, Documents
Macromedia - Director TechNote : Status of the Havok Physics Xtra
Macromedia - Director TechNote : Preventing fatal errors with Havok's rigidBody correction and deletion
Macromedia - Director TechNotes : dr0282 - Havok Xtra についての情報
Macromedia - サポート : Director リリースノート (マニュアルの補足情報)
Using Shockwave 3D's Havok Physics Engine
Director Online Article: Wreaking Havok with Physics, Part 1
Director Online Article: Wreaking Havok with Physics, Part 2
Director Online Article: Wreaking Havok with Physics, Part 3
Director Online Article: Bowling with Havok, Part 1
Director Online Article: Bowling with Havok, Part 2
Games, Demos
Macromedia - Shockwave Player 3D Demos
shockwave.com : BACKLASH
3D STRESS BALL: EPISODE 1
BPONG.COM
アニメーションの経過時間をミリ秒単位で返す
keyframePlayer.currentTimeとbonesPlayer.currentTimeについて。
描画フレームレートが落ちればモーションの再生も遅れるのかと思ってたけど
そうではなく完全に実時間で再生される。
なのでcurrentTimeの値も実際に経過した正確な値になる。
遅いマシンで3Dスプライトの表示イニシャライズに時間がかかったりすると
最初のフレームで既にcurrentTimeは0ではなくなっていることもある。
SUV(Sports Utility Vehicle:多目的スポーツ車)の安全運転啓蒙キャンペーンサイトのようです。真面目な目的で、はっちゃけたコンテンツは良いね。
i-unit アドベンチャー ~ロボットをさがせ~
愛・地球博 トヨタグループ館 公式ホームページの中の一コンテンツです。
オーサリング(オープニング・エンディング以外)を担当しました。
いろいろと満足いっていない部分もありますが、出来るだけのことはしました。
けっこう長いので、何割の人がエンディングまでたどり着くかちょっと心配です。
Director Shockwave Studio Developer's Guide
前半4分の1はImage Lingoについて。後半はShockwave3D。
サンプルソースの題材が他の本と少し異なっていて面白いといえば面白いが、ちょっととっつきにくい。
ファイルを見ながらでないと内容が理解しづらいのと、そのソース自体がやや複雑でわかりづらい。
ベクターシェイプを描いて立体にするサンプルは良いと思った。
The Shockwave Exporter Fixer
3ds MaxやPlasmaからw3d書き出しする際のいくつかの不具合を解消するMaxScript。
ブラウザのShockwave上でレンダラを「コンテンツの設定に従う」以外に設定していると、プロジェクタで任意のレンダラに変更できなくなる問題。
かなり以前からの問題だけど、解決というか回避策に気付いた。
Shockwave 3D Asset Xtraをプロジェクタに内包している場合のみに起こる問題でした。
外部にXtraを置けば問題なく変更できるようになった。
3/26追記:
解決したと思ったらどうもそうではなく、MX2004付属の最新Shockwave 3D Asset Xtraだと外部に置いてもレンダラ切り替えが出来ない。8.5のを使えということか。
もしくはレジストリいじるか。
http://www.macromedia.com/cfusion/webforums/forum/messageview.cfm?catid=268&threadid=865845
現状のexporterに改善して欲しい点。
・モデルをクローンしてもモデルリソースが共有されずデータサイズが肥大する。
・モーションを書き出すと、全モデルにkeyframePlayerがついてしまう。
(不要なkeyframePlayerはremoveModifierすると相当パフォーマンスがアップする)
・シーン上でモデルを拡大縮小すると位置が狂う。
・親子関係があるときの挙動が怪しい。
などなど結構あるけど、アップデートされる気配がないので
自前で作ろうとしている人がいる。
ある程度できたC++のソースを公開してくれた人もいるので、誰か引継いで改良してくれないかなぁ。
参照:
http://nuttybar.drama.uga.edu/pipermail/dir3d-l/2005-March/thread.html#8310
http://www.niklever.net/files/LW2W3D.zip
phosphor_alpha_4_248
こんなのがブラウザ上で動くんだから凄い。
Shockwave3D万歳。
3/13追記:
公開終了したようで。次期バージョン公開を待ちましょう。
toxi.co.uk :: the hub
ヴィジュアルクオリティ的にも技術面でもクールです。
音と同期したエフェクトは見てて飽きないなぁ。
フレームレートをあげるために試行錯誤中です。
透過マップや反射マップは、低スペックマシンではけっこう負荷がかかる。
見落としがちなのがカメラの画角。
画角を大きくすると当然視界に入るオブジェクトが増えるのでフレームレートに影響します。
あとはやっぱり、modelsUnderRayとその対象となるポリゴン数だなぁ。
レンダラーをOpenGLにしてから、下記のようにする。
member("3D").debugflags=16384
member("3D").model("Model").bonesPlayer.play("pragma setbool(14,1)")
"pragma setbool(14,1)"の部分は、
setbool(index,value)、setinteger(index,value)、setfloat(index,value)の
3種類あって値を変えるとボーンに関する操作がいろいろできるみたい。
コマンド一覧等、詳しい事はこちら
Advanced Bones in Director 8.5
3dmember.texture("texture").quality=#lowfiltered
ミップマップは使わずにバイリニアフィルターがかかる設定。#highより綺麗。
サンプル画像
ただ、最近のビデオカードはミップマップを使う設定に最適化されているので
#lowや#lowfilteredは、#mediumや#highに比べパフォーマンスが悪いらしい。
■.w3d書き出し時の注意点
・ボーンアニメーションする時は、オブジェクトとボーンをグループ化しておく
・キーフレームアニメーションさせたオブジェクトをグループ化してはいけない
■ユーザー定義プロパティの書式
モデルを右クリック>プロパティ>ユーザー定義タブに下記の書式で書く
myProp1=abc;
myProp2=def;
※イコールの横にスペースを入れてはいけない
※値はダブルクォーテーションで囲まない
※行末にセミコロンを必ずつける
Lingoからアクセスする時は
SW3DMember.model[i].userData[1][#myProp1]で"abc"が返ってくる
talby #1 living
talbyのサイトでShockwave3Dコンテンツが公開されてました。
Flashムービーをテクスチャに使うのは簡単だけど、
↓こちらはインタラクティブなFlashをテクスチャにしてしまおうというチュートリアル。
解説(仏語)
Mapping d'animation Flash interactive sur un objet 3D
demo(3MB)
3D Flash
Jpeg画像のメンバープロパティ、member("xxx").compressedmedia
2004/9/5追記
どうやらオーサリング環境でしか使えないっぽい。残念。
modelsUnderRay高速化を今度は少し違うやり方で。
■HYO-GONOSUKEさん方式
当たり判定専用の3Dキャストメンバーを別に用意して、modelsUnderRayだけそのワールドで行う。
詳しくは、HYO-GONOSUKEのGAME制作日記参照。
■bamseさん方式
前のエントリーでは対象外グループを消す(worldグループから外す)事で高速化しましたが、bamseさん方式は、判定用モデルだけworldグループに置いて、それ以外の見た目とカメラをworldグループ外にするというやり方。
例えば、"myGroup"に見た目のモデルを入れて、
SW3DMember.group("myGroup").removeFromWorld()
とすればmyGroupはworldに属さないので判定対象から外れます。
そしてカメラのrootNodeをmyGroupにすれば、判定用モデルは不可視になり、見た目用モデルだけが表示されます。
参照:plasma Note 5
■オガワさん方式
modelsUnderRayの回数を半分に減らすというやり方。modelsUnderRayしない時は、前回と前々回のポジションデータから割り出す。
当然精度は落ちるけど、実用上さほど問題なく、負荷は2分の1なので判定対象を減らせない時などに有用です。
参照:もろこしクエスト制作記 :過去ログ
それぞれ好みやケースに合わせて活用しよう。
数少ないSW3D制作者にとっては役立つTIPSです。
modelsUnderRay()は遅いとよく言われますが、というか遅いですが
特定のオブジェクトだけを判定対象にすればかなり速くなります。
具体的には、対象外にしたいモデルをグループに入れて、ray-castingする時だけそのグループを削除します。例えばignoreRaysGroupにモデルを入れて、下記のコードを実行するとignoreRaysGroup内のモデルは計算の対象から外れます。
SW3DMember.group("ignoreRaysGroup").removeFromWorld ()
M = SW3DMember.modelsUnderRay (vector (1,2,3), vector (1,0,0))
SW3DMember.group("ignoreRaysGroup").addToWorld ()
対象外グループを作る方法として、3Dソフト上でモデルのユーザー定義プロパティにignoreRays=trueフラグを設定しておくと便利です。
下記のコードで対象外モデルを選別してグループにまとめることができます。
G = SW3DMember.newGroup ("ignoreRaysGroup")
repeat with i=1 to SW3DMember.model.count
if SW3DMember.model[i].userData[1][#ignoreRays] = "true" then
G.addChild (SW3DMember.model[i])
end if
end repeat
modelsUnderRayに限らずmodelUnderLocやmodelsUnderLocについても同様です。
対象外にするポリゴン数に比例して、かなり効果がありますよ。
modelsUnderRayについて。
軸に沿ってRayを飛ばすより、ずらした方が速くなるという謎のTips。
たしかに効果があった。
Slow:
modelsUnderRay(startPos, vector(0,-1,0), 1 , #detailed)
Fast:
modelsUnderRay(startPos, vector(0.0001, -0.9999, 0.0001), 1 ,#detailed)
ちょっとテストした結果。
1)視野外のモデルも描画速度に影響する
2)ワールド内の全ポリゴン数がmodelsUnderRayの処理速度に影響する
3)camera.yonについて、遠くまで続く地面など単一モデルがクリッピングされても描画速度は向上しないが、遠くの別オブジェクトがクリッピングされて消えれば速くなる
仕事が一段落してやっと自由な時間ができたのでBoids理論を使ったネオンテトラの魚群シミュレーションを作った。

カクレクマノミで作ろうと思ったけど、魚群を作らずツガイで生息することが判明したので今回はパス。そのうちアクアリウムソフトに仕上げたい。
久しぶりにKYUCON 3D CHAT を更新。
変な岩山を作った。
他のユーザーの位置がたまにおかしくなるのを何とかしないといけない。
ついでにブリッジの傾斜地で止まると滑り落ちるようにした。
Lingoメモ:modelsUnderRayの#isectNormalで傾斜を判断。
Blackout
ホラー映画「Dawn of the Dead」のサイト内にあるゾンビシューティングです。動きが怖い。
サイト内にある「BARRICADE」というコンテンツもハラハラします。
映画が面白いかは知らないけど良くできたサイトだなぁ。
Cowboys&Engines
shockwave3dゲームなんですが、ビジュアルがとても良くできてる。
井戸に落ちるとBlackJackができたり、変なおっさんがいるワゴンのところで石ころ投げゲームが出来ます。
Station Entranceの、こちさんがもろこしクエスト制作記を公開。
良くできてるなー。
実験結果
暇というか、正月ボケがいまだ直らないので
いろいろ試してみた。
■今日わかったこと
カメラにオーバレイする時は、そのイメージの縦横サイズを2の累乗にすること。16x32pixelとか。
そうしないとぼやけます。いままでずっと気付かなかった。
HYO-GONOSUKE氏が制作中の3Dゲーム、
のりおのぼうけんオンラインに注目!
さらに面白い方向に展開中のようです。
制作日記も要チェック。
いまさらだけどdiscreet plasmaを注文した。
FlashやShockwave用に書き出せる3Dソフトです。
将来性が不安なソフトだけど、やはりあったほうが便利という判断で買いです。
最安値と思われる75,870円で注文したあとに
.TooでFlashユーザー優待キャンペーンをやってることを知った。
1,000円の差だけど、ちょっとくやしい。
One Gun Too Much (MUS)
http://ogtm.valvegroup.com/
In Ludo
http://www.inludo.com/inprogress/fps05.htm
H2Overdrive
www.splashworks.com/proto/jetski
3D City
http://www.multimedial.de/Shockwave/3DCity/3DCityFX.htm
Harry Potter Game
http://harrypotter.warnerbros.com/livethemagic/
Aesirs Fall (RPG)
http://www.aesirsfall.com/
Gorillaz
http://www.gorillaz.com/geep/finaldrive.htm
Ghoulish Arts
http://ghoul.flipcode.com/dem/dem.html
海外サイトで良くできた一人称シューティングのデモを見つけた。
http://www.inludo.com/inprogress/cefps.htm
重いけど。
音が出ますので注意。
苦戦すること4時間、こんな馬鹿馬鹿しいデモができました。
ボヨヨーンってところまでは到達できずに終了。
ボーンの移動と回転は、直接いじることができないので
いったんボーンのtransformを変数に代入し、その値を変更してから
元のボーンに代入しなおす必要がある。
輪郭線表示用にinkerモディファイアが用意されているけど、それだとテクスチャを表示できなくなる。
「輪郭線+テクスチャ表示」を実現するために2通り考えた。
1)普通のテクスチャ付きモデルと、それに重ねてサinkerモディファイア付きの
別モデル(サーフェイスは非表示)を置く方法。
試したところ輪郭線は良い具合に表示できたけど、線の太さは変えられない。
2)元のモデルを法線方向に拡大し、面を反転し、黒いサーフェイスにしたモデルを重ねる方法。
上のリンクのサンプルはこの方法で作った。
細かい部分が変だがそれらしく表示できた。
ポリゴンを自動分割する機能。
あまり使う事ないかと思ってたけど、なめらかなディテールが必要な場合は役に立ちそうだ。
3分割するとさすがに描画が遅くなる。
商品紹介とかで「モーションが停止した時のみ分割してキレイに表示」、
みたいな使い方なら良いだろう。
足音切り替えのテスト
草地とか砂地とか、歩く場所によって足音を変える。
modelsUnderRayで足元の#uvCoordを取得して、それをもとに
足元のテクスチャカラーをgetPixelしている。
欠点はテクスチャイメージがキャストメンバーじゃないといけないこと。
※RealPlayerがインストールされていないと表示できません。
ブス3Dを作った。
こういう何の役にも立たないようなことにエネルギーを注ぐのって楽しいなぁ。
仕事が忙しい時ほどやりたくなる。
過去のページもブログに載せておきます。
![]() | 「KYUCON 3D CHAT」 580k 2002/9/18~ マルチユーザコンテンツは面白い。 でもコミュニティサイトは厄介だなぁ。 |
![]() | 「弾痕デモ」 音付き 80k 2002/12/22 いつか使うかな。 現状はイメージを直接書き換えてるので応用がきかない。 そのうちオブジェクト面に弾痕オブジェクトを生成する方式に替えよう。 |
![]() | 「3D Flight」 280k 2003/7/31 3Dゲーム作りたいなーと思って作り始めた。 遅いマシンでどう処理するかが問題。 半年放置してたのをやっと公開。 |
![]() | 「アンチエイリアスデモ」 35k 2003/2/12 Director 8.5.1からサポートされた「antiAliasingEnabled」を使用。 1274三角ポリゴン。 商品紹介コンテンツで使うと思う。 エラー出る人もいるかも |