protected void DrawTexture()
    {
        TextureUtilWrap.SetMipMapBiasNoDirty(m_Texture, Mathf.Min(m_MipLevel, TextureUtilWrap.GetMipmapCount(m_Texture) - 1) - Log2(Mathf.Max(m_Texture.width, 1) / m_TextureRect.width));
        FilterMode filterMode = m_Texture.filterMode;

        TextureUtilWrap.SetFilterModeNoDirty(m_Texture, FilterMode.Point);

        if (m_ShowAlpha)
        {
            if (m_TextureAlphaOverride != null)
            {
                EditorGUI.DrawTextureTransparent(m_TextureRect, m_TextureAlphaOverride);
            }
            else
            {
                EditorGUI.DrawTextureAlpha(m_TextureRect, m_Texture);
            }
        }
        else
        {
            EditorGUI.DrawTextureTransparent(m_TextureRect, m_Texture);
        }

        TextureUtilWrap.SetMipMapBiasNoDirty(m_Texture, m_Texture.mipMapBias);
        TextureUtilWrap.SetFilterModeNoDirty(m_Texture, filterMode);
    }