[OpenGL] glPointSize()의 값 지정
문제 상황pointSize_를 어떻게 지정하던간에, 시각화되는 포인트의 크기가 1.0~1.4이라도 시각적으로 동일하게 보이고, 1.5~2.4도 동일해 보인다. 셰이더 안에서 point 크기를 다루어도 동일한 현상이 발생한다. glPointSize(pointSize_);glDrawArrays(GL_POINTS, 0, points.size()); 공식 설명glPointSize함수는 점의 래스터화 된 지름을 정한다고 한다. point size 모드가 비활성화된 경우 (`GL_PROGRAM_POINT_SIZE`를 사용하는 `glEnable` 참조) 이 값이 점을 래스터화 하는데 사용된다. 그렇지 않으면`glEnable(GL_PROGRAM_POINT_SIZE)` 인 경우, 셰이딩 언어 내장 변수 `gl_Point..
2025.12.30
[Computer Graphics] FPS 계산
FPS 계산 방식FPS는 frames per second로 1초당 몇 개의 프레임이 지나갔는지를 의미한다. 그러므로 FPS는 다음과 같은 식으로 계산한다:$$ FPS = \frac{frames}{1 \space sec} $$ 또한, FPS와 역수 관계인 frameTime이 존재한다. 이는 한 프레임을 그리는데 걸린 시간을 의미한다.$$ frameTime = \frac{sec}{1 \space frame} $$ 보통 개발할 때는 ms를 반환받아 사용하기 때문에, $1000$으로 나누어 밀리초를 초로 변환하여 사용한다. $$ FPS = \frac{frames}{\frac{elapsedMs}{1000}} $$총 프레임에 흐른 시간을 나눈다. $$ FPS = \frac{frames}{elapsedMs} \ti..
2025.07.08
[OpenGL, SPDLOG] SPDLOG의 'formatting of non-void pointers is disallowed'
SPDLOG의 'formatting of non-void pointers is disallowed'발생한 에러 메시지: error C2338: static_assert failed: 'formatting of non-void pointers is disallowed' 에러 발생 코드SPDLOG_INFO 함수 호출을 통해 glVersion을 출력하는 과정에서 에러가 발생하였다.if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress)){ SPDLOG_ERROR("failed to initialize glad"); glfwTerminate(); return -1;}auto glVersion = glGetString(GL_VERSION);SPDLOG_I..
2025.04.22