UnityのInspectorで配列長を追加するとなんか適当に詰め込まれるのをどうにかする
そこそこ腹が立ったので書きました。 Unityのバージョンは2019.4.13です。 Inspectorにて // なんの変哲もないGameObjectの配列 [SerializeField] private GameObject[] _gameObjects = default;...
View ArticleUnityにおけるオブジェクト破棄のタイミング
概要 シングルトンオブジェクトのデストラクタでゲーム設定の保存処理を行うようにしたところ、エディタ終了時にクラッシュする現象が発生しました。原因を調査すると、Unityエディタではプレイ中に生成されたオブジェクトが少し変わったタイミングで破棄されていました。 結論...
View Articleunityを用いずにwindowsアプリケーション(C#)とros(ubuntu)で通信を行う
初めに siemens社のros-sharpによりrosbridgeを用いてros melodicと通信を行います。 ros-sharpを動かすpcとrosを動かすpcの二台が同じlan環境内にあることを前提とします。 ros-sharpは、visual studio 2019 community を用いて開発を行います。 rosは、ubuntu 18.04 & melodicです。...
View ArticleC#におけるXMLファイルの処理でツボったNamespaceについての個人的なメモ
RSSフィードなんかではよくXMLファイルが使われていますよね? 個人的にRSSフィードからXMLファイルを取得し、C#で操作しようしたのですがツボにハマりました。 この記事はそのとき色々悩んで解決に至ったメモです。 例えば、下記XMLファイルで、そのままタグを選択しようとしても上手くいきません。 XMLファイル クリックで展開 <rdf:RDF...
View Article【Unity】柔軟な入力に対応したタイピングゲームの作り方(導入編)【C#】
はじめに 最近はPC離れが加速し、モバイルゲームが主流となった今、タイピングゲームは減少傾向です。 しかしながら普段からキーボードを叩いてコーディングを行っている人々は、タイピングゲームを作りたいと思ったことはないでしょうか? また、タイピングゲームの作成に挫折してしまう人々も少なくないと思います。 なぜなら、タイピングゲームは作りにくいと思うからです。...
View Article【Unity】柔軟な入力に対応したタイピングゲームの作り方(改良編)【C#】
はじめに 前回【Unity】柔軟な入力に対応したタイピングゲームの作り方(導入編)【C#】という記事の続きです。 現在のタイピングゲームの要となる「柔軟な入力(「つ」→「tsu」、「ふ」→「fu」)」に対応させます。 WindowsとMacで異なる入力方法 タイピングの入力方法については、以下のURLが参考になります。...
View ArticleUnityでゲーム開発
今回は「 Carrom 」というボードゲームを題材に Unity と Blender を利用して開発しました。 Carrom とは ・ボードゲーム ・ビリヤードによく似ている ・自分のコイン(ストライカー)を指で弾いて中心のコインにぶつけて 四隅の穴(ポケット)に入れる ルールの設定 ・2人で行う ・交代制 ・青チームは白いコインを、緑チームは茶色のコインを全て落とし...
View Article[Unity] 現在のECS環境でシンプルな Boids Simulation を書く
ずいぶん前に Unity ECS の勉強をしたときにhecomiさんのBoidsシミュレーションを題材に使わせていただいたのですが、UnityのDOTS環境がどんどん変わっていって現行環境に合わせて大規模なリファクタリングが必要になったので、その際の情報を備忘録としてまとめます。 環境 (2021/4/15 時点) Unity 2020.3.4f Hybrid Renderer...
View Article【自分用メモ】Unsafeコードってなに?
Unsafeコードとは? C#において(特別に)ポインターを使ったコード. なぜ"Unsafe"なのか? ポインターは有用であるがバグの原因になりやすいため どうゆう利点があるの? ・C言語などの既存のプログラミング言語との相互運用性 (・プログラムの実行効率向上のため←最終手段) 参考 unsafe - C# によるプログラミング入門 - 未確認飛行 C
View ArticleBio IKで指にIKを付けてみた + スマホVRで動かしてみた
以下の画像のような感じです(Bio IKのストアページより)。 今後、ハンドトラッキングとか流行りそうだし、その際に便利そうかなと思ったので、記事にしてみました。 そもそも何がしたいの? 以前、私は「スマホVRでハンドトラッキングをやってみた」的なUnityアセットを作成して、こちらの記事を投稿しました。 その後、さらに機能を拡張して、HandMRという形になりました。...
View Article【メモ】.NET/C#の情報収集に利用するサイト
概要 c#/.NET関連の情報収集に利用しているサイトのメモ、情報共有。 基本無料でアクセスできるもののみ掲載。 背景 Quiitaの投稿をはじめてから、情報の正誤を調査するために触れる媒体が増えた。 その中で感じたことは、下記2つ。 1.「英語」ってだけで敬遠していた情報の中に素晴らしいものが多いこと。...
View ArticleC# VisualStudioでprotoファイルからソースコードとAPI仕様書を生成する
このドキュメントの内容 VisualStudio のプロジェクトテンプレートに「gRPCサービス」が追加され、gRPC を使ったアプリケーションの開発がしやすくなりましたが、このテンプレートはサービスアプリケーション用のものであるため、ライブラリを作成したい場合には無駄な実装が含まれてしまいます。ライブラリ用のテンプレートで proto...
View Article【.NET/C#】メソッドのパフォーマンスを簡単に集計するライブラリの紹介
概要 BenchmarkDotNetの紹介と使い方を掲載する。 BenchmarkDotNetはメソッドのパフォーマンスを簡単に計測できるライブラリです。 統計的な情報をレポートしてくれるため、関数のパフォーマンスを調査する業務で役立ちそう。 BenchmarkDotNetとは? BenchmarkDotNetは、メソッドをベンチマークに変換し、そのパフォーマンスを追跡し、...
View Article【C#】「さっ!」とデータを保存しよう!
初めに プログラムでデータを保存したいことがありませんか? ただ、あまり簡単にする方法が見つかりにくい気がします なのでまとめます。あくまで、簡単に「さっ」と実装する方法です 本編 初めから保存するプログラムを行きましょう プログラム XMLClass public static class XMLClass { public static string...
View ArticleZIPファイルの中身を解凍する
先日、windowsのCドライブのディスクが枯渇する問題がありました。 原因は凡ミスでTEMPファイルを大量生成していたのですが。。。 その関連でCドライブの%TEMP%にファイルを作成せずにZIPファイルを解凍する方法があったので書き込みます。 まず、ZipArchiveを使えるようにするため、以下を参照します。 System.IO.Compression...
View Article.NET5のWPFアプリでインタラクティブなトースト通知を実装する
つくったもの 昔作っていたWPFアプリ(.NET5)に、パッケージ化やら証明書やらのメンドクサイ作業一切なしでトースト通知を実装することができました。 #アプリ自体の説明はこちら #リポジトリはここ 実装のきっかけ 最近、UWPアプリからしか使えなかった機能がクラシックデスクトップアプリ(WinForm,...
View ArticleWinFormsのシングルトンフォーム
publci class Form1 : Form { public Form1() { var button = new Button(){Text = "サブフォーム表示"}; button.Click += (s,e ) => SingleForm.Instance.Show(); Controls.Add(button); } } public sealed class...
View Articleforとforeach、どちらのループを使用するのがいいのか考えてみる(現在List編は書きかけです…)
正直プログラム経験がまだまだ浅いから間違いはあるかも。ご指摘下さればありがたいです。 ※すみません。訳あってList編の途中のまま投稿しています。ご了承ください。月曜日にはまた時間が取れそうなので、月曜日には書き終える予定です。 きっかけ https://akinow.livedoor.blog/archives/52474053.html...
View ArticleC#とJetBrains RiderでUbuntuのGUIアプリを開発する
Ubuntu上でC# GUIを開発する時いろいろなIDEやフレームワークがあり、それぞれに長所と短所がある 開発環境 Ubuntu 18 要件 理由 .net Core Sdkで開発したい 開発者が多い monoより.net Coreの方が検索でヒットする glade gtk3を利用したい .net Coreに対応しているから VisualSutdio風のIDEを使いたい...
View ArticleAzureFunctionsとPowerAppsでぬり絵アプリを作ってみた
概要 PowerAppsで自律神経を整えよう、ぬり絵アプリを作ってみました。 PowerAppsにはペン入力がありますが現状背景画像を設定できないので、下絵画像とペン入力画像を合成をAzureFunctions(C#) でAPIを作って対応しました 応用すると、現場報告系のアプリで、撮影した写真に◯を書いて保存するようなアプリも作成可能です。 ※ペンタブで塗っています。 アプリの仕様...
View Article