반응형

CS/그래픽스 12

[홍정모의 그래픽스 새싹코스 Part1] 구 만들기

앞서 이 포스팅은 홍정모의 그래픽스 Part1을 수강하고 작성한 내용입니다. 강의의 세부 코드는 첨부하지 않고, 결과와 이론 위주로 포스팅했습니다. 구와 직선의 방정식 구를 스크린 좌표에 나타내기 위해서는 먼저 구의 방정식을 알아야한다. x를 구 위의 점, c를 중점, r을 반지름이라고 했을 때 구의 방정식은 다음과 같다. 그리고 점 x를 지나고 o에서 시작하는 방향벡터가 u인 직선의 방정식은 다음과 같다. 구와 직선의 교점관계 먼저 구와 직선이 만날 때는 3가지 관계로 분류할 수 있는데 1. 만나지 않는 경우 2. 한 점에서 접하는 경우 3. 두 점에서 만나는 경우가 있다. 직선과 구의 교점을 x라고 하자. 구의 방정식 x에 직선의 방정식을 대입하면 다음과 같다. 내적을 전개하면 아래와 같다. 여기서 ..

CS/그래픽스 2023.12.06

[홍정모의 그래픽스 새싹코스 Part1] 원 만들기

앞서 이 포스팅은 홍정모의 그래픽스 Part1을 수강하고 작성한 내용입니다. 강의의 세부 코드는 첨부하지 않고, 결과와 이론 위주로 포스팅했습니다. Case 1 : Screen 좌표 2차원 원을 그리고자 한다. 원은 중심과 그 반지름을 알면 2차원에서의 원을 그릴 수 있다. 모든 픽셀을 순환하면서 해당 픽셀이 원의 반지름보다 가깝거나 같으면 색칠을 해주고, 반지름보다 크면 색칠해주지 않으면 된다. IMGUI로 원의 중심, 반지름, 색칠할 RGB값이 미리 세팅되어 있다. 원을 그리는 코드는 Update에 있는데, 여기서 모든 픽셀을 순환하면서 원의 영역 안에 있으면 픽셀을 색칠해 주면 되었다. "영역 안에 있다"는 Circle.h 안의 IsInside 함수를 사용했는데, 해당 점의 좌표가 원 안에 있으면 ..

CS/그래픽스 2023.12.05
반응형