Raspberlyのブログ

Raspberlyのブログ

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

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

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

u1w-sharing.connpass.com

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

 

アーカイブはこちら

youtu.be

unity1week共有会って何?

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

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

unity1weekについてはこちら

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

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

 

過去回はこちら

lycoris102.notion.site

 

 

 

 

 

 

以下各LTの感想とか簡単なまとめ

 

LT1 AI_ygで した実装 個人的教訓を添えて

今回ゲーム開発をしたうえで後悔した実装、正解だったなと思う実装について

後悔した実装

  • セリフデータをScriptableObjectかcsvどっちで管理するか悩んで、なぜか直書きを採用した
    二択で悩んでいるときに急に現れた3択目を採用するのはやめよう

正解だった実装

  • 音の再生や状態は1か所で管理
  • 数値データはMonoBehaviourは使わずPure C#で管理することで、依存関係が整理しやすくなった

 

 

LT2 等身大のゲームづくり

作品のふりかえりとunity1weekで自分が意識していることを紹介されました。
unity1weekは大きな制約があり、自分でできることは限られる&短時間。
たとえ満足いく出来にならなくても、それらは糧となり次につながるので、
自分の通過点としてのゲーム作りをしようというお話。

 

unity1weekは魔境

 

 

LT3 自己流で!サウンドの自作やら工夫とか

過去のunity1weekでしてきたサウンドの工夫点紹介と、FL Studioで実際にサウンドを作ってみるところ、
Unityでサウンドをあれこれするテクニックが紹介されました。

 

WebGLでの注意点などとてもありがたい

 

 

LT4 u1wでツールを作るということ

なんでツールを作るか→作った方が時間を節約できるから

どこから始めればいい?

動作確認をしやすくするデバッグツールから始めるとよい、イテレーションを早くしよう
その作業を何回繰り返すのか考えよう

専用のツールを作ろう

今後も使いまわせるような汎用のツールを作るのはやめよう、作るのが難しい
Unity自体が汎用ツール、Unityの機能をなるべく使う

 

 

LT5 備忘録のススメ

備忘録に関するお話でした。

備忘録を書く理由

未来の自分のため、未来の自分は他人。
ゲームを作って詰まったところをnoteにまとめると、後から同じ問題に当たった時すぐ解決できる

備忘録の書き方

参考にした記事や動画を張るだけでもOK
自分が見てわかればよい、それは他人が見てもわかる

 

 

LT6 無理の無い共同開発

共同開発において、全体の工数を1週間に収めるための手法を紹介されました

事前にできることをやっておく

  • 0日目にコミュニケーションする場所、gitリポジトリの準備
  • 作業方針、作るうえでのこだわりポイントを事前にすり合わせ

工数上問題になりえる部分の対策

  • 企画のコアは早くきめる
  • お豆腐(仮の白いCubeなどの素材)で実装を進める
  • お互いの作業範囲がかぶらないようシーンを分けたりPrefab化

 

 

LT7 u1w反省会

うちの子を表現しようとしてコケた原因や対策を語られました

ゲームデザイン

うちの子をゲームに出すと、世界観のすり合わせなどキャラによる制約が大きい

ビジュアル

ビジュアルがいまいちだった
ゲームデザインと違いなんとなく作ってしまったので、ビジュアルモックを作るべき

自分ウケ

自分にささらなかった
自分の好きへの認識が足らなかった
好きへの尖らせ方も不十分だった

 

 

LT8 Minimax法でお手軽AI実装

Minimax法でAIを実装した時のお話でした。
ここで簡単にまとめられるような内容ではないで動画でどうぞ

 

LT9 Timelineで簡単音ゲー基盤

Beat管理と攻撃パターンの作成をTimelineを拡張してやってみたというお話。

CustomTrackやClipEditorめっちゃゴリゴリに拡張しててすごい。
ラズはあまりTimelineくわしくないので...

 

 

LT10 単語バトルはどうやって作った?または"バネ"を作ること、使うこと

単語バトルをどうやって作ったか、ゲームを完成させた後のお話。
バネとは引き出しのこと。アウトプットして引き出しを増やし、次の開発につなげようというお話。
unity1weekは細かくアウトプットできるいい機会なのでバネを作っていこう。


なんとゲームのリポジトリが公開されています

github.com

 

 

 

感想

