C#
最近はResourcesをやめてAddressableを使う現場が増えてきたと自分の身の回りでも感じられるようになってきました。(遅いかな?^^;) というわけでこの記事ではAddressableの基本をまとめてます。(全く使ったことない人が見るレベルね) Addressable何がい…
PlayableAPIを使ってモーション(アニメーション)の再生してみます。 Unity側で用意されているモーションを再生する仕組みには、SimpleAnimationやTimelineやAnimationControllerを使う方法がありますが、 そういった高機能な仕組みでは実装しづらい、または…
2023年現在、Unity側が用意しているPlayable APIには アニメーションとAudioを再生するAPI(クラス群)が用意されており、これに加えて、 自分でPlayable APIの機構を使って何かを再生したい場合にカスタムするためのAPIが用意されている。 *1 この記事では、…
自分はjava出身のなので、C#のenumがメソッドやフィールドが定義できないのが不便だったのですが、 拡張メソッド使ってjavaのenumに近いことができる。 現場でもこれを使っている人が多いので割とスタンダードな方法っぽいです。 基本的な方法 まずは一番シ…
スクショとるエディタスクリプト プロジェクトのルートディレクトリの直下(Assetsとかと同じ階層)に「ScreenShot」フォルダが作られ、そこに配置される。 using UnityEngine; using UnityEditor; using System; using System.IO; using System.Runtime.Com…
変数やメソッドのスコープは 一番狭く、使う時に広げてね。 というのが私のいつもの方針である。賛否あるかもだけど、今回はその方針の元書きます。 C#の話がほとんどですが、Unityだとインスペクタに表示するかどうかも関係してくるのでまとめた。
UnityのSpriteAtlasについて前から疑問だったのが、直接インスペクターでspriteをアタッチしても、 ちゃんとパッキングされたSpriteが使われているのか?ということである。 なぜそういう疑問を持つかというと、 インスペクタでアタッチした場合、SpriteAtla…
よく「アプリをアップデートしてください」とか出てストア画面に飛ばされる、のあるじゃないですか。 今回は、最新アプリのバージョンの定義をGoogleDriveにおく、という超お手軽な方法でそれを実装してみました。 個人開発者の方などで「サーバーが用意する…
この記事は、 プレハブをInstantiateしてゲームオブジェクトを生成する際に、 遅い・画面が止まるといった問題に対して自分が行っているアプローチを書きます。 【箱猫倉庫ver1.3(次回アプデ)】古い端末だとunityロゴ~タイトル表示まで遅い問題あってようや…
追記:2Dなので、SpriteRendererで主に使っていたが、uGUIでも問題なく使える! 動く物体 ・Is Trigger にチェックが必要 ・Rigidbody 2Dコンポーネントをつける必要がある →Body Typeは物理演算を使いたいならDynamic。物理演算の影響をうけたくない場合はK…
パラメータとは、引数のことです。 C#の引数には in, out, ref というパラメータ修飾子をつけることができます。 今回の記事は、パラメータ修飾子それぞれの機能ついて パラメータ修飾子をつけない場合 C#では、値(プリミティブ)型でも参照型でも「値渡し」…
はじめに ・「参照型渡すときにrefパラメータ修飾子つける意味あんの?」 ・「参照型でも値(プリミティブ)型でも値渡し」→「??」 C#のパラメータ修飾子について学んでいるときに、 上記の疑問がわいたので調べた内容をまとめた記事です。 はじめに これ↓…
ドキュメント dotween.demigiant.com namespace using DG.Tweening; 移動 (RectTransform)(gameObject.transform).DOLocalMove(new Vector3(8, 0, 0), 0.5f); //8,0,0の位置に移動 DOMoveはワールド座標での移動。DOLocalMoveはローカル座標。 絶対座標では…
このパートで行うこと 今回のパートでは、 敵プレハブを作成し、プレイヤーを追うように移動したり、プレイヤーへ攻撃したりさせる。
このパートで行うこと 今回のパートでは、プレイヤーが扉に入ったら次のステージに切り替わるという流れを実装する。 また、プレイヤーのHP(Food)が0以下になることによって、ゲームオーバーにもさせる。 これでこのゲームも開始から終了までの一通りのゲ…
このパートで行うこと 今回のパートでは新たにプレイヤーにHPの概念を追加する。 このゲームは一歩歩くごとにHPが消費される。ローグライクではよくある飢餓システムだ。 そして、HPはアイテムを入手することで回復することができる。風来のシレンでいう「お…
前回のパートではプレイヤーを十字キーで動かすことに成功した。 しかし、壁やアイテムをすり抜けてしまう状態だった。 このゲームでプレイヤーの移動を阻む物体は、壁と敵の2つであり、敵はまだ作っていないのでこのパートでは壁について対処していく。 ま…
このパートで行うこと いよいよこのパートで自分の分身となるプレイヤーを作る。 このパートではキーボードの十字キーを使って、プレイヤーを動かすところまでやってしまおう。 これで一層ゲームらしくなるはずだ。
このパートで行うこと 前回まででフィールド内の決まった位置に配置される床・外壁・出口を作り終わった。 このパートでは、ランダムな位置に配置されるアイテムと内壁の配置を行う。 今回は新しい内容はランダムな配置をする部分のみなのでサクッと進めてし…
このパートで行うこと いよいよこのパートからローグライクゲームの作成を開始しよう。 さっそくこのパートでは、プレイヤーや敵が動き回るためのフィールドの作成に入る。 フィールドにはさまざま物体があるが、その中でもまずは床・外壁・出口をフィールド…
今回やりたいこと。 一枚絵をどの端末でもある程度綺麗に表示したい。 一枚絵のうち真ん中からの一定範囲(下の絵だと16:9領域)はどの画面比の端末でも表示したい。 一定範囲よりも縦幅や横幅が広い端末(下の絵だとiPhoneXやipad)では、その分広く表示したい…
今回は、 UnityEngine.EventSystemsにあるIPointerDownHandlerだったりIPointerUpHandlerの実装クラス作って、 作ったスクリプトを適当なゲームオブジェクトにアタッチしたのにイベントが取れない!(タッチが反応してくれない!) …ということがあったので…
この記事での環境 Unity 2017.3.0f3 Personal(64bit) TextMemsh Pro - Beta 0.1.44 導入 ~ unity2018の場合 ~ UGUIのTextに代わるTextMeshProのUI用Text Font Asset Creator フォントアセットを作る TEXT INPUT BOX Rich Text タグ FONT SETTINGS Color Gr…