Raspberlyのブログ

Raspberlyのブログ

Unityネタをメインとした技術系ブログです。にゃんこ大戦争や日常なども。そろそろブログタイトル決めたい

【アセット紹介】ProPixelizerでオブジェクトをピクセル化する【Unity】

今回はアセットの紹介をしていきます。
紹介するのはProPixelizer
3Dオブジェクトをピクセル化するシェーダーアセットです。

 

Humble Bundleのアートバンドルに含まれていたアセットです

どんなアセット?

3Dモデルを2Dピクセル(ドット絵のような見た目)にリアルタイムでレンダリングするアセットです。
専用のシェーダーを使用します。
URP専用WebGLAndroidでも動作します。

特徴
  • オブジェクト単位でのピクセル化により、オブジェクトを低解像度のようにレンダリング
  • 移動するオブジェクトのピクセルクリープが発生しない。
  • オブジェクト単位でのアウトライン制御。
  • リアルタイムの光と影をサポート。
  • オブジェクト単位のカラーグレーディング
  • SRP と ShaderGraph をサポート。
  • 被写界深度、ブルームなどの URP 後処理エフェクトに対応。

 

過去にunity1week online共有会でも紹介されていました

raspberly.hateblo.jp

 

 

アセットの仕組みはブログで解説されています

medium.com

 

 

実行環境

Unity 2021.3.7f1

Universal RP 12.1.7

ProPixlizer ver1.7.1

 

 

インポートの確認

アセットインポート完了時はこんな感じです。

セットアップ

Project Settings/Graphicsから現在設定しているURP Assetを選択

 

Depth Textureを有効にします

 

RednderListにあるRenderer Assetを選択、

 

Renderer FeatureのAdd Renderer Featureを押し、Pixelisation Featureを追加します

 

Cameraの設定

シーン内にあるCameraの設定です。(後述のサンプルシーンとかは最初から設定されています)
Anti-aliasingをオフ、Depth TextureをUse Pipeline Settingsに設定

 

Camera Snap SRPコンポーネントをCameraにアタッチ

 

これで設定は完了。
ちなみに投影方式はどちらでも機能しますが、Orthographicの方がきれいになるようです。

 

 

サンプルシーン

ProPixelizer/ExampleAssetsにサンプルシーンが用意されています

 

Exampleシーンはピクセル化したオブジェクトとしていないオブジェクトが混合したシーン

 

 

Example_NoCreepシーン

 

CameraStackingシーンはURPのカメラスタッキング(いわゆる複数カメラの合成)を使ったシーン
適当にオブジェクトを置いてみるとわかりやすいかも

 

 

 

実際に試してみる

URPのサンプルシーンで試してみます。
今回はこのヘルメットをピクセル化します。

このヘルメットはSafety Hatという名前のオブジェクトで、HardHat_Matマテリアルを使用しています。

 

HardHat_Matマテリアルを編集していきます(念のためバックアップはとっておきましょう)
シェーダーをProPixelizer/SRP/PixelizedWithOutlineに変更、
テクスチャがはがれるので、Appearance/AlbedoとNormalMapにテクスチャを設定。

 

これでヘルメットがピクセル化されました。

 

マテリアルのパラメータPixel Sizeからピクセルの度合いを調整できます。

他にもアウトラインを設定できたりします。

 

 

まとめ

ProPixelizerを使って、3Dオブジェクトをオブジェクト単位でピクセル化しました。
URP専用アセットで、WebGLに対応しているのでUnity1Weekでも利用できます。

 

 

なんかおかしい時

オブジェクトがピクセルではなくディザ抜きされたような見た目になっている場合、
URP Assetのセットアップがうまくいっていない可能性があります

きちんとセットアップしてもこうなっている場合、他のアセットが干渉しているのかもしれません。
このアセットを試す時、最初はいろいろなアセットが入っているプロジェクトにインポートしましたが、どう調整してもうまく表示されなかったので新しいプロジェクトでやりました。(そっちだと問題なく動いた)
もし同じような状態になった場合、プロジェクトの方を疑った方がいいかも。

 

 

 

類似アセットとの比較

過去に画面全体をピクセル化できるStylizer - Extendedというアセットを紹介しました。

raspberly.hateblo.jp

 

Stylizerは画面全体の見栄えを調整するアセットでピクセル化は複数ある機能の一部です。
一方ProPixelizerはピクセル化に特化しており、オブジェクト単位でピクセル化できるという違いがあります。
手っ取り早く全体をピクセル化したいならStylizer、細かい設定がしたいならProPxelizerがいいですね。(所感)

 

 

 

他のアセットの紹介記事はこちら↓

raspberly.hateblo.jp

 

 

 

※本記事にはAssetStoreアフィリエイトリンクが含まれています。

他、間違っている箇所、わかりにくい所がありましたらコメントにお願いします。

【イベントレポ】: SYNC Meetup Day

今回はUnity SYNCミートアップイベント『SYNC Meetup Day』にいってきました。
そのレポ的なやつです。

events.unity3d.jp

 

これは10/6と10/7の2日間に16:00~19:00まで開催されているイベントで、
オンラインカンファレンスUnity SYNCに関連したオフラインイベントです。
グッズショップにUnityなんでも相談所(要予約)が用意されています。


イベントの参加自体は無料で参加登録も必要ありません。

 

会場のギンザ・スゴイタカイビル (GINZA SIX)

地上から行ってもいいですが、駅地下通路からのルートがオススメです。
寒くないし雨で濡れません。(エレベーターはオフィス用のやつを使うよ)

 

 

入場まで

7階で受付を済ませたら8階のUnity JapanオフィスにGO!スタッフの方がいるので迷いません。
入ってすぐにノベルティが置いてあり、クリアファイルやマスクなどがもらえます。

 

ユニティちゃんがお出迎え!
Unite Tokyoに来たみたいだぜ。テンションあがるなぁ~

 

受付時にドリンクチケットが1枚もらえるので、それで好きな飲み物と交換できます。
私はラムネを選択しました。もちろんその場で飲める!

 

 

物販コーナー

物販コーナーが用意されていて、BOOTHで売られているグッズがその場で購入できちゃいます。
BOOTHだと届くまで時間がかかるので、すぐ欲しい方にはうれしいですね。