どのLTも素晴らしいですが、
個人的にささったのが「LT4 u1wでツールを作るということ」と「LT5 備忘録のススメ」です

 

LT4 u1wでツールを作るということ

時間がない時、ツールを作っている暇があるならその分開発進めた方がいいだろ!と考えがちですが、
デバッグツールは絶対あった方がいいですね。毎回手作業でしていることなどは特に!

 

とりあえず作っておくべきデバッグ機能はこれがオススメ

 

unity1weekとは規模感が全然違いますが、ツールに関してはこっちも

learning.unity3d.jp

 

 

LT5 備忘録のススメ

忘備録にnoteがオススメされていました。
ラズは主にブログで情報発信していますが、手っ取り早く始めるならやはりnoteかqiitaがオススメですね。
この2つはSEOに優れているのが利点。検索した時にでてきやすい。

 

○○(アセット名)で検索すると出ます」と言えるのは強いので、どんどん発信しちゃいましょう!
なにより、検索しても情報が出ないアセットなどは自分が先駆者になれるチャンスです。

 

逆に自分でブログを作る利点は、サイトを自分好みにデザインできるところですかね。
ラズのブログではお寿司を回しています。
セルフブランディングの点でも個人ブログは優れています。
自己紹介や面接で「○○(ブログ名)で検索すると出ます」と言えるのはやっぱり強み。

 

 

 

アウトプット

アウトプットに関する話題もいくつかでていました。
引き出しを増やすため、ゲーム作成のTipsや躓きポイントをアウトプットするのはとても大事。
そういう意味ではLTをするというのも立派なアウトプットですね

 

 

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

 

 

【勉強会レポ】: Unity URP 完全に理解した勉強会

勉強会のレポート(メモ)です。
参加したのはこちら「Unity UI 完全に理解した勉強会
会場はDeNAさんです。

meetup.unity3d.jp

ハッシュタグ : #Unity完全理解

 

 

 

Unity ○○完全に理解した勉強会とは

Unityの特定の機能やサービスをテーマにした勉強会です。

 

 

過去のレポはこちら

raspberly.hateblo.jp

 

 

アーカイブはこちらから

youtu.be

 

以下トーク内容のまとめ

ショートセッション:URP周りの取り組み紹介

DeNAでの取り組みについて、「内製のシェーダーDorothy Shader」と「背景画像と3Dモデルの合成」の紹介がされました。

Dorothy Shader」は様々なジャンルのゲームで使えるよう幅広い表現ができる内製統合シェーダーで、それらの機能紹介。

背景画像と3Dモデルの合成」ではBlenderとUnityでの座標系の違いを補正する方法についていろいろ紹介されました。

 

 

シェーダーのサンプルにハッカドールのモデルが使われてました。そういえばDeNA開発でしたね。👀

 

 

LT1 : URP移行のススメ

バーチャルキャストをBuilt-inからURPへの移行した時の知見やURPのメリットデメリットについて紹介されました。
拡張性・最適化を考えて移行したこと、移行コストは結構高く、移行後の更新コストも高いことなど。

 

のたぐすさんレベルでも6人月かかるというあたり相当大変そう。
のたぐすさんを6人に増やせば一か月で終わる・・・ってコト!?

 

 

LT2 : URP14を理解する(RTHandleについて)

RTHandleの解説について。

これはRenderTextureとRenderTargetを管理しやすくするRenderTexture APIのラッパークラスです。

docs.unity3d.com

RenderTextureを使いまわしてメモリ消費を抑える効果があります。
私は初めて知りました。作ってるゲームではそのままRenderTextureを使っているので活用できそう。

 

 

Zennで詳しくまとめられています

 

 

 

LT3 : URPのシェーダーの書き方を理解しよう

ShaderLabとShaderGraphの比較と、それぞれのメリットデメリット。
URPでのシェーダーの書き方について。

 

ShaderGraphについてはかもそば先生の本がとても参考になります。

zenn.dev

 

 

スポンサー紹介

株式会社ディー・エヌ・エー

dena.com

今回の会場・フード担当

DeNA TechConというイベントを開催します。

techcon2024.dena.dev

 

株式会社ヘッドハイ

head-high.com

今回の広報担当

 

IndieGamesJp.devというゲーム開発者向けのWebメディアを出しています

indiegamesjp.dev

 

株式会社キッズスター

www.kidsstar.co.jp

