c#

UniRxを1日勉強してみた感想

結論 まず最初に結論を。ゲーム開発がメインの私的にはObserveEveryValueChanged, Timer, AddTo(安全のため必須)あたりを使えれば十分かなぁという感想。実は、気づいていないすごい便利な使い方とかあるかもしれないので、オススメの使い方がありましたら教…

【Unity道場】Unity 5.4 & 5.5 新機能キャッチアップ講座に行ってきた。

「Unity 5.4 & 5.5 新機能キャッチアップ講座」に行ってきました。このような回を無料かつ軽食付きで開催してくれるUnity Japan様には頭が上がりません。ありがとうございます。個人的に気になったポイントと所感をメモ。 Unity5.4 GPU Instancing ライトプ…

Unityで transform.localPosition.x = 1.0f; ができないわけ

C#初心者の私がUnityで最初戸惑ったのはtransform.localPosition.x = 1.0f;というようなことができないことです。これをやろうとすると、 error CS1612: Cannot modify a value type return value of `UnityEngine.Transform.localPosition'. Consider stori…

C#のlock構文

FruitsNinjaのCloneのソースコードを見ていてc#にlock構文があることを知りました。https://www.assetstore.unity3d.com/jp/#!/content/65879 マルチスレッドのプログラムでは、ちゃんと排他制御をしないと問題がおきます。その代表格がsingletonクラスで、…

全てのシーンに存在し、一つしか存在してはいけないマネージャー的存在の実装

kan-kikuchi.hatenablog.comこの記事を読んで、最近読んだFruitsNinjaをCloneしたアセットのことを思い出したので記事にします。https://www.assetstore.unity3d.com/jp/#!/content/65879ところで、このアセット、凄いです!画像変えるだけで、vegetable nin…

usingとIDisposableを使って簡易的な処理計測クラスを作る

先日、書いたusingとDisposerを使って簡易的な処理計測クラスを作ってみました。 using UnityEngine;//for Debug.Log and Debug.Assert using System; public class ProcessTimer { System.Diagnostics.Stopwatch stopWatch = new System.Diagnostics.Stopwa…

Unityでビルド後に自動でRomをアップロードする拡張

Unityで作ったAndroid用のRomを他の人にテストプレイしてもらうときに、FTPツールを使っていちいちアップロードしていたのだけど、それがいちいちめんどくさかった。そこで自動で行うようにしてみました。c#でFTPを利用するのは以下を参考にしました。 Simpl…

RAIIをC#でやるには?

RAIIとは? Resource Acquisition Is Initializationの略で、直訳すると"リソースの取得は初期時に"となります。これはC++やD言語で一般的なテクニックでリソースの取得と破棄を、変数のコンストラクタとデストラクタに関連付けて行うものです。例えば、下記…

C#のLinqについてまとめた。

c#

Linqについて C#にはC++にはないLinqという素晴らしい仕組みがあるらしい。脳に刻みこむためにメモした。以下のスライドを参照してまとめただけ。 http://www.slideshare.net/shotababa359/c-linq-to-objects 利用方法 using System.Linq を書くだけ。!!Linq…

DoTweenのcanvasGroup.DoFade( 0, 1 ).OnComplete( completeFunction )みたいなことがしたい

サンプルプロジェクトをgithubにあげてます。github.comこないだUnityの勉強会に行って、UnityのAssetでTweenアニメをしてくれるDoTweenというものがあるのを知りました。dotween.demigiant.com そこで出てきたサンプルコードで以下の様なものがありました。…

Excelから翻訳データを読み込んでTextに突っ込むTranslateManagerを作った

タイトルでだいたい説明した感じですが、ポイントとしては、 TagProcessorクラスを介することでタグ解釈ができる(後述) UnityEngine.UI.Textのtextに$$で始まるキーを入れておくと、対応する訳を入れてくれる Resources.FindObjectsOfTypeAll()でヒエラルキ…

C#でGenericなSingleton

c#

C#でGenericなSingletonを実装したい。Genericでない基本的なSingletonの実装法についてはMSDNに書いてある。 MSDNに載っていたSingleton実装 Implementing Singleton in C# 最も基本的なのは、以下の様な感じ。 public class Singleton { private static Si…

Omnisharp導入でハマったところ

Unityでゲームを作るときに、VimにOmnisharpというプラグインを入れておくと便利と聞いて導入してみました。 が、いろいろハマったのでメモ。 自分の環境は、Windows10(Bootcamp)でVim7.4(Kaoriya版) 導入には以下のサイトを参考にさせていただきました。 Vi…

c#的Singleton

c#

下記のようにすればOKらしい。 class Singleton{ Singleton instance = new Singleton(); private Singleton(){ System.Console.Write("constructor."); } public Singleton getInstance(){ return instance; } }

formの位置を変える方法

最近、趣味でC#を書いてます。 MyForm f = new MyForm(); f.Left = 100; f.Top = 100; などというようにすれば良いとネットで見かけたんだけど、どうもうまくいかない。 いろいろ調べると、どうやらStartPositionというプロパティを変更しなくてはならないら…