unity-japan.booth.pm

 

 

お馴染みのパーカーに、はんてんジャケット、Tシャツなど。
手触りやサイズ感などを直接確認できるのが物理ショップのいいところ。

 

BOOTHでもそうですが、6000円以上購入するとバッジがもらえます。
白と黒の2種類あり選べます。

 

私はTシャツ数枚とはんてんジャケット、ラムネとポテイトチップスを購入しました。

ラムネとポテトチップスとナッツは会場限定販売です。
観賞用にいいですね。

 

 

展示コーナー

CEDECで紹介されていたHDRPのTerrainデモが展示されていました。

youtu.be

もちろんパラメーターとかいじり放題!

 

立体ディスプレイを使ったCandy Rock Starの展示もありました。
これのすごいのはただ立体に見えるだけでなく、ユニティちゃんがこっちに視線を向けてくるところです
ほんとすごいのでぜひ体験してほしい。

 

たしかこのディスプレイだったはず

www.sony.jp

 

 

終わり

明日もやってるよ!
イベント自体は参加登録不要なのでみんなも遊びに来てね!

 

グッズはBOOTHオンラインショップでも買えますが、SYNC開催(10/26)までの限定ショップなのでお早めに!

unity-japan.booth.pm

 

 

以上です。

 

【勉強会レポ】: 📣 unity1week online共有会 #9

勉強会のレポート(メモ)です。
参加したのはこちら「📣 unity1week online共有会 #9」

meetup.unity3d.jp

ハッシュタグ : #u1w共有会

 

アーカイブはこちら

youtu.be

 

unity1week共有会って何?

unity1weekでいろんなゲームを遊んでいると
「どういう実装をしているんだろう」「どんな人が作っているのか」など気になることがいっぱい!

それら気になることを直接聞けばいいじゃん!というのがunity1week共有会の始まりで、
みんなで学んで成長することが趣旨です。

unity1weekについてはこちら

Unity 1週間ゲームジャム | フリーゲーム投稿サイト unityroom

今回は10人の発表者にトークしていただきます。

 

 

LT1:unity1week 期間中の不安に向き合う

トールビズの秘薬師 | フリーゲーム投稿サイト unityroom

ゲーム作りはつらい

・作っていると、このゲームは面白いのかわからなくなる
・面白いと思っていても独りよがりになっていないかという不安
→完成まで不安は続いて病んでしまう

最初にこのゲームは「ここがおもしろい」を決める

そうすると不安が軽くなる
最初に面白さを決めることが大事、ブレずにゲーム制作ができる(コンセプトに近い)
じゃあどうやって決めるか

日頃から"面白い"をストックしておく

面白いと思った心がすごく大事。
面白いことがあったらなぜ面白いか分析してメモしておこう。体験だけでなくアニメや映画も。
そうするとストックが溜まっていきu1wネタに困らなくなる。

逆にストックしてないとうまく出せない、もし毎回ネタに困っている人は日頃の面白いを記録してみるといいかも。

アイディアには元がある

0から1は生み出せない、新しいアイディアも既存のアイディアの組み合わせでしかない。
自分の頭の中だけではうまれない、何か取り入れてアウトプットしよう。
お題を意識しすぎず自分の面白さを優先する、そうすると楽。

宣伝

今回制作した「トールビズの秘薬師」は製品版に向けて開発中
よろしくね

 

 

 

LT2:PhotonFusionを使ってオンラインマルチプレイゲーム作った話

QuantumFrontier | フリーゲーム投稿サイト unityroom

Photon Fusionとは

・ゲーム向けのネットワークエンジン
・PUN2の後継

u1wで使うにあたって

WebGLとの相性はいい
・初めてさわる場合は公式のサンプルを元に作るのがおすすめ(いくつかある)

www.photonengine.com

SDKは最新版にする(結構活発にアップデートが行われています)

作品とFusion

作品の要件上、共有モードを使用しました
・中央集権ではなく分散管理
・ルームに一人でもいればルームが維持される
・権限の扱い方が違う(状態権限がないと同期できない)
これはRPCを使用して解決

まとめ

・u1wでオンラインマルチも現実的に作れる
・共有モードについてはゲームによっては最適解

宣伝

参考記事

qiita.com

qiita.com

qiita.com

 

 

 

 

LT3:アナログゲームを意識して体験を作る

🎲Squirrel Board | フリーゲーム投稿サイト unityroom

ボードゲーム(アナログゲーム)らしさについてのお話

ボードゲームらしさとは

手触り感、現物感のこと

コンポーネント
・コマなどの造形を楽しんだり
・ものがいっぱいあるのを楽しむ

物理的(アナログ)な操作
・カードのシャッフル
・コマの移動
・チップのやりとり

 

このあたりをゲームに取り入れられないか考えた

グラフィックデザイン

コンポーネントっぽさを出す

コマのデザインは角をなくして、文字情報を減らす
UIも角がないやさしいデザインに

モーションもアナログっぽさを出す

チップの移動をシームレスにして現物を動かしている感を出す
リスの移動もScaleを変えてぴょんぴょん移動してる感を出す

まとめ

ゲームグラフィックとしてだけではなく、現物としてデザインするとどうなるのかと考えると、思ってもみないことに気を付ける必要が出てくる。
無駄っぽいモーションやアナログ的な間を挟むと手触りがよくなる。
普段触れてないジャンルのゲームとかのエッセンスを取り入れると新しい発見があって面白い。

note.com

www.4gamer.net

 

 

 

 

LT4:暗闇の中の光と音

Glow in the Dark | フリーゲーム投稿サイト unityroom

今回表現したいもの

儚さの表現

エネルギーがない状態との差をつける
発光の消滅、無音などで力を失うような表現

蓄光材料の質感

表面下散乱を擬似的に表現

youtu.be

ゲームがほとんど真上からの視点、暗闇の中のため強めのDirectionalLightは置きたくない
カメラの後方に光源を置いて、カメラ方向で代用

マップ作成

インスペクターに数式を代入してヒカリを配置

youtu.be

ライティングの設定

ライトマップとライトプローブのベイクに挑戦

youtu.be

改善点

