XNA 예전에 했던 프로젝트에 관한거 이동
기타잡다 2014. 4. 9. 16:33제목 : 미정
예정 완성도 : 데모수준 및 프롤로그
---------------------------------------예상되는 자원------------------------------------------
클래스 5개 - 메인 클래스(프로그램 시작),
게임 클래스(기본적인 게임 세팅, 음악이나 메인화면 제어등등),
텍스트 클래스(스크립트 혹은 txt파일을 읽어 텍스트를 출력),
스위칭 클래스(메인에서 게임화면으로 이동 등을 제어),
그림출력 클래스(스탠딩, 배경, 텍스트 그림등을 구별해서 출력해줌)
배경그림 다수(데모 예정 3장), 텍스트 창 그림 1장, 캐릭터 스탠딩 그림 다수(데모 예정 2장), CG 다수(데모 예정 1장~2장)
배경음악 1곡, 오프닝 음악1곡
텍스트 혹은 특정 스크립트로 작성되어있는 스토리 문서파일 1부(혹은 분기에 의해 나누어질 다수)
----------------------------------------------------------------------------------------------
------------------------------------- 게임 흐름 진행 예상 -----------------------------------------
프로그램 시작 -> 로고 화면 -> 메인화면 -> 게임시작 -> 게임화면 및 진행 -> 메인화면 -> 종료 혹은 다시시작
--------------------------------------------------------------------------------------------------
-------------------------------- 예상되는 문제점 ------------------------------------------
XNA에서 텍스트 출력에 관한 부분은 스프라이트 폰트밖에 모르는데....
장문의 한글을 출력하는 데에 있어 문제가 있을거라 예상,
특수한 스크립트나 텍스트를 불러와서 출력하는것으로 대체하려고 하지만 관련 기술이 공개되어있지 않음
=> XNA 3.0에 새로운 스프라이트 폰트 이용 데모가 올라와 있음 링크는 여기. 아래는 요약문.
-> PS. 요약문의 출처는 여기
====================================================================================================================
This sample shows how to localize an XNA Framework game into multiple languages.
-> 한글을 비롯하여 일본어등 여러 언어를 동시에 지원하고자 할때 사용할 수 있는 방법입니다. XBOX360 타이틀의 한국어 버젼도 아마도 이런 방식으로 구현할 것 같은데요. 게임내에 사용될 text들을 string table로 만들어 놓는 방식입니다.
1. 컨텐츠 파이프라인을 통해서 미리 해당 폰트와 크기, 그리고 사용될 문자열들을 알아낸다.
2. 해당 문자열들을 검색해서, 중복되지 않게 문자들을 저장한다. (텍스쳐로)
3. 개발자는 게임내에 사용될 TEXT를 string table로 관리한다.
4. 지원해야 할 언어들에 맞게끔 string table을 번역해서 또 하나 생성해 놓는다.
5. 게임을 실행하면 자동으로 culture를 인식해서 culture에 맞는 string table에서 번역된 문자열 값을 리턴해 준다.
여기서 핵심은 한글과 일본어는 해당 글자들이 워낙 많기 때문에 컨텐츠 파이프라인 과정에서 필요로 되는 글자들을 미리 판단하여 이 글자만 가지고 폰트를 만들어서 참조하겠다는 것입니다. 저의 경우는 일리히트라는 엔진에 한글화를 지원하기 위해 비슷한 방식으로 구현을 했었습니다. Localization Sample은 조금 어려울 수 있습니다. 왜냐하면 여러가지를 동시에 보여주려고 하였기 때문인데요, 조금 더 간단하게 Localization sample을 보실 수 있도록 조만간, 초간단 예제로 더 쉽게 설명드리겠습니다.
====================================================================================================================
이게 뭔 짓인지...........
애초에 개념은 잘 잡고 있었지만...
문제는 그 다음에 구현하는 것이었음... OTL
처음 생각은 각각 관리 프로그램을 제작해서 통합하면 될 것이라 생각하고
이미지 관리부, 음악 관리부, 텍스트 관리부, 메인 프로그램
4개로 나뉘어서 각각 짜고 있었는데....
어짜피 텍스트 관리부는 한글이 안 되는 시점에서 포기 했어야 했는데...
3.0버전에 새로 들어온 유니코드 적용법을 실현해 본다고 안 되는 익스프레스 스튜디오로 삽질만 잔뜩 하고는 포기... OTL
아무래도 Microsoft Express Edition은 제약이 좀 심한거 같아요... OTL
공짜로 쓰는거니 어느정도 제약은 있을 거라고 생각했지만 이건 좀 심하쟎아요....
스타터킷 설치해도 오류만 나고 작동을 안 하고... ( -_-)
(이건 3.0 오류일지도 모르겠지만... 2.0에서 확인을 해 볼수 없으니 미치고 팔짝 뛸 지경...)
아무튼..... ㅈㅈ
'기타잡다' 카테고리의 다른 글
QT 예전에 했던 기록 이동 (0) | 2014.04.09 |
---|---|
NDS 홈브류 제작 세팅 (0) | 2014.04.09 |