なおしのこれまで、これから

学んだこと・感じたこと・やりたいこと

プログラミング

近傍探索の実装とまとめ

始めに 今回の内容は次の記事を参考にして実装した内容になります。解説する内容は大体同じになってしまうかもしれません。 qiita.com Boidsアルゴリズムを改良したいと考えていた際にこの記事を見つけました。どんなものか調べるために自分で実装してみまし…

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

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

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

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

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

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

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を使うこ…

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

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

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

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

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 VFT+テッセレーショ…

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

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

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

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

Unityで雪を作ってみる by Compute Shader

始めに 過去記事です。 shitakami.hatenablog.com shitakami.hatenablog.com shitakami.hatenablog.com 前に雪のシェーダーを作成しました。前回はカメラの深度を使用しましたが、今回はComputeShaderを使ってテクスチャに雪の凹凸情報を書き込み、それを元…

Behavior Designer使ってみた

始めに ちょっと昔に敵を作っていた時にBehaviorDesignerというものを知りました。 正直、モンスターを作るのって滅茶苦茶大変だしやること多いしデバッグも大変だしで難儀な工程だと思います。 しかし、それでも作っていると楽しかったりします。 雑談が長…

ComputeShaderを勉強してみる その2

始めに 前回ComputeShaderの基礎を簡単に勉強しました。 このときはXJINEさんのブログを参考にしています。 shitakami.hatenablog.com neareal.com 前回はComputeShaderの基礎、実行、データの受け渡しを行いました。 今回はテクスチャをComputeShaderに渡し…

ComputeShaderを勉強してみる

始めに 前回、雪のシェーダーを作成しました。その時「波も作れるんじゃね?」と思い勉強をしてましたが、ComputeShaderに出会いました。 一度前に、こちらの本を見たときに簡単に触れましたが、難しいすぎて理解できませんでした..... https://indievisuall…

ReorderableListを使って敵の動きを編集する

はじめに これまでの記事です。 aizu-vr.hatenablog.com shitakami.hatenablog.com shitakami.hatenablog.com ReorderableListを使って敵の動きを簡単に編集したいなーと思いながらエディタ拡張に苦労して時間をかけすぎました。まずは取り合えず完成させる…

振り向きながら動く移動を考える

はじめに 一年生向けのUnity勉強会での話です。移動スクリプトの内容をしている際に今なら凝ったプログラムが作れるんじゃね?って思ったのが今回のきっかけです。 簡単な移動スクリプト 一部勉強会の内容をお借りしました。簡単なプログラムになります。 us…

デザインパターンを勉強して今までを振り返る

デザインパターンを勉強した オブジェクト指向の基礎は情報処理試験、授業、本等で学んできましたが、正直どう使用すればいいのかどのように設計すればよいかわかりませんでした。そんな中、友人が「デザインパターンを勉強しよう!」と提案して頂いたので実…