Home
study.log
Cancel

[Lv.2] 삼각 달팽이

문제 정수 n이 매개변수로 주어집니다. 다음 그림과 같이 밑변의 길이와 높이가 n인 삼각형에서 맨 위 꼭짓점부터 반시계 방향으로 달팽이 채우기를 진행한 후, 첫 행부터 마지막 행까지 모두 순서대로 합친 새로운 배열을 return 하도록 solution 함수를 완성해주세요. 제한조건 n...

[Lv.2] 호텔 대실

문제 호텔을 운영 중인 코니는 최소한의 객실만을 사용하여 예약 손님들을 받으려고 합니다. 한 번 사용한 객실은 퇴실 시간을 기준으로 10분간 청소를 하고 다음 손님들이 사용할 수 있습니다. 예약 시각이 문자열 형태로 담긴 2차원 배열 book_time이 매개변수로 주어질 때, 코니에게 필요한 최소 객실의 수를 return 하는 ...

출력 병합

출력 병합 (Output Merger) 표시되는 픽셀을 결정하고 최종 픽셀 색을 혼합하기 위한 단계로, 픽셀을 병합하는 단계이다. 각각의 픽셀 위치마다 여러 기본 도형의 픽셀이 겹쳐 있을 수 있다. 이렇게 겹쳐있는 픽셀들을 연산 및 판단하여 픽셀의 최종적인 색상을 결정할 수 있다. 픽셀들을 화면에 출력하기 위해 알파 블랜딩(Alpha Blendi...

픽셀 셰이더

픽셀 셰이더 (Pixel Shader) 레스터라이저 단계에서 구해진 기본도형의 픽셀에 투명도, 조명과 그림자, 텍스처 색상을 입히는 단계이다. (레스터라이저 스캔 변환은 픽셀마다 어떤 데이터를 갖게 되는지 픽셀간의 연결고리만 그리는 것이고 실제 색상을 입힐지는 픽셀 셰이더에서 정한다.) 기본 도형을 구성하는 각 픽셀마다 픽셀 셰이더를 한번씩 호출한...

래스터라이저

래스터라이저 (Rasterizer) 정점 데이터의 프래그먼트(Fragment)구성하는 단계로 3D 도형을 픽셀로 변환하는 단계이다. (픽셀화 작업) 그래픽 하드웨어의 자체 알고리즘으로 동작한다. → 프로그래밍이 불가능한 고정 파이프라인 단계로 직접적으로 개임할 수 없다. 레스터라이저 단계를 거쳐 기본도형은 픽셀로 변환되며, 각 정점을 기준으로 보...

정점 셰이더

정점 셰이더 (Vertex Shader) 행렬 연산을 통해 정점 데이터의 공간 변환을 수행하여 3D 공간 상의 정점의 위치를 클립 공간으로 옮기는 단계이다. 이 단계에서 게임 월드 상에서의 점들의 위치를 결정한다. 변환은 Model, View, Projection 3가지 행렬을 거쳐 변환된다. Local Space : 오브젝트의 원점을...

[Lv.2] 마법의 엘리베이터

문제 마법의 세계에 사는 민수는 아주 높은 탑에 살고 있습니다. 탑이 너무 높아서 걸어 다니기 힘든 민수는 마법의 엘리베이터를 만들었습니다. 마법의 엘리베이터의 버튼은 특별합니다. 마법의 엘리베이터에는 -1, +1, -10, +10, -100, +100 등과 같이 절댓값이 10c (c ≥ 0 인 정수) 형태인 정수들이 적힌 버튼이 있습...

렌더링 파이프라인

랜더링 파이프라인 3차원의 세계를 2차원으로 표현하는 작업으로, 각 단계를 파이프라고 부른다. 랜더링 파이프라인의 단계는 병렬처리에 특화된 GPU를 통해 진행된다. [랜더링 파이프라인 순서] 입력 조립 → 정점 셰이더 → 레스터라이저 → 픽셀 셰이더 → 출력 병합 입력 조립 (Input Assembler) 3D 장면의 정보를 CPU가 GPU...

그래픽스 API 초기화

그래픽스 API 초기화 GPU를 사용하기 위해서는 사전 작업이 필요하다. GPU는 CPU에 비해 상대적으로 느리기 때문에 CPU가 요청하는 그래픽 작업을 바로 대응할 수 없다. → CPU 처리 속도에 맞춰 일을 계속 요청하게 되면 병목현상이 발생하게 된다. 병목현상을 해결하기 위해 CPU의 요청들을 커맨드 큐에 넣어두고, GPU는 큐에서 요청을...

[Lv.1] 카드 뭉치

문제 코니는 영어 단어가 적힌 카드 뭉치 두 개를 선물로 받았습니다. 코니는 다음과 같은 규칙으로 카드에 적힌 단어들을 사용해 원하는 순서의 단어 배열을 만들 수 있는지 알고 싶습니다. 원하는 카드 뭉치에서 카드를 순서대로 한 장씩 사용합니다. 한 번 사용한 카드는 다시 사용할 수 없습니다. ...