암모나이트조

cdc wiki
이동: 둘러보기, 검색

프로젝트 개요

기술개발 과제

국문 : VR 폰트 에디터 개발

영문 : VR Font Editor Development

과제 팀명

암모나이트

지도교수

김성환 교수님

개발기간

2018년 9월 ~ 2018년 12월 (총 4개월)

구성원 소개

서울시립대학교 컴퓨터과학부 2010920056 정*진(팀장)

서울시립대학교 컴퓨터과학부 2010920008 김*현

서울시립대학교 컴퓨터과학부 2010920030 박*현

서울시립대학교 컴퓨터과학부 2010920045 이*훈

서론

개발 과제의 개요

개발 과제 요약

▶ 3D Text rendering – 폰트 파일의 2D 좌표를 3D Text의 그래픽 형태로 변환하는 라이브러리는 공개되어 있지 않다. OpenGL과 Freetype 라이브러리를 활용하여 폰트를 3D 형태로 구현해야 한다.

▶ Basic text Control – 구현된 3D Text는 Unity 상에서 하나의 오브젝트로 인식시킬 수 있다. 오브젝트화시킨 Text를 Unity 내의 다양한 기능을 활용하여 기본적인 Controlling을 수행할 수 있다.

▶ Physics - Text Mesh에 Rigidbody 기능과 Collidor를 입혀 Unity 물리엔진에 의한 Physics 작업을 수행할 수 있다.

▶ Text Effect - Text의 Material을 변경하여 질감을 다르게 하고, Effect Animation을 입혀 동적인 효과를 구현한다.

▶ VR background - Text가 사용될 여러 환경을 제공하여 실제로 적용된 모습을 간접적으로 체험할 수 있도록 한다.

개발 과제의 배경

▶ VR 시장현황 분석

일반적으로 가상현실상에서 Text를 표현하는 방법은 2D 방식의 그리기 방식으로써 Text를 표현하게 된다. 이는 가독성이 좋지 않으며 VR 컨텐츠에 대한 몰입갑을 현저하게 떨어뜨리 고 디자인적으로 컨텐츠의 품질을 저하시킬 수 있다. 현재 VR 디스플레이상에서 표현되는 Text에 대한 연구개발이 진행되기 시작했으나 진행이 활발히 이루어지지 않는 단계이다.

▶ 개발목표

4차 산업의 핵심기술인 VR 솔루션에 적용되는 폰트의 개발에 있어 다양한 기능을 제공함으로써 사업 시너지를 발휘할 수 있도록 하고 VR 개발자에게 폰트 개발의 편의를 제공한다.

개발 과제의 목표 및 내용

내용

관련 기술의 현황

관련 기술의 현황 및 분석(State of art)

-

시장상황에 대한 분석

▶ VR Font Editor는 VR 프로그램을 제작할 때 개발자에 의해 쓰이는 Tool로써 다양한 VR 컨텐츠에 사용 될 수 있는 프로그램이지만 VR 게임 개발에 초점을 맞추어 개발한 프로그램이다.

그러므로 시장분석에선 VR게임 시장에 대해 전반적으로 분석한다.

2016년 나이언틱(Niantic) 의 ‘포켓몬GO’가 전세계적으로 큰 흥행을 불러일으키면서 게임 업계에서의 VR∙AR 기술에 대한 관심과 투자가 급격히 늘어났다.

골드만삭스(Goldman Sachs)의 『Profiles in Innovation: Virtual & Augmented Reality』 보고서에 따르면, 2025년 VR∙AR 시장에서 게임에 활용되는 부분이 삼분의 일을 차지할 것으로 전망된다.

국내 VR∙AR 게임 시장은 2020년 5조 7,000억 원에 달할 것으로 예상되며 상용화를 앞둔 5G 통신기술과 결합되었을 때 시너지를 창출할 것으로 기대되고 있다.

