프로젝트
프로젝트 둘러보기
프로젝트 01 : 기본 OpenGL 뷰어
마우스 움직임으로 카메라 조작
축소
- 궤도: 시선을 중심으로 카메라를 회전시킵니다. (Blender의 MMB (마우스 중간 버튼) 기능과 유사)
- 팬: 카메라와 시선을 좌우 및 상하 방향으로 이동시킵니다. (Blender의 Shift-MMB 기능과 유사)
- 줌: 카메라를 시선 중심으로 전진(확대) 또는 후진(축소)시킵니다. (Blender의 Ctrl-MMB 기능과 유사)
- ‘v’ 키를 눌러 원근 투영 또는 직교 투영을 토글합니다.
- xz 평면에 선으로만 된 직사각형 그리드를 참조 지면으로 그립니다. (Blender와 유사)
프로젝트 02 : Obj 뷰어 및 계층적 모델 그리기
나만의 obj 파일 뷰어 구현
1) 단일 로드된 obj 메시 표시 및 2) 로드된 obj 메시로 구성된 계층적 모델의 애니메이션 표시. 렌더링에는 여러 개의 광원을 사용해야 함.
1. 단일 메시 렌더링 모드
- obj 파일을 뷰어 창에 끌어다 놓아 엽니다.
- obj 파일을 읽고 정점 위치, 정점 법선, 면 정보만을 사용하여 메시만 표시합니다.
- obj 파일을 열 때 obj 파일의 다음 정보를 터미널에 출력합니다.
2. 계층적 모델 애니메이션 렌더링 모드
- 사용자가 뷰어에서 ‘h’ 키를 누르면 프로그램은 “계층적 모델 애니메이션 렌더링 모드”에서 실행되어야 합니다.
- 모델은 적어도 3개의 다른 다운로드된 obj 파일에서 로드된 3개의 다른 메시로 구성되어야 합니다.
- 모델은 3개의 레벨로 구성된 계층 구조를 가져야 하며 각 노드(단말 노드 제외)는 적어도 2개의 자식 노드를 가져야 합니다.
- 모델을 애니메이션화하여 계층 구조를 보여줍니다.
축소3. 조명 및 기타
- 모든 객체를 Phong 조명과 Phong 음영을 사용하여 렌더링합니다.
- ‘z’ 키를 눌러 와이어프레임 / 솔리드 모드를 토글합니다. (Blender에서 ‘z’ 키를 누르는 것과 유사)
LC-2K 어셈블리 언어 및 어셈블러 & 동작 시뮬레이터 & 어셈블리 언어 곱셈
이 프로젝트는 매우 간단한 어셈블리 언어의 명령어와 프로그램을 기계어로 어셈블하는 방법을 이해하는 데 도움이 됩니다.
1. LC-2K 어셈블리 언어 및 어셈블러
- 이 프로젝트의 첫 번째 부분은 어셈블리 언어 프로그램을 가져와 기계어로 번역하는 프로그램을 작성하는 것입니다.
2. 동작 시뮬레이터
- 이 과제의 두 번째 부분은 모든 유효한 LC-2K 기계 코드 프로그램을 시뮬레이션할 수 있는 프로그램을 작성하는 것입니다.
축소3. 어셈블리 언어 곱셈
- 이 과제의 세 번째 부분은 두 숫자를 곱하는 어셈블리 언어 프로그램을 작성하는 것입니다.
InfoSynth
축소앱 개요
- InfoSynth는 편향된 정보에 노출된 사용자가 객관적이고 다양한 관점을 얻을 수 있도록 돕는 애플리케이션입니다. YouTube 비디오를 기반으로 작동하며 사용자는 YouTube 비디오의 URL을 입력하면 앱이 비디오의 스크립트를 크롤링하여 관련된 기사를 제공합니다.
MO HAJI
Flutter (Dart), Node.js, MySQL, AWS EC2 및 S3, Google Vision API, OpenAI API, Naver Search API를 사용하여 개발된 앱
더 읽기
축소
After School; 3D choorigame
축소앱 개요
- “After School; 3D Mystery Game”은 유명한 일본 소설가인 히가시노 게이고의 데뷔 작품 “After School”을 기반으로 한 Unity에서 구현된 3D 미스터리 게임입니다. 잠긴 방의 비밀을 밝히고 범인을 찾기 위해 단서를 확보하세요!