Model Renering OpenGL Engine
작성자
권용현
학과 또는 소속(회사명)
소프트웨어융합학과
이메일
mathewgwon@khu.ac.kr
조회수
3
평가(좋아요)수
0
댓글수
0
#1. 카테고리 및 요약
- OpenGL, ModernGL을 활용한 모델 렌더링 프로그램.
- 렌더 파이프라인의 기초를 학습하며, 세부 과정과 작동 원리에 대한 이해를 중시했습니다.
#2. 작업 내용
- 모델 렌더링을 위한 클래스 구조 설계
> Vertex Buffer Object(VBO), Vertex Array Object(VAO), Textures, Mesh 등 Model 클래스를 구성하는 데 필요한 여러 필수 클래스를 구현했습니다.
> 이러한 클래스들을 'Has-a' 관계로 구성하여, Model 클래스가 이 클래스들을 쉽게 활용할 수 있는 일련의 흐름을 구성하였습니다.
- Model 클래스에서 인터페이스를 제공하기 위해 리소스를 체계적으로 관리
> 각 모델마다 다른 버텍스 또는 텍스처 정보를 효과적으로 접근할 수 있도록 Model 클래스에 딕셔너리 변수를 생성하여 정보를 관리했습니다.
- GLSL을 활용한 모델 변환 및 phong 조명 적용
> 엔진 클래스에서 Model, View, Projection 행렬 값을 전역 변수로 선언받아 Vertex Shader에서 행렬 변환을 계산했습니다.
> GLSL 함수에서 벡터 계산을 통해 ambient, diffuse, specular 조명을 계산하고 이를 텍스처와 함께 Fragment Shader에 적용했습니다.
- OpenGL, ModernGL을 활용한 모델 렌더링 프로그램.
- 렌더 파이프라인의 기초를 학습하며, 세부 과정과 작동 원리에 대한 이해를 중시했습니다.
#2. 작업 내용
- 모델 렌더링을 위한 클래스 구조 설계
> Vertex Buffer Object(VBO), Vertex Array Object(VAO), Textures, Mesh 등 Model 클래스를 구성하는 데 필요한 여러 필수 클래스를 구현했습니다.
> 이러한 클래스들을 'Has-a' 관계로 구성하여, Model 클래스가 이 클래스들을 쉽게 활용할 수 있는 일련의 흐름을 구성하였습니다.
- Model 클래스에서 인터페이스를 제공하기 위해 리소스를 체계적으로 관리
> 각 모델마다 다른 버텍스 또는 텍스처 정보를 효과적으로 접근할 수 있도록 Model 클래스에 딕셔너리 변수를 생성하여 정보를 관리했습니다.
- GLSL을 활용한 모델 변환 및 phong 조명 적용
> 엔진 클래스에서 Model, View, Projection 행렬 값을 전역 변수로 선언받아 Vertex Shader에서 행렬 변환을 계산했습니다.
> GLSL 함수에서 벡터 계산을 통해 ambient, diffuse, specular 조명을 계산하고 이를 텍스처와 함께 Fragment Shader에 적용했습니다.
Model Renering OpenGL Engine
조회수
3
평가(좋아요)수
0
댓글수
0
게시 : 2024년 11월 20일
권용현
소프트웨어융합학과
mathewgwon@khu.ac.kr
Model Renering OpenGL Engine
조회수
3
평가(좋아요)수
0
댓글수
0
게시 : 2024-11-20
Member
권용현
Keyword
python, 권용현,
- 게임
- 기타