ゲームに登場する、プレイヤーが操作しないキャラクター(いわゆるNPC)を、生き生きと行動させるプログラミング技術の紹介です。単純な発想から始まり、具体的な問題点の解決を解説します。ゲームに限らず、様々なアプリケーションに幅広く応用できるテクニックです。
![敵キャラ行動の実装テクニック | Unity Learning Materials](https://cdn-ak-scissors.b.st-hatena.com/image/square/bf20245cfee7515ddcfbab7b0712ee9da133f664/height=288;version=1;width=512/https%3A%2F%2Fi.ytimg.com%2Fvi%2FbP6U4WHBXcY%2Fsddefault.jpg)
2021年6月に、Western Digital(WD)製のNAS「My Book Live」に保存したデータが全て消滅したという報告が相次ぎ、Western Digitalが「インターネットからの切断」を推奨する事態が発生していました。このデータ抹消事件に関するさまざまな調査の結果、データの削除は同製品のゼロデイ脆(ぜい)弱性を悪用したサイバー攻撃によるものであることが判明しました。 WDC-21008 Recommended Security Measures for WD My Book Live and WD My Book Live Duo | Western Digital https://www.westerndigital.com/support/productsecurity/wdc-21008-recommended-security-measures-wd-myboo
エディタ拡張とは この記事でのバージョン Unity 5.6.1f1 はじめに 例えば以下のようなコードで、オブジェクトを生成するエディタ拡張を作る事が出来ますが、 using UnityEngine; using UnityEditor; public class GameObjectCreator { [MenuItem("Test/Create")] public static void Create (){ //新しいゲームオブジェクトを作成 new GameObject("New GameObject"); } } このコードだと、Sceneに編集済みのマーク(米印)が表示されず、保存する事が出来ません。 今回はそんな時に役立つ記事です。 Undo Sceneが編集済みと認識されていないのは、変更点が記録がされていないからです。 なので、Undoクラスを使って、変更点を記録すれば
SecurityToken authentication requirements for API and Git operationsAs previously announced, beginning November 13th, 2020, we will no longer accept account passwords when authenticating with the REST API and will require the use of token-based authentication (e.g., a… As previously announced, beginning November 13th, 2020, we will no longer accept account passwords when authenticating with the RE
複数シーン実装についてまとめた背景 公式ドキュメントがない Unityでは、シーンを編集してゲームを作っていくのが基本です。 シーンは一つではなく複数使ってゲームを作ることができるのですが、詳しいやり方に関してはUnityの公式ドキュメントにはどこにも載っていません。 Unity公式ドキュメント「シーン」には、単一シーンの簡単な解説しかありません。 複数シーンの編集というページはあるのですが、基本的にはUnityエディタ上で複数のシーンを同時に編集する際のやり方であって、肝心の「実装方法」に関してはTIPS程度しかないようです。 ドキュメントではなくスクリプトリファレンスのほうには個別の機能の説明があるのですが、日本語訳がほぼされていません。 人によってやり方が違う Unityの複数シーンを使った実装方法自体は古くから議論されていています。 インターネット上にもいくつか情報がありますが、書
FPS を開発していても、あるいはパズルゲームや VR 体験を開発していても、必ず作らなければならないのがユーザーインターフェースです。嬉しいことに、2017 年 3 月、TextMesh Pro が Unity ファミリーに加わりました。これにより、Unity での見栄えの良い UI の作成が今までより遥かに簡単に、素早く行えるようになりました! ご存知ない方のためにご説明すると、TextMesh Pro は、Unity のデフォルトのテキストコンポーネントの代替となるものです。デフォルトのテキストコンポーネントに匹敵する(条件によってはさらに高い)性能を備えており、「符号付き距離場」(SDF)と呼ばれる、元々『Team Fortress 2』を開発した Valve によって使用された、まったく異なるレンダリング技術を用いています。TextMesh Pro を使用すれば、その高い性能によ
この記事でのバージョン Unity 2018.3.4f1 TextMesh Pro 1.4.0 はじめに 昔のUnityはUIの実装がかなり大変でしたが、uGUIの登場により劇的に改善されました。 しかし、まだ物足りない部分は多々あり、特にテキスト周りは不便な点も多いのが現状です。 そこで最近では、テキストのUIを表示する時はTextMesh Proを使うのがスタンダートらしいのですが、 実は今まで使ったことがなかったので、調べるついでに諸々をまとめてみようという感じの記事です! 目次 はじめに 目次 TextMesh Proとは uGUIのTextとの比較 拡大しても綺麗 設定 装飾 フォント 導入 生成 フォントアセット 作り方 更新 Fallback Font Dynamic SDF System 装飾 グラデーション タグ マテリアル プログラム 置換、移行方法 おわりに Text
その Slerp、使い方はあってますか?はい、私は間違ってました(真顔 さて、GameObject(ゲームオブジェクト) の rotation はクォータニオン型なのですが、実際に使われるときはVector3型で行うことも少なくありません。 そして、 Vector3型の使い方がベクトル(方向)と座標と角度の3つあるのですが、あまり説明されていないのでさらに混同しやすいという罠。 そしてウェブのサンプルを動かしているとき、たまーに期待していない挙動をしめすものがあったので、首をひねりながら調べたてことをまとめてみました。さあこれでスッキリです。 Vector3型は、使いみちに応じてサンプルでは以下のように表記します。 ・方向は Direction。単位ベクトルの長さがUnityの距離単位になる。 ・座標は Position。単位はUnityの距離単位(m / 物理演算時) ・角度(または回転
ソースコード 使い方 var text = GetComponent<TMP_Text>(); text.SetText( 123 ); 検証 using TMPro; using UnityEngine; using UnityEngine.Profiling; public class Example : MonoBehaviour { public TMP_Text m_text; private void Update() { var num = 25; var samplerA = CustomSampler.Create( "# ToString" ); samplerA.Begin(); m_text.text = num.ToString(); samplerA.End(); var samplerB = CustomSampler.Create( "# TMP_Text.
【Unity】Mathfの切り上げ、切り捨て、偶数丸め。使い分けが大事よね 2018.07.03 Mathf Mathf, Unity, スクリプト スクリプトで値をいじっていて、切り上げ、切り捨て、偶数丸めをしたい場面は結構多いです。 RPGならダメージ計算で小数点以下を処理したいですし、Transformでオブジェクトの位置を変更する場合に小数点以下を切り捨てたい時もあります。 そんな時に使えるのがMathfの各種計算メソッド。今回はタイトルにある切り上げ(Ceil)、切り捨て(Floor)、偶数丸め(Round)についてご紹介。 なおRoundは四捨五入ではなく五捨五入になっているので注意。 環境 macOS 10.13 High Sierra Unity2018.1.0f2 Mathfとは Unityで数学的な計算を簡単に行いたい時に使うのがMathfです。 代表的な所だとサイン、
変数は再生モード中に変更した値は元に戻りますが、インライン(グラフ中のみで使用している値)の値は再生モードを解除しても値は変更されたままになります。 変数はドラッグ&ドロップしてグラフ上に配置出来ます。 ドラッグ&ドロップして配置した場合はGet Variableユニットになります。 ユニットユニットは処理の単位で、何らかの処理を実行する単位です。 グラフの何もない所で右クリックする事であいまい検索(ファジー検索)画面を開いて、ユニットを選択したり、検索窓に対象を絞った検索をしてユニットを選択することが出来ます。 その他ユニットのポートからドラッグして、接続できるユニットから選択することも出来ます。 ポートポートはユニットに付いている接続部分で、処理の流れを作るフローポートと値を渡すデータポートがあります。 上の例ではStartユニット(スタート時に1回実行される)からDebug Logユ
github.com コンセプトは、加工しやすいようにシンプルに値だけを出力するもの。 HogeEasingRawを使うと0~1の入力を受け取って値を帰すバージョンもあります。 ちなみに、AnKuchenもVisualScripting対応しました。 AnKuchenがVisualScripting対応しました! いちいち対象のオブジェクトをGUI上で登録しなくても、 一番親のオブジェクトさえ握っておけば(この場合はCanvas) 文字列でオブジェクトを引いてくることが出来ます!https://t.co/ceBTzPXsEJ pic.twitter.com/3fJd7Zixyv— きゅぶんず (@kyubuns) 2021年2月26日 これでVisualScriptingだけでUIが作れるようになった・・・はず
加筆 or 修正 2021-02-09 ImtStateMachine.cs のリンクを修正 2021-11-30 続編記事の執筆準備開始 2022-01-11 ImtStateMachine.cs のリンクを修正 2022-02-21 続編執筆進捗100%(投稿しました。) https://qiita.com/BelColo/items/a27b66b18794b33943f9 2022-06-15 ImtStateMachine.cs(StateMachine.cs)のリンクを修正 2023-10-23 ImtStateMachineリポジトリが独立したので前置きとリンクを修正 前置き ステートマシンよりも前に、状態制御とはなにかを書いていたのですが、思った以上に長くなりそうだったので、状態制御については別記事にします。 今回は、シノア氏が開発しているOSSである IceMilkTea
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く