From 24cbbc56cee63a15772b2f770a5297460c6bb330 Mon Sep 17 00:00:00 2001 From: IlyaShurupov Date: Thu, 7 Nov 2024 16:43:57 +0300 Subject: [PATCH] initial --- .gitignore | 2 ++ CMakeLists.txt | 7 +++++++ main.cpp | 39 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 48 insertions(+) create mode 100644 .gitignore create mode 100644 CMakeLists.txt create mode 100644 main.cpp diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bddc66e --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.idea +*build* diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..be7aab9 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,7 @@ +cmake_minimum_required(VERSION 3.30) +project(App) + +set(CMAKE_CXX_STANDARD 26) + +add_executable(${PROJECT_NAME} main.cpp) +target_link_libraries(${PROJECT_NAME} PUBLIC vulkan glfw) diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..055f865 --- /dev/null +++ b/main.cpp @@ -0,0 +1,39 @@ + +#define GLFW_INCLUDE_VULKAN +#include "GLFW/glfw3.h" + +#define GLM_FORCE_RADIANS +#define GLM_FORCE_DEPTH_ZERO_TO_ONE +#include "glm/vec4.hpp" +#include "glm/mat4x4.hpp" + +const int window_size_x = 800; +const int window_size_y = 600; +const char* window_title = "App"; + +int main() { + + if (glfwInit() != GLFW_TRUE) { + return 1; + } + + glfwWindowHint(GLFW_CLIENT_API, GLFW_NO_API); + GLFWwindow* window = glfwCreateWindow(window_size_x, window_size_y, window_title, nullptr, nullptr); + + uint32_t extensionCount = 0; + vkEnumerateInstanceExtensionProperties(nullptr, &extensionCount, nullptr); + + glm::mat4 matrix; + glm::vec4 vec; + auto test = matrix * vec; + + while(!glfwWindowShouldClose(window)) { + glfwPollEvents(); + } + + glfwDestroyWindow(window); + + glfwTerminate(); + + return 0; +} \ No newline at end of file