#!if 넘어옴1 != null
''''''{{{#!if 넘어옴2 == null
{{{#!if 넘어옴1[넘어옴1.length - 1] >= 0xAC00 && 넘어옴1[넘어옴1.length - 1] <= 0xD7A3
{{{#!if ((넘어옴1[넘어옴1.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴1[넘어옴1.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴1[넘어옴1.length - 1] < 0xAC00 || 넘어옴1[넘어옴1.length - 1] > 0xD7A3
은(는)}}}}}}{{{#!if 넘어옴2 != null
, ''''''{{{#!if 넘어옴3 == null
{{{#!if 넘어옴2[넘어옴2.length - 1] >= 0xAC00 && 넘어옴2[넘어옴2.length - 1] <= 0xD7A3
{{{#!if ((넘어옴2[넘어옴2.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴2[넘어옴2.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴2[넘어옴2.length - 1] < 0xAC00 || 넘어옴2[넘어옴2.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴3 != null
, ''''''{{{#!if 넘어옴4 == null
{{{#!if 넘어옴3[넘어옴3.length - 1] >= 0xAC00 && 넘어옴3[넘어옴3.length - 1] <= 0xD7A3
{{{#!if ((넘어옴3[넘어옴3.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴3[넘어옴3.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴3[넘어옴3.length - 1] < 0xAC00 || 넘어옴3[넘어옴3.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴4 != null
, ''''''{{{#!if 넘어옴5 == null
{{{#!if 넘어옴4[넘어옴4.length - 1] >= 0xAC00 && 넘어옴4[넘어옴4.length - 1] <= 0xD7A3
{{{#!if ((넘어옴4[넘어옴4.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴4[넘어옴4.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴4[넘어옴4.length - 1] < 0xAC00 || 넘어옴4[넘어옴4.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴5 != null
, ''''''{{{#!if 넘어옴6 == null
{{{#!if 넘어옴5[넘어옴5.length - 1] >= 0xAC00 && 넘어옴5[넘어옴5.length - 1] <= 0xD7A3
{{{#!if ((넘어옴5[넘어옴5.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴5[넘어옴5.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴5[넘어옴5.length - 1] < 0xAC00 || 넘어옴5[넘어옴5.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴6 != null
, ''''''{{{#!if 넘어옴7 == null
{{{#!if 넘어옴6[넘어옴6.length - 1] >= 0xAC00 && 넘어옴6[넘어옴6.length - 1] <= 0xD7A3
{{{#!if ((넘어옴6[넘어옴6.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴6[넘어옴6.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴6[넘어옴6.length - 1] < 0xAC00 || 넘어옴6[넘어옴6.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴7 != null
, ''''''{{{#!if 넘어옴8 == null
{{{#!if 넘어옴7[넘어옴7.length - 1] >= 0xAC00 && 넘어옴7[넘어옴7.length - 1] <= 0xD7A3
{{{#!if ((넘어옴7[넘어옴7.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴7[넘어옴7.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴7[넘어옴7.length - 1] < 0xAC00 || 넘어옴7[넘어옴7.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴8 != null
, ''''''{{{#!if 넘어옴9 == null
{{{#!if 넘어옴8[넘어옴8.length - 1] >= 0xAC00 && 넘어옴8[넘어옴8.length - 1] <= 0xD7A3
{{{#!if ((넘어옴8[넘어옴8.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴8[넘어옴8.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴8[넘어옴8.length - 1] < 0xAC00 || 넘어옴8[넘어옴8.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴9 != null
, ''''''{{{#!if 넘어옴10 == null
{{{#!if 넘어옴9[넘어옴9.length - 1] >= 0xAC00 && 넘어옴9[넘어옴9.length - 1] <= 0xD7A3
{{{#!if ((넘어옴9[넘어옴9.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴9[넘어옴9.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴9[넘어옴9.length - 1] < 0xAC00 || 넘어옴9[넘어옴9.length - 1] > 0xD7A3
은(는)}}}}}}}}}{{{#!if 넘어옴10 != null
, ''''''{{{#!if 넘어옴10[넘어옴10.length - 1] >= 0xAC00 && 넘어옴10[넘어옴10.length - 1] <= 0xD7A3
{{{#!if ((넘어옴10[넘어옴10.length - 1] - 0xAC00) % 28) == 0
는}}}{{{#!if ((넘어옴10[넘어옴10.length - 1] - 0xAC00) % 28) != 0
은}}}}}}{{{#!if 넘어옴10[넘어옴10.length - 1] < 0xAC00 || 넘어옴10[넘어옴10.length - 1] > 0xD7A3
은(는)}}}}}} 여기로 연결됩니다.
#!if 설명 == null && 리스트 == null
{{{#!if 설명1 == null
다른 뜻에 대한 내용은 아래 문서를}}}{{{#!if 설명1 != null
{{{#!html 시리즈}}}에 대한 내용은 [[마이크로소프트 플라이트 시뮬레이터]] 문서{{{#!if (문단1 == null) == (앵커1 == null)
를}}}{{{#!if 문단1 != null & 앵커1 == null
의 [[마이크로소프트 플라이트 시뮬레이터#s-|]]번 문단을}}}{{{#!if 문단1 == null & 앵커1 != null
의 [[마이크로소프트 플라이트 시뮬레이터#|]] 부분을}}}}}}{{{#!if 설명2 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단2 == null) == (앵커2 == null)
를}}}{{{#!if 문단2 != null & 앵커2 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단2 == null & 앵커2 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명3 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단3 == null) == (앵커3 == null)
를}}}{{{#!if 문단3 != null & 앵커3 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단3 == null & 앵커3 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명4 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단4 == null) == (앵커4 == null)
를}}}{{{#!if 문단4 != null & 앵커4 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단4 == null & 앵커4 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명5 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단5 == null) == (앵커5 == null)
를}}}{{{#!if 문단5 != null & 앵커5 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단5 == null & 앵커5 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명6 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단6 == null) == (앵커6 == null)
를}}}{{{#!if 문단6 != null & 앵커6 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단6 == null & 앵커6 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명7 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단7 == null) == (앵커7 == null)
를}}}{{{#!if 문단7 != null & 앵커7 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단7 == null & 앵커7 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명8 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단8 == null) == (앵커8 == null)
를}}}{{{#!if 문단8 != null & 앵커8 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단8 == null & 앵커8 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명9 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단9 == null) == (앵커9 == null)
를}}}{{{#!if 문단9 != null & 앵커9 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단9 == null & 앵커9 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명10 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단10 == null) == (앵커10 == null)
를}}}{{{#!if 문단10 != null & 앵커10 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단10 == null & 앵커10 != null
의 [[#|]] 부분을}}}}}}
#!if 설명 == null
{{{#!if 리스트 != null
다른 뜻에 대한 내용은 아래 문서를}}} 참고하십시오.
#!if 리스트 != null
{{{#!if 문서명1 != null
* {{{#!if 설명1 != null
시리즈: }}}[[마이크로소프트 플라이트 시뮬레이터]] {{{#!if 문단1 != null & 앵커1 == null
문서의 [[마이크로소프트 플라이트 시뮬레이터#s-|]]번 문단}}}{{{#!if 문단1 == null & 앵커1 != null
문서의 [[마이크로소프트 플라이트 시뮬레이터#|]] 부분}}}}}}{{{#!if 문서명2 != null
* {{{#!if 설명2 != null
: }}}[[]] {{{#!if 문단2 != null & 앵커2 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단2 == null & 앵커2 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명3 != null
* {{{#!if 설명3 != null
: }}}[[]] {{{#!if 문단3 != null & 앵커3 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단3 == null & 앵커3 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명4 != null
* {{{#!if 설명4 != null
: }}}[[]] {{{#!if 문단4 != null & 앵커4 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단4 == null & 앵커4 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명5 != null
* {{{#!if 설명5 != null
: }}}[[]] {{{#!if 문단5 != null & 앵커5 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단5 == null & 앵커5 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명6 != null
* {{{#!if 설명6 != null
: }}}[[]] {{{#!if 문단6 != null & 앵커6 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단6 == null & 앵커6 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명7 != null
* {{{#!if 설명7 != null
: }}}[[]] {{{#!if 문단7 != null & 앵커7 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단7 == null & 앵커7 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명8 != null
* {{{#!if 설명8 != null
: }}}[[]] {{{#!if 문단8 != null & 앵커8 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단8 == null & 앵커8 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명9 != null
* {{{#!if 설명9 != null
: }}}[[]] {{{#!if 문단9 != null & 앵커9 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단9 == null & 앵커9 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명10 != null
* {{{#!if 설명10 != null
: }}}[[]] {{{#!if 문단10 != null & 앵커10 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단10 == null & 앵커10 != null
문서의 [[#|]] 부분}}}}}}
1. 개요
Flight Simulator서브로직(subLOGIC)에서 개발하고 1980년 1월 애플 II용으로 출시한 비행 시뮬레이션 게임. 초기 제목은 A2-FS1 플라이트 시뮬레이터(A2-FS1 Flight Simulator)였으며, 이후 TRS-80 기종으로도 이식되었다.
개인용 컴퓨터로 출시된 최초의 본격적인 비행 시뮬레이션 게임으로, 이후 마이크로소프트 플라이트 시뮬레이터 시리즈의 직접적인 전신이 되는 작품이다.
2. 개발
1975년 일리노이 대학교의 전기공학과 대학원생이었던 브루스 아트윅(Bruce Artwick)은 항공 연구소(Aviation Research Lab) 연구에 참여하거나 비행 훈련을 받아 정식 조종사가 되는 등 항공에 대한 열정을 드러낸다. 동시에 아트윅은 디지털 컴퓨터 연구소(DCL, Digital Computer Lab)에서 기술자로 근무하기도 했으며, 그래픽 단말기를 설계하는 등 본인이 직접 "수업에서보다 DCL 지하실에서 일하면서 더 많은 것을 배웠다"고 회고하는 시간을 보낸다.1976년 5월, 컴퓨터 그래픽을 이용한 3차원 비행 시뮬레이션에 대한 석사 논문을 발표한 아트윅은 당시의 마이크로컴퓨터들에 사용되던 마이크로프로세서를 이용해 실시간 비행 시뮬레이션에 필요한 그래픽과 계산을 처리할 수 있음을 증명한다. 1977년, 아트윅은 파트너인 스튜 모먼트(Stu Moment)와 함께 서브로직(Sublogic)을 설립하고 자신의 논문을 한 단계 더 발전시키에 이른다. 초기에는 우편 주문으로 시뮬레이터를 판매했으나, 1979년 말 애플 II의 성능에 주목하여 본격적인 상업용 소프트웨어 개발에 착수했고, 애플 II 최초의 비행 시뮬레이터 프로그램인 'A2-FS1 플라이트 시뮬레이터'을 탄생시킨다.
당시로서는 제한된 하드웨어 성능 속에서 3D 공간을 구현하고 물리 법칙을 시뮬레이션하는 것은 엄청난 기술력을 요구하는 일이었다. 이러한 일을 가능하게 했던 개발자인 아트윅은 상술했듯 동시에 실제 조종사였으며, 이러한 경험은 게임의 사실성을 높이는 데 크게 기여했다. 단순히 비행기를 조종하는 것을 넘어, 계기판의 정보를 읽고 실제와 같은 절차로 비행하는 경험을 제공하고자 했다.
당시 애플 II의 베스트셀러 중 하나였으며, 마이크로소프트는 이 게임에 주목해 플라이트 시뮬레이터 라이선스를 확보하기 위해 경쟁에 뛰어든다. 이후 마이크로소프트는 공동 라이선스를 취득했고, 1982년 11월에는 IBM PC용 엔터테인먼트 프로그램으로서 마이크로소프트 버전의 플라이트 시뮬레이터가 매장에 출시된다. 이와 별개로 1983년에는 서브로직 버전의 플라이트 시뮬레이터 2가 애플 II를 통해 계속해서 발매되기도 했다.
3. 게임 플레이
흑백의 와이어프레임 그래픽으로 구현된 3D 세계가 특징이다. 플레이어는 1차 세계대전 당시의 영국 전투기인 솝위드 카멜과 유사한 기체를 조종하게 된다.화면은 크게 두 부분으로 나뉘는데, 상단에는 조종석에서 바라보는 외부 풍경이, 하단에는 속도계와 고도계 등 기본적인 비행 계기판이 표시된다. 지형은 6x6 패턴의 타일로 구성되어 있으며, 몇 개의 산과 비행장이 전부인 단출한 구성이다.
당시로서는 키보드만으로 이착륙은 물론, 선회, 상승, 하강 등 비행의 모든 과정을 직접 제어할 수 있다는 것 자체가 혁신이었다. 간단하지만 공기역학을 고려한 물리 엔진이 탑재되어 있어, 실속과 같은 실제 비행에서 발생할 수 있는 현상도 구현되었다.
초기 버전은 카세트 테이프로 출시되었으며, 이후 디스켓 버전으로 업데이트되면서 지형 디테일이 향상되고 폭탄 투하 기능 등이 추가되기도 했다.
4. 확장팩 및 후속작
4.1. 새턴 네비게이터
Saturn Navigator
1981년 5월에 나왔던 서브로직의 플라이트 시뮬레이터 시리즈 중 하나. 원작 게임의 확장팩으로 간주됐지만 작동하는데 원본 디스크가 필요 없던 스탠드얼론 타이틀이었다. 로켓 추진 우주선을 타고 지구에서 출발하여 가상의 토성 궤도 우주 정거장과 랑데부하는 여정을 시뮬레이션한다.
플라이트 시뮬레이터를 상회할 정도로 게임은 매우 복잡했으며, 우주 비행의 과학적 원리에 기반을 두고 있다. 실제로 NASA의 제트추진연구소 과학자가 제작했다고 하며, 게임의 네 단계는 천이 궤도(Transorbit), 접근(Approach), 궤도 선회(Orbit), 그리고 랑데부(Rendezvous)였다.
4.2. 플라이트 시뮬레이터 2
1983년 애플 II로 발매된 서브로직의 마지막 플라이트 시뮬레이터 시리즈. 이후 서브로직과 아트윅은 마이크로소프트 플라이트 시뮬레이터를 계속해 전담해서 개발하다가 윈도우 95 버전부터 아트윅의 회사가 마이크로소프트에 인수되어 본사에서 직접 개발하고 발매하기 시작한다.
#!if (문단 == null) == (앵커 == null)
를
#!if 문단 != null & 앵커 == null
의 [[플라이트 시뮬레이터 2#s-|]]번 문단을
#!if 문단 == null & 앵커 != null
의 [[플라이트 시뮬레이터 2#|]] 부분을
참고하십시오.5. 기타
- 당시 신생 기업이었던 마이크로소프트의 빌 게이츠는 IBM PC의 성능을 과시하고 소프트웨어 시장을 선점하기 위한 킬러 콘텐츠로 비행 시뮬레이션의 가능성을 꿰뚫어 보았으며, 이후 이 게임의 라이선스를 구매해 만든 마이크로소프트 플라이트 시뮬레이터 시리즈는 마이크로소프트의 가장 오래된 간판 타이틀이자, PC 게임의 역사를 상징하는 존재로 자리매김하게 된다.
- 초기 버전의 패키지에는 상세한 매뉴얼과 함께 항공 차트가 포함되어 있었다고 한다.