imog

主にUnityとかの事を書いています

Unity

技術書典7でZenjectチョットワカルBookを頒布します

9/22の技術書典7にて、Zenjectについてつらつら書いた「ZenjectチョットワカルBook」というのを頒布します。ページは以下。 techbookfest.org また、電子版もboothで同日から公開します。 e-f-b.booth.pm 会場では物理本を1000円で頒布します。かんたん後払…

Extenject(Zenject)のTestがNSubstituteをサポートしていた

割と最近の出来事だった github.com 元々Zenjectはテスト時のモックライブラリとしてMoqを採用していたんだけど、このPRでまた別のモックライブラリであるNSubstituteを使えるようになった。選択肢が増えたのだった。 Moq github.com NSubstitute nsubstitut…

ZenjectのConstructionMethodたち

ZenjectでBindするとき、そのインスタンスをどのように用意するかという設定が必要です。その場で初期化するのか、既存のインスタンスを引っ張ってくるのかなど。これらはコンストラクションメソッドと呼ばれており、READMEに全部書かれています。 github.co…

Zenject Factoryの話

はじめに このエントリはUNIBOOK10で書いた記事を転載したものです。 unity-bu.booth.pm UNIBOOK10、いい話がいっぱいあるから買ってね! Zenject Factory ZenjectはUnityで動作するDIライブラリです。煩わしい依存関係の解決を助ける非常に強力な武器となり…

Zenject Decorator Binding

ZenjectにはDecoratorパターンをサポートするDecorator Bindingなる機能があったりします。あんまりメインで使うような機能ではありませんが覚えておくと便利かもしれません。 github.com Decorator パターン DecoratorパターンはGoFで定義されてるデザイン…

InjectとInjectLocal attribute

Zenjectのソース読んでたらInjectLocalというAttributeが内部にあったのでなんだろうと調べたメモ。実用的なやつではない。 どのContainerからInjectされるのか そもそも、Bindされたオブジェクトはどこから依存しているオブジェクトをもらえるのでしょう。…

【年末だよ】Unity お・と・なのLT大会 2018」でLTしてきた

ポロリはしませんでした。 meetup.unity3d.jp 毎年年末に酒を飲みながらLTするイベントが行われているということでプレモル3杯目を飲みながらLTしてきた。 発表内容 発表資料はこちらでございます。 speakerdeck.com ZenjectにはOptionalExtrasと呼ばれる便…

Zenject Signals

本記事は Unity Advent Calendar 2018 の 13日目 の記事です。 qiita.com 普段Zenjectを趣味で使っているのですが、Zenjectは基本的なDIContainer機能の他に、ちょっとDIから離れた便利機能をいくつか提供しています。MemoryPool TestFrameWork Reflection B…

開発方針についての文書を書いていた

色々決めごとをするときは社内にissueなりwikiなり残すのですが、これは外に公開してもいいんじゃない?と思ったので公開します。 今回は「開発方針について」です。 目的 クライアントアウトゲーム全体の開発方法、指針を把握する あとから参加した人もスム…

コードレビューについての文書を書いていた

色々決めごとをするときは社内にissueなりwikiなり残すのですが、これは外に公開してもいいんじゃない?と思ったので公開します。 今回は「コードレビューの導入する」というやつです なぜコードレビューをするのか 大きく二つの効果があると思っています コ…

テストコードについての文書を書いていた

色々決めごとをするときは社内にissueなりwikiなり残すのですが、これは外に公開してもいいんじゃない?と思ったので公開します。 今回は「Unityにテストコードを導入する」ときの文書です なぜテストコードを導入するのか 往々にしてプロダクトの要件は常に…

UnityのInspectorはDataStoreの一種かなと思った

ふと思ったのでメモ やっぱりInspectorもDataStoreの一種だよなあと思う今日この頃— いも@EFB~相手は死ぬ~ (@adarapata) 2018年2月14日 今趣味で作ってるゲームはMVPで書いてるけど、ModelにDataStoreの概念があります。 public interface IDataStore<TEntity> : wher</tentity>…

お産合宿11でゲーム作った

ペパボでは毎年お産合宿という創り出す系の合宿イベントをやっています。 今年はSUZURANというチーム名で参加してきました。僕はイーグルです。 osan.pepabo.com 僕は今までアクションゲームばかりでRPGを作ったことが無かったので、やってみたいなという気…

UNIBOOK8の執筆に参加しました

夏コミ1日目、Unity部によるUnityのためのUnityの本、UNIBOOK8が頒布されます。 www.unity-bu.com もともと気になってはいましたが、今回ご縁があって僕も参加させていただきました。僕はマルチシーンの活用方法について書いてます。この章は、技術的なtips…

Unity1週間ゲームジャムに参加した

これ Unity 1週間ゲームジャム | ゲーム投稿サイト unityroom - Unityのゲームをアップロードして公開しよう 最近小さいやつも作ってなかったのでリハビリにやってみた。 結果、寿司が跳ねる奴が生まれた。 はねすし | ゲーム投稿サイト unityroom - Unityの…

Unityで3D横スクロールの挙動を考える

