26 [[nodiscard]] MTL::Texture*
raw()
const {
return _metalTexture; }
42 void uploadRawImage(
void* imageData,
size_t imageDataSize, uint32_t mipLevel, uint32_t index)
const;
43 void uploadVolumeData(
void* imageData,
size_t imageDataSize, uint32_t mipLevel)
const;
47 MTL::Texture* _metalTexture =
nullptr;
48 bool _ownsTexture =
true;
50 MTL::TextureDescriptor* _descriptor =
nullptr;
53 std::vector<MTL::SamplerState*> _samplers;
GPU texture resource supporting 2D, cubemap, volume, and array formats with mipmap management.