VulkanのPushConstantとDescriptorSetの使い分け
Vulkanにおいてはシェーダに何か共通の変数を渡すための方法として主に2つの方法がある。一つは「DescriptorSet」、もう一つは「PushConstant」だ。
この2つの使い分けに関する良さげな情報があったので読んでみた。
Vulkanにおいてはシェーダに何か共通の変数を渡すための方法として主に2つの方法がある。一つは「DescriptorSet」、もう一つは「PushConstant」だ。
この2つの使い分けに関する良さげな情報があったので読んでみた。
調べてもなかなか(自分にとって)的確な記述が出てこなかったので、(自分にとって)分かりやすくまとめ。
多分あんまり必要とされない知識だと思うがメモ。動機としては以下のような理由で調べていた。
結論から言って設定一つで解決する程度の話だったのだが、割と手間取ったのでメモ。
RaspberryPi picoというのはRaspberryPi財団から出されているマイコンボードだ。550円という低価格ながら、クロック125MHzの32bitマイコンに264KBのRAM、2MBのFlashを載せており、大体のArduinoボードを凌駕する性能をしている。おまけに2コアだ。その内知見やライブラリが揃ってくれば、しょっぱい性能で数千円とるようなマイコンボードはpicoに蹂躙されることになるだろう。
こいつのプログラムはpico-sdkというSDKとC++を使って開発する。Python?犬にでも食わせておけ。
dieselというのはRustのORM(端的に言えばデータベースを扱うためのライブラリ)であり、diesel_cliというのはその補助ツールである。cargo install diesel_cli
でインストールできるようになっているのだが、その際にはあらかじめいくつかの依存ライブラリを入れておかなければならない。その情報があまりネットでぱっと見つからなかったのでメモしておく。
なお、自分の環境はWindowsである。UNIX系OSだとyumやらaptのようなパッケージ管理ツールで開発用ライブラリを入れていけば大した労なく上手くいくのではないかと思う。知らんけど。