今回のドリンク担当
ごっこランドという知育アプリを運営している会社です。

www.kidsstar.co.jp

大変好評で人手が足りないようなので、Wantedly@monryまで連絡くださいとのこと

www.wantedly.com

 

 

 

 

懇親会

フードとドリンクが用意されています。
今回はおにぎりとカツサンド

お皿や箸が必要ないため手軽に食べれてよい


 

今回はチャットツールでエリア分けが行われました。
ChatworkとTeamsはほとんどいませんでした...Slackは大人気!

 

 

感想

URPの基礎からシェーダーを書くうえでの勘所までとても参考になる内容ばかりでした。
ラズは仕事でも趣味開発でもURPを使用しています。
アセットを買うときも、URP非対応のBuilt-in専用アセットなどは選ばなくなりました。
(というより最近出るアセットはほとんどURP対応済みだったりしますが)


のたぐすさんのLTでも触れられていましたが、今後のことも考えるとURPを学んでおくのがいいですね。
とりあえずURPのプロジェクトを作って試してみたい方はこちらもおすすめ。

youtu.be

 

 

以上です。

 

 

【イベントレポ】: 東京ゲームダンジョン4(2日目)

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

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

 

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

インディーゲームの展示会です。
作品の試遊や購入、開発者との交流がメインのイベントになります。
なんと今回は2日間開催されます。

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

 

この記事は2日目のレポです

 

 

1日目はこちら

raspberly.hateblo.jp

 

 

過去のレポはこちら

raspberly.hateblo.jp

raspberly.hateblo.jp

raspberly.hateblo.jp

 

 

 

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

 

I-4 Algolemeth(アルゴレメス) / Medium-Rare Games

Algolemeth」を体験しました。
AI搭載のゴーレムを作成してダンジョンを探検するゲームです。
このゲームの特徴はなんといってもAIによる自動操作です。戦闘も探索も全てAIで行われます。
プレイヤーはビジュアルスクリプティングのようにチップをつなげてAIを作っていきます。
ダンジョン内の戦闘でチップは入手でき、少しづつAIを最適化していく作業がとてもよい。

 

Steamで配信予定

 

 

G-12 GhostDivePuzzle / ハム

パズルゲーム「GhostDivePuzzle」を体験しました。
幽霊を操作し、墓や家電に憑依してパズルを解きゴールを目指すゲームです。
暗い森の中が舞台で光の表現がとてもきれい。

最後のステージだけ異様に難しくない?

 

ハムさんに「難しければヒント上げますよ~」と煽られ助言をいただきましたが自力でクリアしてやりましたわ。

 

 

 

J-3 限界OL海へ行く / 超OK

ノベルゲーム「限界OL海へ行く」を体験しました。
限界になったOLがお昼休みに抜け出して海に行く物語。
途中で出会う人たちの交流、ゲーム内の雰囲気、限界を迎えてる感のある会話がよい。

 

Steamで配信予定

 

 

 

E-12 Call from the Abyss / day-to-day management

Call from the Abyss」を体験しました。
ホロウナイトライクな2Dアクションゲームで難易度は結構高め。
海の中が舞台で、魚に変身して高速移動する能力を駆使して探索します。
サンゴやランプなどの明かりの表現がとてもきれい。暗い場所が多いのでとても映える。

 

途中「簡単な道」と「難しい道」でルートが分かれていて、
難しい方を選んだら針だらけの地獄を見ましたわ。

 

 

 

E-20 Thunder of the Demon King / teamHoliday

Thunder of the Demon King」を体験しました。
魔王になり、迫りくる敵を雷の魔法で消し飛ばすゲームです。
マウス長押しでチャージすることができ、最大まで溜めると広い範囲をまとめて消し飛ばすことができます。
敵がわーわー迫ってくるのですがこれがまたとてもカワイイ
バナナ(壁として機能するアイテム)を置くとこっちそっちのけで食べだすのもカワイイ。

 

ルールと操作がシンプルでわかりやすく、エフェクトも音も派手で気持ちいい!
子供にも大人気でした。

 

 

E-17 キーウィとキウイの塔 / カワセミ旅団

キーウィとキウイの塔」を体験しました。
キーウィを操作して塔を登るアクションゲームです。
キウイの汁を吸ってスポンジやプリンを動かすギミックもあります。
塔を登っていくわけですが、トゲがあったり、砲台があったり、マグマのようなものがあったりとカオス
キーウィが着地した時にポヨンポヨンアニメーションするのがすごくかわいい。

 

