2
我目前正在爲一款遊戲製作簡單的用戶界面,並繪製每個需要使用2個流水線狀態(每個相同頂點着色器)的按鈕。一個爲邊界繪製線條,使用靜態顏色片段着色器,另一個使用漸變漸變繪製按鈕的內部。我想知道如果我需要兩個不同的渲染指令編碼器,每一個管道,或者如果我能做到以下幾點:我可以在一個MTLRenderCommandEncoder中使用多個MTLRenderPipelineState嗎?
let encoder = command.makeRenderCommandEncoder(descriptor: renderPassDesc)
encoder.setRenderPipelineState(stateWithStaticFragmentShader)
// encode some buffers and draw line-strips
encoder.setRenderPipelineState(stateWithGradientFragmentShader)
// encode some buffers and draw button background
encoder.endEncoding()
謝謝,這就是我的想法,但我不確定。 –