はかせのラボ
住所
出身
ハンドル名
はかせさん
ブログタイトル
はかせのラボ
ブログURL
https://hakase0274.hatenablog.com/
ブログ紹介文
ゲーム開発やツール開発において、 良く使う技術から普段あまりみないような一風変わった技術まで 幅広く取り扱うブログです。 基本毎日更新、ちょいちょい筆者の日常もはさみます。
自由文
-
更新頻度(1年)

14回 / 14日(平均7.0回/週)

ブログ村参加:2019/09/03

はかせさんの人気ランキング

  • IN
  • OUT
  • PV
今日 09/16 09/15 09/14 09/13 09/12 09/11 全参加数
総合ランキング(IN) 圏外 圏外 圏外 圏外 圏外 圏外 51,661位 972,155サイト
INポイント 0 0 0 0 0 0 0 0/週
OUTポイント 0 0 0 0 0 0 0 0/週
PVポイント 0 0 0 0 0 0 0 0/週
ゲームブログ 圏外 圏外 圏外 圏外 圏外 圏外 859位 32,704サイト
ゲーム制作 圏外 圏外 圏外 圏外 圏外 圏外 17位 461サイト
IT技術ブログ 圏外 圏外 圏外 圏外 圏外 圏外 190位 7,724サイト
IT技術メモ 圏外 圏外 圏外 圏外 圏外 圏外 41位 1,077サイト
今日 09/16 09/15 09/14 09/13 09/12 09/11 全参加数
総合ランキング(OUT) 圏外 圏外 圏外 圏外 圏外 93,617位 80,622位 972,155サイト
INポイント 0 0 0 0 0 0 0 0/週
OUTポイント 0 0 0 0 0 0 0 0/週
PVポイント 0 0 0 0 0 0 0 0/週
ゲームブログ 圏外 圏外 圏外 圏外 圏外 1,525位 1,442位 32,704サイト
ゲーム制作 圏外 圏外 圏外 圏外 圏外 19位 19位 461サイト
IT技術ブログ 圏外 圏外 圏外 圏外 圏外 290位 268位 7,724サイト
IT技術メモ 圏外 圏外 圏外 圏外 圏外 45位 43位 1,077サイト
今日 09/16 09/15 09/14 09/13 09/12 09/11 全参加数
総合ランキング(PV) 圏外 圏外 圏外 圏外 圏外 圏外 圏外 972,155サイト
INポイント 0 0 0 0 0 0 0 0/週
OUTポイント 0 0 0 0 0 0 0 0/週
PVポイント 0 0 0 0 0 0 0 0/週
ゲームブログ 圏外 圏外 圏外 圏外 圏外 圏外 圏外 32,704サイト
ゲーム制作 圏外 圏外 圏外 圏外 圏外 圏外 圏外 461サイト
IT技術ブログ 圏外 圏外 圏外 圏外 圏外 圏外 圏外 7,724サイト
IT技術メモ 圏外 圏外 圏外 圏外 圏外 圏外 圏外 1,077サイト

はかせさんのブログ記事

