Tag: C
Posts
\r\n(CRLF)와 \n\r의 차이
stdout의 라인 버퍼링 때문에 `\n\r`은 `\r`이 늦게 출력될 수 있으므로 `\r\n`을 쓴다.
C BMP 직렬화, 출력
픽셀당 3바이트씩 출력하되, 한 줄의 크기가 4의 배수가 되도록 0~3바이트의 패딩을 추가함
C 라이브러리에서 이름 접두사에 대해
라이브러리마다 특별한 접두사를 쓰지 않으면, 다른 라이브러리와 심볼 이름이 겹칠 수 있다. C에서는 심볼 이름이 겹치면...
C 헤더 정리 규칙
여러가지 규칙이 있겠지만, 아무래도 이미 많이 쓰이고 있는 규칙대로 하는 게 좋을 것이다. 예를 들면 이렇게.
1 - raytracer 프로젝트 - 시작!
레이트레이싱은 픽셀마다 광선을 발사해서, 그 광선이 부딛힌 곳의 색을 구하는 방식으로 동작한다. 실행하면 이런 결과를 얻을 수 있다.
2 - raytracer 프로젝트 - 카메라
이제 카메라를 아주 간단히 바꿔보자. 여기에서 fov란 Field Of View, 시야각을 의미한다. 각도를 기준으로 하면 평면에 투영했을 때 거리가 달라진다.
CMake에 관심 없는 사람을 위한, 초간단 CMake 가이드
CMake를 별로 알고싶지 않은 사람을 위한, 최소한만 다루는 CMake 가이드이다. CMake 자체는 빌드 시스템이라기보다는 빌드 시스템을 위한 빌드 시스템이다.
C BMP 역직렬화, 입력
저번 글에서는 bmp 직렬화를 해 봤다. 귀찮으니 저번 글에서 쓴 그 형식으로 된 것만 처리하고, 나머지는 오류로 처리하자.
Windows C 개발환경 설정
이 명령어로 Visual Studio Code, Git, VIsual Studio Build Tools, CMake를 한 번에 설치할 수 있다! 이후 터미널에서 `cmake -B builddir`, `cmake --build builddir`를 입력하면...
2 - raytracer 프로젝트 - 수학적 배경
이전 글에서 벡터와 행렬에 대해 간단히 알아봤다. 이번 글에서 조금 더 자세히 알아보자. 벡터는 크기와 방향을 가진 양으로, 힘, 속도, 가속도 같은 방향성을 가진 양을 나타낸다.