aboutsummaryrefslogtreecommitdiffstats
path: root/thirdparty/imgui-1.92.5/backends/vulkan
diff options
context:
space:
mode:
authorladevieq <ladevie.quentin@gmail.com>2025-12-24 15:35:21 +0100
committerladevieq <ladevie.quentin@gmail.com>2025-12-24 15:35:21 +0100
commitb4d24e8f2cb4838acc0b827f007e7faa609039ba (patch)
treeba6504b67923789d84b2473eb4e14f7002e34ab7 /thirdparty/imgui-1.92.5/backends/vulkan
parentc29105b461135f3909cca0308fb05715cee45763 (diff)
Use build.bat for building
Everything is included in main.cpp Do not rely on vcpkg anymore
Diffstat (limited to 'thirdparty/imgui-1.92.5/backends/vulkan')
-rw-r--r--thirdparty/imgui-1.92.5/backends/vulkan/build_instructions.txt4
-rw-r--r--thirdparty/imgui-1.92.5/backends/vulkan/generate_spv.sh6
-rw-r--r--thirdparty/imgui-1.92.5/backends/vulkan/glsl_shader.frag14
-rw-r--r--thirdparty/imgui-1.92.5/backends/vulkan/glsl_shader.vert25
4 files changed, 49 insertions, 0 deletions
diff --git a/thirdparty/imgui-1.92.5/backends/vulkan/build_instructions.txt b/thirdparty/imgui-1.92.5/backends/vulkan/build_instructions.txt
new file mode 100644
index 0000000..1f028d9
--- /dev/null
+++ b/thirdparty/imgui-1.92.5/backends/vulkan/build_instructions.txt
@@ -0,0 +1,4 @@
+
+Script to rebuild shaders stored inside imgui_impl_vulkan.h
+(You don't need to copy this folder if you are using the backend as-is)
+
diff --git a/thirdparty/imgui-1.92.5/backends/vulkan/generate_spv.sh b/thirdparty/imgui-1.92.5/backends/vulkan/generate_spv.sh
new file mode 100644
index 0000000..948ef77
--- /dev/null
+++ b/thirdparty/imgui-1.92.5/backends/vulkan/generate_spv.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+## -V: create SPIR-V binary
+## -x: save binary output as text-based 32-bit hexadecimal numbers
+## -o: output file
+glslangValidator -V -x -o glsl_shader.frag.u32 glsl_shader.frag
+glslangValidator -V -x -o glsl_shader.vert.u32 glsl_shader.vert
diff --git a/thirdparty/imgui-1.92.5/backends/vulkan/glsl_shader.frag b/thirdparty/imgui-1.92.5/backends/vulkan/glsl_shader.frag
new file mode 100644
index 0000000..ce7e6f7
--- /dev/null
+++ b/thirdparty/imgui-1.92.5/backends/vulkan/glsl_shader.frag
@@ -0,0 +1,14 @@
+#version 450 core
+layout(location = 0) out vec4 fColor;
+
+layout(set=0, binding=0) uniform sampler2D sTexture;
+
+layout(location = 0) in struct {
+ vec4 Color;
+ vec2 UV;
+} In;
+
+void main()
+{
+ fColor = In.Color * texture(sTexture, In.UV.st);
+}
diff --git a/thirdparty/imgui-1.92.5/backends/vulkan/glsl_shader.vert b/thirdparty/imgui-1.92.5/backends/vulkan/glsl_shader.vert
new file mode 100644
index 0000000..9425365
--- /dev/null
+++ b/thirdparty/imgui-1.92.5/backends/vulkan/glsl_shader.vert
@@ -0,0 +1,25 @@
+#version 450 core
+layout(location = 0) in vec2 aPos;
+layout(location = 1) in vec2 aUV;
+layout(location = 2) in vec4 aColor;
+
+layout(push_constant) uniform uPushConstant {
+ vec2 uScale;
+ vec2 uTranslate;
+} pc;
+
+out gl_PerVertex {
+ vec4 gl_Position;
+};
+
+layout(location = 0) out struct {
+ vec4 Color;
+ vec2 UV;
+} Out;
+
+void main()
+{
+ Out.Color = aColor;
+ Out.UV = aUV;
+ gl_Position = vec4(aPos * pc.uScale + pc.uTranslate, 0, 1);
+}