はかせのラボ

私の頭の中を書いていく雑記ブログです

C#

IL C#のルールを超える禁術 ~DynamicMethod~

あいさつ DynamicMethodとは何ぞや?AssemblyBuilderとの違いは? DynamicMethod使ってみる あとがき あいさつ どうも、はかせです。前回の記事ではAssemblyBuilderを使って、 動的にdllとexeを生成してみました。 hakase0274.hatenablog.com今回はDynamicMe…

IL ILを手書きで出力してみる

あいさつ ILを書く方法 AssemblyBuilderを使う exeを吐かせてみる あとがき 参考 あいさつ どうも、はかせです。IL、ひいては機械語眺めてると どういう風にデータが動いていくのかが 見えるので見てるだけで楽しいですね。永遠と自分が過去に作ったexeとか…

IL DnSpyが神ツールだった件

あいさつ DnSpyとは ほめてばっかりもあれなんで・・・ あとがき あいさつ どうも、はかせです。 昨日から黒魔術士を目指してILを学び始めました。所感としてはなんか楽しいです。 つよつよプログラマになったと錯覚できるからですかね。 (実態はよわよわプ…

IL 黒魔術士を目指します

あいさつ IL is 何? 使えるツール とりあえずやってみる 既視感・・・ あとがき 参考 あいさつ どうも、はかせです。 最近私がイカサマをする際に使う 手品のタネを紹介してきました。ただ私もそろそろイカサママジシャンを卒業して、 黒魔術士になりたいな…

Unity シーン切替をプレハブを用いて約40倍速にする

あいさつ シーン遷移が遅いのか? どうやって速くする? 実装 シーンとプレハブどっち使う? あとがき あいさつ どうも、はかせです。あなたはシーン管理どうしていますか? おそらくUnityユーザーならばSceneManagerクラスを使っていると思います。ただUnit…

C# ファイルの読み書き

あいさつ 環境 using ファイルを開く 小ネタ using ファイル読み込み ファイル書き込み あとがき あいさつ どうも、はかせです。 フォルダ操作系は一通りやったので 次はファイル操作です。ファイル操作ができるようになれば、 極論プログラムを弄らずとも …

C# プログラムから別プログラムを起動しよう ~Processクラス~

あいさつ 環境 using プロセスの起動 プロセスの終了待ち合わせ プロセスの終了 あとがき あいさつ どうも、はかせです。 今回はC#でツール作ってると結構な頻度でほしくなる 自分以外のプログラムの起動や終了の待ち合わせをやります。C#にはそれらをうまい…

C# フォルダ操作

あいさつ 環境 C#のフォルダ操作系 using カレントディレクトリ取得、移動 フォルダ生成 フォルダ削除 フォルダコピー、移動 フォルダ階層取得 あとがき あいさつ どうも、はかせです。 先日こんなアンケートを行いました。ツール系の記事(フォルダ操作とか)…

Unity 簡単にWebSocket通信が行えるWebSocketSharpの紹介

あいさつ WebSocketSharpとは 前準備 実際に使う サーバー クライアント あとがき あいさつ どうも、はかせです。 今回は少し毛色を変え 便利なライブラリの紹介です。今回紹介するライブラリは、 C#使える環境ならば簡単に使える WebSocket通信用ライブラリ…

Unity Unityで音声認識 ~キーワードで取得~

あいさつ Unityで音声認識はできるのか Unityでキーワードによる音声認識 なんかちょっと使い方めんどくさいな・・・ あとがき あいさつ どうも、はかせです。 ここ最近はずっとAlexaの開発をしておりました。 今までやったことのない分野でとても勉強になり…

Alexa AlexaとUnityの連携

あいさつ どういうものか 実装 Alexa側のコード Unity側のコード あとがき あいさつ どうも、はかせです。 今回はAlexaとUnityの連携がようやく形になってきたので その話です。 どういうものか まずは動画をご覧ください。AlexaでUnity操作できたーちなみに…

AWS UnityからDynamoDBの更新

あいさつ やり方 あとがき あいさつ どうも、はかせです。 前回DynamoDBの読み込みができたので 今回はDynamoDBの更新をやってみます。 やり方 PythonなどでDynamoDBを更新しようとすると update_itemとかを使うのでUnityでもそうかと思ったんですが違いまし…

AWS UnityからDynamoDBの読み込み

あいさつ データを取得するための準備 データを取得する あとがき あいさつ どうも、はかせです。 今回はUnityでDynamoDBのデータを取得する方法です。 データを取得するための準備 まずデータを取得するために 取得するデータを表すクラスを作成します。 [D…

AWS Cognitoでのサインアップ

あいさつ Unityでやること AWS使うための前準備 コーディング&オブジェクト配置 AWSでやること UserPoolの設定 IDPoolの設定 実行 あとがき 参考 あいさつ どうも、はかせです。 今回はようやっとCognitoでサインアップに成功したので そのまとめです。今回…

C# ラムダ式

あいさつ ラムダ式とは こいつはなんなのか? どうしてこいつ使うのか? あとがき あいさつ どうも、はかせです。 今回はC#のラムダ式についてです。 ラムダ式とは よくLINQとかRxとかの記事で見かけるこんなやつ //listは事前に作ったList<int> list.Where(value</int>…

C# 三項演算子

あいさつ 三項演算子とは 三項演算子を使う場面 使うべきでない場面 あとがき あいさつ どうも、はかせです。 前回AWSのサービスをなめてみて とりあえず入り口である認証からと思いCognitoを使ってみようとしました。 ただまぁ私のTwitterとか見てもらえれ…

Unity TCP通信を受信する

あいさつ サーバーサイド(Unity) クライアントサイド(CLI) 実行結果 あとがき 参考 あいさつ どうも、はかせです。 今やってるAWSがTCP通信しかサポートしてないそうなので、 Unityを使ってTCP通信を受信してみます。 (UDPが出来たら楽だったんだけどなぁ)サ…

プログラミング 今話題のスターリンソートをLINQの拡張メソッドにしてみた

あいさつ スターリンソートとは? LINQで実装してみる あとがき あいさつ どうも、はかせです。 今回は今ちょっと話題になっている スターリンソートをLINQの拡張メソッドで作ってみた話です。 スターリンソートとは? ソートされていない要素を粛清すること…

Unity UnityでXMLファイルを読んでみた話

あいさつ UnityでXMLを読む方法 Linqも使ってみる あとがき あいさつ どうも、はかせです。 最近Unityを使って通信をやってみたりしてます。 その中で色々WebAPIを叩いてみたんですが、 返ってくるものは大体XMLかJsonでした。XML読み込みはC++で散々悪戦苦…

Unity UnityでWebAPI使ってみた

あいさつ WebAPIとは 使うための前準備 使ってみる あとがき あいさつ どうも、はかせです。 前回UnityWebRequestを使って通信ができました。 今回はWebAPIをUnity上から叩いてみたいと思います。 WebAPIとは 簡単に言うとWeb上にあるサービスを プログラム…

Unity UnityWebRequest使ってみた

あいさつ UnityWebRequest あとがき あいさつ どうも、はかせです。 最近ちょっとC++お休みしてUnityの再入門をしています。 理由は学校の卒業研究その他で使う予定があり、 そんな中で約1年ほどUnityから離れていたためやっていたことが 忘却の彼方に行って…

C# 参照渡し

あいさつ 参照渡しとは? やり方 実際に使ってみる 参照渡しの種類 あとがき あいさつ どうも、はかせです。 今回はC#の参照渡しについて 忘れていることがあったのでそのまとめです。 参照渡しとは? 名前の通り変数の参照を渡すことです。 基本的にC#のメ…

Unity フォルダやファイルの有無を確認し無ければ生成する

あいさつ 有無を確認する フォルダやファイルを生成してみる ファイルの有無を確認して生成する あとがき あいさつ どうも、はかせです。 ツールとか作ってるとファイルがちゃんとあるかとかが気になってきます。 そこで今回はUnityでのフォルダやファイルの…

Unity 簡単CSV読み書き

あいさつ なぜCSVなのか? 実装 あとがき あいさつ どうも、はかせです。 Unityでも使えるCSVの読み書きの仕方です。 なぜCSVなのか? ・作るのが簡単 ・Excelやスプレッドシートで管理できる ・所詮テキストファイルのため色んなシステムとの親和性がある …

プログラミング リフレクションについて簡単に書いてみる

あいさつ リフレクションって? 変数の型情報を表示してみる あとがき あいさつ どうも、はかせです。 今回は久しぶりのコラム回です。 今回のコラムテーマはリフレクションです。 (実行環境はUnity2018.3.6f1です) リフレクションって? よくネットとかで超…

Unity ScriptableObject②

あいさつ 使用例① データ 使用例② モデルとか単機能提供 使用例①と②を合わせたなにか あとがき あいさつ どうも、はかせです。 今回は前回に続きScriptableObjectについて、 実際にどんな感じに使うのか編です。 使用例① データ 多分ScriptableObjectの存在…

Unity ScriptableObject①

あいさつ ScriptableObjectとは? 使い方 あとがき あいさつ どうも、はかせです。 今回はUnityのScriptableObjectについてです。 ScriptableObjectとは? すごいざっくりと言うと 「クラスのインスタンスをPrefabとして保存使用する機能」です。 クラスイン…

Unity インスペクター上からprivate変数を弄る方法

あいさつ [SerializeField] あとがき あいさつ どうも、はかせです。 今回もUnityTips記事です。 今回のTipsはUnityでインスペクター上から弄りたい変数なんだけど 他のクラスから弄られたくないときに使えるものの紹介です。 [SerializeField] これは属性と…

Unity GameObject.Find系が重い理由

あいさつ 重い理由 使っていい場面 使っちゃダメな場面 あとがき あいさつ どうも、はかせです。 よく「UnityのGameObject.Findは重い」っていう話を聞きます。 あくまで私が知っている範囲では重いとはいっても重い理由は出てないことが多いです。 というこ…

Unity Collision.relativeVelocity ~ぶつかった時の勢いや力が欲しい~

あいさつ Collision.relativeVelocity あとがき あいさつ どうも、はかせです。 今回は地味に私のブログでは初めてのこんなんあるよっていう 紹介記事です。 Collision.relativeVelocity 今回の話のメインですね。 こいつはぶつかった時の相対速度です。分か…