・ライティング調整
 一部発光しすぎるヒカリのカーテンがある
・BGMに馴染むようなSEまでいかなかった
・クリアタイムがスコアになっていた、そもそもスコア自体不要だったのかもしれない

まとめ

・表現したいものを詰め込むことができた
・夫婦で共同制作できた
・フルバージョンの曲があるのでぜひ聞いてみてください

youtu.be

 

 

 

LT5:12人で進めるメタバース型開発

HELL is MINE | フリーゲーム投稿サイト unityroom

こだわりポイントをいくつか紹介

ほぼフルスクラッチで開発

フォント以外は全部自作
ゲームの世界観にマッチしたアセットが使えた

入念なテストプレイ

メンバーにテストプレイ専門の方がいた
かなりの時間をテストに費やし、フラっと遊びにきた方にも協力いただいた
結果、バグがほとんどないゲームになり、UXの向上・バランス調整にもつながった

なぜできたのか

このゲームは総勢12人で作っています
大人数で作ることによって膨大な作業量をこなすことができた

人数が多いときの問題

人数が多いことで生じる問題もある

 

オフライン開発
・時間が合わない
・遠方だと参加しずらい

リモート開発
・連絡を綿密に取らないと不備が生じる
・進行管理が難しい
・しっかりした仕様がないと手戻りが発生しやすい

 

こういった問題をあまり感じずに開発できたのはNeosVRを使ったため

NeosVRとは

NeosVRはメタバースの一種
会議の場所、開発現場として活用しました


・スペースが無限で散らかし放題な作業場
・並列でシームレスな会議ができた
・偶発的なメンバー開発
 最初のメンバー集めに、開発中もオープンでやっていたので人がワイワイ集まり賑やかな雰囲気になりやすい

まとめ

NeosVRはいいぞ

 

毎週火曜日に初心者案内イベントやってます

Neos VR初心者案内デー - neos search ネオスサーチ! - 先進的VRメタバース neos vrの情報サイト

 

 

 

 

LT6:Unity×Processing 1 Week

呪溜 | フリーゲーム投稿サイト unityroom

今回はProcessingについてお話します

呪いの表現

・蓄積していく呪いに合わせて画面端を侵食してくるようなエフェクト
・天使を呪いで攻撃した時のエフェクト
・市民の呪いを吸収した時のエフェクト

この表現はSpriteMaskを使っています
Mask画像はProcessingで作りました

Processingとは

グラフィックに特化したプログラミング言語
ProcessingならUnityより簡単に画像を作ることができる
C#と似ていて学習コストが低い

 

みなさんProcessing使いましょう

 

 

LT7:癖

FOREVER with you... | フリーゲーム投稿サイト unityroom

今作を作る時に気をつけたことについて

ストーリーやキャラは主役ではなく脇役として割り切る

今まではストーリーやキャラを考えてお題を合わせる方針だったが、
今回は逆にしてお題から内容を考えた、その方がお題を回収できた

ストーリーは情報量が大切

今回意識したことは3つ

・想像の力を信じる
 一つの語句に属性を持たせたり、次のセリフに興味を持たせる

 

・語らない強さ
 一つの事柄(単語など)を別の要素に分解させる
 ゲーム内の固有名詞を使うタイミングを検討することで、ストーリーに興味を持たせる

 

・いかに文字を使わずに済むか
 キャラクターの様子など画面で表せるものは文字にしない
 同じ意味の語彙を併用せず、一度に見せる文字数を制限する

まとめ

・「unity1weekでゲームを作る」という意識をもってゲームを制作した
・ストーリーやキャラを脇役として活かした
・情報をやりくりした

 

以上のことを守ると、自分の癖にぶっ刺さるゲームが生まれる
つまり、誰かの癖にぶっ刺さるゲームが生まれる

 

unity1weekは評価やランキングに目が行きがちだが、
自分に刺さるかどうかで作った方が楽しい

 

 

 

 

LT8:初心者が初ランキング入りを目指した話~継続は力なり~

EarnGiantMoney!!~9999那由多円ためろ!!~ | フリーゲーム投稿サイト unityroom

戦略を立てた

操作性、斬新さ、楽しさの3分野で勝負

操作性を上げる

操作はマウスorキーボードのみで完結
キーボードは他ゲームを真似しよう
操作ミスや待機時間を作るような作りはやめる、長押しとかはやめた

斬新さを上げる

アクションやシューティングだと競合が多く差別化が難しい
ネタゲーならいけるかもと考えた

楽しさを上げる

運と実力の割合には気を付ける
運2実力8がちょうどいいかも

題材の決め方

Youtubeで「さらば青春の光」というお笑い芸人の「ぼったくりバー」というコントをたまたま見て
人はデカい数が好きということに気が付いた

技術的な話

プログラム編

1から作るのは難しいので、ランキング機能をネットからもらってきたり
過去に参加した自分の作品からコードを持ってきたりした

デザイン編

ドット絵はAsepriteで作成
サウンドは、過去のゲーム作りでいいと思ったサイトをブックマークしておいた所から
他の人のゲームを遊んだときにいいと思った曲やサイトをブックマークしておくといい

反省

好き嫌いがわかれるゲームになってしまった
ランキング入りを目標にするのは精神衛生上やめたほうがいい

最後に

自分の中で目標を立てて参加しよう(機能なりデザインなり)それを守って出せたら勝ち
そういう積み重ねを作るといつか花咲きます

 

 

 

LT9:サウンド周りのひと工夫

みずたまりのせかい | フリーゲーム投稿サイト unityroom

サウンドまわりでひと工夫したことについて

BGMのひと工夫でインパクトを与える

水たまりの世界から現実世界に転換するタイミングでBGMの質感を変える
Audacityで音源を2つ作成し、音量をクロスフェードさせる

SEのひと工夫でリッチに

SEのピッチを変えて単調さを避けてリッチな印象にする
足音も地面によってSE自体を変える

起動画面のひと工夫で没入感をうむ

サウンドを体験してもらうため、起動画面にサウンドに関すること表示
音量調整方法を最初に提示しておく
起動画面を挟むことで準備ができてからタイトルに進んでもらう

SE管理のひと工夫で開発を楽にする