キーウィとキウイのシールが販売されていました。

 

 

 

C-2 回転DooooN!! / Make.

回転DooooN!!」を体験しました。
食材が入った箱を回転させ、調理したり盛り付けたりするズルゲームです。
アクション要素があり、たまごを高いところから落として割ったり、肉を焼いたり油で揚げたりと忙しい。
作れる丼の種類がとても豊富で。作ったものによって店主のコメントも変わる。

 

丼ステッカーと食材ステッカーが販売されていました
これを組み合わせることで、ゲーム内と同じように丼が作れます。

ゲーム内と同じものが作れるってすごいオシャレ

 

こちらからプレイ可能

回転DooooN!!(みんなのゲームパレード) (creators-guild.com)

 

 

 

F-13b Wabisabi / Wabisabi

Wabisabi」を体験しました。お寿司を握り、鍛え、レースで競い合うゲームです。
説明だけだと意味がわからない?ごもっとも

 

こちらが確認のVTRです

www.youtube.com

大量のお寿司がレーンを走ってるの最高にかわいい
お寿司はネタとシャリの組み合わせで性能が変わります、ゲームを進めると新しいお寿司が解放されるみたい。

 

 

お寿司型の名刺が置いてありました。
横から見ると重なってる白い部分がシャリに見えるのすごいオシャレ。

 

 

 

D-7 いつまでも世代越ゆるホームランボール / Dotoe

「いつまでも世代越ゆるホームランボール」を体験しました。
バッティングゲームで、打った結果により次世代が変化していく内容。
プレイ中にイベント終了時間が来てしまったので少ししかできなかったのが惜しい。
高い得点でフェルト人形がもらえたので挑戦したかったところ。

 

 

 

まとめ

今回もたくさんのゲームを体験できました。
個人的に今まで応援してきたゲームがいくつかリリースを迎えようとしているのがうれしいですね。

 

今回体験できませんでしたが、前回プレイした「Romp of Dump」もアーリーアクセスが公開されました

無料でできるよ、みんなやってね

 

 

 

 

イベントの感想

今回大きな変更点として2日開催になりました。
それに合わせ、A~D・H~Jは両日出展E~Gは片日出展になっています。
私の体感として一般参加者の数がいつもより少なく感じました。
両日参加する一般参加者がそんなに多くなく、うまく分散したのかもしれません。

 

他、会場内に休憩スペースが設けられていました。(前回はなかったはず)
疲れた時の休憩や荷物整理にとても便利

これまで荷物整理は会場から出てすぐの椅子や、会場内の通路脇とかで行う人が多かったのですが、このスペースのおかげでそれらの混雑が解消されていましたね。
2日間開催の人数分散も合わせて、より快適なイベントになった印象です。

 

 

いつものホワイトボード



 

 

以上です。

 

【イベントレポ】: 東京ゲームダンジョン4(1日目)

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

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

 

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

インディーゲームの展示会です。
作品の試遊や購入、開発者との交流がメインのイベントになります。
なんと今回は2日間開催されます。

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

 

この記事は1日目のレポです

 

2日目はこちら

raspberly.hateblo.jp

 

過去のレポはこちら

raspberly.hateblo.jp

raspberly.hateblo.jp

raspberly.hateblo.jp

 

 

 

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

 

A-3 NOA’s PROJECT / のあちゃんファンクラブ

NOA’s PROJECT」を体験しました。
銃とカタナを使って戦うローグライトアクションゲームです。前回出展時プレイ済み。
前回と同じくビルドは銃特化でボス撃破手前まで進めました。すごい惜しかった。

 

今回は新グッズが出ていました(右のchillキメてそうなやつ)

 

Steamで配信予定

 

 

 

A-1 Paradigm Overhaul / kumashunGames

パズルアクションゲーム「Paradigm Overhaul」を体験しました。
荒廃した世界を舞台に、物を破壊する弾修復する弾の2つを使い分け進みます。
例えば、高いところにある足場を壊した後、落ちてきた足場に乗って修復することで先に進むとか。
ゲーム内の読み物を見る限りいろいろストーリーもおもしろそう。

 

 

隣ブースとのコラボグッズが販売されていました

 

 

 

A-2 PARRY KING /Pastel☆Parade / matsu friends