1件〜30件

  • IL ループ処理をやってみる(はかせは小学生未満だったことが発覚してしまった)

    あいさつ ILでのループ あとがき あいさつ どうも、はかせです。 とりあえずAssemblybuilderとDynamicMethodを使った IL書きはなんとなくわかりました。基本がわかったら次は応用です。 今回はループをやってみます。 ILでのループ とりあえず下記のコードをILで起こすことを目指します。 int ArraySum(int[] numArray) { int sum = 0; foreach(var n in numArray) { sum += n; } return sum; } まずはゴールを知るため上のコードを LINQPadでILに変換してみます。 (これはメソ…

  • C# ボックス化

    あいさつ ボックス化とは? ボックス化は悪? 今どきの言語でボックス化って起こってるん? ボックス化回避はできるの? あとがき あいさつ どうも、はかせです。 最近ILの勉強をしていて ようやくC#という言語が それとなくわかってきたような気がしなくもない感じです。 (要はC#ナンモワカランです)ただ私自身個人や趣味でゲーム開発を行う際使うツールは Unityですし、おそらく就職先の企業でもC#を触る機会はあると思います。なので完全理解とまでいかなくても C#をある程度エクストリームに使いこなし パフォーマンスを出せるようになってみたいわけです。ということで今回は色々C#のパフォーマンス系の記…

  • 雑記 Hololensミートアップvol6に参加してきたよ

    あいさつ Hololensミートアップとは ICEブレイクタイム MicroSoft本社のMRTKチームの話 建築業界でのxRの話 xR×Fashionの話 xR×触覚の話と音描の話 XDreamersの活動についての話 セッション後 あとがき あいさつ どうも、はかせです。 今回はかなり久しぶりのイベントのリポ記事です。 前イベント記事書いたのは2月ですね。 hakase0274.hatenablog.com今日参加したイベントは前回の記事と同様 Hololensミートアップです。 hololens.connpass.com今回で札幌開催は6回目みたいですね。 Hololensミートアップと…

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

    あいさつ DynamicMethodとは何ぞや?AssemblyBuilderとの違いは? DynamicMethod使ってみる あとがき あいさつ どうも、はかせです。前回の記事ではAssemblyBuilderを使って、 動的にdllとexeを生成してみました。 hakase0274.hatenablog.com今回はDynamicMethodというものを使って ILを書いてみようと思います。 DynamicMethodとは何ぞや?AssemblyBuilderとの違いは? DynamicMethodってのはその名の通り 動的にメソッドを作るメソッドです。「おいおいメソッド作るだけ?」 「…

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

    あいさつ ILを書く方法 AssemblyBuilderを使う exeを吐かせてみる あとがき 参考 あいさつ どうも、はかせです。IL、ひいては機械語眺めてると どういう風にデータが動いていくのかが 見えるので見てるだけで楽しいですね。永遠と自分が過去に作ったexeとかのILを眺めてるのもいいんですが、 そろそろ自分でもILを書いてみたいと思います。 ILを書く方法 IL手書きと言っても所詮はC#です。 ちゃんとそれようのメソッドとかが用意されています。 (バイトコード直打ちとかいう頭おかしいことしなくていい)色々やり方はあるみたいですが、 今回はAssemblyBuilderというものを使…

  • IL DnSpyが神ツールだった件

    あいさつ DnSpyとは ほめてばっかりもあれなんで・・・ あとがき あいさつ どうも、はかせです。 昨日から黒魔術士を目指してILを学び始めました。所感としてはなんか楽しいです。 つよつよプログラマになったと錯覚できるからですかね。 (実態はよわよわプログラマ オブ ザ イヤーを受賞できるくらいよわよわプログラマですが)今回は私が勉強で使っているツールで DnSpyというツールが神がかっていたので その話です。 DnSpyとは .NETデコンパイラです。 GitHubにコードは公開されており、 ReadMeから飛べるリンクから実行ファイルも入手できます。 github.com元々.NETデコ…

  • IL 黒魔術士を目指します

    あいさつ IL is 何? 使えるツール とりあえずやってみる 既視感・・・ あとがき 参考 あいさつ どうも、はかせです。 最近私がイカサマをする際に使う 手品のタネを紹介してきました。ただ私もそろそろイカサママジシャンを卒業して、 黒魔術士になりたいなと思い始めました。思い立ったが吉日、 さっそく黒魔術(IL)の勉強を始めます。 IL is 何? 私のブログの読者の中には「ILって何?」という方が多いと思います。 実際私も存在は知っていたものの、 使いこなしたら化け物じみたパフォーマンスを出せるもの 程度にしか認識していませんでした。 (ZeroFormatterとかMessagePack…

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

    あいさつ シーン遷移が遅いのか? どうやって速くする? 実装 シーンとプレハブどっち使う? あとがき あいさつ どうも、はかせです。あなたはシーン管理どうしていますか? おそらくUnityユーザーならばSceneManagerクラスを使っていると思います。ただUnityのシーン遷移って遅くないですか? 3Dオブジェクトとかゴリゴリに置いたシーンを読み込もうとすれば 数秒待つことも多いでしょう。今回はそのシーン遷移時の待機時間を減らせる Unityのプレハブを使ったテクニックをご紹介します。 シーン遷移が遅いのか? あいさつで遅いですよねなんていいましたが、 今のUnityもシーン遷移は遅いんで…

  • まとめ 使い勝手良さげなもののまとめ

    あいさつ C++ C# Unity あとがき あいさつ どうも、はかせです。今回はこのブログで扱ってきた フォルダ操作などの割と汎用的に使える記事を まとめてみます。 C++ C++でCSVファイルを読み込む hakase0274.hatenablog.comフォルダの中身をまとめて読み込む hakase0274.hatenablog.com hakase0274.hatenablog.comC++でストリームを使ったファイル書き出し hakase0274.hatenablog.comWinAPIを使ったフォルダ操作 hakase0274.hatenablog.comC++17以降で使えるfi…

  • C# ファイルの読み書き

    あいさつ 環境 using ファイルを開く 小ネタ using ファイル読み込み ファイル書き込み あとがき あいさつ どうも、はかせです。 フォルダ操作系は一通りやったので 次はファイル操作です。ファイル操作ができるようになれば、 極論プログラムを弄らずとも プログラムの動作を変えれるようになりますよ。今回はファイルの読み書きをやっていきますよ。 (実は生成/削除/コピー/移動(改名)はフォルダ操作と一緒にやってますw) 環境 Windows10 Visualstudio2017 .NET Framework 4.6.1 using System.IO; ファイルを開く ファイル操作をするた…

  • 雑記 またもや来た奇妙な宅配便

    あいさつ 唐突になんか来たぞ 問い合わせてみても・・・ 同類を探す ネタバラシの時間 あとがき あいさつ どうも、はかせです。 今日はまたもや不思議な宅配便が来たので その話です。前回来た不思議な宅配便 hakase0274.hatenablog.com 唐突になんか来たぞ 今日私が学校から帰ってくると 自宅に宅配便が届いていました。なにかなーと思い見てみると 野菜ジュースでした。ここまではいいんですよ。 「誰かが懸賞にでもあたったかな?」 とでも思ってたわけです。「これ誰の?」って聞いてみたら 「えっ?お前んじゃないの・・・?」と返って来たわけですね。Σ(゚д゚;)正直ビビりましたw 誰も身…

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

    あいさつ 環境 using プロセスの起動 プロセスの終了待ち合わせ プロセスの終了 あとがき あいさつ どうも、はかせです。 今回はC#でツール作ってると結構な頻度でほしくなる 自分以外のプログラムの起動や終了の待ち合わせをやります。C#にはそれらをうまいことやってくれる Processクラスってのがあるので 今回は私が良く使う辺りをメインに書いていきます。この辺使えるようになってくると 既存のツールを使いながらそのツールではできない イカサマなんかがやりやすくなって、 出来ることの幅がぐんと増えるので 是非見てってくださいね。 環境 Windows10 Visualstudio2017 .…

  • C# フォルダ操作

    あいさつ 環境 C#のフォルダ操作系 using カレントディレクトリ取得、移動 フォルダ生成 フォルダ削除 フォルダコピー、移動 フォルダ階層取得 あとがき あいさつ どうも、はかせです。 先日こんなアンケートを行いました。ツール系の記事(フォルダ操作とか)ってC++とC#どっちのが見たいですか?— hakase@ちょっと変わり種のプログラマー (@hakase70945250) 2019年9月3日ツール系の記事でどの言語が見たいかというアンケートで 半数以上の方にC#が見たいという意見を頂きました。なので前回C++でやった操作を C#で実装してみます。 前回はこちら hakase0274.…

  • C++ ファイルI/Oが超絶楽になるfilesystem

    あいさつ 環境 include カレントディレクトリ取得、移動 フォルダ生成 フォルダ削除 フォルダコピー、移動 フォルダ階層取得 あとがき 参考 あいさつ どうも、はかせです。 前回フォルダ操作をWinAPIで実装してみた記事を上げました。 hakase0274.hatenablog.com本日はフォルダ操作の続きということで コピーとムーブをやろうとしたわけですが、 ここでとんでもない事実が発覚しました。なんとC++17以降ならばfilesystemという ヘッダーをインクルードすれば めんどくさいWinAPIを使わずとも ファイルI/Oができるらしいです。というわけで今回はfilesys…

  • C++ フォルダ操作

    あいさつ include カレントディレクトリの取得と移動 フォルダの生成 フォルダの削除 あとがき あいさつ どうも、はかせです。今回はフォルダ操作する際に使う カレントディレクトリの取得と移動 フォルダの生成 フォルダの削除 この三つをWinAPIを用いて実装します。この辺の操作が出来れば 必要なものを自動でセッティングしてくれるツール が作れるようになります。「開発楽にするためにツール作ってるけど セッティングが毎度ゴタついてめんどうなんだよなー」 っていうそこのあなた必見ですよ。 include 今回作成したプログラムで使用する includeはこちらです #include <Wind…

  • 雑記 カフェインについて

    あいさつ カフェインとは 利用目的 やばい部分 取り過ぎたら? あとがき あいさつ どうも、はかせです。 みなさん作業中の飲み物は何を飲んでいますか?私はもっぱらモンスターエナジーです。 理由は言わずもがなカフェインの摂取ですね。「眠気覚まし」 「作業に集中する」 「活力を得る」 等々摂取する理由は人それぞれだと思います。ただ私はふとこう思ったのです。 「散々世話になってるけどカフェインってなんだ?」疑問に思ったら調べてまとめる。 ということで今回はカフェインについて 私の調べた内容をまとめていきます。 カフェインとは 興奮作用を持つ精神刺激薬です。 モンスターエナジーやコーヒー、お茶などで …

  • 雑記 情報処理技術者試験についての私見

    あいさつ 情報処理技術者試験とは 私の持っているもの この試験を受けるメリットは何? 勉強する目標になる 客観的に知識を持っているという証明になる 会社によっては給料が上がる あとがき あいさつ どうも、はかせです。 今日なんとなくTwitterとかQiitaとかの タイムライン見てたらちょくちょく 情報処理技術者試験についての話が出てきてました。一応私もその資格には それなりの時間をかけて関わってきた者なので 今回はその私見を軽く書いてみます。 情報処理技術者試験とは 知らない人もいるかもしれませんので まず簡単にこの試験について説明します。この試験はIPAが実施している 国家試験です。 w…

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

    あいさつ WebSocketSharpとは 前準備 実際に使う サーバー クライアント あとがき あいさつ どうも、はかせです。 今回は少し毛色を変え 便利なライブラリの紹介です。今回紹介するライブラリは、 C#使える環境ならば簡単に使える WebSocket通信用ライブラリ「WebSocketShrap」です。 WebSocketSharpとは C#でのWebSocket通信を楽に実装できるよう 作成されたライブラリです。 サーバー、クライアント両対応です。 前準備 まずは下記ページからリポジトリを落としてきます。 github.com落として来たらこんな感じのファイル構成になっているはずで…

  • ゲーム ポケモンマスターズやってみた

    あいさつ ポケモンマスターズ ストーリー バトル ガチャ あとがき 追伸 あいさつ どうも、はかせです。 今回はかなり久しぶりのゲームレビュー記事です。 今回やったゲームは「ポケモンマスターズ」です。 ポケモンマスターズ ポケモンとDeNAが共同開発したゲームです。 (ジャンルはRPGになるのかな・・・?) 引用元:『ポケモンマスターズ』が配信開始! ゲーム概要や遊びかたなど、これまでの情報まとめをチェック - ファミ通.com pokemonmasters-game.com ストーリー ストーリーとしては 人工島パシオで開催される ワールドポケモンマスターズ(以下WPM)に出場するため パシ…

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

    あいさつ Unityで音声認識はできるのか Unityでキーワードによる音声認識 なんかちょっと使い方めんどくさいな・・・ あとがき あいさつ どうも、はかせです。 ここ最近はずっとAlexaの開発をしておりました。 今までやったことのない分野でとても勉強になりました。ただその中でAlexaに不満を持つことも多かったです。 ウェイクワードの件だったり、 前回のリマインダーの件だったり、 Alexaは何かと融通が利きません。 (おそらく誤動作と誤認識の軽減のため)そうしていくうちにふとこう思いました。「AlexaじゃなくてUnityで直接音声認識すればいんじゃね?」もちろんAlexa×Unity…

  • Alexa Alexaに自発的に喋って欲しかったんだ

    あいさつ なぜやろうとしたのか どうやってやろうとしたか リマインダーを使う あとがき 参考 あいさつ どうも、はかせです。 前回Alexa→Unityの連携に成功しました。 hakase0274.hatenablog.comなので今回はUnity→Alexaの連携に挑戦した話です。 なぜやろうとしたのか 基本Alexaは発話→レスポンスという動きしかしません。 どんなスキルであっても必ずユーザーが 「Alexa○○して」といった風に話しかけて初めて動き出します。ただUnityひいてはゲームのAIと言ったら 特定の条件下になったら今の状況を教えてくれたり、 かるく実況じみた発言をしたりと何かと…

  • Alexa AlexaとUnityの連携

    あいさつ どういうものか 実装 Alexa側のコード Unity側のコード あとがき あいさつ どうも、はかせです。 今回はAlexaとUnityの連携がようやく形になってきたので その話です。 どういうものか まずは動画をご覧ください。AlexaでUnity操作できたーちなみに有料アセットの類は一切使っておりません pic.twitter.com/i5KiXHItpG— hakase@プログラミングなんもわからん (@hakase70945250) 2019年8月26日 (生声(/-\*) ハジュカチ…)Alexaでスキルを起動し 「ポーズ」というとUnity側でPauseという文字が出る…

  • AWS UnityからDynamoDBの更新

    あいさつ やり方 あとがき あいさつ どうも、はかせです。 前回DynamoDBの読み込みができたので 今回はDynamoDBの更新をやってみます。 やり方 PythonなどでDynamoDBを更新しようとすると update_itemとかを使うのでUnityでもそうかと思ったんですが違いました。UnityでDynamoDBに対してできる操作は ・保存 ・読込 ・削除 この三つだけです。よくデータベース処理で存在する更新や挿入がありませんね。 ではUnityではどうやってやるのか。 答えは極めて単純で読込→上書き保存です。まずはコードから行きましょう。 Context.LoadAsync<Te…

  • AWS UnityからDynamoDBの読み込み

    あいさつ データを取得するための準備 データを取得する あとがき あいさつ どうも、はかせです。 今回はUnityでDynamoDBのデータを取得する方法です。 データを取得するための準備 まずデータを取得するために 取得するデータを表すクラスを作成します。 [DynamoDBTable("Test"),Serializable] public class TestTable { [DynamoDBHashKey] public string action; [DynamoDBProperty("info")] public List<string> infos; } 色々属性値が付いています…

  • 雑記 GoogleAdsenseに無料版かつ独自ドメイン無しで受かった話

    あいさつ GoogleAdsenseになぜか受かった GoogleAdsense審査に通った理由 あとがき あいさつ どうも、はかせです。 本日AWS東京リージョンで大規模な通信障害が発生しました。 該当サービスを私は利用していなかったので 私はそこまで被害を受けませんでしたが、 サービスの一時停止や機能縮小など小さくはない被害が多数出たようです。そんな中私はいつもどおりプログラミング~と行きたかったのですが、 そういう時に限ってやつが来るわけです。 そうWindowsUpdateがawsはメンテだしwindowsアプデは入るし(´;ω;`) pic.twitter.com/QjfygRXav…

  • AWS UnityでDynamoDBを操作する

    あいさつ DynamoDBの操作 AWSSDKのバグフィックス ロールが無効?IAMの信頼関係? あとがき 参考 あいさつ どうも、はかせです。 今回は再びUnityAWSに帰り DynamoDBを操作した話です。 (あっちこっち行ってすみません) DynamoDBの操作 基本はDynamoDBのunitypackageを使ってやります。 サンプルがデフォルトだと動かなかったり サンプル直しても私がAWSに疎かったりで 普通だと詰まらないようなとこで変な詰まり方をしました。やり方はネット上に散々落ちてますし、 私が参考にしたサイトも載せておくので サンプルの動かし方はそちらをご覧ください。 A…

  • Alexa AlexaでDynamoDBのデータを取得する

    あいさつ Lambdaでやること Alexaでやること 実行 Alexaは自由テキストを受け取る仕組みではないらしい あとがき あいさつ どうも、はかせです。 前回DynamoDBにデータをPutしたので 今回はその読み出しをしてみたいと思います。前回はこちら hakase0274.hatenablog.com Lambdaでやること 下記のコードを追加していつもどおりハンドラー登録をします。 def dbGet(name): queryData = table.query( KeyConditionExpression = Key("name").eq(name) ) text = '登録さ…

  • Alexa AlexaからDynamoDBにデータを追加する

    あいさつ DynamoDBでやること Lambdaでやること Alexaでやること 実行 あとがき あいさつ どうも、はかせです。 今回は最近ご無沙汰だったAlexaです。 (UnityAWSが予想の右斜め上で難しかったのでしばらくこっちやります)今回やるのはAlexaからDynamoDBへのデータのPutです。 DynamoDBでやること DBを作るところからAlexaでやってもいいんですが、 初回ですしまずはあらかじめ用意しておきます。やり方は簡単でまずDynamoDBのコンソールから「テーブルの作成」ボタンをクリックします。 するとこんな画面になるので テーブル名とか必要なもの入れて下に…

  • 雑記 今日のはかせ

    あいさつ ポケモン剣盾予約 転スラ視聴 あとがき あいさつ どうも、はかせです。 もうすぐ8月も終わり夏も終わりに近づいてきたわけですが、 私は今更夏バテ気味になってきましたw何も食べる気になれないですし、 夜は寝苦しくてろくに寝れていません。まぁこの状態は去年もなったので慣れたもんです。 (どうせ一月もすれば勝手に治る)なので今日は作業報告や 私の考えみたいな重めの記事ではなく、 今日あったことを雑多に書いていきたいと思います。 ポケモン剣盾予約 そんなこんなで死に体な私ですが、 今日はポケモンを予約してきました。ちなみにダブルパックです。 www.pokemon.co.jp理由は極めて単純…

  • AWS Cognitoでのサインアップ

    あいさつ Unityでやること AWS使うための前準備 コーディング&オブジェクト配置 AWSでやること UserPoolの設定 IDPoolの設定 実行 あとがき 参考 あいさつ どうも、はかせです。 今回はようやっとCognitoでサインアップに成功したので そのまとめです。今回使用したunityのバージョンはUnity 2018.3.6f1です。 Unityでやること Unityでやることは ・AWS使うための前準備 ・コーディング&オブジェクト配置 この二つです。 AWS使うための前準備 まずは前準備として、 AWSを使うためのdllやらなんやらを入手します。 私は下記の5つを入れまし…