2016-04-07 8 views
1

X11でVulkanを実行しようとしています。Vulkan on X11:vkGetPhysicalDeviceSurfaceCapabilitiesKHRエラー

インスタンス、デバイス、サーフェスの作成に成功しました。サーフェスに関連するいくつかの呼び出しも成功し、妥当な値を返します(たとえば、vkGetPhysicalDeviceSurfaceFormatsKHRは2つの形式を返します)。私はvkGetPhysicalDeviceSurfaceCapabilitiesKHRを呼び出すときにしかし、私は次を得る:

X Error of failed request: BadDrawable (invalid Pixmap or Window parameter) 
    Major opcode of failed request: 14 (X_GetGeometry) 
    Resource id in failed request: 0x5800009 
    Serial number of failed request: 42 
    Current serial number in output stream: 42 

エラーで参照されるようにX11ウィンドウは、0x5800009あります。私はVulkan SDK 1.0.5とNvidia 364.12ドライバを使用しています(該当する場合)。

+0

[mcve]で編集してください。 –

+3

@ColonelThirtyTwo:まあ... Vulkanと "minimal"はうまくいっていません。 –

+0

はい、この状況を作成するために必要なコードは10ページです。残念ながら、SDKにはX11サンプルも含まれていません(XCBのみ)。私はこれが既知の問題である場合、またはこのエラーが発生するいくつかの共通の落とし穴がある場合、より興味があります。 – MuertoExcobito

答えて

2

Vulkanがまだ作成されていなかったWindowについて何か質問していたとき、私はXSync(<display>, false)を呼び出しています。これは問題を解決したようです。

これは適切な操作(私はX11エキスパートではありません)か、またはこれがVulkan自体の問題であるかどうかはわかりません。もし誰かがより良い説明をしたら、私はそれを聞くのが大好きです。

0

LinuxでXCBで同じエラーが発生しましたが、ウィンドウ作成後にxcb_flushを呼び出して解決しました(MuertoExcobitoの答えの助けを借りて)。