OpenGL/공부

[OpenGL] OpenGL 시작, 개발 환경 세팅

ciel45 2024. 5. 25. 20:56

이번 학기에 컴퓨터 그래픽스 수업을 수강하며 이론적인 내용은 많이 배웠지만, 아직 OpenGL 프로그램을 직접 짜기에는 지식이 부족하다고 느꼈다.

 

그래서 한동안 OpenGL을 공부해서 간단한 엔진 내지는 미니게임을 만들어보고, 최종적으로는 오픈소스 게임 엔진 프로젝트인 고도(Godot) 엔진에 기여하는 것을 목표로 하려고 한다.

https://github.com/godotengine/godot

 

GitHub - godotengine/godot: Godot Engine – Multi-platform 2D and 3D game engine

Godot Engine – Multi-platform 2D and 3D game engine - godotengine/godot

github.com

 

 

공부에는 Udemy 강의 Computer Graphics with Modern OpenGL and C++를 활용할 것이다.

https://www.udemy.com/course/graphics-with-modern-opengl/

 

 

 

OpenGL 프로그램을 만들기 위해서는 GLEW, GLFW 라이브러리가 필요한데, 각각의 기능은 다음과 같다.

 

GLEW 

  • OpenGL Extension Wrangler Library를 의미한다.
  • 크로스 플랫폼 익스텐션 로딩 라이브러리이다.
    • OpenGL의 특정 익스텐션들은 플랫폼에 따라 지원이 될 수도 안 될수도 있다.
      • 지원되지 않는 익스텐션을 사용할 시 크래쉬 등의 문제가 생길 수 있다.
    • GLEW는 익스텐션을 쓰기 전 현재 플랫폼에서 그 익스텐션이 지원되는지 체크해준다.
    • 따라서 멀티플랫폼 프로그램을 만드는데 유용하다.

 

GLFW

  • Graphics Library Framework를 의미한다.
  • 윈도우 창의 생성과 컨트롤을 담당한다.
  • 키보드/마우스/조이스틱과 같은 유저 인풋을 받아 처리할 수 있다.

 

두 라이브러리 모두 공식 홈페이지에서 다운받아 비주얼스튜디오에 연결해주었다.

프로젝트(P) -> 속성으로 들어가 세 부분을 건드려주면 된다.

External Libs 폴더 생성 후 내부에 GLEW, GLFW 각각 압축풀어서 배치
추가 포함 디렉토리 세팅
추가 라이브러리 디렉토리 세팅
추가 종속성 세팅

 

세팅 후 glew.h와 glfw3.h의 include가 잘 작동하는 것을 볼 수 있었다.