VkGetBufferMemoryRequirements(3)

提供:MonoBook

vkGetBufferMemoryRequirementsとは、指定した Vulkan オブジェクトのメモリ要件を返す関数です。

C言語[編集 | ソースを編集]

バッファ・リソースに必要なメモリを決定するには以下を呼び出す:

// Provided by VK_VERSION_1_0
void vkGetBufferMemoryRequirements(
    VkDevice                                    device,
    VkBuffer                                    buffer,
    VkMemoryRequirements*                       pMemoryRequirements);

引数[編集 | ソースを編集]

  • device はバッファを所有する論理デバイスです。
    • device は有効な VkDevice ハンドルでなければなりません。
  • buffer は問い合わせるバッファです。
    • buffer は有効な VkBuffer ハンドルでなければなりません。
  • pMemoryRequirements は、バッファ オブジェクトのメモリ要件が返される VkMemoryRequirements 構造体へのポインタです。
    • pMemoryRequirements は VkMemoryRequirements 構造体への有効なポインタでなければなりません。

関連[編集 | ソースを編集]

  • VK_VERSION_1_0
  • VkBuffer
  • VkDevice
  • VkMemoryRequirements

備考[編集 | ソースを編集]

このページはVulkan Specificationから抜粋したものです。 詳細についてはVulkan仕様書を参照してください。

メモリ確保の大まかな流れ[編集 | ソースを編集]

  • vkCreateBufferでバッファを作成する
  • vkGetBufferMemoryRequirementsでメモリ要件を取得する
  • vkAllocateMemoryでバッファに紐づくメモリを確保する。
  •  〜なんからの処理〜
  • vkFreeMemoryでバッファに紐づくメモリを解放する
  • vkDestroyBufferでバッファを破棄する