From 5f4fcdba69f6da344e35a2495e3faffe8fd25719 Mon Sep 17 00:00:00 2001 From: minjaesong Date: Wed, 16 Aug 2023 21:46:54 +0900 Subject: [PATCH] apple m chip workaround (2) --- .../graphics/glutils/Float16FrameBuffer.java | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/com/badlogic/gdx/graphics/glutils/Float16FrameBuffer.java b/src/com/badlogic/gdx/graphics/glutils/Float16FrameBuffer.java index 267be2be6..4057f13b4 100644 --- a/src/com/badlogic/gdx/graphics/glutils/Float16FrameBuffer.java +++ b/src/com/badlogic/gdx/graphics/glutils/Float16FrameBuffer.java @@ -51,12 +51,22 @@ public class Float16FrameBuffer extends FrameBuffer { @Override protected Texture createTexture (FrameBufferTextureAttachmentSpec attachmentSpec) { - FloatTextureData data = new FloatTextureData(bufferBuilder.width, bufferBuilder.height, attachmentSpec.internalFormat, - attachmentSpec.format, attachmentSpec.type, attachmentSpec.isGpuOnly); - Texture result = new Texture(data); - result.setFilter(Texture.TextureFilter.Linear, Texture.TextureFilter.Linear); - result.setWrap(Texture.TextureWrap.ClampToEdge, Texture.TextureWrap.ClampToEdge); - return result; + if (App.isAppleM) { + GLOnlyTextureData data = new GLOnlyTextureData(bufferBuilder.width, bufferBuilder.height, 0, attachmentSpec.internalFormat, + attachmentSpec.format, attachmentSpec.type); + Texture result = new Texture(data); + result.setFilter(Texture.TextureFilter.Linear, Texture.TextureFilter.Linear); + result.setWrap(Texture.TextureWrap.ClampToEdge, Texture.TextureWrap.ClampToEdge); + return result; + } + else { + FloatTextureData data = new FloatTextureData(bufferBuilder.width, bufferBuilder.height, attachmentSpec.internalFormat, + attachmentSpec.format, attachmentSpec.type, attachmentSpec.isGpuOnly); + Texture result = new Texture(data); + result.setFilter(Texture.TextureFilter.Linear, Texture.TextureFilter.Linear); + result.setWrap(Texture.TextureWrap.ClampToEdge, Texture.TextureWrap.ClampToEdge); + return result; + } } }