Unityで3D横スクロールの挙動を作る これはpepabo Advent Calendar 2016 - Qiitaの15日目の記事です。 昨日は id:yutokyokutyo の コードレビューするのが怖いと思っていたエンジニアが半年間コードレビューを経験して思った 10 のことでした。 ところでみな…

Unityでシーンをキャッシュする仕組み

2時間遅れの公開になります。遅れてしまった・・。 こちらはUnityアドベントカレンダー、12/5の記事です。 qiita.com 前回は凹さんの「Unity で Windows のデスクトップ画面をテクスチャとして表示するプラグインを作ってみた」でした。 tips.hecomi.com シ…

UnityFukuoka12をやりました、発表しました。

5月くらいに11をやったので半年ぶり。 atnd.org 僕の発表はこちら speakerdeck.com 主に、マルチシーンを使うと便利だぞという話と、Prefabでの管理をSceneにできないかという話。 以下、スライドの補足。 今回なんでマルチシーンをテーマにしたかというとし…

ArborでUniRxを使いやすくするArborRxを作った

ということでArborRxというアセットをgithubに公開しました。 github.com Arborとは ケットシーウェアさんがアセットストアで販売しているアセットです。 https://www.assetstore.unity3d.com/jp/#!/content/47081 GUIで状態遷移を簡単に実装できるのが特徴…

第43回 八時間耐久作品制作会(仮) に行ってきた

(仮)までが正式名称 atnd.org 今回もゆったりとした雰囲気だった。 自分は前回から機能のパッケージ化が面白くなってきたので、今回も小さい機能を作っていた。 できたのがこちら。ミッコと呼びます。 github.com Mikko is Mikkoは、プラットフォームを気に…

Unityでシンプルなポップアップを実装する

スマホゲーとかでよく出るやつを作ってみた。 github.com 最近だと横からニュッと出るやつとか下からシュッと出るやつとかあるけど、今回は昔からあるダイアログ形式のやつを実装してみた。 まずは、シンプルに任意の時間でオブジェクトを拡大縮小させるTwee…

UnityWebRequestについてちょっと調べてみた

この記事はUnity 2 Advent Calendar 2015のエントリです。 UnityWebRequest UnityWebRequestとはWWWに変わる新しいHTTP通信用のクラスである。 docs.unity3d.com 名前空間にExperimentalが含まれている通り、まだ実験的な機能なので今後も仕様が変更されてい…

UniRX使ってOnRaycast的な処理を書く

小ネタ OnTriggerEnterとかそういう感じで、レイにぶつかった瞬間、ぶつかっている間、レイから離れた瞬間を検知したいなという気持ち。 一案としてこのような感じ using UnityEngine; using System.Collections; using UniRx; using UniRx.Triggers; using …

ArborのStateBehaviourを継承してUniRXを少し使いやすくする

無料期間中にArbor: State Diagram Editorを入手しました。 Arbor: State Diagram Editor | ケットシーウェアcaitsithware.com 毎回statemachineを自前で書いてて面倒だと思ってたのでこれはありがたい。 昨日から触り始めているけど、特別引っかかることも…

UniRXでマウスのドラッグを実装する

オブジェクトのドラッグであれば OnDragAsObservable で一発なんだけど、オブジェクトを対象としない場合に簡単なメソッドがなさそうだったので書いてみた。 public class DragObserver : ObservableMonoBehaviour { private Subject<Vector2> onDragStream = new Sub</vector2>…

UnityのSkyboxを動的に弄る

会話の流れで、「Skyboxって動的にいじれるのかな」と思って調べたやつ。 Skyboxの情報を弄って動的に色を変えるやり方です。 マテリアルを準備しよう なにはともあれSkyboxに使うマテリアルを新規作成。 今回は MySkybox という名前で新規マテリアルを作っ…

UniRXでuGUIのテキストをアニメーションさせる

UniRXの勉強も兼ねて小ネタ的なやつ。 いわゆるノベルゲーのこういうやつ これをuGUIのTextがついてるオブジェクトにペタっと貼ると動きます。 UniRXをインポートしていることが前提です using UnityEngine; using System.Collections; using UniRx; [Requir…

UnityFukuoka07をやってきた

およそ半年ぶり Unity Fukuoka 07 on Zusaarwww.zusaar.com 31人の予定だったが、先日じょぎの後輩とかにお誘いしてみたら意外と参加者が多くて多分40人はいた気がする。Unity初心者がかなり多め(自己申告) オフィス7Fの大きさ考えてMAX50人にしてたけど実…

SPAJAM福岡予選2日目 最優秀賞いただきました

結論から言うと、最優秀賞に選ばれ本選に進むことができた。やったぜひゃっほい。 これの2日目 SPAJAM予選1日目 - imogadarapata.hatenablog.com 前日は4時くらいにほどほどに寝て8時30起床。10時集合予定が見事にちょっと遅刻した。 2日目は自分のメインの…

SPAJAM福岡予選1日目

初日でした SPAJAM 公式サイトspajam.jp 駅でサンドイッチとおにぎりを購入しつつ集合時間1分前に到着。想定以上にギリギリだった。 参加者は学生が割と多く、短大、大学、高専とか多岐に渡る面子だった。 学生はなんというかバイタリティがすごく、当たり前…