SEはアセットストアで購入したもの使っている
SEの選定は、サウンドアセットのみをインポートしているサウンド専用プロジェクトを用意しておく
ゲームプロジェクト内には選定したサウンドだけいれることで容量が増えない

 

 

 

LT10:リーフホッパーができるまで

リーフホッパー⭐️ためてはねる | フリーゲーム投稿サイト unityroom

このゲームをどのように作り上げたのか紹介

企画

ゲーム性はシンプルに、しかし気持ちのいいアクションを目指した
絵作りでは妥協したくないので、世界観をイキイキと描くためのシステムにこだわった

気持ちよさを追求したアクション

マウスを引っ張って飛ばす直感的な操作、
操作を気持ちよいものにするため効果音とエフェクトでプレイヤーを褒める
失敗もわかりやすくした
操作が単調にならないようギミックや敵も用意した

絵作りのこだわりポイント

イモムシの視点で世界をイキイキ描く

キャラクターアニメーション

全てコマ割り、ジャンプにはトレイル、ダメージモーション時は残像を表示

足場となる葉っぱの動き

一番こだわったポイント、アクションの気持ちよさに大きく影響する
実際の葉っぱを観察しながら何度も試行錯誤
茎は葉っぱにくっつくような動きをしてほしいのでIKをつかって表現

奥行きの表現

レイヤーを7つに分け、スクロール速度を変えることで背景を作る

時刻の変化

朝昼夜は背景スプライトの切り替えで表現
ゲームの進行状況に応じてフェードアウト

まとめ

・気持ちよさを実現するために、直感的な操作でフィードバックを充実させた
・グッドやコンボ、敵やギミックによる難易度調整は体験を奥深いものにした
・絵作りはキャラクターアニメーションや葉っぱの動きにこだわり手触りを追求
・多重スクロールによつ奥行き、風揺れ、時刻の変化で世界をイキイキと描くことに挑戦

 

 

 

 

 

感想

みんなおもしろかった~
学びしかない

 

個人的に一番スゴイと思ったのは10番目かちゅーしゃさんのLTですね。
実用的なテクニックがわかりやすく解説されていて素敵。
これで初参加なのもすごいし、スプライトのボーンアニメーションやIKを初めて触ったというのもすごい。
それらのテクニックを分析し、言語化し、LTで発表できる時点でつよつよ
初めてでこんなにできるの...?

 

9番目のゆーじさんのLTで出てきたサウンドアセット確認用に別プロジェクトを作る話もいいですね。
私もアセットはたくさん使うので似たようなことをしていますが、サウンドに限らずステージ用の3Dモデル、スカイボックスなどはアセットの容量が大きいので、事前にこういうプロジェクトを用意しておくのは本当におすすめです。
完成プロジェクトから特定のアセットを抜き取る時も安全かつ確実。

 

1番目のKinjoさんのLTは録画でしが、ゲーム内で使われたいる曲をそのままLTのBGMにするの好き。
落ち着いたアンビエント?な曲なのでLTにマッチしていました。

 

あとNeosVRでの開発すごい...
なんかもう新しい時代を見た気がする。

 

 

以上です。
LT登壇者のみなさま本当にありがとうございました。

 

 

 

 

今回休憩時間にunity1weekのリール動画を流していただきました。
とと様ありがとうございます。

youtu.be

 

unity1weekリール動画を作り始めて1年たったので振り返ってみる

Unity 1週間ゲームジャムのリール動画を作ってから1年たったので、その振り返り記事です。

unity1week リール動画とは

1週間でゲームを作るイベント「unity1week(Unity 1週間ゲームジャム)」の上位作品をリールとしてまとめた動画です。
2021/09/29に初投稿し、この記事の投稿日でちょうど1年経ちました。
これまで4つの動画を投稿しています。

youtu.be

 

 

リール動画制作を始めたきっかけ

Made with Unity ReelのUnity 1週間ゲームジャム版を作りたいと思ったのがきっかけです。
Made with Unity ReelはUnite Tokyo(Unityの公式カンファレンス)の待ち時間に流れている動画で、
直近のUnityで開発されたゲームのプレイ動画をまとめたものです。

www.youtube.com

(特に2018年版からは強い影響を受けていて、文字の動かし方などを参考にしています)

 

こういう動画は見ていて楽しいし、「1週間ゲームジャムで似たような動画が欲しいなぁ...
って思ったのがきっかけでした

 

 

使用ソフト

PowerDirector 365

動画編集ソフトは複数あるので迷いましたが、これにしました
結構歴史があるのとネット上に情報が多いのが決め手

 

他に検討したソフトはFilmoraです。
Filmoraは買い切りな上にとても安価ではありましたが、EaseInOutができないなど機能面が弱かったので断念。
ただそちらはUIが見やすくとても使いやすかったです。

今ならDaVinci Resolveとかもよさそう

 

Bandicam

画面キャプチャーソフト、プレイ動画の録画に使用しています。
PowerDirectorを契約するとScreenRecorderというキャプチャーソフトが無料で使えるので、新規にPowerDirectorで動画制作始めたいというのならいらないかも。

 

Bandicamは買い切りでかなり安いのと、複数の動画編集ソフトを使うかもしれない方はこういうのを買っておくと便利だと思う

 

 

 

 

リール動画を作る時に気を付けているポイント

最初に曲を選ぶ

私がリール動画を作る上で最初に行うのは曲の選択です。
曲のリズムに合わせて画面遷移をさせたいので、自分が聞いて気持ちのいい曲にしています。
おおよそ30作品前後を載せたいので1フレーズ5~6秒全体の長さは3~4分前後を目安に選んでいます。
ジャンルは(今のところ)チップチューンのみです。理由は特にないですが動画の雰囲気に合ってると思うので。

 

ほんとは1作品の時間をもっと取りたいですが、その分紹介できる作品数が減ってしまいます。
動画自体を長くする手もありますが、視聴者の負担になったり途中で飽きたりする可能性もあるため、このくらいがちょうどいいのかなと。

 

プレイ動画の録画と切り抜き

ランキング発表後にプレイ動画の録画と切り抜きを行います。
切り抜く時は以下の点を考慮しています

一目でどんなゲームかわかりやすいシーンを選ぶ

