Google Sheetを使ったFungusのテキストデータの管理【Fungus】【Unity】【Google Spread Sheet】

概要 私たちが制作した「DreamIsland」(*1)というゲームでは、Fungusを使ってNPCやオブジェクトとの会話イベントを実装しています。その中でFungusのデータ管理(会話テキストやフロー)についていろいろ調査と試作をしていったん解決ができました。 今回は Fu…

OSSをForkしてUPM・OpenUPMの登録を行う【Unity】【upm】【OpenUPM】

はじめに 個人製作でいろいろやっているとOSSを使うことがありますが、最終更新日が数年前のものがよくあります。しかし、ライブラリとしては使いたいけどいろいろいまのversionとはあっていないものがあるので、今回はその辺の更新とUPM、OpenUPMの登録をす…

GitHub Actionsでビルドが終了時に DiscordでartifactのダウンロードページURLを受け取る【GitHub Actions,Discord,Python】

はじめに 成果物 動作環境 使い方 1. Actions secretsの登録 2. GitHub Actionのymlの作成 3. スクリプトの作成と配置 実装の詳細 最新のビルドデータを取得 artifactのあるページのURL作成 リポジトリのownerとRepositoryNameを取得 終わりに はじめに GitH…

Unityで3D音源の距離と音量からAudioVisualiserを作成する【Unity】

はじめに 成果物 動作環境 実装 各音源から距離と音量を取得・表示する Visualiser UIの作成 Audioデータから Visualiser UIをリアルタイで更新する サンプルプロジェクトのクラス図 まとめ はじめに 前回以下のような 距離から音量を取得する機能を実装しま…

Unity WebGLビルド後 特定のブランチ GitHubに自動デプロイする【Unity,WebGL】

はじめに 成果物 動作環境 実装 Build後に特定の処理を行う BuildデータをGitHub に スクリプト上から Commit/Pushする はじめに UnityでWebGL開発を行っているときにビルド後デプロイしたい時があります。OSSとして公開しているプロジェクトの場合、デプロ…

Fungusの会話テストができるEditorWindow機能【Unity,Fungus,Editor拡張】

はじめに 成果物 環境とゲーム内の会話処理周りの情報 環境 会話処理周り 機能詳細と実装 1. NPC一覧の取得とソートでの一覧表示 2. 選択したNPC Buttonのハイライトと情報の表示 3. fungusのphaseを指定した会話テストの実行 はじめに 私が作っているゲーム…

3D音源の距離減衰で各サウンド音量の取得【Unity】

成果物 実装 AudioSouceとListenerの挙動 Audio Sourceの距離減衰のAnimationCurveの取得 プレイヤーと発生しているサウンドの距離からなっている音量を取得する 成果物 サウンド(色がついているオブジェクト)ごとに距離に応じた再生音量を取得 Repository g…

Notionのタスクのステータス変更をDiscordでメッセージを送る【Discord.py,Notion API,GitHub Actions,cron-job】

はじめに 完成物 やりたいこと 準備 Notionの インテグレーション(API)の作成と登録 DiscordのWebHookの作成 GitHub のpersonal tokenの作成 自動化内容と実装 1. Notionの特定のタスク状態が変更されたときに担当者及び確認者 Discordに通知を送る 2. 一日…

サイドビューゲームでのURPでのライト表現とマルチシーン・DIコンテナを使ったInputSytemの実装【Unity,URP】

はじめに 成果物 やったこと 使用したアセット 内容 URPを使ったライト表現 マルチシーン及びDIコンテナを使った際のInputSystemのプレイヤー操作 sprite shapeを使ったマップ作製 はじめに https://t.co/1seClXcvJoUnityRoomに公開しました移動できるだけで…

VContainerでRootLifetimeScopeを使うときの設定【Unity,VContainer,DI】

はじめに やりたいこと 成果物 RootLifetimeScopeの作り方及び使い方 RootLifetimeScopeを作成 各クラスから RootLifetimeScopeに注入されているクラスを使う Unityでゲーム起動時に スプレッドシートから データを取得する方法 はじめに Unityでゲームを作…

