したかみ ぶろぐ

Unity成分多め

2020-01-01から1年間の記事一覧

C++とOpenMPによるバイトニックソート

始めに 今回はバイトニックソートについてまとめていこうと思います。 参考にした記事がUnityとComputeShaderやJavaScriptでの実装だったので同じ言語だとあまり面白くならないのでC++を使用しました。 今回は図が多く長いので目次を用意します。 始めに バ…

バーチャルでLTをしてみての感想(Online Game-Tech2020、stdout2020)

始めに リモートでのLTイベントのOnline Game-Tech LT 2020が11/1に、stdout2020が12/13に開催されました。 この2つのイベントにバーチャル登壇をしてきました。その感想をまとめていこうと思います。 このバーチャル登壇で使用したものは以下の記事にまとめ…

多次元配列を1次元配列に変換する計算

始めに 過去記事の内容で3次元配列を1次元配列にする解説が少しわかりにくいとなり、補足記事を書こうと思います。 shitakami.hatenablog.com 2次元配列を1次元配列にする まずは2次元配列から1次元配列に変換することから始めます。 例として高さ3、幅5の…

ベクトル場を使った衝突回避Boidsアルゴリズム

始めに 前回のブログで作成したベクトル場を使って衝突回避をするBoidアルゴリズムを実装したいと思います。 今回のサンプルです。 github.com 過去記事です。 shitakami.hatenablog.com shitakami.hatenablog.com やったこと 始めにベクトル場を計算します…

人型モデルの周りにベクトル場を生成する

始めに Boidsアルゴリズムで衝突回避の実装について考えた結果、周りにベクトル場を生成すればいいのではと思いました。 そこで今回はSkinnedMeshRendererでアニメーションをするオブジェクトの周りにベクトル場を生成してみようと思います。 今回のサンプル…

ML-Agentsの訓練設定ファイルを生成するEditor拡張の作成

始めに ML-Agentsの訓練設定ファイルをUnityで編集できるエディタ拡張を作成致しました。 github.com ※まだ開発途中です!今後更新又は修正していく予定です TrainingSettingFileEditor 機能 各パラメータを設定して.yamlファイルを生成することが出来ます。…

ML-Agentsでシューティングゲームを学習させる

始めに ML-Agentsの本を大体読んだので自分で簡単なシューティングゲームを作って、それを学習させてみようと思います。 注意としてML-Agentsの解説は少しありますが、この記事を読んでML-Agentsを動かせるようにはならないのでわからない箇所がある場合は以…

アニメーションするオブジェクトを大量に表示する(VAT + GPUInstancing)

始めに 前回はVAT(Vertex Animation Texture)についてまとめました。 今回はVATとGraphic.DrawMeshInstancedIndirectを組み合わせるサンプルを作成してみました。 過去記事 shitakami.hatenablog.com shitakami.hatenablog.com shitakami.hatenablog.com …

VAT(Vertex Animation Texture)を使用してシェーダーでアニメーションをさせる

始めに 野球ゲームの観客だったり、最近ではVtuberのライブの観客だったりで多くのNPCを表示させてかつアニメーションもさせています。 どうやれば実装できるかと思っているとき、VAT(Vertex Animation Texture)という技術を知りました。 このVATを使うこ…

ML-Agentsのサンプルを動かしてみた

始めに 本屋でテキトーに本を見てた時にML-Agentsの新しいバージョンの本があり、秒で買ってしまいました。 Unity ML-Agents 実践ゲームプログラミング v1.1対応版 (Unityではじめる機械学習・強化学習)作者:布留川 英一発売日: 2020/08/14メディア: 単行本 …

ComputeShaderでGPUパーティクルを実装する

始めに ComputeShaderについて調べてみますと「GPUパーティクル」という単語を何度か目にしました。 今回はこのGPUパーティクルについてまとめようと思います。 こちらのサイトを参考に実装を行っています。 qiita.com また、今回の内容は以下のリポジトリに…

群れの表現(Boidsモデル)をUnityで実装する

始めに 前回はDrawMeshInstancedIndirectとComputeShaderを使って動くcubeをたくさん表示しました。 shitakami.hatenablog.com 今回はBoidsモデルを実装しようと思います。 もし、DrawMeshInstancedIndirectやComputeShaderについてわからないことがあれば過…

DrawMeshInstancedIndirectとComputeShaderを組み合わせる

始めに 前回はDrawMeshInstancedIndirectについてまとめました。 shitakami.hatenablog.com 今回は前回の内容とComputeShaderを組み合わせた簡単なサンプルを作成したいと思います。 ComputeShaderについては以下の記事にまとめています。 shitakami.hatenab…

Graphics.DrawMeshInstancedIndirectまとめ

始めに 去年ちょっとだけGraphics.DrawMeshInstancedIndirectを触りました。 shitakami.hatenablog.com 今回はその復習も兼ねてこの機能についてまとめていこうと思います。 Graphics.DrawMeshInstancedIndirectについて このメソッドを使用することによって…

VRでオブジェクトを掴む処理を自作する

始めに 過去記事です shitakami.hatenablog.com 開発中にオブジェクトを掴むプログラムを探してた際にほとんどがAssetStoreのライブラリだったので、自分が使いやすいようにするため自作しました。 また、このプログラムを書くのが2回目だったのでブログにま…

Gray-Scottモデルで遊ぶ(頂点アニメーション、テクスチャ書き込み等)

始めに 過去記事です。 aizu-vr.hatenablog.com shitakami.hatenablog.com 色々触ってみてもうちょっと面白いことが出来るんじゃないかと検証してみました。 半分今までの復習みたいな感じです。 プロジェクトはこちらです。 github.com VTF+テッセレーショ…

CustomRenderTextureで実装するGray-Scottモデル

始めに つい最近、部活のブログでComputeShaderを使用したGray-Scottモデルについて紹介しました。 aizu-vr.hatenablog.com このブログを書きながら、「これってCustomRenderTextureでも実装できるんじゃね?」と思ったのでやってみようと思います。 今回の…

Viveコントローラーでマウスを動かす (Unity)

始めに 前回の記事です。 shitakami.hatenablog.com VTuberで勉強会をする際にDiscordをいじったりしたかったので、Viveコントローラーでマウスを動かす機能を作成しました。 あと、マウスの入力に関する記事はたくさんありますが逆にマウスを動かす内容の記…

女の子になって勉強会をやってみた

始めに コロナウイルスが少しずつ収まり、やっと緊急事態宣言が解除されました。ですが会津大学ではまだ授業がリモートであったり部活動が制限されています。 そんな中、A-PxL(VR部)ではリモートで部活動を行っております。私もそれに倣ってリモートで何か…

ABC170 D Not Divisible

始めに そろそろ3か月間ブログを書かずにいるので、簡単に書ける内容として今回も競技プログラミングのメモを残そうと思います。 また、今回説明する問題はコンテスト中解くことが出来ずにイライラしてその憂さ晴らしも兼ねております。 ABC170 D Not Divis…

bit全探索の問題をbit全探索しないで解いたお話

始めに 今現在、このサイトの問題を解いております。 qiita.com ここのbit全探索の練習問題を解いたのですが、自分の解法が別のアルゴリズムで解けたので少しまとめたいと思います。 AtCoder Beginner Contest 002 D - 派閥 問題の概要は次の通りになります…