본문 바로가기
자격증

게임프로그래밍 전문가 자격증 필기 2022년 2회 A형 개념정리

by hungry- 2025. 5. 1.

게임프로그래밍 방법론

 

문제 1. 형 변환

해설:

 

  • static_cast는 기본 타입 간 변환(int → float 등)에 사용.
  • const_cast는 const 제거에 사용.
  • dynamic_cast는 다형성 클래스 포인터 간 변환에 사용.
  • reinterpret_cast는 비트 단위 해석 변경에 사용.

 

정답: ②

 

문제 2. 기능

해설:

 

  • Lambda: C++11에서 도입된 익명 함수 표현식
  • auto: 타입 추론 (C++11)
  • coroutine: C++20에서 도입된 비동기 처리
  • functor: 연산자 오버로딩을 통한 함수 객체 (구현 패턴)

 

정답: ①

 

문제 3. 출력결과

해설:

코드 흐름대로 내려오면 num = 0이고

ODD에서 후위 연산자이기 때문에 출력 이후 값 증가, 출력: 0, num =1

EVEN에서는 전위 연산자이기에 값 증가 후 출력. 출력: 2 , num = 2

if 문에서 num은 2이기 때문에 다시 EVEN으로 감. 출력 3, num = 3

다시 내려오면 if문의 조건에 포함이 안되기 때문에 종료.

0,2,3 출력

정답: ②

 

문제 4. 객체지향프로그래밍

해설:

객체지향의 4대 특징:

  • 추상화
  • 캡슐화
  • 상속
  • 다형성

템플릿은 제네릭 프로그래밍 기법, 객체지향 개념은 아님.

 

정답: ③

 

문제 5. 출력 결과

해설:

 

  • int& a: 참조 전달 → x가 직접 수정됨 → x = 2
  • int* b: 포인터 → b += 1 → b가 y[1] 가리킴 → *b = 2
  • z = 2 (a) + 2 (*b) = 4

이때 int & a는 참조를 전달해서 x가 직접 수정되어 2,

int*b는 포인터로 b가 y를 가리켜 b는 이동했지만 y[0]의 값은 변함없이 1,

z= 4

 

 

정답:

 

문제 6. 함수 선언

해설:

 

  • 식별자 이름이 예약어이면 안 됨 
  • 매개변수 이름 생략 가능
  • 기본값 사용 가능 (a = 1)
  • 함수 이름은 _, 숫자, 문자로 가능

friend는 예약어.

 

정답: ④

 

문제 7. IP

해설:

 

  • IPv4: 32비트 (4바이트)
  • IPv6: 128비트 (16바이트) 
  • 127.0.0.1: 자기 자신
  • A 클래스: 1.0.0.0 ~ 126.255.255.255, 호스트 많음

 

정답: ②

 

문제 8. 출력 결과

해설:

 

  • char str[] = "12345"; → null 포함해서 6바이트
  • sizeof(str) → 6
  • strcpy(str, "abc") → "abc\0"으로 변경됨
  • 출력: 6abc

 

정답:

 

문제 9.

해설:

 

  • a는 A* 타입이지만, new C를 통해 C 인스턴스를 가리킴
  • getName()은 가상 함수이므로 C::getName() 호출
  • 출력은 "C"임

 

정답:

 

문제 10. 열거형

해설:

enum에서 기본값은 0이고 초기화가 된 경우, 이전 값 기준 자동 증가

 

정답:

 

문제 11. C언어 헤더파일

해설:

 

  • 헤더 파일은 코드 재사용 및 선언 공유를 위해 사용
  • 종속성이 있다면 포함 순서 중요 (정의 순서 위반 시 컴파일 에러)

 

정답:

 

문제 12. C언어 매크로

해설:

 

  • #define NAME → 값 없이도 정의 가능
  • 조건부 컴파일 등에 사용됨

 

정답: ④

 

문제 13. C언어 매크로

해설:

풀어서 적어보면 multi(2+1 * 5+1)이기 때문에 연산자 우선순위대로 계산하면

1*5 = 5 +2 + 1 =8

정답: ①

 

문제 14. 메모리 영역

 

해설:

 

  • Data 영역은 초기값이 있는 전역변수와 static 변수 저장됨
  • Heap: malloc/free 동적 할당
  • Stack: 함수 호출 시 지역 변수
  • Code: 기계어 명령 저장

 

