From 63c807b90290933fb2a0796d9b5adc5c455a5b4e Mon Sep 17 00:00:00 2001 From: itsmattkc <34096995+itsmattkc@users.noreply.github.com> Date: Fri, 4 Mar 2022 15:31:39 -0800 Subject: [PATCH] implement glsl hack for corner pin --- .../distort/cornerpin/cornerpindistortnode.cpp | 14 ++++++++++++-- app/shaders/cornerpin.frag | 2 -- app/shaders/cornerpin.vert | 2 -- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/app/node/distort/cornerpin/cornerpindistortnode.cpp b/app/node/distort/cornerpin/cornerpindistortnode.cpp index b1e9b573e..327c7ccf7 100644 --- a/app/node/distort/cornerpin/cornerpindistortnode.cpp +++ b/app/node/distort/cornerpin/cornerpindistortnode.cpp @@ -97,8 +97,18 @@ void CornerPinDistortNode::Value(const NodeValueRow &value, const NodeGlobals &g ShaderCode CornerPinDistortNode::GetShaderCode(const QString &shader_id) const { Q_UNUSED(shader_id) - return ShaderCode(FileFunctions::ReadFileAsString(QStringLiteral(":/shaders/cornerpin.frag")), - FileFunctions::ReadFileAsString(QStringLiteral(":/shaders/cornerpin.vert"))); + QString frag = FileFunctions::ReadFileAsString(QStringLiteral(":/shaders/cornerpin.frag")); + QString vert = FileFunctions::ReadFileAsString(QStringLiteral(":/shaders/cornerpin.vert")); + + // HACK: No good, very bad hack +#ifndef Q_OS_MAC + frag.prepend(QStringLiteral("#version 130")); + vert.prepend(QStringLiteral("#version 130")); +#else + vert.prepend(QStringLiteral("#extension GL_EXT_gpu_shader4 : require")); +#endif + + return ShaderCode(frag, vert); } QPointF CornerPinDistortNode::ValueToPixel(int value, const NodeValueRow& row, const QVector2D &resolution) const diff --git a/app/shaders/cornerpin.frag b/app/shaders/cornerpin.frag index 84b9ece6b..7dd7e3306 100644 --- a/app/shaders/cornerpin.frag +++ b/app/shaders/cornerpin.frag @@ -1,5 +1,3 @@ -#version 130 - // Input texture uniform sampler2D ove_maintex; uniform sampler2D tex_in; diff --git a/app/shaders/cornerpin.vert b/app/shaders/cornerpin.vert index 21c2b0527..1eadf95fe 100644 --- a/app/shaders/cornerpin.vert +++ b/app/shaders/cornerpin.vert @@ -1,5 +1,3 @@ -#version 130 - uniform bool perspective_in; uniform vec2 top_left_in; uniform vec2 top_right_in;