فهرست منبع

Fixed Metal cubemap bind validation error

Attila Kocsis 7 سال پیش
والد
کامیت
ce4ebddd17
1فایلهای تغییر یافته به همراه8 افزوده شده و 1 حذف شده
  1. 8 1
      src/renderer_mtl.mm

+ 8 - 1
src/renderer_mtl.mm

@@ -2878,7 +2878,14 @@ namespace bgfx { namespace mtl
 		{
 			if ( NULL == m_ptrMips[_mip] )
 			{
-				m_ptrMips[_mip] = m_ptr.newTextureViewWithPixelFormat(m_ptr.pixelFormat(), m_ptr.textureType(), NSMakeRange(_mip,1), NSMakeRange(0,m_ptr.arrayLength() * (m_type == TextureCube ? 6 : 1)));
+				if (TextureCube == m_type)
+				{
+					m_ptrMips[_mip] = m_ptr.newTextureViewWithPixelFormat(m_ptr.pixelFormat(), MTLTextureType2DArray, NSMakeRange(_mip,1), NSMakeRange(0,m_ptr.arrayLength() * 6));
+				}
+				else
+				{
+					m_ptrMips[_mip] = m_ptr.newTextureViewWithPixelFormat(m_ptr.pixelFormat(), m_ptr.textureType(), NSMakeRange(_mip,1), NSMakeRange(0,m_ptr.arrayLength()));
+				}
 			}
 
 			return m_ptrMips[_mip];