動画を見る人全員が全部のゲームをプレイ済みではなく、1作品5~6秒しかないので、
そのゲームがどんなゲームなのかがわかりやすいシーンを切り抜く必要があります。
アクションゲームであれば動いているシーンや攻撃してるシーン、パズルなら解いているシーン、
ゲームによりますがとりあえず見た目のインパクト重視で選びます。

ただし、動画の都合上音がないのでリズムゲームや、実際にプレイしないと動きやルールが把握できないゲーム、動画だけだと何がなんだかわからないゲームも結構あるのでここはまあ悩みどころ。
動画を見て「このゲームすごい!」「おもしろそう!」「遊んでみたい!」と思ってもらえればよし。

 

 

具体的な切り抜きポイント

#23で最初に紹介した6つのゲームを例に取るとこんな感じ

 

時溜のアマリ:ストーリーがあるので会話シーンと戦闘シーンを半々に
ノースウインド&ファイア:魔法を使うシーンがド派手なのでそこをメインに
リーフホッパー⭐️ためてはねる:背景、葉っぱなどのアニメーションがスゴイのでそれが伝わるように
渓の夏:雰囲気や空気感が素晴らしいゲームなので、川を眺めている場面を長めに
クイズ★ウサモネア:キャラクターがメインなので自己紹介場面など大きく映るシーンを多めに
ためてまわす鳥さんタイピング:ガチャが目玉なので、SSRを引く場面を最後に入れてインパクトを出す

 

 

パズルゲームやストーリー重視のゲームの場合深刻なネタバレは控える(最終ステージのギミック攻略など)

ネタバレが含まれるとしてもかなり短いカットに留めることを意識しています。
アクションゲームやクリア難易度が低い、または1プレイが短いものであれば多少入れてもいいとは考えています。

 

 

 

 

動画の配置とトランジション

各プレイ動画の配置および並び順は、ランキングの順位に関係なくランダムに行っていますが、
以下の点を考慮しています

同じジャンルのゲームを連続して配置しない

同じような見た目、システムのゲームが続くと視聴者が飽きる可能性がある。
また似ているゲーム同士が比較されるのを防ぐため。
作品同士の何らかのシナジーがあれば話は別。まあunity1weekでそこまで似通ることはないです。

 

 

トランジション(画面遷移)は前後のゲームの動きに合わせる

例えばキャラクターやカメラが右側に移動する横スクロールアクションゲームであれば、
画面切り替えのトランジションは左から右に流れるものにします(目線が自然に誘導される)

画面によってはあえて進行方向とは逆にするというのも手

 

カメラの動きが特にないor決まっていないゲームであれば、拡大・縮小などランダムに振り分けます。
また同じトランジションを連続で使うのは2~3回までにします、視聴者の飽きを防ぐためです。

 

1作品の画面切り替え(カット)は多くても3回までに抑える

音ハメなどやる分にはもっと増えていいんですが、短時間に何度も画面を切り替えるのは危険です。
切り替え速度が速いと画面がチカチカするので人によってはかなりのストレスになります。

 

 

 

ランキング発表前にできることはしておく

ランキング発表後はできるだけ早く動画を上げたいので、事前にできる準備はしておきます。

(おおよそunity1week共有会が始まるまでに完成させることが目標)

 

大体のスケジュール感ですが、ランキング発表の2週間前からプロジェクトの作成と曲の選定を開始。
1週間前には曲を決定し、イントロ部分を作成します。↓こういうの

 

 

ゲームのタイトル、作者名の部分も事前にテンプレートを用意しておきます。
これは過去のリール動画の部分をテンプレート化し多少手を加えながら使いまわしています。

 

 

 

 

1年間リール動画を作ってきた感想

すごい楽しかったです。
動画編集をちゃんとやるのは初めてでしたが、今は使いやすいソフトがあるのもあって簡単に作ることができました。
昔はAviUtlの環境構築で詰まったりしてた...


UnityのTimelineっぽいとは聞いていましたが、たしかに似てるかも。
Timelineに慣れてる人であればスムーズに覚えられると思います。
逆にUnityだと簡単にできるのになぁって場面などもあっておもしろい。

 

動画自体もギルド内をはじめ高く評価していただけました。
「かっこいい」とか「うれしい」とか言ってもらえるとすごくよろこぶので、
気に入ったら動画の高評価よろしくお願いします!

 

 

最後に

私のやってることはプレイ動画を撮って曲に合わせて切り貼りしてるだけなので、なにもすごいことはしてません。
全てはUnity 1週間ゲームジャムを企画されているないちさんと、多くのゲーム開発者の皆さんのおかげです。

 

本当にありがとうございました。

 

 

 

宣伝 unity1week共有会

unity1weekに参加されたクリエイターによる知見や学びの共有会が開催されます
興味のある方はぜひ~

meetup.unity3d.jp

 

 

 

 

おまけ 使用曲の紹介

動画で使用している曲や作者の紹介とか

soundorbis

多くのフリーBGMを手がけるアーティストの方です。(現在活動休止中)
チップチューンもいくつか手掛けていて、リール動画では#20~#22までsoundorbisさんの楽曲を使用しています。

twitter.com知ったきっかけは某SCPMAD。
SCP界隈ではけっこう知られている気がする。
個人的に「義」が好き。

 

 

ねひぃ(Nehii)

最近のイチオシ!
若いながらも多数のボカロ曲やチップチューンの作曲、さらにドット絵まで手がける凄腕クリエイターです。

しのりゅーさんのコンピ企画で知りました

novtos.bandcamp.com

 

作業用BGMでずっと流していたところビビっときたので、
今回許可を取りリール動画#23で使用させていただきました
いい曲ばかりなのでみんなきいて💖

twitter.com

www.youtube.com

個人的に「ホワイトコンポーザー(White Composer)」と「家出のプラトゥーン(Runaway Platoon)」が好き

 

 

 

 

 

以上です。

 

【アセット紹介】Animancer Pro でアニメーションを制御する【Unity】

今回はアセットの紹介をしていきます。
紹介するのはAnimancer Pro
Scriptでアニメーションを制御できるようにするアセットです。

 

どんなアセット?

