【Unity】Prefabを生成する際に、クラスに生成方法を紐付ける

少し走り書きになってしまっています、ご容赦ください。 内容 Unityを使用していると、必ずPrefabをInstantiateする行為を行うと思います。 その際、以下のようなコードになるのではないかと思っています。 普通に生成する 一般的ですね、ですが外部に生成し…

【Unity】開発の状況に合わせたUnityバージョンの選定基準について

Unityのバージョン、結局どれを使えばいいんだという声を聞いたのでまとめてみます。 開発状況別 + マイナーバージョンとパッチリリース含めて、Unity Editorやビルドプラットフォーム、新機能の安定度を基準にしています。 また、対象は1 ~ 2年以上かかる長…

【備忘録】ゲームを発想するということ

こんにちは、かせです。 最近は技術的なことは枯れた概念しかやっておらず、特に発信できることがないのでブログは止まりがちでごめんなさい。 色々な方と話をしてなんとなくゲームのコンセプトの決め方に2つのパターンがあるなあと思っていたのですが、やっ…

【雑記】デジゲー博2018で遊んだゲームの感想

デジゲー博 デジゲー博 | 同人&インディーゲームオンリー展示・即売会 とても素晴らしいイベントで、2016年から毎年サークル参加をさせていただいてます。 主催の江崎さんのインタビュー記事はこちら www.gamecast-blog.com 国内のイベントで一番好きです。…

【備忘録】Faye/Sleepwalkerの開発環境とサークルの運営について

最近ブログ書いてなかったので、サークルで開発する際に必要だった諸々の備忘録を書きます。 未来の自分と、もしかしたら誰かの参考になるかも。 開発環境・クライアント ゲームエンジン Unity 5.6 -> Unity 2017.1.1 -> Unity 2017.4.8f1 2017へ移行した理…

【Unity】複雑なアニメーション遷移を制御するAnimatorの作り方

昔こんな記事を書きました。 yutakaseda3216.hatenablog.com さらに、最近Gotanda.unity - connpass という集まりでもAnimatorについてのLTを行いました。 ここらへんで、皆一度は悩むであろうAnimatorのそれなりにマシな作り方、設計の仕方をまとめていこう…

【Unity】OnPostProcessAllAssetsを使う時に特定の方法で無限ループする

OnPostProcessAllAssetsについて docs.unity3d.com このクラスを継承したEditorクラスは、OnPostProcessAllAssetsメソッドを定義することでアセットインポート時に処理をフックすることができる。 ScriptableObjectやなんやに自動登録したり、asset判別して…

【Unity】Timelineで使用するPlayableAssetとPlayableBehaviourを参照を追加しながら作成するエディタ拡張

リポジトリ github.com ここにプロジェクトとUnitypackageがあがってるのでダウンロードなりcloneなりをどうぞ 使い方 メニューに表示されているPhantomIsland -> Windowからエディタを開いてください。 設定できる項目は 使用するnamespace 変数の型、変数…

【C#】NSubstituteを使用してクラスをモックとして偽装する

NSubstituteとは? 定義されたinterfaceを使用して、クラスの振る舞いをモックとして定義することが出来るライブラリ interfaceに定義されているフィールドやメソッドの返す値や動作を一つずつ定義できるので、テストしたいクラスに渡すデータなどの偽装が可…

ブログ名とかを変えました。

ブログ名とか、中のデザインを一部変えました。 開発とかメモ -> かせの開発とかメモ。 -> かせノート。 <- New! 書くことはほとんど変わらないと思いますので、今後ともご愛読くだされば幸いでございます。 よろしくお願いします。

【プログラミング】MVC,MVPを理解するためのレイヤーアーキテクチャ

少しだけ長いので、根気を持ってお読みください。 レイヤーアーキテクチャについて 言葉で表現すると 個々のオブジェクトの設計に依存しない、概念的な部分の設計思想 各機能の「置き場所」の定め方 あるいは、各機能の依存先を決める手段 責務を明確化する…

【Unity】TestRunnerをbatchmodeで起動した際に謎xmlが吐き出されるバグ【NUnit】

2017/12/22追記 Unity2017.3で治ったようです、よかった Unity5.6からなのかわからんのですけど、JenkinsのNUnit test result reportがコケまくるんですが、同じこと起きた人いないかな。。。— かせ (@YutaDevelop) 2017年7月31日 バージョン Unity5.6.2f1 …

【Unity】UniRxで独自オペレータを作る、Observableの拡張

UniRx github.com いつもお世話になっています。 オペレータとは IObservable<T>の拡張メソッドとして用意されたストリームソースを加工するためのクラス オペレータはIObservable<T>を継承しているので、メソッドチェーンすることができます ざっくりふわふわとし</t></t>…

【Unity】Zenjectをマルチシーンで使うときの3つの方法

Zenject関係の過去記事 yutakaseda3216.hatenablog.com yutakaseda3216.hatenablog.com マルチシーンでZenjectを使う 少し慣れてきた人向けです Zenjectの中核となるDiContainerは、SceneContextというクラスに紐付いている SceneContextが破棄されることでB…

【Unity】アセットストアで地雷を踏まないための5つのTips

2017/7/10追記 アセットストアがアップデートされ、見た目が大幅に変わりました 一部のTipsがあまり意味をなしていない場合があります あんまり変わってなかった アセットストア モデル、サウンド、エディタ拡張、完成プロジェクトまで様々なアセットを販売…

BitBucketのプラン改定でLFS容量が10GBから1GBになった話

