渋谷ほととぎす通信

新しいこと、枯れたこと問わず大庭が興味を持ったものを調査、生活の効率を求める完全趣味の技術ブログ。基礎を大事にしています。

C#のActionとローカル関数のどちらを使うべきか調査

上の記事内で書いたソースにローカルメソッドを使ったのですが、それがどういう動きをするのか、Actionと何が違うのかを本記事では調べます。 ローカル関数はC#7から登場 ローカル関数はその名の通り、関数内に定義でき、その関数内でしか参照できない関数で…

DOTweenをasync/await化して可読性の高いコードにしてみる件(キャンセルにも対応)

この辺りの記事からの続きですが、個人的な開発環境をコルーチンからasync/awaitに移行中です。 移行するにあたって、僕が最もよく使うDOTweenのasync/await化は必須で、特にキャンセル周りは演出を作る上では最重要と考えています。 本記事では安全に使いや…

運動会の動画をLINEで幼稚園のママさん達に納品しないといけない時のffmpegでのエンコードメモ

LINEのkeepノートに動画をアップしたいという要望があるので、5分以内に納める必要がありました。 SONYのハンディカムで撮影したため、元ファイルはMTS。 QuickTimeで開いて5分以内にトリミング そのまま保存してmov形式へ 以下のコマンドでmp4に変換して完…

Task.Delayの待機時間をUnityEditor上で計測をしたら少しずれる件

