Tôi muốn chuyển một phao đến shader kim loại của tôi. Tôi không thể hiểu được làm thế nào.Tôi làm cách nào để chuyển đồng phục nổi cho bóng đổ kim loại iOS bằng Swift?
Đây là shader của tôi:
vertex float4 model_vertex(unsigned int iid[[instance_id]]
constant float angle) {
float number = float(iid)/64.0;
return float4(number * sin(angle), number * cos(angle), 0.0, 1.0);
}
Bây giờ tôi muốn vượt qua nó để đổ bóng:
let renderPassDescriptor = MTLRenderPassDescriptor()
let renderEncoder = commandBuffer.renderCommandEncoderWithDescriptor(renderPassDescriptor)
// ...
let angle: Float = 0.5
renderEncoder.setUniform1(angle) // What do I do here?
Làm thế nào để vượt qua giá trị float đơn?
Có thể điều này là hiển nhiên, nhưng câu hỏi của OP có trình đổ bóng và 'setFragmentBytes' gửi dữ liệu đến các trình đổ bóng phân đoạn, vì vậy nếu như OP bạn muốn gửi dữ liệu tới trình đổ bóng đỉnh, hãy sử dụng' setVertexBytes'. –
Điểm tốt. Đã sửa. –