パリィゲーム「PARRY KING」を体験しました。
パリィに特化したゲームで、過去にプレイ済みでしたがグラフィック超絶進化していてびっくり。
前回はクリアまで時間がかかりましたが、今回は5分もかからんかった..圧倒的成長!
もっと難しくして❤

 

ちなみにこのデモで戦える敵は製品版に登場しないそうです。

 

こっちは体験してなかったけどLet’s Splash!! がパワーアップした「Pastel☆Parade」もでます

 

新グッズでアクスタ(右のやつ)とクリアファイルが販売されていました

 

 

D-3 Tower o-ven / Dessert Seed Studio

2Dアクションゲーム「Tower o-ven」を体験しました。
ニワトリを操作し足場を伝って下に降りていくゲームで、降りるのが遅れると焼かれます
操作はとてもシンプルで左右移動のみ。
ゲームが進むと崩れる足場やベルトコンベアなど様々なギミックが現れ難しくなります。

 

操作やシステムはとてもシンプルなのにめちゃくちゃ面白かった。

 

 

E-19 せかいを旅する猫 / ミライノ制作所

せかいを旅する猫」を体験しました。
町を探索し猫たちと会話。会話の中で様々なワードや知識を入手しクイズに挑戦するゲームです。
舞台はフランスで、フランス語の挨拶や観光名所などがクイズとして出題されました。
ラズは第二外国語にフランス語を選んでいたので楽勝でした!

 

町にいる猫たちもみんなかわいい。

 

 

G-17 就労!!わんわんヒューマン / 鮫崎

就労!!わんわんヒューマン」を体験しました。
罪人を尋問し、必要であれば教育をするゲームです。
教育が何かって?...具体的にいうと犬にすること!ちなみに自我も消えるそうです。

すごい癖を感じる...

 

 

おみくじ(チェキ付き)が販売されていました。

 

犬?もいる、お家から持ってきたみたいで写真を撮るときにこっちに向けてくれました。
持ち方ァ!!!!!

 

 

体験版あり

plicy.netbooth.pm

 

 

A-9 マジカオス / SUPER STARMINE

弾幕シューティングゲームマジカオス」を体験しました。
今までも何度か体験させていただいていて、今回は開発スタッフの方と対戦しました。
前回やった時は圧勝できたのボロ負けしてしまった...

 

とうとうマジカオスがリリースされます

3年前のデジゲー博に出ていた「れーぞく!ネクロマンスちゃん」のころから応援してるので感慨深い

 

 

 

A-10 チョークの叛乱 / のへもん・しょうゆ

チョークの叛乱」を体験しました。
黒板消しがコントローラーという変わったゲームです。
ジャイロセンサーにより手首をひねるような動きでジャンプしたり、
クリーナーにゴシゴシしてパワーをチャージするシステムがあったりとおもしろい。

 

このクリーナーはヤフオクで買った本物を改造したとのこと。

 

 

 

A-8 ネコと会議で和解せよ / ArrayCats

推理パズルADV「ネコと会議で和解せよ」を体験しました。
対象年齢が21歳の就活生・・・?

内容をざっくり説明すると、食べ物について話し合っているネコ3匹の会議を観察し、
誰が不満を抱いているかを推理。その後、そのネコが事件を起こすので魔法を使って防ごうという感じ。

 

 

このゲームは何かとネコの怒りを買ってしまうのがポイント。
選択肢のミスだけでなく、操作説明を見直す行為も不敬として減点されるすごいゲーム。
しかも減点されるたびにプレイヤーを罵ってくる

 

 

 

F-19a Recolit / Image Labo

アドベンチャーゲームRecolit」を体験しました。
宇宙飛行士が不時着した夜の街で、誰もいない暗い浜辺や町中の空気感がよく、
照明のぼんやりした感じとかすごくいい。

 

Steamで配信予定

 

アクスタが販売されていました

 

 

 

G-1 トワエデン / 荒寧針治療

トワエデン」を体験しました。
メタバースが舞台で、メタバース内で発生したバグを修正していく謎解きゲーム。ホラー要素あり。
パソコン画面を模したゲーム画面がとても良くできていて、音量調整をするのにコンフィグアプリを起動して行うなど、メタバース内という設定をうまく使った表現がありました。

 

 

F-1b Yokai Slayers / イモタベルカ