5G 통신기술, 정밀한 모션을 인식하는 센서 기술 등과 결합되어 VR 게임은 단순히 시각적인 즐거움을 주는 것을 넘어 오감으로 즐길 수 있는 게임으로 발전하고 있다. 또한 초기의 VR 시장은 하드웨어, 즉 HMD와 같은 디바이스를 중심으로 생태계가 형성되었다면 현재는 고사양의 게임 콘텐츠가 VR 게임시장을 이끄는 핵심 원동력이 되고 있다. VR 게임을 즐길 수 있는 도심 형 VR 테마파크가 확산되면서 아케이드 게임시장 또한 동반 성장하고 있다. VR 아케이드 게임 시스템과 콘텐츠가 유통되는 B2B 시장도 커지고 있으며 해외로의 수출에 대한 가능성도 밝게 전망되고 있다. VR 게임 시장은 이미 포화 상태에 이른 온라인 및 모바일 게임 시장을 탈피한 중견 및 소형 게임사들이 주를 이루고 있는 상태다. 현재 개화기를 지나 VR∙AR 게임이 시장에서 사업성이 있다고 평가되었을 때, 상황을 주시하던 대형 게임사의 대규모 투자가 이루어질 것으로 전망된다.


[SO전략(강점+기회]
- 기존 VR상의 2D Text를 수정하는 데 있어 손쉬운 개발편의를 제공함
- VR 폰트에 대한 솔루션을 제공하는 경쟁업체가 존재하지 않음
- VR 폰트에 대한 연구개발이 활발히 진행되지 않고 있는 현재 상황 속에서 VR Font Editor의 출시를 통한 경쟁우위 선점 가능

[WO 전략(강점+위협)]
- 기존 VR상의 2D Text를 수정하는 데 있어 손쉬운 개발편의를 제공함
- VR폰트 개발에 대한 경쟁업체의 진입장벽이 낮음. 언제든지 경쟁업체가 비슷한 기능의 VR Font Editor 개발 가능
- VR 폰트 솔루션에 대한 개발과 연구, 수요가 크게 있지 않은 지금 시점에서 출시를 통한 경쟁우위 선점이 필요함

[ST 전략(약점+기회)]
- VR Font Editor는 일반인이 아닌 개발자에게 편의를 제공한다는 점에서 타겟이 한정되어 있음
- VR 폰트에 대한 솔루션이 없는 현상황에서 개발자들의 수요를 이끌어낼 만큼의 기능에 대한 편의가 확실해야함
- VR 개발자들에게 필요한 Editor라는 초기 인식을 형성하는 게 필요함

[WT 전략(약점+위협)]
- VR Font Editor는 일반인이 아닌 개발자에게 편의를 제공한다는 점에서 타겟이 한정되어 있음
- VR폰트 개발에 대한 경쟁업체의 진입장벽이 낮음. 언제든지 경쟁업체가 비슷한 기능의 VR Font Editor 개발 가능
- 보다 나은 효율의 편의를 제공하는 기능에 대한 지속적인 연구를 통해 기술경쟁력을 확보함과 동시에 VR개발자들에게 필수적 Editor의 인식 형성을 위한 마케팅 전략이 요구됨

개발과제의 기대효과

통용성

▶ 앞서 시장분석에서 언급했듯이 VR 시장 그 자체가 지속적으로 빠르게 성장하고 있다. VR 시장에서 55%이상의 점유율로 가장 큰 점유를 하고 있는 분야는 VR 게임시장이다. 수많은 게임 개발사가 VR게임 개발에 열을 올리고 있다. 개발되는 그 모든 VR게임 내의 Font 구성이 3D형태로 만들어 지는 것은 아니지만 상당수의 개발자들이 VR게임 개발을 할 때 있어서 게임 내 Font를 생성 할 때 VR Font Editor 프로그램을 유용하게 쓸 것으로 보인다. 현재 VR 게임 내에서 3D의 Font를 구현하려면 Font Editor같은 Tool을 이용하는 것이 아닌 말그대로 그려내는 그래픽 작업을 통해 가능하다. 따라서 대부분의 VR게임에서 사용하는 글자의 속성은 2D이며 3D로 게임내의 공중에 띄우거나 입체감을 입혀 표현하는 경우는 거의 전무하다. VR Font Editor가 상용화 된다면 개발 되는 VR게임에 전반적으로 활용되어 다양한 효과가 삽입된 3D Font가 게임 내에 많이 쓰일 것으로 예견된다.

효용성

▶ 위에서 잠깐 언급했듯이 VR게임 내에서의 3D Font 구현은 말 그대로 그래픽 디자인의 일종으로 많은 시간과 개발자의 에너지가 들어간다. 하지만 VR Font Editor의 간단한 Font생성과 여러 Material적용의 기능으로 많은 시간과 에너지를 줄일 수 있다. 뿐만 아니라 Physics를 사용한 Font에 적용되는 무게감, Font 질감 위에 덮을 수 있는 다양한 애니메이션 효과 까지 짧은 시간안에 간단한 조작으로 게임 개발할 때 있어서 Font생성을 디자인 하는 시간을 상당히 줄일 수 있다. 특히 VR 게임 대부분을 차지하는 실감형VR게임(시뮬레이션 ,액션 등) 의 경우, VR Font는 사용자로 하여금 상황몰입에 큰 기여를 할 수 있게 하는 요소가 될 수 있다.

발전 가능성

▶ 현재 개발된 Editor 프로그램 내의 기능은 그 자체로 다양하지만 앞으로 성장하는 VR게임 시장과 함께 프로그램도 기능적으로 발전가능성이 크게 열려있다. 현재 간단한 Font생성과 좌표변경 및 Depth 변경, 소수의 Material 과 Physics 사용한 효과, 그리고 애니메이션은 프로그램 개발에 있어서 최소한의 기능을 포함한 것이다. 더욱더 다양한 배경에서 여러 성질의 Font를 실험 할 수 있게 발전될 수 있다.

기술개발 일정 및 추진체계

개발 일정

내용

구성원 및 추진체계

◇정*진 : 폰트 효과 구현
◇박*현 : 호환성 구현 및 테스트
◇김*현 : UI/UX 디자인
◇이*훈 : 세부구현 및 문서취합

설계

소프트웨어 설계

목표기능 설계

Tool & Library

▶ Unity Engine

- Unity는 사용자가 2D 와 3D 모두에서 게임을 만들 수 있는 기능 제공
- 플러그인 형식의 Unity 편집기와 게임 자체 및 드래그 앤 드롭 기능을 위한 C#의 기본 스크립팅 API 를 제공
- 런타임 부분은 C++과 마이크로소프트 닷넷 API, 에디터 프로그램은 C#으로 개발
- GameObject – Create a new object

▶ OpenGL Library

- 2차원 및 3차원 그래픽스 표준 API 규격으로, 프로그래밍 언어 간 플랫폼 간의 교차 응용 프로그래밍을 지원
- 프로그래머에게 단일한 API를 제공함으로써 서로 다른 3차원 가속기 사이의 복잡한 상호 정보교환 방식을 간단하게 함
- texture overlapping: 게임 오브젝트를 덮거나 래핑하는 이미지 또는 동영상 파일로 시각적효과를 만들어 냄

▶ Freetype Library

- 트루 타입, Type1, OpenType 등의 다양한 폰트 파일로부터 글리프의 정보를 추출하는 저수준의 폰트 분석 라이브러리
- 텍스트를 다양한 형태로 출력하고 싶다거나 정확한 텍스트 메트릭스를 구하고 싶을 때, 플랫폼에 독립적인 텍스트 관리 툴을 만들고 싶을 때 유용하게 사용

▶ Feature Detection

- 이미지 정보의 추상화를 계산하고, 그 시점에서 주어진 유형의 이미지 특징점이 있는지 여부에 상관없이 모든 이미지 포인트에서 로컬 결정을 내리는 방법을 포함

Feature 구현

<Feature 1> 3D Text Display
Feature1-1 Rendering - .ttf .otf 파일을 읽어 3D형태로 display하는 쉐이더 제작(OpenGL, Freetype)
Feature1-2 Text Input - Unity에서 제공하는 Text Input 필드를 사용

<Feature 2> 폰트 기본형태 변경
Feature2-1 Font Feature2-4 Length
Feature2-2 Size Feature2-5 Thickness
Feature2-3 Height

OpenGL과 FreeType 라이브러리를 이용하여 Custom Shader를 제작한다.
Shader는 Unity Inspector에서 텍스트의 기본형태를 변경할 수 있는 기능을 제공하도록 제작한다.
각각의 기능들을 Inspector에서 에디터의 UI 버튼들로 구현한다.

<Feature 3> Physics
Feature3-1 Rigidbody - Unity 기능을 활용하여 Text의 mesh에 rigidbody 기능을 입힌다.
Feature3-2 Collidor - Collidor를 Box형태로 각각의 글자에 생성
Feature3-3 Gravity - Unity에서 제공하는 물리 엔진 사용

<Feature 4> Text Effect
Feature4-1 material 변경 - 다양한 형태의 text material 변경(Unity inspector 활용)
Feature4-2 effect animation – texture overwrapping

<Feature 5> VR background
Feature5-1 background - 배경을 object화하여 개별적으로 active, non-active

결과 및 평가

완료 작품의 소개

프로토타입 사진 혹은 작동 장면

내용

관련사업비 내역서

내용

완료작품의 평가

내용