diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/gpu/GpuPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/gpu/GpuPlugin.java index 1c30e53246..7067983486 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/gpu/GpuPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/gpu/GpuPlugin.java @@ -432,7 +432,14 @@ public class GpuPlugin extends Plugin implements DrawCallbacks log.debug("Disabling DebugGL due to jogl-gldesktop-dbg not being present on the classpath"); } - gl.glEnable(gl.GL_DEBUG_OUTPUT); + try + { + gl.glEnable(gl.GL_DEBUG_OUTPUT); + } + catch (GLException ex) + { + // macos doesn't support GL_DEBUG_OUTPUT + } // GLDebugEvent[ id 0x20071 // type Warning: generic @@ -689,9 +696,12 @@ public class GpuPlugin extends Plugin implements DrawCallbacks uniTextures = gl.glGetUniformLocation(glProgram, "textures"); uniTextureAnimations = gl.glGetUniformLocation(glProgram, "textureAnimations"); - uniBlockSmall = gl.glGetUniformBlockIndex(glSmallComputeProgram, "uniforms"); - uniBlockLarge = gl.glGetUniformBlockIndex(glComputeProgram, "uniforms"); - uniBlockMain = gl.glGetUniformBlockIndex(glProgram, "uniforms"); + if (computeMode == ComputeMode.OPENGL) + { + uniBlockSmall = gl.glGetUniformBlockIndex(glSmallComputeProgram, "uniforms"); + uniBlockLarge = gl.glGetUniformBlockIndex(glComputeProgram, "uniforms"); + uniBlockMain = gl.glGetUniformBlockIndex(glProgram, "uniforms"); + } } private void shutdownProgram() @@ -855,7 +865,11 @@ public class GpuPlugin extends Plugin implements DrawCallbacks // Create color render buffer rboSceneHandle = glGenRenderbuffer(gl); gl.glBindRenderbuffer(gl.GL_RENDERBUFFER, rboSceneHandle); - gl.glRenderbufferStorageMultisample(gl.GL_RENDERBUFFER, aaSamples, gl.GL_RGBA, width, height); + gl.glRenderbufferStorageMultisample(gl.GL_RENDERBUFFER, aaSamples, + // on macos glBlitFramebuffer errors with GL_INVALID_OPERATION if the alpha channel + // is enabled on the rbo + OSType.getOSType() == OSType.MacOS ? gl.GL_RGB : gl.GL_RGBA, + width, height); gl.glFramebufferRenderbuffer(gl.GL_FRAMEBUFFER, gl.GL_COLOR_ATTACHMENT0, gl.GL_RENDERBUFFER, rboSceneHandle); // Reset diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/FairyRingLocation.java b/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/FairyRingLocation.java index 25ee1addcd..b0b74c6b21 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/FairyRingLocation.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/FairyRingLocation.java @@ -35,6 +35,7 @@ enum FairyRingLocation AIQ("AIQ", new WorldPoint(2995, 3112, 0)), AJR("AJR", new WorldPoint(2779, 3615, 0)), AJS("AJS", new WorldPoint(2499, 3898, 0)), + AKP("AKP", new WorldPoint(3283, 2704, 0)), AKQ("AKQ", new WorldPoint(2318, 3617, 0)), AKS("AKS", new WorldPoint(2570, 2958, 0)), ALP("ALP", new WorldPoint(2502, 3638, 0)), @@ -43,6 +44,7 @@ enum FairyRingLocation BIP("BIP", new WorldPoint(3409, 3326, 0)), BIQ("BIQ", new WorldPoint(3248, 3095, 0)), BIS("BIS", new WorldPoint(2635, 3268, 0)), + BJP("BJP", new WorldPoint(2264, 2976, 0)), BJS("BJS", new WorldPoint(2147, 3069, 0)), BKP("BKP", new WorldPoint(2384, 3037, 0)), BKR("BKR", new WorldPoint(3468, 3433, 0)),