BitBucketのプラン改定 Pricing Updateというまあありていにいえば価格改定が行われ その結果無料プラン、有料プランにLFSの容量が組み込まれた 改定前 リポジトリ容量2GB limit LFS容量10GB limit 改定後 リポジトリ容量2GB limit LFS容量1GB limit (!!!!??…

【Unity】ZenjectのAsSingle(),AsCached(),AsTransient()の違い

Zenject使うじゃんAsSingleでBindするじゃんUnBindするじゃんもう一回BindするじゃんInjectされない!!!!!!AsTransient使えば解決なんだけど、GC走って回収されてるのにキャッシュ残ってるってどういうことなんなんなん— ペンギン (@YutaDevelop) 2017…

【Unity】Zenjectで禅の心を手に入れる

Zenjectについて github.com 導入を躊躇っていたものの、あるところから脅しがかかったので本格的に使い始めた 基本的な使い方などはこちらをご参考いただければわかるのではないかと思います Unity3DのDIフレームワーク、Zenjectの紹介 | Aiming 開発者ブロ…

【Unity】StateMachineBehaviourについてと注意まとめ

StateMachineBehaviourとは 過去記事 yutakaseda3216.hatenablog.com yutakaseda3216.hatenablog.com AnimatorのStateにAddComponentできるスクリプト(MonoBehaviourみたいな感じ) クラスに継承させることで使用できる 役に立たない公式リファレンスはこれht…

【Unity】OnStateMoveをoverrideするとRootMotionが適用されずに詰む

StateMachineBehaviourについてのまとめを読んでください yutakaseda3216.hatenablog.com 概要 Unity.ver 5.4.4 UnityにはStateMachineBehaviourというものがある。 Unity - スクリプトリファレンス: StateMachineBehaviour AnimatorのStateに紐づけられるス…

UnityのコーディングにVisual Studio for Macを導入して一週間が過ぎた

誰か俺にVSforMacを入れる勇気を— ザツヨウペンギン (@YutaDevelop) 2017年2月23日 入れました、導入した後にやった設定と感想をつらつらと書きます とりあえずPreview版とはいえ、まあなかなかでした 導入・インストール New Release Preview: Visual Studi…

昨今のUnity開発におけるMVP設計思想についてと、それの適用可否の話

こちらも合わせてどうぞ yutakaseda3216.hatenablog.com はじめに こちらの記事を読んで、最近Unity開発でよく言われるようになった MVPについてだいぶ浸透(あるいは導入)してきたのではないかと思った。 developers.cyberagent.co.jp ただ、すべてのゲーム…

UniRxでObservable -> IEnumerator -> Observable変換した時のライフサイクル

コード gist9ab1097554ad9f37a8931f82cfdcb467 破棄されない話 .SelectMany()にCoroutineを使用するとうまく破棄されない。 .ToYieldInstruction()を使ってObservable -> IEnumeratorに変換したCoroutineを実行中にコンポーネントを削除するとエラーを吐き出…

Monodevelop - UnityでVersionControlが消えた時の対処

はじめに MacOSX 10.11.2 Unity 5.4.2f2 MonoDevelop-Unity 5.9.6 バージョン管理はGit BlameやDiff、Changesをワンクリックで見れるので重宝してる、こんなやつ ただこいつはよく消える 消えた時 Monodevelop-Unity > Add-In Managerを開いてこれをenableに…

【windows】何も考えずに最速でsshkeyを作ってgithubと連携する

Gitをインストールします Git - Downloading Package 各チェックボックスはこんな感じで 後は全部一番上にして、デフォルトのままでおk インストール後 デスクトップにできたGitBashのアイコンをダブルクリックでBash開く sshkeyを作る(下記をそのまま打ち…

コミケに参加して&SleepWalkerの今後

はじめに PhantomIslandのブースまで、朝早くに来てくださった方、ご購入していただいた方 大変ありがとうございました。 動画を見ましたと言ってくれる方や、デジゲー博でプレイしていただいていた方など、多くの方に直接販売することができました。 私は、…

UnityでGitLFSを使用する際にTrackするべきファイル

リポジトリが爆発したので背に腹は変えられないとLFSの導入を決意 Trackする画像や素材拡張子 *.png *.psd *.tga *.jpg *.fbx *.anim *.mp3 *.ogg *.wav git lfs track *.~するより、.gitattributesに直接記述した方が早い 追記(2017/03/10) .animはアニメー…

デジゲー博お疲れさまでした&SleepWalkerデモ版配布

どうも、かせです。 本日、デジゲー博にSleepWalkerのデモ版を出展させていただきました。 会場から閉会まで絶え間なくプレイしていただき、デジゲー博の熱量の高さを思い知りました。 また、夏から開発しはじめ、初めて人前でプレイをしていただけたので、…

UniRxを紐解く「Take(1)とFirst()の違い」

UniRxとは 大変便利なReactiveExtensionsのUnity版ライブラリ。 neue cc neuecc (@neuecc) | Twitter 最近、業務でも業務外でもこちらを触ることが多く、色々な地雷を踏み倒してきました。 備忘録の意味も兼ねて今回は 「Take(1)とFirst()」の違い をまとめ…

C#でpartialを使ってクラスの中身を分割する

こんにちは。 開発が進んでいくと、一つのクラスの中身が膨大な行数になることがあると思います。 その理由は様々あり、解決策もまた様々あると思います。 その中で、今回はpartialを使ってクラスを分割するということを行います。 どのような時にpartialを…