glfw 설치 후
다른 디렉터리에다가 include와 lib폴더 생성
include에는 GLFW폴더가 포함되게 저장하면 되고 lib폴더에는 glfw3.lib을 포함하게 하면 된다.
이후 visual studio 속서에서 라이브러리랑 인클루드 경로 지정해주고 링커에다가 glfw3.lib, opengl32.lib 써주면 됨.
GLAD파일 저장( C++, API->OpenGL 3.3이상, Core, Generate a loader option 선택) https://glad.dav1d.de/
선언 시에 glfw보다 GLAD를 먼저 선언할 것.
<기본 골격>
1. glfw 초기화 및 window 설정
2. window생성
3. glad 초기화(glad.c파일 포함시키는 거 잊지 말기)
4. render loop 실행
5. tkdydehls apahfl tkrwp
glfwInit = 초기화
glfwWindowHint = (설정하고자 하는 옵션, 옵션의 값)
glfwCreateWindow = (너비, 높이, 창 이름, NULL, NULL) / 함수의 리턴 값은 GLFWwindow객체
glfwMakeContextCurrent(위 obj) = 현재 스레드의 주 컨텍스트로 지정
glad 초기화
glViewport(윈도우 왼쪽 아래 모서리 위치(2), 렌더링 윈도우의 너비, 높이) : glfw 자체에서 가져옴
창 크기 변경 가능(콜백 함수 호출로)
glfwWindowShouldClose: 루프 시작될 때마다 glfw가 종료하도록 지시되었는지 확인, 맞다면 true반환, 루프 중지
glfwPollEvents: 이벤트(키 입력, 마우스 이동)가 발생하였는지 확인하고 윈도우 상태 업데이트, 정해진 함수(콜백 함수를 통해 등록할 수 잇ㅇ는) 호출
glfwSwapBuffers: 컬러 버퍼를 교체. 컬러 버퍼는 반복하는 동안 이미지 그리고 화면에 출력하는 기능을 한다.
glfwTerminate: 렌더링 루프 종료되자마자 할당되었던 모든 자원 정리/삭제
Engine --> 중지하라는 메시지를 받기전까지 계속해서 이미지/사용자입력 처리하도록 하게 함 == render loop
'공부일지 > OpenGL' 카테고리의 다른 글
OpenGL - 3 (Shaders) (0) | 2020.03.07 |
---|---|
OpenGL - 2 (triangle) (0) | 2020.03.06 |
openGL (0) | 2020.02.19 |