Yokai Slayers」を体験しました。
いわゆるヴァンサバライクなゲームで、敵を倒しステータス強化をしながらどこまで生き残れるかというゲーム。
後半はもうワラワラわいてくるのですごく忙しい。指が取れるかと思った
もうちょっとで記録更新できたらしい。

 

 

C-3 RAYSER / Cz_mirror

シューティングゲームRAYSER」を体験しました。
プレイ中に見下ろし、横スクロール、奥シューティングなど視点が次々変わるのが特徴の3Dシューティングゲーム過去に体験済み。
今回新しくバルカンやホーミングミサイルなど複数のサブウェポンが実装されていました。
サブウェポンごとに特徴があり、それらをうまく使って攻略するステージを考えているとのこと。

 

 

 

 

以上です。

 

イベントの感想とかは2日目の方に書く

【OneShot】おうちにニコがやってきた

クリスマスプレゼント開封記事です

 

 

開封の儀

Fangamerサンタさんからクリスマスプレゼントが届きました

中身は一体なんだろう

 

 

箱を開けると....

 

 

 

 

あ!

 

 

ニコ!

 

 

そうです。OneShotのニコのぬいぐるみを買いました

 

Fangamerで販売されていて、ずっと売り切れでしたが最近再入荷したのです

ニコと太陽ぬいぐるみwww.fangamer.jp

 

今回はその開封記事的なやつ
ついでにTシャツも買いました

 

 

ニコのぬいぐるみ

正面

 

後ろ姿

 

電球とマフラーは取り外し可能

 

電球と手に磁石がついているので両手で持たせることができます

 

 

原作と同じく萌え袖

 

袖をまくるとかわいいおててが見えます

 

 

服もまくれる

 

 

大きさ比較用にスカーレットちゃんも置いておきます

スカーレットちゃんロボットガール・ミーツ・ヒューマン!に登場するキャラクターです

OneShotが好きならオススメ

 

 

 

せっかくなのでお散歩にも行きました

 

カフェも楽しめる

 

磁石は結構しっかりしていて、持ち歩いても電球を落とすことのない強さ
帽子もかなり頑丈です

 

 

 

おわり

おうちにニコがやってきた

 

今回はニコのぬいぐるみ紹介をしました。ニコのかわいさが伝わればなによりです。

OneShotが好きならもう買うしかない!

OneShotwww.fangamer.jp

 

 

以上です

 

こういう雑記って普段書かないからどういう風に締めくくればいいかわからんわね

【Unity】DOTweenでUIアニメーションが連続で呼ばれた時に少しずつズレる問題の解決方法【DOTween】

この記事はUnity Advent Calendar 2023 その2 24日目の記事です。

qiita.com

 

実行環境

Unity 2022.3.14f1

DOTween ver1.0.375

 

 

やること

DOTweenを使って連続でUIアニメーションを再生した時に、
少しずつズレる問題の解決方法についてまとめます。

 

 

 

解決方法

忙しい人向けに先に書いておきます。

 

連続でアニメーションを再生する時は、以下の方法でキャンセル処理をかけば解決します

  • .DOComplete()か.DOKill(true)でキャンセル
  • Sequenceを使っている時は.Complete()か.Kill(true)でキャンセル

 

つまり、実行中のアニメーションを最後まで再生しきってから次のアニメーションを実行すればいいわけです。
キャンセルしない、またはキャンセルに引数を渡さない.DOKill()を使うとこの問題がおきます。

 

 

 

 

 

 

 

 

 

 

以下、暇な人向け

少しずつズレる原因

この現象は、以下のアニメーション*1を連続で再生する時、キャンセル処理が正しくないと発生します

  • .SetRelative()をした相対的なアニメーション
  • DOShake系、DOJump系、DOPunch系

キャンセル処理が正しくないとは、
キャンセルに.DOKill()を使っている、またはキャンセルをしていない状態を指します。

 

 

ズレる例

実際にズレる例を出します。
こんな画面があり、InputFieldに文字が入力されていない状態でNextボタンが押されたら、
InputFieldを揺らすアニメーションを再生したい時。

 

揺らすアニメーションはDOTweenで実装。
やり方はいろいろありますが今回はDOPunchを使用します。

    [SerializeField] private RectTransform rectTransform;
    [SerializeField] private float duration;

    public void NegativeAnimation()
    {
        rectTransform.DOKill();
        rectTransform.DOPunchPosition(new Vector3(30, 0, 0), duration);
    }

 