AnimatorControllerを使わず、Scriptで直接アニメーションを制御するアセットです

「Animancer」を使用すれば、追加のセットアップ段階なしで、オンデマンドでアニメーションを再生し、すべての詳細を制御できます。Animator Controllers の主な問題が修正されており、完全に置き換えることも、併用することもできます。これにより、基本的なプロトタイピングから複雑なシステムの維持およびデバッグまで、開発の全ての段階でアニメーション作業をはるかに簡単にします。

各種機能の比較についてはこちら
ちなみにPlayable APIで実装されています

 

過去に「ジスたんファイト」というゲームを開発しましたが、
ゲーム内のアニメーション管理を全てAnimancer Proで行っています

raspberly.hateblo.jp

この時初めて使いましたが、とても使いやすく簡単にゲームに組み込むことができたので、
その忘備録もかねてこの紹介記事を書いていきます

 

 

開発環境

Unity2021.3.7f1
Animancer Pro ver7.3

 

 

インポートの確認

アセットインポート完了時はこんな感じです
Pluginsフォルダの中にインポートされます

コンポーネント、サンプルシーン、アセットのソースコードが含まれています

 

サンプルシーンの確認

Animancer/Examplesの中にサンプルシーンが用意されています
たくさんあり、1つ1つドキュメントも完備しているのでかなり親切!

※URPで開く場合は、ArtフォルダにMaterialがあるので変換しておきましょう

多いのでここでは取り扱いません

 

 

実際に試してみる

AnimancerProを使って、実際にアニメーションをさせてみます
はっきり言って公式ドキュメントが優秀すぎるので詳しくはそっちを見た方がいいです
(どちらかというと未来の自分が読み返してわかるように書いておきます)

 

内容としてはExmaple01~02あたりまで

キャラクターの準備

今回はキャラクターモデルにユニティちゃんを使用します
これはAnimatorがあればなんでもOKです

シーンにUnityChanSSU_DynColを配置し、AnimancerComponentをアタッチします
Animatorが設定されていることを確認しましょう

 

 

AnimationClipの再生

最もシンプルにAnimationClipの再生をします

AnimancerTest.csを作成

using UnityEngine;
using Animancer;

public class AnimancerTest : MonoBehaviour
{
    [SerializeField] AnimancerComponent animancer;
    [SerializeField] AnimationClip animationClip;

    void Start ()
    {
        animancer.Play(animationClip);
    }
}

 

これをUnityChanSSU_DynColにアタッチし、AnimancerにAnimancerComponentを、
AnimationClipに適当な待機アニメーションを設定します

 

これで完成、シーンを再生すると設定した待機アニメーションが再生されます

 

 

入力に応じてAnimationClipを切り替える

プレイヤーの入力に合わせてAnimationClipを切り替えます

AnimancerWalkTest.csを作成

using UnityEngine;
using Animancer;

public class AnimancerWalkTest : MonoBehaviour
{
    [SerializeField] AnimancerComponent animancer;
    [SerializeField] AnimationClip idleClip;
    [SerializeField] AnimationClip walkClip;

    void Start ()
    {
        animancer.Play(idleClip);
    }

    void Update ()
    {
        if(Input.GetKey(KeyCode.W))
        {
            animancer.Play(walkClip);
        }
        else
        {
            animancer.Play(idleClip);
        }
    }
}

 

これをUnityChanSSU_DynColにアタッチし、
適当な待機アニメーションと歩行アニメーションを設定します

 

これで完成、シーンを再生すると待機アニメーションが再生され、Wキーを押している間は歩行アニメーションに切り替わります

 

上のソースコードを見て、Wキー押している間animancer.Playが呼ばれ続けるけど大丈夫?と思うかもしれませんがこの方法で問題ありません
(シンプルにするためこうしていますが、本来は適切なタイミングに1回だけ呼んだ方がいいです)

 

AnimationClipの切り替え時にクロスフェードさせる

animancer.Playを呼ぶことでアニメーションを切り替えられるようになりましたが、
これだとアニメーションが一瞬で切り替わるのでクロスフェードさせながらスムーズに切り替えてみます

 

やり方は簡単で、Playの第二引数にフェード時間を指定するだけです

if(Input.GetKey(KeyCode.W))
{
    animancer.Play(walkClip, 0.3f);
}
else
{
    animancer.Play(idleClip, 0.3f);
}

 

 

 

アニメーションが再生し終わったら別のアニメーションに切り替える

攻撃やジャンプなど、アニメーションが終了した後別のアニメーションに切り替えてみます

AnimancerJumpTest.csを作成

using UnityEngine;
using Animancer;

public class AnimancerJumpTest : MonoBehaviour
{
    [SerializeField] AnimancerComponent animancer;
    [SerializeField] AnimationClip idleClip;
    [SerializeField] AnimationClip jumpClip;

    void Start ()
    {
        animancer.Play(idleClip);
    }

    void Update ()
    {
        if(Input.GetKey(KeyCode.Space))
        {
            var state = animancer.Play(jumpClip, 0.1f);
            state.Events.OnEnd = () => animancer.Play(idleClip, 0.3f);
        }
    }
}

これをUnityChanSSU_DynColにアタッチし、
適当な待機アニメーションとジャンプアニメーションを設定します

 

これで完成、Spaceキーを押すとジャンプし、ジャンプアニメーションが終わったら待機アニメーションに切り替わります

 

 

おまけ 1つのAnimationClipだけを再生したい場合

1つのAnimationClipだけを再生したい(遷移させる必要がない)場合は、
SoloAnimationコンポーネントを使うと簡単です

 

SoloAnimationコンポーネントをアタッチして、
Animator(AnimancerComponentではない)と再生したいAnimationClipを設定するだけ

これでシーン再生時にAnimationClipが再生されます
Scriptを書く必要すらありません

手っ取り早く何か再生したい場合に便利!(ずっと同じ動きをする背景のギミックとかによさそう)
SoloAnimation.IsPlayingをfalseにすると一時停止もできる

 

 

まとめ

Animancer Proを使ってアニメーションの再生、切り替えまでやってみました
基本機能のみでしたが、他にもブレンドの設定、2Dの対応、アニメーション中のイベントの発行からレイヤーまでAnimatorControllerでできていたことはほぼ全て対応可能です。
なんならAnimatorControllerとの併用までできます

 