정답: ②

 

문제 15. 포인터

해설:

2,3번은 포인터 주소 자체를 바꿔서 영향이 없고

4번은 &a는 주소의 주소기 때문에 잘못된 접근이다.

정답: ①

 

문제 16. C언어

해설:

 

  • C언어의 키워드(keyword)는 언어 자체에서 미리 정의되어 있어 사용자 식별자로 사용 불가
  • 예: if, else, for, int, return, void 등

 

정답: ④

 

문제 17. 포인터

해설:

 

  • *pVal = &nTemp; → 포인터에 주소를 값으로 대입하는 오류
  • 옳은 형태는: pVal = &nTemp;

 

정답: ③

 

문제 18.

해설:

함수 내 static 변수는 정적 수명이지만 지역 범위해당 함수 내에서만 접근 가능

정답: ④

 

문제 19. 메모리

해설:

메모리 단편화

 

  • 다양한 크기의 메모리를 할당/해제 반복
  • 전체 공간은 남아 있지만, 큰 연속 공간이 없어서 할당 실패
  • 두 종류:
    • 외부 단편화: 연속 공간 부족
    • 내부 단편화: 할당 단위보다 적게 사용되어 낭비

메모리 구역화: 메모리를  코드, 데이터, 스택, 힙 등으로 나누는 개념.

가비지 컬렉션: 시스템이 자동으로 더 이상 참조되지 않는 객체를 정리(c언어에서는 없음)

메모리 초기화: malloc이나 calloc으로 할당된 메모리 공간을 0 또는 특정 값으로 채우는 것.

 

정답: ②

 

문제 20. 알맞은 코드

해설:

결괏값이 100이 되려면 1~ 19까지 홀수들의 합을 더하면 100이 나옴.

따라서 홀수만 더하기 위해서 짝수인 경우는 건너뛰고

19까지의 홀수만 더해야 하니 i가 20보다 크면 빠져나오기

 

  • ㉠: continue; → 짝수는 건너뜀 (홀수만 더함)
  • ㉡: break; → i > 20이면 루프 종료

 

정답: ①

 

문제 21. 시프트 

해설:

 

  • 1 << n은 2의 n제곱을 의미
  • 1 << 7 = 2⁷ = 128
  • 1 >> n은 2의 n제곱으로 나눈 값.

 

정답:

 

문제 22. 문자열 크기

해설:

 한글은 2바이트로 계산함. 따라서  1245는 4바이트, 삼육 4바이트, 널문자 1바이트

총 9바이트

정답: ④

 

문제 23. 출력 결과

해설: 

  • FuncAdd에서 Value는 값 전달 (Call by Value) → 원본 값에 영향 없음
  • Value는 변하지 않음

 

정답: ③

 

문제 24. 포인터 선언

해설:

포인터 선언 문법:  반환형 (*포인터이름)(매개변수 목록);

정답: ②

 

문제 25. 동기화 객체

해설:

인터럽트 - CPU 예외 처리 알고리즘

크리티컬 섹션

  • 커널 개입 없이 유저 모드에서만 동작 가능
  • 매우 빠르고 간단
  • 단점: 다른 프로세스 간 공유 불가동일 프로세스 내 전용

뮤텍스 - 커널 객체 사용, 다중 프로세스 공유 가능, 커널 리소스를 사용해 상대적으로 느림.

세마포어 - 커널 동기화 객체, 리소스 수 제한 가능, 프로세스 간 공유 가능

 

정답:

 

게임 알고리즘과 설계

 

문제 1. 재귀함수

해설:

 

  • 거듭제곱 재귀함수는 

 

  • 기저조건 y==0이면 1, 재귀적으로 x * func(x, y-1)을 호출

정답: ①

 

문제 2. 자료구조

해설:

  • 고유한 키로 빠르게 검색 → Map (Key-Value 구조)
  • Map <string, Item> 형태로 이름으로 빠르게 찾을 수 있음

1번 List: 선형 탐색 필요 → 비효율적

2번 Object Pool: 메모리 재사용 구조일 뿐 검색 목적 X

4번 MultiMap: 중복 키 허용 → 고유 이름 조건에 위배

정답: ③

 

문제 3. 삽입 정렬 

