본문 바로가기

cpp59

2. 삼각형 그리기 (1) 배경을 그릴 수 있게 되었으니 이제 아주 간단한 삼각형을 그려볼 차례다. 미리 말하지만 쉽지 않고 하드코딩으로 되어있다. 코드 정리는 모든 코드가 완성되고 난 뒤에 코드 리뷰를 진행하면서 할 예정이다. ▼ //----와 //----로 묶인 영역들이 오늘 우리가 할 작업이다. // GLEW의 모든 기능 활성화 glewExperimental = GL_TRUE; if (glewInit() != GLEW_OK) { wprintf(L"GLEW 초기화가 실패했습니다.\n"); // mainWindow 삭제 glfwDestroyWindow(mainWindow); glfwTerminate(); return (1); } //--------------------------------------------- // 위치 1).. 2021. 1. 14.
13. 포인터(Pointer) 다른 것들도 마찬가지지만 포인터는 특히 자주 수정될 예정이다. 구름 속에서 손을 젓는 기분으로 사용하고 있는데 이상하게 코드는 작동한다.. 변수 주소를 저장하는 변수 CPP이 게임 개발에서 아직도 현역인 이유는 바로 이 포인터 때문일 것이다. C부터 이어진 포인터의 개념 자체는 대단히 짧고 명료한데 단지 변수 주소를 저장할 뿐이다. 그 이상의 기능도 그 이하의 기능도 존재하지 않는다. 문제는 이 기능을 응용하는 경우의 수가 엄청 많고 거의 대부분의 다른 기능들과 융합할 수 있다. 조금은 복잡해 보이는 아래의 코드를 살펴보자. ▼ 포인터의 기본적인 예시 int iValue = 10; wprintf(L"== iValue 값 ==\n"); wprintf(L" iValue[%p] = %d\n\n", &iValu.. 2021. 1. 14.
12. 열거형(Enum) 무조건 연속적으로 정의하는 열거형 ▼ enum 예시 enum class CharacterState { IDLE = 0, WALK, RUN, JUMP, ATTACK }; CPP에는 열거형에는 Enum과 Enum Class 가 있다. Enum Class는 CPP 11에서 추가된 기능으로 Enum의 기능에서 namespace의 기능을 더한 것이라고 한다. 즉 enum들끼리 보다 정확하게 구분 짓는데 도움을 줍니다. 정확한 예시를 위해 아래의 코드를 살펴보자. ▼ 기존 enum의 namespace 문제 enum RAINBOW_COLOR{ RED, ORANGE, YELLLOW, GREEN, BLUE, INDIGO, PURPLE }; enum COLOR{ RED }; int main() { int color = R.. 2021. 1. 14.
1. [CPP]특수문자 타일 맵 생성기 github.com/gyunam-park/CPP_TOY_PROJECT/tree/main/CPP_ARRAY/TILE_MAP_GENERATOR gyunam-park/CPP_TOY_PROJECT This is where I am collecting toy projects to review what I learned while studying CPP. - gyunam-park/CPP_TOY_PROJECT github.com ▼ 실행 화면 고정 크기 배열(Array)을 이용한 특수문자 타일 맵 생성기 오늘은 배열과 문자열을 배워서 이걸 응용하여 아주 간단한 특수문자 타일 맵 생성기를 만들어 보았다. 너무 간단한 프로그램이라 이론이랄 것도 없지만 요약하자면 아래와 같다. 프로그램 동작 순서 1. 타일을 저장할 배열.. 2021. 1. 13.