ジスたんファイトは今回紹介した基本機能だけで実装できています
公式ドキュメントがとても充実しているため、何ができるか知りたい方はそちらもチェックしてみてください

 

ちなみに無料版もあります、ビルドはできませんがエディター内であれば全ての機能を使用できます

 

以上です

 

 

参考資料

qiita.com

 

 

 

他のアセットの紹介記事はこちら↓

raspberly.hateblo.jp

 

 

 

※本記事にはAssetStoreアフィリエイトリンクが含まれています。

他、間違っている箇所、わかりにくい所がありましたらコメントにお願いします。

【イベントレポ】: 東京ゲームダンジョン

イベントのレポート(メモ)です。
参加したのはこちら、「東京ゲームダンジョン」

tokyogamedungeon.com

ハッシュタグ : #東京ゲームダンジョン

 



 

 

東京ゲームダンジョンとは

インディーゲームの展示会です

東京ゲームダンジョンは個人や小規模チームが制作するデジタル・ゲームの展示会です。

2022年8月7日(日)が初の開催となります。

低廉な料金と充実した設備で、気軽に作品を出展・試遊できるイベントを目指します。

主催者も個人でゲームを作っているインディ開発者です。

みんなで一緒に国内のインディゲームを盛り上げましょう!

 

こちらで体験したゲームの感想とか書いていきます

 

 

 

 

※以下体験させていただいたサークル及び作品の紹介です
※掲載している写真は全て許可を得て撮影しています
(人が写っている写真はトリミングや黒塗りなどの加工をしています)

 

A-04 劇団にゃー / ミライノ制作所

ADVゲーム「劇団にゃー」を体験させていただきました
劇団中の猫のために、セリフを選んで劇を進行させるゲームです
Demo版のためシナリオ自体は短いですが、とてもかわいいさまざまな猫が登場します

 

 

 

G-04 AZNANA / カラメルカラム

スマホゲーム「AZNANA」を体験させていただきました

 

少年としゃべる生首アズナナがガラクタを集めてお金に変えたり、
ものを買ったり売ったりしてお金を稼ぎ、街からの脱出を目指すゲームです
絵作りがきれいで雰囲気がとても良い!


近いうちにリリースされるとのこと

caracolu.com

 

 

 

C-03 きゅんぴの夏まつり / tnk / ティーエヌケー

リズムゲーム「きゅんぴの夏まつり」を体験させていただきました
きゅんぴというキャラクターが夏を楽しんでいる歌に合わせて、画面横にあるスイカをタイミングよくとっていくゲームです
歌も流れていてきゅんぴちゃんがとてもかわいい(映像を見ながらやるのはなかなかに難しい)

 

 

B-09 シリコンリバーサイド / えふぇ子ゲームス

パズルADVゲーム「シリコンリバーサイド」を体験させていただきました。
パネルを組み合わせて数字を作り、正解の数字を探し出すゲームです
挑戦回数が限られていて、最初はルールを理解しないで消費してしまったためクリアできなかった...
次もあればまたやりたいところ

 

 

 

B-02 星つなぎのフォトン / hanedaSK.Games

「星つなぎのフォトン」を体験させていただきました。
隕石から星を守るパートと、星に草を生やすパートに分かれています
隕石パートの操作はシンプルで、星を3つ以上つなげて爆破するだけですが、一度に複数降ってきたり、
動きが早い赤い隕石への対処などやりごたえがありました

 

2回目でクリアできましたが、クリア者が結構少なかったらしい

 

 

 

H-09 ラトレイアの天使たち / かぼちゃれんが

傘を使った2Dアクションゲームです
攻撃するだけでなく傘を広げたままグライドしたり、風に乗って舞い上がったりと傘を使ったアクションが豊富!
高い所からの落下攻撃が気持ちよかったです

 

 

 

F-03 ロボットガール・ミーツ・ヒューマン! / しおかぜのまち

「ロボットガール・ミーツ・ヒューマン!」を体験させていただきました。
ロボットのスカーレットを導くADVゲームです
キャラクターは2Dですが背景は3Dでできていて、スカーレットのセンサーを使った謎解きが特徴でした

 

8月31日にSteamで配信予定です

 

 

 

E-02 ボクロボ ~Boxed Cell Robot Armies~ / matsu friends

ボクロボと呼ばれるユニットを配置して戦わせるオートバトルゲームです
近接に弱い、遠距離攻撃ができるなどユニットの特性を理解して配置するのがポイント


Steamで現在セール中とのこと!

 

 

A-10 わんおぺ寿司 / べすとまん

「わんおぺ寿司」を体験させていただきました。お客の注文に合わせてお寿司を作るゲームです
大きな特徴はワンオペという点で、ゲーム中ものすごく忙しいです
客が増えるととても手が回らなくなり、早く届けたい客がいるのにその手前の客がかっさらっていったりとアドリブ力が求められます
お寿司は時間経過で劣化する上、閉店時に残っているお寿司は全て廃棄されるため「誰か食べるだろうからとりあえず作っとけ戦法」ができないなど、システムも作りこまれているのがいいですね

 

アプリがすでに公開済みです

play.google.com

わんおぺ寿司

わんおぺ寿司

  • Kazuki Murakami
  • ゲーム
  • 無料

apps.apple.com

 

 

 

A-08 CRAZY DONUTS / りりぃカンパニー

「CRAZY DONUTS」を体験させていただきました。奥に向かって進みドーナツをとっていくランゲームです
お邪魔キャラのブタがいたり、突然電車が出てきてびっくりしたりとギミックも豊富!
1ミスで即アウトですが、配置などは毎回固定なので運要素もなくリトライも早いためかなり快適

 

アプリがすでに公開済みです

play.google.com

CRAZY DONUTS(クレイジードーナツ)

CRAZY DONUTS(クレイジードーナツ)

  • Yuri Hattori
  • ゲーム
  • 無料

apps.apple.com

 

 

 

D-09 魔界堕ちのラズリエル / オタケサン

