전체 글 61

Before Studing Ray Tracing

장기 휴가 기간에 CAPCOM의 RE:Requiem과 PRAGMATA 같은 게임들을 플레이하면서최근 게임 그래픽스에서 실시간 기반의 Ray Tracing이 점점 더 자연스럽게 도입되고 있음을 체감하게 되었다. 여기서 기존의 전통적인 레스터라이저 기반 그래픽 표현에 더해GI, 그림자 처리, 반사 효과 등을 Ray Tracing으로 보완하는하이브리드 렌더링 방식이 점점 중요해지고 있다는 점에 대하여 흥미롭게 느껴졌다.또한, 사람들과 AAA게임에 대한 얘기를 하다 보면 그래픽이 좋다라는 측면에서빠지지 않는 이야기가 Ray Tracing인데,이 과정에서 Ray Tracing이 단순히 더 사실적인 그래픽을 만드는 최신 기술인지,Ray Tracing 방식의 한계가 어느 부분에서 발생하고 왜 적용하기 까다로우며 어떤..

Ray Tracing 2026.06.02

boj 1916 - 최소비용 구하기(dijkstra)

그래프에서 최단거리를 구하기 위해 알아야 하는필수 알고리즘인 대망의 다익스트라(dijkstra) 알고리즘 학부 자료 구조 시간에 가중치가 있는 방향 그래프를 배우면서 다익스트라 알고리즘을 공부했었는데 까먹었던 내용들이 이번 공부를 통해 리마인드 할 겸 기록함. 다익스트라 알고리즘의 전제는 간선의 가중치가 양수여야 한다는 점이다. 그렇지 않으면 확장 알고리즘인 벨만-폴드 알고리즘을 사용해야 됨 기본적인 아이디어는 BFS에서 시작하며, 여기서 각 노드의 정보들을 저장할때는 MinHeap을 통해 구현하는 PriorityQueue를 사용한다. 이유는 시작점에서 다음 간선으로 이동하기 위한 최소 거리를우선적으로 탐색해야 그 루트가 최소 거리가 되기 때문 문제설계도시 N개와 버스 노선 M개가 주어진다.각 버스는 ..

Problem Solving 2026.04.08

빛의 측정과 단위(Radiometric, Photometric)

빛의 측정과 단위컴퓨터 그래픽스의 렌더링 분야 중 심화 기초에서 내용을 보다 보면flux, radiance, luminance, illuminance 같은 용어들이 함께 등장하고,측정 및 계산 단위도 W, lm, cd, lux, nit 등으로뒤섞여 나오는 경우가 많았다. 처음에는 전부 다 비슷한 빛의 밝기를 다루는 것처럼 뭉뚱그려 해석하였는데,실제로는 빛을 어떤 기준으로 보느냐에 따라아예 다른 체계로 나뉜다는 점을 먼저 이해하고확실히 개념을 분리해야 하겠다는 생각에 해당 글을 작성한다. Radiometric, Photometric먼저, 우리가 빛을 다루는 방식은 크게 Photometric(측광학)Radiometric(복사학) 두 가지로 나뉜다.Photometric Photometric은 빛을 인간..

Short Knowledge 2026.03.29

07. Shadow Map, Caster, Recevier(1)_[NPR Project]

그림자(Shadow)그림자그림자는 이미지에서 물체의 위치, 공간감, 형태감, 그리고 빛의 방향에 대한 정보를시각적으로 파악하는데 있어서 중요한 요소 중 하나이다.위의 두 사진을 비교해 보았을 때, 왼쪽 사진은그림자 정보 없이 오브젝트가 받는 직사광, 반사광 정보만을 갖고 있어 사진이 평면적이고 단순해 보이는 느낌을 받는다. 두 오브젝트 중 어느 오브젝트가 앞에 있고 뒤에 있는지, 카메라가 오브젝트를 어떤 시점에서 바라보고 있는지, 뒤에 있는 녹색 배경이 바닥인지 벽면인지 등을 직관적으로 인지하기 어렵다. 반면, 오른쪽의 사진은 오브젝트에 의해 가려지는 그림자와투영되는 그림자 정보를 함께 나타냄으로써 오브젝트의 직사광, 반사광과 더불어 오브젝트가 공간에 대해서 어느 위치에 존재하는지, 어느 시점에서 바라보..

NPR Project Demo 2026.03.27

Implicit Representation

그래픽스를 공부하면서 기초학문의 결핍으로미적분학을 다시 공부하는 중에 음함수 내용에 대해서 문뜩 드는 생각에 대해서 간단히 정리해 본다. 학부 수업에서 Implicit한 방법과 Explicit 한 방법에 대해서 다룬 적이 있고 해당 의미를 그냥 단어 의미 그대로 함축된 방법, 드러낸 방법의 의미 정도로 생각을 했었으나 한국어 번역본에서 음함수, 양함수로 쓰인다는 점을 보고 머리가 띵 한 부분이 있었다. 고등학교 과정에서 음함수의 미분법에 대해서 간단히 다루었던 내용이 생각나서따로 해당 의미에 대해서 의심하지 않고 받아드렸었는데 implicit 한 방법을 음함수적이라 표현하고explicit 한 방법을 양함수적이라 표현하여해당 의미에 대해서 다시 한 번 생각해 볼 필요가 있었다. 흔히 '음' 과 '..

Short Knowledge 2026.03.23

BOJ 7569 - 토마토

해당 문제는 3차원 그래프 순회 + multi source 처리에 대한 문제이다.이전 실버 단계에서 풀었던 grid 형태의 그래프 순회에 3차원의 높이 축까지 확장한 형태이며 본질은 크게 다르지 않다. 처음 방문 노드 -> 다음 간선 이동 -> 중복 방문 방지 예외 처리 해당 3가지 틀을 의식하여 문제를 정의해 본다. 처음 방문 노드익은 토마토를 1, 안익은 토마토를 0, 토마토가 없는 위치를 -1로 설정하였을 때,처음 queue에 넣어야 할 요소들은 익은 토마토의 위치들이다.중요한 것은 익은 토마토들이 하루가 지날수록 동시에 단계씩 퍼져 나가기 때문에한번에 input으로 넣어 처리 해 주어야 한다. 이를 multi source(여러개의 출발점)에 관련된 문제라고 하는 것 같다.multi source..

Problem Solving 2026.03.23

boj 2156 포도주 시식

dp로 인식하여 자력 솔브한 문제이기에 기록함 해당 문제에 대해서 dp로 생각한 이유는 이전 상태에 따라서 최대값이 달라지기 때문에 현재 선택한 와인의 순번에 대하여이전 상태에서 최대로 마실 수 있는 양과 적절한 계산을 통해계산할 수 있을 것이라는 생각을 하게 됨 문제에서 와인을 세번 연속 마실 수 없게 되어 있으므로 이에 대한 적절한 조치가 달라질 것을 염두하였다. 문제설계현재 순번의 선택 결과가 이전 선택 상태에 따라 달라지므로 DP 문제로 판단.특히 3연속 불가 제약 때문에 이전 상태를 나누어 관리해야 한다고 생각함. 생각한 문제 패턴이전 상태 기반 최대값 갱신 DP.현재 와인을 마시는 경우 ,마시지 않는 경우를 나누고, 연속 선택 조건을 함께 고려 첫 접근했을 때 생각현재 선택 와인 + ..

Problem Solving 2026.03.21