해설:

 

  • 삽입 정렬에서 data [j]보다 m이 작으면 data [j]를 오른쪽으로 한 칸 이동
  • 이후 빈자리에 m을 삽입

 

정답:

 

문제 4. 트리 순회 

해설:

순회 방식출력 순서

전위 루트 → 왼쪽 → 오른쪽
중위 왼쪽 → 루트 → 오른쪽
후위 왼쪽 → 오른쪽 → 루트
너비 우선 레벨 순서

정답: ②

 

문제 5. 균형 탐색 트리

해설:

  • 균형 트리의 목적은 탐색 효율성 유지 (O(log n))

 

정답:

 

문제 6. 유한상태기계

해설: 

각 상태에서 가리키는 방향이 없으면 전이 불가능.

정답: ①

 

문제 7. 프림 알고리즘

해설:

  • 현재 트리에 연결된 정점 중에서 가장 가중치가 작은 간선을 반복적으로 선택
  • 사이클은 만들지 않음
  • 우선순위 큐(또는 선택 정렬) 방식으로 구현 가능

정답: ③

 

문제 8. 탐색 기법

해설:

같은 레벨 순서로 탐색을 하는 기법은 너비 우선 탐색이다.

정답: ②

 

문제 9.

해설:

어떤 점 (x, y)를 원점 기준으로 θ(라디안)만큼 회전시키는 공식:

정답: ②

 

문제 10. 3차원 회전행렬

해설:

 

  • 행렬은 짐벌락 문제를 해결하지 못함
  • 사원수(Quaternion)가 이를 해결함

 

정답: ①

 

문제 11. 허프만 코딩

해설:

 

  • 허프만 코딩은 문자 빈도 기반 가변 길이 부호화
  • 허프만 트리는 비균형 트리 (문자 빈도에 따라 깊이 다름)
  • 자주 나오는 문자는 짧은 코드, 드물게 나오는 문자는 긴 코드

 

정답: ④

 

문제 12. 함수

해설:

GetRandomNumber () 함수는 0,1,2를 반환한다.

GetRandomNumber* 3의 결과는 0,3,6이다.

따라서 각각 번호별로 결과는

1번 - 0,3,6

2번 - 3,6,9

3번 - 0,4,8

4번 - 0,3,3 

따라서 0~8까지 표현 가능한 3번이 정답.

정답: ③

 

문제 13. 자료구조

해설:

 

  • 함수 호출 시 스택 프레임(Stack Frame) 사용 → 지역변수 저장
  • Linked List는 삭제 쉽고 유연함
  • 트리는 일반적으로 노드 기반 연결 구조

 

정답: ④

 

문제 14. 연결리스트

해설:

  • Linked List의 중간 삽입/삭제는 O(n)
  • 노드를 순차 탐색하여 삽입 위치 찾기만 하면 됨 → O(n)

 

정답:

 

문제 15. 자료구조

해설:

  • 스택과 큐는 중간 삽입/삭제 불가능
  • 리스트처럼 임의 위치 접근 불가

 

정답: ③

 

문제 16. STL

해설:

 

  • list연결 리스트(Linked List) 구조
  • vector동적 배열(Dynamic Array) 구조

 

정답: ④

 

문제 17. 정렬

해설:

버블 정렬 - 하나씩 정렬하면서 오른쪽 끝에 가장 끝 원소가 오게 하는 알고리즘

선택 정렬 - 최솟값을 찾아 가장 앞으로 한 번에 위치

삽입 정렬 - 앞쪽 정렬된 영역에 삽입 위치 탐색

퀵 정렬 - 분할정복 기반, 피벗을 기준으로 나누어서 탐색한 뒤 정렬

 

정답: ①

 

문제 18. 탐색

해설:

 

  • 이진 탐색은 정렬된 배열로도 가능
  • 이진 탐색 = 이진 탐색 트리뿐만 아니라 배열에서도 가능

 

정답: ③

 

문제 19. 우선순위 큐

해설:

 

  • 우선순위 큐는 우선순위에 따라 처리 → FIFO 아님
  • 일반 큐가 FIFO

 

정답: ②

 

문제 20. 몬테카를로 트리 탐색

해설:

 

  • MCTS는 4단계 구성:
    Selection → Expansion → Simulation → Backpropagation
  • 보기에는 Backpropagation 단계가 빠짐

 

정답: ①

 

문제 21. 유한 상태 기계

