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.config.AntiAliasingMode;
|
||||||
import net.runelite.client.plugins.gpu.template.Template;
|
import net.runelite.client.plugins.gpu.template.Template;
|
||||||
import net.runelite.client.ui.DrawManager;
|
import net.runelite.client.ui.DrawManager;
|
||||||
|
import net.runelite.client.util.OSType;
|
||||||
|
|
||||||
@PluginDescriptor(
|
@PluginDescriptor(
|
||||||
name = "GPU",
|
name = "GPU",
|
||||||
@@ -438,7 +439,35 @@ public class GpuPlugin extends Plugin implements DrawCallbacks
|
|||||||
glGeomShader = gl.glCreateShader(gl.GL_GEOMETRY_SHADER);
|
glGeomShader = gl.glCreateShader(gl.GL_GEOMETRY_SHADER);
|
||||||
glFragmentShader = gl.glCreateShader(gl.GL_FRAGMENT_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);
|
Template template = new Template(resourceLoader);
|
||||||
String source = template.process(resourceLoader.apply("geom.glsl"));
|
String source = template.process(resourceLoader.apply("geom.glsl"));
|
||||||
|
|
||||||
|
|||||||
@@ -23,9 +23,7 @@
|
|||||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#version 420
|
#include version_header
|
||||||
#extension GL_ARB_compute_shader : require
|
|
||||||
#extension GL_ARB_shader_storage_buffer_object : require
|
|
||||||
|
|
||||||
shared int totalNum[12]; // number of faces with a given priority
|
shared int totalNum[12]; // number of faces with a given priority
|
||||||
shared int totalDistance[12]; // sum of distances to faces of 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.
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#version 420
|
#include version_header
|
||||||
#extension GL_ARB_compute_shader : require
|
|
||||||
#extension GL_ARB_shader_storage_buffer_object : require
|
|
||||||
|
|
||||||
shared int totalNum[12]; // number of faces with a given priority
|
shared int totalNum[12]; // number of faces with a given priority
|
||||||
shared int totalDistance[12]; // sum of distances to faces of 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.
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#version 420
|
#include version_header
|
||||||
#extension GL_ARB_compute_shader : require
|
|
||||||
#extension GL_ARB_shader_storage_buffer_object : require
|
|
||||||
|
|
||||||
#include comp_common.glsl
|
#include comp_common.glsl
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user