NegativeAnimation()を再生するとこうなります

 

 

しかしキャンセル処理に.DOKill()を使っているので連打すると少しずつズレます



 

解決方法

先に書いた通り、キャンセル処理に.DOComplete()か.DOKill(true)を使用すれば解決します
DOKill()は引数を与えないと、最後までアニメーションを再生しきらずに終了するので注意。

public void NegativeAnimation()
    {
        //または rectTransform.DOComplete();
        rectTransform.DOKill(true);
        rectTransform.DOPunchPosition(new Vector3(30, 0, 0), duration);
    }

 

これで、最後までアニメーションを再生しきってから次のアニメーションを再生するのでズレません

 

Sequenceの場合

Sequenceでのキャンセルは、.Complete()か.Kill(true)です

    private Sequence sequence;
    
    public void NegativeAnimation()
    {
        //または sequence.Complete();
        sequence.Kill(true);
        sequence = DOTween.Sequence()
            .Append(rectTransform.DOLocalMoveX(-40, duration).SetRelative())
            .Append(rectTransform.DOLocalMoveX(40, duration).SetRelative());
    }

 

 

 

まとめ

連続でアニメーションを再生する時は、以下の方法でキャンセル処理をかけば解決

  • .DOComplete()か.DOKill(true)でキャンセル
  • Sequenceを使っている時は.Complete()か.Kill(true)でキャンセル

 

 

以上です。

 

 

 

おまけ CompleteとKillの違い

ここがわかりやすい

www.hanachiru-blog.com

 

 

過去のUnity アドベントカレンダー記事

raspberly.hateblo.jp

raspberly.hateblo.jp

 

過去のDOTween関係の記事

raspberly.hateblo.jp

 

raspberly.hateblo.jp

 

*1:他にもあるかも

【勉強会レポ】: Unity UI 完全に理解した勉強会

勉強会のレポート(メモ)です。
参加したのはこちら「Unity UI 完全に理解した勉強会
会場はDeNAさんです。

meetup.unity3d.jp

 

ハッシュタグ : #Unity完全理解

 

 

 

Unity ○○完全に理解した勉強会とは

Unityの特定の機能やサービスをテーマにした勉強会です。
過去にいくつか開催されていて、今回は4年ぶりの開催!!!

 

ノベルティもいっぱい

 

 

過去のレポはこちら

raspberly.hateblo.jp

 

 

アーカイブはこちらから

youtu.be

 

以下トーク内容のまとめ

 

ショートセッション1: ざっくり理解するUIToolkit

UIToolKitに関する内容
WorldSpaceは今後対応予定という話に、マスク・アニメーション・9Sliceを使う上での注意点。
カスタムシェーダーの利用、スクリプトでも描画可能というお話がされました。

 

ロードマップは公開されているので、今後の展望についてはこちらから

unity.com

UI Toolkitを知る上でのおすすめ資料

youtu.be

youtu.be

forpro.unity3d.jp

create.unity.com

UI ToolKitで作られたゲーム

 

 

 

ショートセッション2: Unity Searchを拡張して高度な検索型UIを実現する

スライド:uGUI の自動操作の考え方と操作方法 - Speaker Deck

Unity SearchとはUnityで提供されている検索システム。
検索クエリを使い複雑な検索条件を設定したり、検索結果のアセットの対して何らかのアクションもできる。

docs.unity3d.com

後半はこれを拡張する方法(ミニマムな拡張から紹介されているのでとても親切でわかりやすい)、
拡張事例とノウハウが紹介されました。

 

 

 

LT1: uGUIの自動操作の考え方と操作方法

スライド:uGUI の自動操作の考え方と操作方法 - Speaker Deck

 

uGUIをプログラムで自動操作して、最低限の動作確認をできるようにしようというお話。
手動でポチポチして動作確認せずに自動化しよう

モンキーテストの実現

操作可能な要素(ボタンとか)を適当にポチポチして行う動作確認をモンキーテストという。
操作したいオブジェクトを取得し、操作できるかどうか(EventTriggerがあるかとか)を確認して実装します。
モンキー操作ライブラリtest-helper.monkeyの紹介と解説もされました。

 

手動ぽちぽちマン~シナリオメンテマンの話は心当たりめっちゃある...
会場で頷きすぎて首取れちゃったもん

 

 

 