해설:

 

  • FSM은 단일 상태만 활성되는 구조가 일반적
  • 4번의 설명은 비동기 멀티 상태 처리 → FSM 개념과 다름

 

정답: ④

 

문제 22. 완전 그래프

해설:

완전그래프(Complete Graph)의 간선 수 공식:

n은 노드의 수 

 56/2 =28, 28 - 그림에 있는 간선 수(7)= 21

 

정답: ③

 

문제 23. 문자열 검색 알고리즘

해설:

      알고리즘                                            특징                                                                             시간 복잡도

Brute-force 모든 위치 비교 O(nm)
Rabin-Karp 해시 기반 비교 평균 O(n + m)
KMP 실패 함수(접두사-접미사 테이블) O(n + m)
Boyer-Moore 뒤에서부터 검사 + 점프 평균 O(n/m), 최악 O(nm)

정답: ②

 

문제 24. 시간 복잡도

해설:

 

  • 바깥쪽 루프: O(n)
  • 안쪽 루프: O(n)
    총 O(n²)
    (삽입 정렬의 일부 변형 구조)

 

정답:

 

문제 25. 디자인 패턴

해설:

싱글턴 - 인스턴스를 하나만 생성하는 패턴

팩토리 - 객체 생성을 서브 클래스에 위임

커맨드 - 실행 요청을 객체로 캡슐화

스테이트 - 상태에 따라 행동이 달라지는 객체 설계

정답: ③

 

게임 콘텐츠 프로그래밍 

 

문제 1. 렌더링 기법

해설:

flat shading - 면 단위 색상 처리

phong shading - 픽셀 단위 조명 계산

ray tracing - 광선 추적, 사실적인 반사 / 굴절 표현

normal mapping - 텍스처 기반 요철감 표현

정답: ③

 

문제 2. 텍스처

해설:

 

  • Normal Map :
    • 텍스처 RGB에 법선벡터(x, y, z) 정보를 담아 조명 계산 보정
    • 표면의 요철감 표현 효과
  •  Diffuse Map:
    • 기본 색상 정보 (알베도 컬러)
    • 빛이 닿았을 때 기본 색상으로 보임
  •  Specular Map:
    • 반사광의 강도를 결정
    • 금속, 유리 등의 재질 표현에 활용
  •  Ambient Map:
    • 주변광 표현 → 전체적인 밝기 조절
    • 실시간 조명 없이 공간의 명암 표현

 

정답:

 

문제 3. 벡터 연산

해설:

벡터 외적은 반대 순서면 부호가 반대가 되어야 함.

정답: ④

 

문제 4. 역행렬

해설:

2차원 행렬

역행렬이 존재하려면 행렬식이 0이 아니어야 함.

 

  • 만약 det(A) = 0 → 역행렬 없음
  • det(A) ≠ 0 → 역행렬 존재

 

 

정답: ②

 

문제 5. 라디안

해설:

정답: ①

 

문제 6. 

해설:

 

  • Tone Mapping:
    • HDR(High Dynamic Range) 이미지를 SDR/LDR로 매핑
    • 디스플레이의 밝기 한계를 고려하여 눈에 보기 자연스럽게 조정
  •  Gray Scale Mapping:
    • 색상을 흑백으로 변환 (채널 평균 등 활용)
    • 밝기나 명도 보정용
  •  Inverse Mapping:
    • 보통 텍스처 좌표에서 사용
    • 출력 좌표를 기준으로 입력 좌표를 역산
  •  Saturation Mapping:
    • 채도(Saturation) 조절을 의미
    •  

 

정답: ④

 

문제 7. 변환 파이프 라인

해설:

 

  • 렌더링 파이프라인 주요 변환:
    • 모델 → 뷰(view) → 프로젝션(projection) 순으로 변환
    • (A)는 뷰 공간에서 클립 공간으로 가기 위한 변환이므로 투영 행렬
  •  텍스처 좌표:
    • UV 정보로, 조명/공간 변환과는 관계없음
  •  법선 벡터:
    • 조명 계산용
  •  카메라 역행렬:
    • 카메라 위치를 기준으로 뷰 변환에 사용
    • (A) 위치는 뷰 → 클립이므로 해당 없음

 

정답: ③

 

문제 8. 후처리 기법

