# ETC2 ktx compression not compatible with macOS?

**URL:** <https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246>\
**Category:** Questions\
**Created:** [July 8, 2021, 7:57pm UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246 "2021-07-08T19:57:07Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![johntdaly7](https://avatars.discourse-cdn.com/v4/letter/j/fbc32d/32.png) [@johntdaly7](https://forum.babylonjs.com/u/johntdaly7)\
**Post date:** [July 8, 2021, 7:57pm UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/1 "2021-07-08T19:57:07Z")

</div>

I’ve been testing ways to compress my skybox cubemaps (ktx files) using PVRTexTool, as found here:

> **[Multi-Platform Compressed Textures | Babylon.js Documentation](https://doc.babylonjs.com/advanced_topics/mutliPlatTextures)**
>
> Learn all about multi-platform compressed textures in Babylon.js.

(first I create a cubemap in PVRTexTool out of 6 images and then compress the cubemap using one of the listed compression methods).

These are the results I got, compatibility-wise, for different platforms with different compression methods:

 ![Screen Shot 2021-07-08 at 1.59.25 PM](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/0/e/0e48843b9fe79ff2bdcf8de5ace0c5b05cc7f6f0.png)

What strikes me as interesting is that, on my actual macbook pro (intel chip) as well as on Browserstack, ETC2 compression method did not work (the skybox was not rendered). However, it does work on iOS.

Doing a little digging, I’ve found discussions about ETC2 on iOS, such as this:  
[Do iOS Metal devices have hardware… | Apple Developer Forums](https://developer.apple.com/forums/thread/126221), which links to a Metal feature set here:  
[https://developer.apple.com/metal/Metal-Feature-Set-Tables.pdf](https://developer.apple.com/metal/Metal-Feature-Set-Tables.pdf) , which seems to indicate that ETC2 is not support on macs:

 ![Screen Shot 2021-07-08 at 2.56.20 PM](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/5/9/59972c17ad610a8a4597d0bf77a09246a60af5d5.png)

However, these seem to indicate otherwise:  
[https://aras-p.info/blog/2021/01/18/Texture-Compression-on-Apple-M1/](https://aras-p.info/blog/2021/01/18/Texture-Compression-on-Apple-M1/)  
[https://aras-p.info/img/blog/2020/texcompr/chart-all-full.html](https://aras-p.info/img/blog/2020/texcompr/chart-all-full.html)  
[https://aras-p.info/blog/2020/12/08/Texture-Compression-in-2020/](https://aras-p.info/blog/2020/12/08/Texture-Compression-in-2020/)

Can anyone verify that ETC2 does/does not work on macOS? (intel chips).  
I feel like it would make sense for Apple to support it on mac if they do on iOS.

For reference, this is the playground I am using to test the different compression methods on different devices:  
[https://playground.babylonjs.com/#UHQ4FB#17](https://playground.babylonjs.com/#UHQ4FB#17)  
(#15 at the end of the url is dxt, #16 is etc1, #17 is etc2, #19 is astc, and #20 is pvrtc)

---

<div class="post-metadata">

**Author:** ![sebavan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/sebavan/32/57_2.png) [@sebavan](https://forum.babylonjs.com/u/sebavan)\
**Post date:** [July 8, 2021, 10:38pm UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/2 "2021-07-08T22:38:47Z")

</div>



---

<div class="post-metadata">

**Author:** ![sebavan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/sebavan/32/57_2.png) [@sebavan](https://forum.babylonjs.com/u/sebavan)\
**Post date:** [July 8, 2021, 10:39pm UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/3 "2021-07-08T22:39:37Z")

</div>

@Evgeni_Popov is pretty aligned with KTX so he might be able to help, otherwise we ll reassign to @bghgary who can help after his break 🙂

---

<div class="post-metadata">

**Author:** ![Evgeni\_Popov](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/evgeni_popov/32/4432_2.png) [@Evgeni\_Popov](https://forum.babylonjs.com/u/Evgeni_Popov)\
**Post date:** [July 9, 2021, 10:49am UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/4 "2021-07-09T10:49:43Z")

</div>

Sorry, I can’t help here as I don’t have a Mac

---

<div class="post-metadata">

**Author:** ![Evgeni\_Popov](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/evgeni_popov/32/4432_2.png) [@Evgeni\_Popov](https://forum.babylonjs.com/u/Evgeni_Popov)\
**Post date:** [July 9, 2021, 10:49am UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/5 "2021-07-09T10:49:44Z")

</div>



---

<div class="post-metadata">

**Author:** ![sebavan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/sebavan/32/57_2.png) [@sebavan](https://forum.babylonjs.com/u/sebavan)\
**Post date:** [July 12, 2021, 3:05pm UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/6 "2021-07-12T15:05:14Z")

</div>

Maybe @Cedric would know ? Also @johntdaly7 did you check with khronos ?

---

<div class="post-metadata">

**Author:** ![Evgeni\_Popov](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/evgeni_popov/32/4432_2.png) [@Evgeni\_Popov](https://forum.babylonjs.com/u/Evgeni_Popov)\
**Post date:** [July 12, 2021, 3:07pm UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/7 "2021-07-12T15:07:46Z")

</div>

@Cedric is also on vacation at the time.

---

<div class="post-metadata">

**Author:** ![sebavan](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/sebavan/32/57_2.png) [@sebavan](https://forum.babylonjs.com/u/sebavan)\
**Post date:** [July 12, 2021, 3:10pm UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/8 "2021-07-12T15:10:52Z")

</div>

Ohhhhh true I forgot, thanks a lot 🙂 would be great to then check with Khronos first

---

<div class="post-metadata">

**Author:** ![DarraghBurke](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/darraghburke/32/10621_2.png) [@DarraghBurke](https://forum.babylonjs.com/u/DarraghBurke)\
**Post date:** [July 12, 2021, 8:57pm UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/9 "2021-07-12T20:57:19Z")

</div>

Thanks for the great investigative work, this is very helpful!

As Sebavan said, checking with Khronos would be a good step to take. @bghgary will be back next week so we can definitely follow up with him later

---

<div class="post-metadata">

**Author:** ![Cedric](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/cedric/32/2742_2.png) [@Cedric](https://forum.babylonjs.com/u/Cedric)\
**Post date:** [July 19, 2021, 8:44am UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/10 "2021-07-19T08:44:02Z")

</div>

only playground #15 works on my MBP. Same on my Windows PC with Chrome. I can confirm #17 works with Safari on my iPhone and my Android 10 phone.  
The links you posted on aras-p blog are compression benchmark. It doesn’t tell anything on browser support for loading/displaying those formats.

---

<div class="post-metadata">

**Author:** ![Valentine](https://avatars.discourse-cdn.com/v4/letter/v/7ab992/32.png) [@Valentine](https://forum.babylonjs.com/u/Valentine)\
**Post date:** [July 19, 2021, 1:58pm UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/11 "2021-07-19T13:58:24Z")

</div>

I wonder if our thread here: [Texture Gamma Space + Node Materials - #9 by Valentine](https://forum.babylonjs.com/t/texture-gamma-space-node-materials/22455/9) is related. We’re also using KTX compression, and we’re finding disparity between how textures are being loaded on Mac and on PC, from Babylon preview build 23 onwards.

---

<div class="post-metadata">

**Author:** ![bghgary](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/bghgary/32/48532_2.png) [@bghgary](https://forum.babylonjs.com/u/bghgary)\
**Post date:** [November 13, 2021, 12:47am UTC](https://forum.babylonjs.com/t/etc2-ktx-compression-not-compatible-with-macos/22246/12 "2021-11-13T00:47:58Z")

</div>

Sorry, this issue fell through the cracks. I’m not too sure about Apple support here. I tried to get the playground to work, but it seems the dxt texture file is no longer available.

[https://swivel-api-dev.s3.amazonaws.com/skybox\_textures/combinedTest/skybox\_AtriumOne-dxt.ktx](https://swivel-api-dev.s3.amazonaws.com/skybox_textures/combinedTest/skybox_AtriumOne-dxt.ktx)