LT2: CanvasMaterialでUIShaderをシンプル に

UI Shaderをどう設計し管理するかというお話
・UIのShaderはUberShader化しよう
・CanvasMaterialで全uGUIで共有しよう

など

 

ラズはこの手の分野はよくわからないので詳しくまとめられないのだ...;;;ごめんなのだ

 

 

 

 

LT3: どう作る? モーダルの実装!

モーダル(ダイアログとも呼ばれるアレ)を実装する上でのTipsの紹介

話したい内容は全部で12個あったようですが、今回以下の2つをメインに話されました。

モーダルの種類(ボタン数とか)が増える場合どうするか

モーダルは種類が増えがち、PrefabVariantを使って種類違いのモーダルを作ろう。
全モーダルの変更などで便利。
モーダルはAnchorとPivotも設定すると位置の微調整時に整えやすくなる。

 

モーダルの表示非表示のアニメーションはどう作るか

閉じる時のアニメーションを早くした方がいい

  • 開くときはモーダルに意識がいくから
  • 開くアニメーションが速いと操作が誤爆するから

UIアニメーション中は、ユーザーは操作できないため速くする。
すぐゲームに戻れるようにする。
たくさん触って(100回以上)ストレスを感じないUIにしよう

 

 

 

 

LT4: デザインツールでゲームのUIを作る話 (Adobe XD編)

Adobe XDを活用してUIのベースを作った話。
UIデザインツール(Adobe XDやFigma)はWebやUIのデザイン作成に特化したツール。

AkyuiUnity

Unityに持っていくときはAkyuiUnityというパッケージを使用。
これを使うとAdobeXDで作成したファイルをそのままUnityに持ち込める。

github.com実際にAdobe XDからゲームのUIをUnityに取り込むデモもされました。

 

 

補足記事

qiita.com

 

 

 

スポンサー紹介

株式会社ディー・エヌ・エー

dena.com

今回の会場提供、フード担当

Game Developers Meetingというイベントを開催しています。

https://gamedevelopersmeeting.peatix.com/

dena.com

 

株式会社キッズスター

www.kidsstar.co.jp

今回のドリンク提供担当
ごっこランドという知育アプリを運営している会社です。

www.kidsstar.co.jp

大変好評で人手が足りないようなので、Wantedly@monryまで連絡くださいとのこと

www.wantedly.com

 

株式会社ヘッドハイ

head-high.com

今回の広報担当

 

インディーゲーム開発者向けのカンファレンスを開催予定。
今月あるのでぜひご参加くださいとのこと。

www.4gamer.net

 

 

 

懇親会

フードとドリンクが用意されています。
食べ物がとってもオシャレ

 

 

コミュ障な参加者のために、
「使っているor知っているIDE/エディタ」で滞在エリアを区切るという試みがされていました。

 

VisualStudioのエリアはほぼ誰もいませんでした

Rider>VSCode>=その他>>>>超えられない壁>>>>>>VisualStudioくらいの人口密度

 

 

 

みんなRiderにおいでよ、Riderはいいぞ

learning.unity3d.jp

 

 

懇親会ではモーダルのLTをしていただいたやまださんにLTで話せなかったアレコレ

  • モーダルはどこからでも呼び出すのでシングルトンでやるのも悪くない
  • ボタンの押下判定において、判定はボタンより1.5倍くらい大きくするとよい
    (タップの位置は必ずズレるので、押したのに押されていないとユーザーのストレスになる)

を聞いたり。

青木ととさんから動画編集のアドバイスをいただいたりしました。

 

 

主催企画のもんりぃさんとも実際に会えました。
アンバサダーしかもらえない限定Tシャツを着ていた👁

 

 

 

まとめ

ひさびさの完全に理解した勉強会とても楽しかった。
コロナ後はオンライン開催の勉強会が多く、こうやってリアルに集まるイベントはまだまだ貴重なのでいいですね。

 

LT開始時に、登壇者が「みなさんこんばんは~」って挨拶するんですけど、参加者の人たちが「こんばんは~」って返事する流れがもう懐かしくて懐かしくて・・・
(オンラインイベントだと反応はチャットで流れるだけなので)

 

そうそうこれだよ!これなんだよ勉強会は!!!ってなってしまった。

 

 

 

以上です。

 

 

 

 

過去のUI関係イベント記事

raspberly.hateblo.jp