해설:

 

  • Vignetting:
    • 광학적 현상 → 화면 주변부 어두워짐
    • 종종 의도적으로 사용해 분위기 연출
  •  Bloom:
    • 밝은 영역이 흐릿하게 번지는 효과
    • 광원 표현 등에서 사용
  •  SSAO:
    • 물체 사이의 접촉 그림자 표현
    • 주변광 차폐를 통해 깊이감 부여
  •  Color Grading:
    • 전체 화면 색감 보정 → 필터 느낌

 

정답: ④

 

문제 9. 텍스처

 

해설:

  • 큐브맵 텍스처:
    • 6개의 텍스처(앞/뒤/좌/우/위/아래)를 한 번에 처리
    • 환경맵핑, 반사 표현 등에 자주 사용
  • 1D 텍스처:
    • 텍스처가 선형(1차원) 배열
    • 보간 색상용 등
  • 2D 텍스처:
    • 일반적인 텍스처 (이미지 파일 대부분)
  • 볼륨 텍스처 (3D 텍스처):
    • 텍스처가 깊이(Z)를 포함하는 3차원 구조
    • 연기, 안개 등 표현

정답: ③

 

문제 10. PBR렌더링

 

해설:

외적은 방향 계산용, BRDF의 NDF 아님

정답: ④

 

문제 11. 관절

해설:

  • 사원수 (Quaternion):
    • 3D 회전 표현 방식
    • 짐벌락 문제없음
    • 관절 애니메이션에서 회전 조합에 유리
  • 행렬 (Matrix):
    • 위치, 스케일, 회전 등을 표현 가능
    • 단점: 회전 누적 시 짐벌락 발생 가능
  • 래스터라이저:
    • 3D → 2D 화면 픽셀로 변환
    • 애니메이션과 무관
  • 픽셀 셰이더:
    • 화면 픽셀 색상 계산 담당

정답:

 

문제 12. 정점 버퍼

해설:

  • HDR 처리나 포스트 프로세싱픽셀 셰이더 이후 단계에서 수행
  • 픽셀 셰이더 내에서 광원 계산은 가능하나 전체 HDR 효과 계산은 후처리 단계에서 이루어짐

정답: ③

 

문제 13. 렌더링 파이프 라인

해설:

  • Projection Matrix 적용 후 
  • Clipping 수행 전 

즉, View 공간 → Clip 공간으로 넘어갈 때, 절두체 범위 안에 있는지 검사

정답: ③

 

문제 14. 렌더링

해설:

 

  • Z-Test:
    • 가까운 픽셀만 화면에 출력
    • 멀리 있는 픽셀은 무시됨 (가림 처리)
  • Alpha Blending:
    • 반투명도 표현 (투명 물체 등)
  • Color Buffer:
    • 최종 출력 색상 저장
  • Clipping:
    • 화면 밖으로 나간 픽셀 제거 (좌표 기준)

 

정답: ①

 

문제 15. 벡터

해설:

 

  • 법선 벡터 = 두 변 벡터의 외적
  • 삼각형 두 변 A, B → A × B = 법선
  • 내적은 각도 계산, 덧셈/곱셈은 방향 정보 없음

 

정답: ②

 

문제 16. 3D 렌더링 처리

해설:

 

  •  안티 앨리어싱:
    • 화면 픽셀 경계를 부드럽게 처리
    • 카메라 정보와 무관 (렌더링 해상도 기반 처리)
  •  퐁 조명:
    • 뷰 벡터 필요 (관찰자 방향과 관련)
  •  뷰 프러스텀 후면 제거:
    • 카메라 시야 범위를 기준으로 객체 제거
  •  빌보드:
    • 객체가 항상 카메라를 바라보도록 회전 → 카메라 방향 필요

 

정답: ①

 

문제 17. 3D 렌더링

해설:

 

    • FOV(Field of View)를 작게 하면 더 멀리 보이는 효과
    • FOV가 클수록 왜곡 + 가까이 보임

 

정답:

 

문제 18. 카메라 행렬

해설:

 

  • 직교 좌표계 구성 시,
    y축 = z 축 × x축 (또는 x축 × z 축)
  • 외적 결과는 두 벡터에 수직인 벡터 → 새로운 축 생성 가능

 

정답: ③

 

문제 19. 픽셀 셰이더