Task.Delayの待機時間が本当に数値通りかを以下のサンプルコードで確認しました。 async void Start() { var t = Time.time; var st = Time.realtimeSinceStartup; await Task.Delay(5000); // ゲーム時間 Debug.Log($"Time.time :{Time.time - t}"); // リ…

C#コンストラクタパフォーマンス比較検証

余程のパフォーマンスチューニングが必要なときしか不要なパフォーマンス検証結果を残しておきます。 インスタンスをnewキーワードで生成する時、コンストラクタに引数を入れるパターンと入れ無いパターンがあります。 // コンストラクタに引数を持たないパ…

async/awaitを使う上でタスクのキャンセルは例外処理であるという考え方に移行する必要がある件

最近async/awaitデビューしたので、完全理解しようと思う。主にキャンセル周り。あと噂のUnitaskとその負荷とコルーチンWorkflowとの比較— 大庭俊介@Unityエンジニア (@ohbashunsuke) 2019年10月18日 この辺りの経緯から基礎的なところからUnityを使う上での…

Blender2.8 メッシュにテクスチャを貼る方法

前回Blender2.8でUV展開しました。その続きです。 今回はテクスチャを貼ってみます。 Propertiesウィンドウを使う 今回初めてPropertiesウィンドウを使います。 PropertiesウィンドウのBase Colorの丸ポチ部分をクリックします。 拡散光に画像をセットする I…

Blender2.8で切れ目を入れてUV展開する方法

ゲームエフェクトを作ろうとする、メッシュが必要になる、Mayaに課金するほど本気度が高くない、Blenderを触ってみた、Blender2.8は昔に比べてモダン感。Blenderやろう!!ってなった(イマココ— 大庭俊介@Unityエンジニア (@ohbashunsuke) September 20, 201…

Blender2.8で頂点に紐づく面を残して頂点だけを削除する方法

頂点を選択してDELETEキーからVerticiesを選ぶと頂点ごとそれに紐づく面も削除されてしまいます。 頂点だけを削除したい場合は以下のようにします。 Dissolve Verticesを選択する 頂点を選択しDissolve Verticesを選べば頂点だけを削除してそれに紐づく面は…

Blender2.8で感覚的にショートカットキーを設定する方法

Blender2.8を絶賛勉強中なのですが、僕は効率化が大好きなのでよく使う機能はショートカットを設定したいのです。しかし Preference > Keymap で機能を検索しようにも出てきません。 今回設定したかったのは Face > Grid Fillで面張りです。 本記事では、こ…

初心者向けUnity Shader Graphの始め方

ノードを繋げてシェーダを作成することができる、Unity純正のShader Graphを始めてみました。 環境セットアップ(Unity2019.1.10f1の場合) 新規プロジェクトで始める場合、Unity HubからLightWeight RPを選んだ状態でプロジェクトを作成するとスムーズにShade…

Skitchにもクリップボードにコピーする方法があった件

ブログ執筆などに画像加工で使用するSkitch。 現在の画像をクリップボードにコピーする方法があったのでメモ。 コマンド + Shift + C コマンド + Shift + Cで現在のSkitchの画像をクリップボードに保存できます。 Skitchのクリップボード保存は以前から知り…

OpenVINOでやれることを確認する

前回Mac環境でOpenVINOの環境構築とDEMOを動かすまでをやりました。 ここからですが、OpenVINOが何をできるのかを調べたいと思います。 インストールした時に、すでにInterlの学習済みサンプルがダウンロードされているようなので見て行きます。 サンプルの…

OpenVINOを触ってみる(2019R2使用)

CEDEC2019の展示ブースで知ったOpenVINO。展示DEMOはAIを使った人体トラッキングでした。複数人いても検知し、また背中も判定できます。 とりあえずやってみよう精神の元、熱が冷めないうちに早速試してみようと思います。 インストーラをダウンロード Choos…

CEDEC2019 来年のCEDEC2020に向けてのPDCA

事前に行きたいセッションを決めておく CEDECは全体で100セッションくらいあるので、事前に行きたいセションを決めておかないとかなりロスします。 行きたいセッションの場所と時間をチェックしておく パシフィコ横浜は1Fから5Fまであり、かなり広いです。開…

CEDEC2019気になったUnity情報、直接中の人に質問しにいったこと編

タイムシフト、スライド、動画が公開されるのがほぼ当たり前になりつつある、CEDECやUniteにおいて、現地に行って参加するメリットの1つは、発表者や中の人と直接話しができることです。Unityのロードマップの中で気になっている以下の2点についてUnityの中…

CEDEC2019 Unityミニセッション気になった事まとめ

CEDEC2019では休憩時間中にUnityブースでミニセッションが行われていました。計6回行われた内容の中で特に気になったものをまとめておきます。 9月4日~6日の #cedec2019 。4FエレベーターホールのUnityブースでは1日2回ミニセッションを行います! https://…

CEDEC2019気になったUnity情報主に2019.3以降の新機能編

CEDEC2019に参加してきて自分なりのレポートを残している最中です。 本記事は「Unity2019年注目機能まとめ」を元にUnity2019の新機能について気になったことをまとめています。ただし、基本的にUnity2019.3以降の機能です。 Universal Render Pipeline(以下:…

CEDEC2019気になったUnity情報DOTS編

CEDEC2019に聞き手として参加させて頂き「Unityではじめるオープンワールド入門 エンジニア編」セッションを元にDOTS関連についてまとめます。 そもそもDOTSとは? 簡単に紹介すると、DOTSとは将来のスタンダードなUnity開発手法になると思われるフレームワ…

CEDEC2019気になったUnity情報パフォーマンス編

CEDEC2019に聞き手として参加させて頂き「Unity2018/2019における最適化事情」セッションを元にパフォーマンス関連についてまとめます。 既存機能のアップデート 既存機能アップデートに関するスライドですが、気になったものだけ取り上げて説明します。 Ani…

CEDEC2019 水口さんの基調講演を聞いて新しい体験を追い求め、それを作り出せるようになろうって思った

みなとみらいパシフィコ横浜で開催中のCEDEC2019の初日を無事終えた。 CEDECとは日本最大級のゲーム開発者カンファレンスだ。 ゲームとは、テクノロジーと共に進化する体験のメディア 水口さんの基調講演から始まったCEDEC2019。 彼はセガに入社してゲーム作…

映画この素晴らしい世界に祝福を!紅伝説を見てきた※ほぼネタバレ無し

8/30の初日のレイトショウで「映画この素晴らしい世界に祝福を!紅伝説」を見てきたので、そのレビューを残しておく。 ※ほぼネタバレはないが自己責任でお願いします。 悪く言って最高である ストーリー、後述するテンポ、キャラの魅力。ファンにとっては文句…

CEDEC2019に向けて、聞き手としての準備

CEDEC2019が9/4~6の3日間開催され、僕は聞き手として参加させてもらいます。 毎度参加する上で、聞きたいセッションは事前に調べておかないと現地の雰囲気に流される、思ったんと違うってことになるので、今回は下記のスプレッドシートに列挙し、カテゴリと…

Dockerの基礎を学ぶためにNginxを起動するだけのコンテナを立ち上げる

大庭です。 そろそろDockerをちゃんと始めてみようと思い、ファーストステップとしてNginxを起動するだけのコンテナを実行してみようと思います。 ゴール Mac環境でDockerを使ってNginxを起動してみます。最終的には複数のコンテナを同時に扱いたいので、doc…

無料版Bufferから無料版HootSuiteに移行した話

大庭です。 ブログの予約投稿に求めるものがあります。 日時指定 SNS連携 結果のフィードバック(クリック数とかの結果) そこそこの予約数 大抵、結果のフィードバックは有料というパターンです。 本記事はそんな僕が使用している予約投稿サービスの話です。 …

Alfredのスニペット機能がかなり便利だった件

大庭です。 Macの代表的なランチャーAlfredにスニペット機能が存在したことを今更知ったので、テスト的に使うことにしました。 経緯 スニペットツールって個人的には大好きで、今まではTextExpanderを鬼のように使っていましたが、どこからのタイミングかで…

Arduino キャラクタLCDモニタを使ってみる

電子工作素人によるArduinoのパーツ調査記事シリーズです。 今回は文字表示用ディスプレイのキャラクタLCDモニタ1602を使ってみます。 LiquidCrystalライブラリを使用 LiquidCrystalを事前にインストールしておきます。 配線 そこそこ配線が複雑なので、表に…

Arduino 温度湿度センサーを使ってみる(失敗編)

電子工作素人によるArduinoのパーツ調査記事シリーズです。 今回は温度湿度センサーDHT11を使ってみます。 DHT11は温度と湿度を計測 DHT11は温度と湿度を計測できるセンサーで、100円くらいで売っててお手軽に基本と湿度が計測できます。 これ一つで百葉箱っ…

Arduino fatal error: Adafruit_Sensor.hというエラーが出た時の対応

DH11という温度湿度センサーを試していた時に発生したエラー共有です。 In file included from ~/Documents/Arduino/libraries/DHT_sensor_library/DHT_U.cpp:22:0: ~/Documents/Arduino/libraries/DHT_sensor_library/DHT_U.h:25:29: fatal error: Adafruit…

Arduino LEDをジワジワと明るく暗くを繰り返させてみる

ArduinoIDEに付属しているスケッチ例を、今まであまり見てきませんでした。 先日試しにチラ見した所、とても勉強になったので、改めて気になったものを1つ1つ確認していこうと思います。 必要なもの Arduino UNO ブレッドボード 配線ケーブル 抵抗 LED 環境 …