compile for wayland
This commit is contained in:
parent
a4256460b9
commit
74192889b1
|
@ -0,0 +1,11 @@
|
|||
# GLSL-Basics
|
||||
|
||||
This projects contains a loader for GLSL Shaders. It can be used to generate
|
||||
fancy images and videos from your shader files.
|
||||
|
||||
## Requirements
|
||||
For Fedora Systems, you can the dependencies like this:
|
||||
```bash
|
||||
sudo dnf install wayland-devel libxkbcommon-devel wayland-protocols-devel extra-cmake-modules \
|
||||
libXrandr-devel libXinerama-devel libXcursor-devel libXi-devel
|
||||
```
|
3
build.sh
3
build.sh
|
@ -1,5 +1,6 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
cmake .
|
||||
flags="-DGLFW_USE_WAYLAND=ON" # compile glfw for wayland instead of X11
|
||||
cmake $flags .
|
||||
cmake --build .
|
||||
./bin/loader/loader
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
#version 330 core
|
||||
layout (location = 0) in vec3 aPos;
|
||||
|
||||
void main()
|
||||
{
|
||||
gl_Position = vec4(aPos.x, aPos.y, aPos.z, 1.0);
|
||||
}
|
15
src/main.cpp
15
src/main.cpp
|
@ -2,6 +2,7 @@
|
|||
#include <GLFW/glfw3.h>
|
||||
|
||||
#include <iostream>
|
||||
#include <unistd.h>
|
||||
|
||||
void framebuffer_size_callback(GLFWwindow *window, int width, int height);
|
||||
void processInput(GLFWwindow *window);
|
||||
|
@ -15,23 +16,31 @@ int main(int argc, char **argv) {
|
|||
|
||||
GLFWwindow *window = glfwCreateWindow(800, 600, "Shader Loader", NULL, NULL);
|
||||
if (window == NULL) {
|
||||
std::cout << "Failed to create GLFW window" << std::endl;
|
||||
printf("Failed to create GLFW window\n");
|
||||
glfwTerminate();
|
||||
return -1;
|
||||
}
|
||||
glfwMakeContextCurrent(window);
|
||||
|
||||
if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress)) {
|
||||
std::cout << "Failed to initialize GLAD" << std::endl;
|
||||
printf("Failed to initialize GLAD\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
glfwSetFramebufferSizeCallback(window, framebuffer_size_callback);
|
||||
|
||||
float vertices[] = {-0.5f, -0.5f, 0.0f, 0.5f, -0.5f, 0.0f, 0.0f, 0.5f, 0.0f};
|
||||
|
||||
unsigned int VBO;
|
||||
|
||||
glGenBuffers(1, &VBO);
|
||||
glBindBuffer(GL_ARRAY_BUFFER, VBO);
|
||||
glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW);
|
||||
|
||||
while (!glfwWindowShouldClose(window)) {
|
||||
processInput(window);
|
||||
|
||||
glClearColor(0.2f, 0.3f, 0.3f, 1.0f);
|
||||
glClearColor(0.8f, 0.4f, 0.1f, 1.0f);
|
||||
glClear(GL_COLOR_BUFFER_BIT);
|
||||
|
||||
glfwSwapBuffers(window);
|
||||
|
|
Loading…
Reference in New Issue