カードゲーム要素があるローグライクゲームです。
特徴としてカルマ値があり、遠距離攻撃ができる天使の力と強力な悪魔の力を使い進んでいきますが、
悪魔の力を使いすぎるとデメリットが発生するためその使い分けが重要になっています
敵も強くなっていき、回復アイテムを使ってもカルマが溜まっていくため、かなりやりごたえがありました

 

 

 

C-05 亜電 / 鷹館

ダンスバトルゲーム「亜電」を体験させていただきました。
かわいいキャラクターが、(物理的に)激しくぶつかり合ってダンスするゲームです
キャラクターのアニメーションに画面揺れ、カットインのテンポなど操作していてとても気持ちいい!

 

 

 

B-10 ユウゴウパズル / Qrostar

ぷにぷにしたゼリーを融合させるパズルゲームです
動かすたびにゼリーがぷるぷる震えるのがとてもかわいい!
そのかわいい見た目とは違ってとてつもなく難しかったです(ヒントを使ってなんとかクリア)

 

 

 

 

イベントの感想

かなり快適で楽しかったです
インディーゲームの展示会はいくつか参加しましたが、その中でも特に過ごしやすかったと思います
時間帯によってチケットがわかれているためうまい具合に混雑しにくいようになっているのと、
通路もやや広め?に感じたので、「ここのブース人多すぎて通路がふさがってる」といった状況が一切ありませんでした

 

 

らくがきスペースがあるのもおもしろい

 

 

いくつか体験しましたが、特に面白いと思ったのは「魔界堕ちのラズリエル」と「亜電」です
シリコンリバーサイド」もクリアできなかったのでもう一度チャレンジしたい!

 

逆に人気がありすぎてプレイしたかったけどできなかったのが以下の4つ
B-05 BearRunner Any% RTA」「B-07 Recolit」「C-08 ヒメをゴールへつれてって」「G-10 ラグドーリオン

 

「BearRunner Any% RTA」はプレイ中のインパクトがヤバイのもありとてつもない人気でした

 

「ヒメをゴールへつれてって」はunityroomでも公開されているのでこちらから遊ぶことができます

 

 

 

以上です

 

 

次回もあるみたい

 

【アセット紹介】Volumetric Fog & Mist 2 で霧を作る【Unity】

今回はアセットの紹介をしていきます。
紹介するのはVolumetric Fog & Mist 2。
立体感のある霧を作成するボリュームフォグ&ミストアセットです。

この記事では機能の紹介と簡単な使い方の解説をしていきます

どんなアセット?

Built-in、URPに対応したフォグアセットです
立体感のある霧を作成できます

Volumetric Fog&Mist 2は、Gigaya、Praey for the Gods、MarZ:Tactical Base Defense、Sky Fleet、FrontlineZEDなどのゲームで使用される完全でパフォーマンスの高い没入型AAAフォグソリューションです。

 

 

開発環境

Unity 2021.3.7f1

URP 12.1.7

Volumetric Fog & Mist 2 ver8.3

 

 

インポートの確認

アセットインポート完了時はこんな感じ
VolumetricFogBundle」という名前のフォルダの中にBuilt-in用とURP用で2つのパッケージが含まれています
プロジェクトによって必要な方のパッケージをインポートしましょう

この記事ではURPを使用します

 

URP版の設定 (Built-inの場合はスキップ)

URPの場合RenderPipelineAssetの設定が必要です
Project SettingsのGraphics/Scriptable Render Pipeline Settingsに設定してあるRenderPipelineAssetを開き、Depth Textureにチェックを入れます

 

よくわからない場合はDemo用に用意されている
VolumetricFog2/Demo/URP Pipeline Settings/UniversalRenderPipelineAsset.assetをそのまま設定してあげればOKです

 

 

 

デモシーンの確認

パッケージをインポートするとVolumetricFog2フォルダが作られます
デモはその中のDemoフォルダにあります

 

DemoScene

雲海のような霧にCubeが置いてあるシーン

とくに操作はないですが、Lightによる影の描写がきれい

 

FogOfWarDemoScene

Capsureに合わせて霧が晴れていくシーン

 

 

 

実際に試してみる

いつものURPのサンプルシーンに霧を作ってみます

 

Prefabの配置

Hierarchyビュー上で右クリックし、Effects/Volumetric Fog2/Fog Volumeを選択

 

するとFogを作成するFogVolumeがSceneに追加され、
同時に、Fogにライトの情報などを与えるVolumetric Fog Managerが自動的に作成されます

 

この状態でSceneは霧がかったように白くなります

FogVolumeにアタッチされているVolumetricFogコンポーネントを操作して、霧を調整します

 

VolumetricFogコンポーネントの編集(Profile)

最初にProfileを作成します
Demo用に用意されているProfileを使ってもいいですが、今回は新しく作成

 

NewFogProfileボタンを押すと新しいProfileの作成と初期設定がされ、
Inspectorにたくさんのパラメータが表示されます

 

全てデフォルトの値ですがSceneにもいい感じに霧がでています(色的に煙っぽい)

 

 

 

VolumetricFogコンポーネントの編集(パラメータ)

VolumetricFogコンポーネントにあるパラメータから霧の見た目を調整できます

初期状態では巨大な霧の層になっていますが、Transformの値を変えることで位置や大きさを設定できます

 

 

パラメータの数が多いため解説はしませんが(ドキュメントに書いてある)
霧にかけるノイズ、色、アニメーション速度など自由に調整できました

 

 

 

 

まとめ

・Volumetric Fog & Mist 2を使って立体感のある霧を作成しました
・コードを書かずに大きさや色、動きなど自由にコントロール可能な霧を作成できます
・今回使いませんでしたがLightによる拡散や鏡面反射、特定の範囲だけフォグを無効化するなど他にも機能が用意されています

以上です

 

 

 

ちなみに同パブリッシャーKronnect氏によるポストプロセスアセットBeautify 2も同時に使用していましたが問題なく機能していました

こっちのアセットもオススメ

raspberly.hateblo.jp

raspberly.hateblo.jp

 

 

 

 

 

他のアセットの紹介記事はこちら↓

raspberly.hateblo.jp

 

 

 

※本記事にはAssetStoreアフィリエイトリンクが含まれています。

他、間違っている箇所、わかりにくい所がありましたらコメントにお願いします。