해설:

  • 1번: 픽셀 셰이더 기본 기능
  • 2번:
    • 조인트(관절) 계산은 CPU나 버텍스 셰이더에서 수행
    • 픽셀 셰이더는 표면 렌더링에 집중
  • 3번: 그림자 맵은 렌더타겟 + 깊이 버퍼 기반
    → 픽셀 셰이더에서 처리
  • 4번: 역광/노출/블룸은 픽셀 셰이더 + 후처리에서 처리됨

 

 

정답: ②

 

문제 20. 애니메이션 

해설:

 

  • 1번 키프레임 :
    • 시작/끝 프레임만 정의 → 중간은 보간(interpolation)으로 자동 계산
  • 2번 스키닝:
    • 뼈대와 메쉬 결합
    • 관절 애니메이션에 사용
  • 3번 모핑 (Morphing):
    • 정점 위치를 프레임마다 저장하여 변형
    • 표정, 형태 변화 등
  • 4번 텍스처 애니메이션:
    • 텍스처를 프레임마다 바꿔서 애니메이션처럼 보이게 함

 

정답: ①

 

문제 21. 공간 분할 기법

해설:

 

  • OcTree:
    • 3차원 공간을 8개의 하위 영역으로 나눔 (Oct = 8)
    • 반복적으로 분할하여 공간 관리
    • 3D 게임, 충돌 검사, 시야 검사 등에 활용
  •  Quad Tree:
    • 2D 공간을 4개로 분할
    • 맵 편집기, 미니맵, 타일 시스템 등에 사용
  •  BSP (Binary Space Partitioning):
    • 공간을 2개의 부분으로 계속 나눔
    • FPS 게임에서 시야 처리, 광선 추적 등에 사용
  •  PVS (Potentially Visible Set):
    • 미리 시야에 보일 수 있는 오브젝트 집합을 계산
    • Occlusion Culling에 활용됨

 

정답: ②

 

문제 22. 법선 매핑

해설:

 

  • 2번 :
    • 스키닝 캐릭터는 접선 공간(Tangent Space) 맵핑을 사용
    • 접선 공간은 애니메이션 변형에도 잘 대응됨
  • 1번: 둘 다 존재하는 법선 맵핑 방식
  • 3번: RGB 값에 법선 벡터(x, y, z) 정보를 저장
  • 4번: 접선 공간 맵의 기본 방향벡터는 (0, 0, 1) → 일반적으로 파란색이 많음

 

정답: ②

 

문제 23. 충돌 

해설:

 

  • 2번:
    • 충돌 검사를 빠르게 하기 위해, 개별 정점 대신 구체(Sphere), AABB 등 간단한 볼륨 사용
    • 성능 향상 효과 큼
  • 1번 Ray Tracing:
    • 사실적인 광원 시뮬레이션
    • 충돌 검사로는 사용되지 않음
  • 3번 은면 제거:
    • 렌더링 최적화 (보이지 않는 면 제거)
    • 충돌과 무관
  • 4번 정점 셰이더:
    • 정점 변환용, 충돌 처리와 직접 관련 없음

 

정답: ②

 

문제 24. 조명 연산

해설:

 

  • 2번 :
    • 광원 벡터 L이 일정 → 태양처럼 멀리서 빛이 평행하게 오는 광원
    • 일반적으로 방향만 존재, 위치는 없음
  • 1번 Ambient Light:
    • 모든 방향에서 균일하게 오는 기본 광원 (그림자 없음)
  • 3번 Point Light:
    • 점 위치에서 모든 방향으로 퍼지는 광원 (전구, 촛불)
  • 4번 Spot Light:
    • 특정 방향으로 제한된 각도로 퍼지는 광원 (손전등)

 

정답:

 

문제 25. 애니메이션 

해설: 

 

  • 2번 IK :
    • 손/발 등 말단의 위치를 기준으로 관절을 자동 조정
    • 예: 캐릭터 발이 지형에 맞게 닿도록 무릎과 고관절 회전 자동 계산
  • 1번 FK:
    • 루트(몸통)부터 끝까지 순차적으로 계산
    • 자연스러운 움직임은 가능하지만, 지면과 정확한 정렬 어려움
  • 3번 Ray Tracing:
    • 광선 추적용, 애니메이션과 무관
  • 4번 Morph Target:
    • 정해진 형태로 정점을 이동 → 주로 얼굴 표정 등 정적 변형

 

정답: