あなたは9191ワールドが好きですか?
5ヶ月ぶりの新作です、サムネイルは一昔前のCDジャケットを意識しました。そしてこの記事の前半は3月1日に書いて放置していたものに6月の追記を加えたものとなります。
あなたは9191ワールドが好きですか?
はい。いきなり何を言い出すのか?ってなもんです。9191(クイクイ)です。
趣味でclusterと言うVR-SNSでワールドを作ったりしています、と言ってもワールドコンテスト等で賞を獲るような有名枠ではなく、マイナー作家の部類です。とは言え、それでもcluster編集部様には作品を取り上げてもらうこともあり、この前ふとアプリからワールドを探してたら「ストーリーのあるワールドのおすすめ」としてまとめられてました。
なんと7作品がおすすめされてます(公開時点)
こうして取り上げて頂けてるおかげか、今も過去の作品が時々遊ばれていたりして嬉しい限りです。
そこで本題と言うか、なんでタイトルのような質問をしてるかと言うとちょっとマンネリだよね?と言うか、何がウケるかな?とか考えたりもするけど年末から空振り続きなんです。ワールド。
いや、あんまり何がウケるかな?とかはそこまで考えてないんですけどね。そもそも「ストーリーのあるワールドのおすすめ」にあるワールド達はむしろ其れ迄の「こうしたらウケるかな?」とか思って作ったワールドが空振りしてああもう自分の見たい景色とかそんなん作るわ!とヤケで作ったワールドばかりです。
そう考えると正解は「ウケるか?」を考えずに作ることなんですが。とは言え、やはり作品を世に出してると気になるものです。何より「ストーリーのある」ってふわっとしてるというか、ストーリーは実は雰囲気レベルくらいしか考え無いんです(あ、でも分類はストーリーのあるワールドでお願いします💦)
自分のワールドが(遊びに来る人にとって)何処が良いのか?なかなか自分ではわからないものです。そんな時、Twitterでエゴサーチしてると興味深いコメントがありました。
「MW(ミュージックワールド)としてワールドを作っている人はミソシタさんくらいで、ただ勝手にMWと思っているのは9191さんのワールドですね」(引用)
MW、なるほど。コレは確かに鋭いです。少なくともワールドの作り方として「ひたすらBGMを聴く」という工程があります(その前にひたすら素材音源を探して聴いて探して聴いて…と言うのもありますが)
「このBGM好きだな」と思ったらひたすら聴いてます、聴いて聴いて、なんとなく浮かんだ景色に合わせたアセットを探してました。
基本的に「音楽」から作品をイメージしてるのですが、パーティクルライブというジャンルを知りました。そしてすごく良かった。
↑此処までが3月に書いて放置してた内容です。
↓ここからが6月からの追記です。
それから曲探しや構想を考えて迷走する日々が続きました、どうしても文章風やダウナーな雰囲気のワールドを作ってしまいました
以下ボツになったワールドの写真です
メランコリックな遊園地を作ってみたり
宇宙空間をロボットで駆け抜けたり
夕暮れの立ち食い蕎麦屋を作ってみたり
ガンアクションを考えたり
博物館のような場所で光を表現したり
そこから少し場所を変えて荒廃した都市の廃駅に舞台を変更したり
このあたりからだいぶ今の作品の雰囲気に近づいてきました
でもこれってパーティクルライブなのか?
いろいろと作ってみたいものはあっても最初の目的と違うパーティクルライブとは程遠いものばかりになりました、いや、BGMとか音楽の相性は良い風景ばかりなんですが。結局自分に何ができるのか?この悩みで80日くらい作業が迷走しました。結局20日ほど前に自分はワールド作家?なのだからワールド作家としてのパーティクルライブを作ってみよう、自分のできることで音楽を表現してみようと思って作ったのが今回の作品です。
結果としてMV(ミュージックビデオ)のなかに迷い込んだような、テレビアニメのオープニングに入り込んだような、そんなワールドになりました。音楽の世界にVRで飛び込むという意味では、この方法もまぁアリなんじゃないかと思います。たぶん。
(技術的話)パーティクルライブ(?)をつくろう!
ということで技術的な話もします。タイムラインがこんな感じです。
まず参考にしたのはyunodaさんの記事です、さすが初代GameJAM優勝者です。この強制発火については参照記事を読んでみてください。
強制発火とロジックを組み合わせます具体的な手順は
1:強制発火させるobjectを作る
2:objectは強制発火するたびにGlobalのsignalを発信する
3:2のsignalに対応したGloballogicを作る(これはわかりやすく別objectにした方が良いです)
4:Globallogicはsignalを受け取るごとにAddのIntegerでカウントするようにする
5:カウントした数字に合わせてEqualsを基本にしてsignalまたはboolが発動するようにする
というものです、Equalsにしておけば他の信号は基本falseになります。ただfalseを送られて困る場合もあるのである程度系統を分けて強制発火objectを作っておくとよいです、今回は11系統に分けてそれぞれのタイミングで信号を切り替えました。
次にですが
この△マークは何かといいますと、強制発火objectをSet Game Object Active Gimmickで制御しています。これにより発動してほしくない強制発火objectを黙らせることができます、これは意外と便利です。今回は2名までがゲームできるようになってますが2人のワープ先のポイントが微妙に違います、同じところにワープしてキャラが毎回重なるのは嫌だなぁ、と。そしてじゃぁGlobalなら?となると途中入室してしまった人が巻き込まれるという大惨事になります。そのため、AキャラとBキャラがそれぞれ別の場所にワープできるようInteract Item Triggerでownerとして指定されたPlayerがWarp Player GimmickのPlayerで移動することになります。
Aキャラ・Bキャラと参加者2名がそれぞれアイテムに触れることでownerとして登録されることになり、それぞれ強制発火の度にwarpします。が、そこで問題なのが今度は1人プレイ時ですが、このままだとAキャラ用アイテムとBキャラ用アイテムのownerが1人に集中してしまい、これまた大惨事が起きます。そのため、Aキャラ選択後10秒間だけBキャラ用アイテムが出現し、10秒経つと非表示になるようにlogicを組みました。非表示になった強制発火objectは沈黙するのでAキャラのWarp Player Gimmickだけが働きます。
ただし、この場合今度はどちらか1人が退出したりアプリが落ちたりすると大惨事が発生します。
とりあえず、このやり方は推奨できるかは別として今回面白い取り組みができました。
(´・ω・`)ノシ