mitapsis boob
This commit is contained in:
parent
6b41f05f42
commit
f1bdc0c7a6
3 changed files with 79 additions and 68 deletions
|
@ -9,6 +9,7 @@ file(GLOB_RECURSE client_str
|
||||||
set(CMAKE_CXX_STANDARD 11)
|
set(CMAKE_CXX_STANDARD 11)
|
||||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake")
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake")
|
||||||
|
|
||||||
|
find_package(OPENGL REQUIRED)
|
||||||
find_package(GLEW REQUIRED)
|
find_package(GLEW REQUIRED)
|
||||||
find_package(SDL2 REQUIRED)
|
find_package(SDL2 REQUIRED)
|
||||||
find_package(SDL2_image REQUIRED)
|
find_package(SDL2_image REQUIRED)
|
||||||
|
@ -16,11 +17,15 @@ find_package(SDL2_ttf REQUIRED)
|
||||||
|
|
||||||
add_executable(client src/main.cpp)
|
add_executable(client src/main.cpp)
|
||||||
include_directories(${PROJECT_SOURCE_DIR}/include
|
include_directories(${PROJECT_SOURCE_DIR}/include
|
||||||
|
${OPENGL_INCLUDE_DIR}
|
||||||
|
${GLEW_INCLUDE_DIR}
|
||||||
${SDL2_INCLUDE_DIR}
|
${SDL2_INCLUDE_DIR}
|
||||||
${SDL2_IMAGE_INCLUDE_DIR}
|
${SDL2_IMAGE_INCLUDE_DIR}
|
||||||
${SDL2_TTF_INCLUDE_DIR})
|
${SDL2_TTF_INCLUDE_DIR})
|
||||||
target_link_libraries(client ${SDL2_LIBRARY}
|
target_link_libraries(client ${OPENGL_LIBRARIES}
|
||||||
${SDL2_IMAGE_LIBRARIES}
|
${GLEW_LIBRARY}
|
||||||
${SDL2_TTF_LIBRARIES})
|
${SDL2_LIBRARY}
|
||||||
|
${SDL2_IMAGE_LIBRARIES}
|
||||||
|
${SDL2_TTF_LIBRARIES})
|
||||||
|
|
||||||
install(TARGETS client RUNTIME DESTINATION bin)
|
install(TARGETS client RUNTIME DESTINATION bin)
|
|
@ -1,62 +0,0 @@
|
||||||
file(GLOB ROOT_SOURCE *.cpp)
|
|
||||||
file(GLOB ROOT_INLINE *.inl)
|
|
||||||
file(GLOB ROOT_HEADER *.hpp)
|
|
||||||
file(GLOB ROOT_TEXT ../*.txt)
|
|
||||||
file(GLOB ROOT_MD ../*.md)
|
|
||||||
file(GLOB ROOT_NAT ../util/glm.natvis)
|
|
||||||
|
|
||||||
file(GLOB_RECURSE CORE_SOURCE ./detail/*.cpp)
|
|
||||||
file(GLOB_RECURSE CORE_INLINE ./detail/*.inl)
|
|
||||||
file(GLOB_RECURSE CORE_HEADER ./detail/*.hpp)
|
|
||||||
|
|
||||||
file(GLOB_RECURSE EXT_SOURCE ./ext/*.cpp)
|
|
||||||
file(GLOB_RECURSE EXT_INLINE ./ext/*.inl)
|
|
||||||
file(GLOB_RECURSE EXT_HEADER ./ext/*.hpp)
|
|
||||||
|
|
||||||
file(GLOB_RECURSE GTC_SOURCE ./gtc/*.cpp)
|
|
||||||
file(GLOB_RECURSE GTC_INLINE ./gtc/*.inl)
|
|
||||||
file(GLOB_RECURSE GTC_HEADER ./gtc/*.hpp)
|
|
||||||
|
|
||||||
file(GLOB_RECURSE GTX_SOURCE ./gtx/*.cpp)
|
|
||||||
file(GLOB_RECURSE GTX_INLINE ./gtx/*.inl)
|
|
||||||
file(GLOB_RECURSE GTX_HEADER ./gtx/*.hpp)
|
|
||||||
|
|
||||||
file(GLOB_RECURSE SIMD_SOURCE ./simd/*.cpp)
|
|
||||||
file(GLOB_RECURSE SIMD_INLINE ./simd/*.inl)
|
|
||||||
file(GLOB_RECURSE SIMD_HEADER ./simd/*.h)
|
|
||||||
|
|
||||||
source_group("Text Files" FILES ${ROOT_TEXT} ${ROOT_MD})
|
|
||||||
source_group("Core Files" FILES ${CORE_SOURCE})
|
|
||||||
source_group("Core Files" FILES ${CORE_INLINE})
|
|
||||||
source_group("Core Files" FILES ${CORE_HEADER})
|
|
||||||
source_group("EXT Files" FILES ${EXT_SOURCE})
|
|
||||||
source_group("EXT Files" FILES ${EXT_INLINE})
|
|
||||||
source_group("EXT Files" FILES ${EXT_HEADER})
|
|
||||||
source_group("GTC Files" FILES ${GTC_SOURCE})
|
|
||||||
source_group("GTC Files" FILES ${GTC_INLINE})
|
|
||||||
source_group("GTC Files" FILES ${GTC_HEADER})
|
|
||||||
source_group("GTX Files" FILES ${GTX_SOURCE})
|
|
||||||
source_group("GTX Files" FILES ${GTX_INLINE})
|
|
||||||
source_group("GTX Files" FILES ${GTX_HEADER})
|
|
||||||
source_group("SIMD Files" FILES ${SIMD_SOURCE})
|
|
||||||
source_group("SIMD Files" FILES ${SIMD_INLINE})
|
|
||||||
source_group("SIMD Files" FILES ${SIMD_HEADER})
|
|
||||||
|
|
||||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..)
|
|
||||||
|
|
||||||
add_library(glm_static STATIC ${ROOT_TEXT} ${ROOT_MD} ${ROOT_NAT}
|
|
||||||
${ROOT_SOURCE} ${ROOT_INLINE} ${ROOT_HEADER}
|
|
||||||
${CORE_SOURCE} ${CORE_INLINE} ${CORE_HEADER}
|
|
||||||
${EXT_SOURCE} ${EXT_INLINE} ${EXT_HEADER}
|
|
||||||
${GTC_SOURCE} ${GTC_INLINE} ${GTC_HEADER}
|
|
||||||
${GTX_SOURCE} ${GTX_INLINE} ${GTX_HEADER}
|
|
||||||
${SIMD_SOURCE} ${SIMD_INLINE} ${SIMD_HEADER})
|
|
||||||
|
|
||||||
add_library(glm_shared SHARED ${ROOT_TEXT} ${ROOT_MD} ${ROOT_NAT}
|
|
||||||
${ROOT_SOURCE} ${ROOT_INLINE} ${ROOT_HEADER}
|
|
||||||
${CORE_SOURCE} ${CORE_INLINE} ${CORE_HEADER}
|
|
||||||
${EXT_SOURCE} ${EXT_INLINE} ${EXT_HEADER}
|
|
||||||
${GTC_SOURCE} ${GTC_INLINE} ${GTC_HEADER}
|
|
||||||
${GTX_SOURCE} ${GTX_INLINE} ${GTX_HEADER}
|
|
||||||
${SIMD_SOURCE} ${SIMD_INLINE} ${SIMD_HEADER})
|
|
||||||
|
|
|
@ -1,8 +1,76 @@
|
||||||
#include "SDL.h"
|
#include <SDL.h>
|
||||||
#include <iostream>
|
#include <glm/vec2.hpp>
|
||||||
|
|
||||||
|
#define GL3_PROTOTYPES 1
|
||||||
|
#include <GL/glew.h>
|
||||||
|
|
||||||
|
void setColor(float r, float g, float b, SDL_Window* window) {
|
||||||
|
glClearColor(r, g, b, 1.0);
|
||||||
|
glClear(GL_COLOR_BUFFER_BIT);
|
||||||
|
SDL_GL_SwapWindow(window);
|
||||||
|
}
|
||||||
|
|
||||||
int main(int argc, char* argv[]) {
|
int main(int argc, char* argv[]) {
|
||||||
// くコ:彡
|
if(SDL_Init(SDL_INIT_VIDEO) < 0)
|
||||||
|
return -1;
|
||||||
|
atexit(SDL_Quit);
|
||||||
|
|
||||||
|
auto window = SDL_CreateWindow(
|
||||||
|
"SockScape Client",
|
||||||
|
SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
|
||||||
|
640, 480,
|
||||||
|
SDL_WINDOW_OPENGL
|
||||||
|
);
|
||||||
|
|
||||||
|
auto ctx = SDL_GL_CreateContext(window);
|
||||||
|
|
||||||
|
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
|
||||||
|
|
||||||
|
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3);
|
||||||
|
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 2);
|
||||||
|
|
||||||
|
SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK,
|
||||||
|
SDL_GL_CONTEXT_PROFILE_CORE);
|
||||||
|
|
||||||
|
SDL_GL_SetSwapInterval(1);
|
||||||
|
|
||||||
|
#ifndef __APPLE__
|
||||||
|
glewExperimental = GL_TRUE;
|
||||||
|
glewInit();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
setColor(1, 0, 0, window);
|
||||||
|
|
||||||
|
bool running = true;
|
||||||
|
while(running) {
|
||||||
|
SDL_Event event;
|
||||||
|
while(SDL_PollEvent(&event)) {
|
||||||
|
if(event.type == SDL_QUIT)
|
||||||
|
running = false;
|
||||||
|
|
||||||
|
if(event.type == SDL_KEYDOWN) {
|
||||||
|
switch(event.key.keysym.sym) {
|
||||||
|
case SDLK_ESCAPE:
|
||||||
|
running = false;
|
||||||
|
break;
|
||||||
|
case SDLK_r:
|
||||||
|
setColor(1.0, 0.0, 0.0, window);
|
||||||
|
break;
|
||||||
|
case SDLK_g:
|
||||||
|
setColor(0.0, 1.0, 0.0, window);
|
||||||
|
break;
|
||||||
|
case SDLK_b:
|
||||||
|
setColor(0.0, 0.0, 1.0, window);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SDL_GL_DeleteContext(ctx);
|
||||||
|
SDL_DestroyWindow(window);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
Loading…
Reference in a new issue