Notionのタスク 一覧でタスクがDoneになったときに完了日付を自動入力する【Notion,Python,GitHub Actions】

はじめに 成果物 実装簡易説明 Notion DB 取得時に query Filter GitHub Actionsから環境変数を読み込む Notionのpage Property(date) の更新 その他参考サイト はじめに 最近 Notionを使ってタスク管理を再度始めました(昔やっていたのですが、飽きてしまっ…

Fungusを使ったゲーム制作におけるテスト作成と自動テスト環境の作成及び構築【Unity,Fungus】

はじめに 制作環境 対象者 本プロジェクトにおいての会話実装及び仕様説明 会話パートの説明 制作時に起きた問題点 1. flowchartのMessageとスクリプト側のFlowchart用 Message Stringが一致しない問題 2. Fungus内の変数とスクリプトから呼び際に変数名の一…

MagicOnionでローカルでのゲームっぽいものを作る【Unity,gRPC,MagicOnion】

Demo 実装部分 任意のPrefabを生成する 参考サイト 仕事でgRPCを触る機会があったので、せっかくだったら個人でもゲームっぽいものを作りたいということで n回目のMagicOnionに挑戦しました (過去に二回ほど環境構築やらでつまづいています) 記事を書いてい…

UnityでのURLのPingの非同期確認方法【Unity,C#】

はじめに 実装 はじめに 特定のIPアドレスがとっているかどうかを接続する前に、確認したいときがあります。 C# での同期的な処理やUnityのPingを使った方法(timeout時間は指定できない?)は、以下のようにできるみたいでした。 santerabyte.com qiita.com …

オフラインゲームのデータをGitHubに半永久的に保存する

序論 目的 対象者 GitHubへbatファイルで一定時間ごとに保存する Batファイルの作成 Batファイルの動作確認 序論 ひと昔ではオフラインゲーム(フリーゲーム)が流行っていました. いまではオンラインゲームが主流となりゲームデータはクラウド上に保存され,…

GAS経由でGitHub IssueをGoogle Sheetへ自動更新【GAS,GitHub,Google 】

プロジェクト管理をするときにいろいろ選択肢があるのかで,個人プロジェクトや同人チームだとGoogle スプレッドシートを使うことが多々あるかと思います. GitHubのissueと当時に使用するときに両方更新するのはめんどくさいので,issue側を使用してシート…

unity1week「ちゅう」のゲームで実装したイベントアニメーション【unity1week,Unity】

今回プロなろというグループでチーム開発を行いました! ジャンプキングに似たやりこみのあるゲームになっています https://t.co/yICRFcW2oEUnity1weekのゲーム公開しました!地形と反射を駆使してクリアを目指しましょう!⁰腕に自信のある方はタイムアタッ…

コンピュータサイエンスやその他最近の技術を学べる/活用できるサイト【Unity,Blender,Python ...】

コンピュータサイエンス全般 コンピュータサイエンスについての無料公開をまとめたリポジトリ ゲームによく使われるアルゴリズムがまとまっているサイト gRPCについて コンピュータサイエンス全般 コンピュータサイエンスについての無料公開をまとめたリポジ…

Backendless(BaaS)とUnityを使ったオンラインショップの画面の作成【Unity,SaaS】

今回はゲームコンテストで作ろうと思っていたオンラインゲームのショップ画面をプロトタイプで作成してみました (たぶんコンテストにはこの要素はいれないです) Demo 開発環境 使用したアセット backendlessとは? 参考にした参考書 公式ドキュメント 実装 各…

MessagePipeを使って簡単なアクションゲームを作る【MessagePipe,Unity】

最近注目を集めている MessagePipeを使ってみようと思いいろいろ調べて,自分なりにアクションゲームを作ってみました! (ゲームといってもMessagePipeを使うことが目的なので,ゲームにすらなっていないです) 成果物 Demo リポジトリ WebGL版 MessagePipeと…

OSS(SaveGameFree)を使ってUnityでセーブ・ロード機能を実装する【Unity,SaveGameFree】

今回は,ゲーム制作で無料ものでセーブ・ロード機能を実装してほしいと要望があったので実装してみました 使用したライブラリ ライブラリの機能(GithubPageより) セーブ・ロード機能の実装 備考 セーブデータの保存場所 データの暗号化 データの暗号化 暗号…

Github ActionsでGameCIを使ったUnityのCI/CD環境構築方法 【Unity,Github Actions(GameCI)】

TechTrainさんのほうでゲームの課題?をやらせていただいたときにGithub Actionsを使ったUnityのCI/CDを取り組みました(特に課題内容とかではないです) Github Actionsを使ったUnityのCI/CDはいろいろ詰まるところがあったので,今後使う方/未来の自分に向け…

Unity・ゲームの開発でのおすすめ/よく使用するアセット・参考サイト(その他あり)【Unity,UnityAssets,素材リンク】

自分用またほかの学習者の方が何を使っていいのかがわからなくなったときにご活用ください アセットストア経由 1. DoozyUI: Complete UI Management System 2. Odin - Inspector and Serializer 3. UniRx - Reactive Extensions for Unity 3. DOTween Pro Ea…

PlantUMLで高画質な画像を出力する【Rider,PlatUML】

昨日Unity1Weekでゲームを作った際にクラスの依存関係のクラス図を作成しました.しかし,画質がわるくほかの人が見るには絶えないものでした.. 公式に質問したところ解決方法がわかったので,ほかの方のお役に立てればと思います 変化 追加する画像情報 …

MV(R)Pでゲームを作ってみた【Unity,Unity1Week】

今回はアーキテクチャを学ぶ目的でUnity1Weekに参加しました. 制作物 プレイ動画 公開サイト 宣伝ツイート 目的と目的 目的 目標 開発環境 使用したアセット Unity拡張系 素材系 企画(1-1.5日) 仕様(1-2日) 画面遷移 スタート画面 ステージ選択 チュートリ…

Oculus Quest2でのOnApplicationFocusとOnApplicationPauseの挙動まとめ【Oculus,Quest2,Unity】

いろいろ詰まったためメモしておきます. Questでのアプリ開発でアプリを終了したときに何かの処理をしたいと思うことが多々あるかと思います. (間違えている可能性もがあるため,コメントまたはtwitterのDMにてご指摘等お待ちしています) 環境 挙動まとめ…

NotionにTrelloのアーカイブを毎日記録する【Trello,Notion,Python,GCE】

自分のやったタスクを記録しておきたいとおもい,前にEvernoteにTrelloのアーカイブを保存する記事を書きました. その後Notionを知りこちらのほうが便利だと思い乗り換えたのですが,アーカイブの保存のスクリプトの切り替えがやっと終わったのでメモです G…

一覧からScriptableObjectのカスタム作成と検索ができるScriptableObject拡張【Odin,Unity】

ゲームで敵を複数作るときに ScriptableObject を使っています.少ない数なら自分で画像や名前を追加して生成するというのはいいかもしれません. しかし,これを List<ScriptableObject>で管理する場合作成したものをリストに追加するというのは割と手間です そこで,リストか</scriptableobject>…

BeatSaverのカスタム曲をYouTubeから好きな曲を作成する【VR,Oculus】

VR

BeatSaverはVRゲームの中では私は一番いいと思っています. 体を動かすので運動を兼ねてゲームができるし,狭い空間でもできるし,あまり酔わないってのもいいですね Webサイトからカスタム曲を作成する Windowsアプリから作成する Webサイトからカスタム曲…

Ryzen5900xにCPUをアップデートする(B450:ASRock)【Ryzen CPU】

ちょっと動かなくなったり等々大変だったので,今後同じような方が居たら見てください 普通はその辺のことを知っている人が変えるので,見ることもないかもですが.. はじめに 自分のマザーボードを確認する Ryzen5900x対応のBIOSにアップデートする(重要) …