「Vulkan」を編集中
ナビゲーションに移動
検索に移動
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
− | '''Vulkan'''(読み:ゔぁるかん)とは、米国 | + | '''Vulkan'''(読み:ゔぁるかん)とは、米国[[LunarG]]社が開発した[[3DCG]]向けの[[API]]である。 |
+ | 現在はLunarGから[[クロノスグループ]]に寄贈され、同団体が管理している。 | ||
[[Vulkan SDK]]は[[LunarG]]のサイトから[[ダウンロード]]できる。 | [[Vulkan SDK]]は[[LunarG]]のサイトから[[ダウンロード]]できる。 | ||
==概要== | ==概要== | ||
− | + | 大雑把にいえば[[DirectX 12]]や[[Metal]]の[[パクリ]]である。 | |
− | |||
+ | もともとは[[Valve]](の子会社の[[LunarG]])が[[Source Engine]]および[[SteamOS]]を開発するにあたり、あまりに[[OpenGL]]が絶望的な状況であるため、その代替品として開発を進めていたものである。 | ||
− | + | * | |
− | * | ||
− | |||
− | |||
− | |||
+ | 後に[[Google]]が[[Android]]への[[Vulkan]]の採用を決め、[[LunarG]]から[[派遣社員]]を雇い入れたことから、現在は「Googleの意向」が非常に強く反映されている。 | ||
− | + | OpenGLの各種APIといえば頭文字「gl」であったがVulkanでは頭文字「vk」になった。 | |
− | [[ | + | OpenGLからの大きな違いとしては[[パイプライン]]の概念が登場して、なんでもかんでも[[シェーダー]]で処理するようになっている。Vulkanでは直線や円を描くなど自前で壮大な[[シェーダー]]を用意して処理しなければならない。 |
− | + | [[DirectX12]]や[[Metal]]と比較するとアホみたいに複雑なのが特徴。 | |
− | + | 前準備、初期化処理からして嫌がらせレベル。 | |
− | |||
− | |||
==シェーディング言語== | ==シェーディング言語== | ||
34行目: | 30行目: | ||
*[[SPIR-VからHLSLを生成する]] | *[[SPIR-VからHLSLを生成する]] | ||
− | == | + | ==利用== |
− | |||
− | |||
− | |||
− | |||
− | |||
===Windows=== | ===Windows=== | ||
− | + | しらん。 | |
− | + | === Linux === | |
− | + | しらん。もともとは[[Linux]]ベースの[[SteamOS]]で[[OpenGL]]を置き換える目的で開発されたものなので一番まともに動くはずだが試してはいない。 | |
− | |||
− | + | LinuxでVulkanを試すなら[[SteamOS]]を入れるのが一番手っ取り早いと思われる。 | |
− | |||
===Android=== | ===Android=== | ||
56行目: | 45行目: | ||
[[Android 10]]からは「Vulkan対応」が必須要件となった。 | [[Android 10]]からは「Vulkan対応」が必須要件となった。 | ||
− | |||
===macOS=== | ===macOS=== | ||
[[macOS]]では[[MoltenVK]]を利用する。とりあえず動くのは確認した。 | [[macOS]]では[[MoltenVK]]を利用する。とりあえず動くのは確認した。 | ||
+ | |||
*[[MacにMoltenVKを入れてVulkanを使ってみる]] | *[[MacにMoltenVKを入れてVulkanを使ってみる]] | ||
==関連項目== | ==関連項目== | ||
− | *[[ | + | |
+ | *[[DirectX12]] | ||
*[[Metal]] | *[[Metal]] | ||
*[[Vulkan]] | *[[Vulkan]] | ||
− | [[category: | + | [[category: コンピューターグラフィックス]] |
− | |||
− | |||
[[category: Vulkan]] | [[category: Vulkan]] | ||
[[category: SPIR-V]] | [[category: SPIR-V]] |