Make GL version choosing platform specific
Use 4.3 for Windows, and 4.2 with extensions for Linux. Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
This commit is contained in:
@@ -85,6 +85,7 @@ import static net.runelite.client.plugins.gpu.GLUtil.inputStreamToString;
|
||||
import net.runelite.client.plugins.gpu.config.AntiAliasingMode;
|
||||
import net.runelite.client.plugins.gpu.template.Template;
|
||||
import net.runelite.client.ui.DrawManager;
|
||||
import net.runelite.client.util.OSType;
|
||||
|
||||
@PluginDescriptor(
|
||||
name = "GPU",
|
||||
@@ -438,7 +439,35 @@ public class GpuPlugin extends Plugin implements DrawCallbacks
|
||||
glGeomShader = gl.glCreateShader(gl.GL_GEOMETRY_SHADER);
|
||||
glFragmentShader = gl.glCreateShader(gl.GL_FRAGMENT_SHADER);
|
||||
|
||||
Function<String, String> resourceLoader = (s) -> inputStreamToString(getClass().getResourceAsStream(s));
|
||||
final String glVersionHeader;
|
||||
|
||||
if (OSType.getOSType() == OSType.Linux)
|
||||
{
|
||||
glVersionHeader =
|
||||
"#version 420\n" +
|
||||
"#extension GL_ARB_compute_shader : require\n" +
|
||||
"#extension GL_ARB_shader_storage_buffer_object : require\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
glVersionHeader = "#version 430\n";
|
||||
}
|
||||
|
||||
Function<String, String> resourceLoader = (s) ->
|
||||
{
|
||||
if (s.endsWith(".glsl"))
|
||||
{
|
||||
return inputStreamToString(getClass().getResourceAsStream(s));
|
||||
}
|
||||
|
||||
if (s.equals("version_header"))
|
||||
{
|
||||
return glVersionHeader;
|
||||
}
|
||||
|
||||
return "";
|
||||
};
|
||||
|
||||
Template template = new Template(resourceLoader);
|
||||
String source = template.process(resourceLoader.apply("geom.glsl"));
|
||||
|
||||
|
||||
@@ -23,9 +23,7 @@
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#version 420
|
||||
#extension GL_ARB_compute_shader : require
|
||||
#extension GL_ARB_shader_storage_buffer_object : require
|
||||
#include version_header
|
||||
|
||||
shared int totalNum[12]; // number of faces with a given priority
|
||||
shared int totalDistance[12]; // sum of distances to faces of a given priority
|
||||
|
||||
@@ -23,9 +23,7 @@
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#version 420
|
||||
#extension GL_ARB_compute_shader : require
|
||||
#extension GL_ARB_shader_storage_buffer_object : require
|
||||
#include version_header
|
||||
|
||||
shared int totalNum[12]; // number of faces with a given priority
|
||||
shared int totalDistance[12]; // sum of distances to faces of a given priority
|
||||
|
||||
@@ -23,9 +23,7 @@
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#version 420
|
||||
#extension GL_ARB_compute_shader : require
|
||||
#extension GL_ARB_shader_storage_buffer_object : require
|
||||
#include version_header
|
||||
|
||||
#include comp_common.glsl
|
||||
|
||||
|
||||
Reference in New Issue
Block a user