Доработал файл сборки и поправил создание окна для macOS
This commit is contained in:
parent
5bc75c3f2d
commit
eba062f750
2
.gitignore
vendored
2
.gitignore
vendored
@ -4,6 +4,7 @@ Debug/src/**/*.o
|
|||||||
Debug/voxel_engine
|
Debug/voxel_engine
|
||||||
|
|
||||||
/build
|
/build
|
||||||
|
/cmake-build-**
|
||||||
/screenshots
|
/screenshots
|
||||||
|
|
||||||
/world
|
/world
|
||||||
@ -11,6 +12,7 @@ Debug/voxel_engine
|
|||||||
/settings.toml
|
/settings.toml
|
||||||
/controls.json
|
/controls.json
|
||||||
|
|
||||||
|
/.idea
|
||||||
.vscode
|
.vscode
|
||||||
/.vs
|
/.vs
|
||||||
*.sln
|
*.sln
|
||||||
|
|||||||
@ -1,11 +1,12 @@
|
|||||||
cmake_minimum_required(VERSION 3.15)
|
cmake_minimum_required(VERSION 3.15)
|
||||||
project(VoxelEngine)
|
project(VoxelEngine)
|
||||||
|
|
||||||
|
set(CMAKE_CXX_STANDARD 17)
|
||||||
|
|
||||||
file(GLOB_RECURSE HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/src/*.hpp)
|
file(GLOB_RECURSE HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/src/*.hpp)
|
||||||
file(GLOB_RECURSE SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
file(GLOB_RECURSE SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
|
||||||
|
|
||||||
add_executable(${PROJECT_NAME} ${HEADERS} ${SOURCES})
|
add_executable(${PROJECT_NAME} ${HEADERS} ${SOURCES})
|
||||||
target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_17)
|
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
target_compile_options(${PROJECT_NAME} PRIVATE /W4)
|
target_compile_options(${PROJECT_NAME} PRIVATE /W4)
|
||||||
@ -13,7 +14,7 @@ if(MSVC)
|
|||||||
else()
|
else()
|
||||||
target_compile_options(${PROJECT_NAME} PRIVATE -Wall -Wextra -lstdc++fs
|
target_compile_options(${PROJECT_NAME} PRIVATE -Wall -Wextra -lstdc++fs
|
||||||
# additional warnings
|
# additional warnings
|
||||||
-Wformat-nonliteral -Wcast-align
|
-Wformat-nonliteral -Wcast-align
|
||||||
-Wpointer-arith -Wundef
|
-Wpointer-arith -Wundef
|
||||||
-Wwrite-strings -Wno-unused-parameter)
|
-Wwrite-strings -Wno-unused-parameter)
|
||||||
endif()
|
endif()
|
||||||
@ -28,14 +29,18 @@ if (WIN32)
|
|||||||
else()
|
else()
|
||||||
find_package(PNG REQUIRED)
|
find_package(PNG REQUIRED)
|
||||||
set(PNGLIB PNG::PNG)
|
set(PNGLIB PNG::PNG)
|
||||||
endif(WIN32)
|
endif()
|
||||||
|
|
||||||
|
if (APPLE)
|
||||||
|
find_package(glfw3 3.3 REQUIRED)
|
||||||
|
endif ()
|
||||||
|
|
||||||
set(LIBS "")
|
set(LIBS "")
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
find_package(Threads REQUIRED)
|
find_package(Threads REQUIRED)
|
||||||
set(LIBS ${LIBS} Threads::Threads)
|
set(LIBS ${LIBS} Threads::Threads)
|
||||||
endif(UNIX)
|
endif()
|
||||||
|
|
||||||
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
||||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -no-pie")
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -no-pie")
|
||||||
|
|||||||
@ -22,7 +22,7 @@ git clone --recursive https://github.com/MihailRis/VoxelEngine-Cpp.git
|
|||||||
cd VoxelEngine-Cpp
|
cd VoxelEngine-Cpp
|
||||||
mkdir build
|
mkdir build
|
||||||
cd build
|
cd build
|
||||||
cmake ../
|
cmake ..
|
||||||
cmake --build .
|
cmake --build .
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -39,3 +39,9 @@ If you use X11
|
|||||||
|
|
||||||
If you use Wayland
|
If you use Wayland
|
||||||
`$ sudo pacman -S glfw-wayland glew glm libpng openal`
|
`$ sudo pacman -S glfw-wayland glew glm libpng openal`
|
||||||
|
|
||||||
|
#### macOS:
|
||||||
|
|
||||||
|
`$ brew install glfw3 glew glm libpng`
|
||||||
|
|
||||||
|
Download, compile and install OpenAL
|
||||||
|
|||||||
@ -132,7 +132,12 @@ int Window::initialize(DisplaySettings& settings){
|
|||||||
|
|
||||||
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
|
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
|
||||||
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
|
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
|
||||||
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_ANY_PROFILE);
|
#ifdef __APPLE__
|
||||||
|
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
|
||||||
|
glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
|
||||||
|
#else
|
||||||
|
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_ANY_PROFILE);
|
||||||
|
#endif
|
||||||
glfwWindowHint(GLFW_RESIZABLE, GL_TRUE);
|
glfwWindowHint(GLFW_RESIZABLE, GL_TRUE);
|
||||||
glfwWindowHint(GLFW_SAMPLES, settings.samples);
|
glfwWindowHint(GLFW_SAMPLES, settings.samples);
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user