고급강의실
2013.09.17 09:43

나뚜루's - Sprite 클래스 파헤치기 [2]

조회 수 1781 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 수정 삭제
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 수정 삭제
저번 시간에는 스프라이트 클래스를 제대로 만드는 방법을 배웠습니다.

viewport = Viewport.new(0, 0, 640, 480)
viewport.z = 999

sprite = Sprite.new(viewport)

sprite.bitmap = Bitmap.new(640, 480)

이것이, 저번시간까지 배운 내용입니다. (viewport.z는 z좌표를 설정해주는겁니다.)

자, 이제 스프라이트 클래스를 만들었으니,

그림을 그리고 글자를 써야겠죠?

이제 그림을 그리고 글자를 쓰는건 비트맵 클래스의 몫입니다.

자, Bitmap 클래스를 파헤쳐봅시다!




우선 글자를 쓰시려면 폰트명, 폰트크기를 먼저 조절해주셔야합니다.

폰트를 수정하기 위해서는

sprite.bitmap.font를 건드려야합니다.

sprite.bitmap.font.name = 폰트명 (배열로 만들어서 여러개의 폰트명을 사용할 수 있습니다.)
sprite.bitmap.font.size = 폰트 크기
sprite.bitmap.font.bold = '굵게' 여부
sprite.bitmap.font.italic = '기울임' 여부
sprite.bitmap.font.color = 폰트 색깔

자, 알맞게 수정하셨다면 이제 글씨를 쓸 차례!

sprite.bitmap.draw_text(x좌표, y좌표, 폭, 높이, 문자, 위치)

x좌표 : 글자를 띄울 x좌표입니다.
y좌표 : 글자를 띄울 y좌표입니다.
폭, 높이 : 일종의 뷰포트입니다. 글자를 띄울 때, 이 폭(혹은 높이)를 초과하게 되면 글자를 알아서 줄입니다. (축소시킨다고 보면 됩니다.
이 경우 심하게 질이 깨집니다. ㅡㅡ;)
문자 : 글자를 띄우려고 하는 문자입니다.
위치 : 글자를 정렬시킵니다. 0은 맨 왼쪽, 1은 중앙, 2는 맨 오른쪽입니다.

솔직히.. 전 x좌표 y좌표 맞추는게 제일 싫습니다 ㅡ_ㅡ;;
일일이 플레이해보면서 맞추는게.. 귀찮아죽겠네요 ㅠ_ㅠ

위치는 입력하지 않으면 자동으로 맨 왼쪽으로 정렬됩니다. 특별할 때만 건드리면 됩니다.

폭, 높이는.. 그냥 맘대로 줘버리세요. 아니면, text_size 함수를 사용하세요.

sprite.bitmap.text_size(문자)

이 함수는 문자를 띄우는데 필요한 폭, 높이를 rect 클래스로 돌려줍니다. (x, y는 모두 0입니다.)

폰트명, 폰트크기 등에 따라 폭, 높이가 바뀝니다. (기울임 여부는 안바뀝니다.)

이 함수를 이용하면 굳이 폭, 높이를 구하지 않아도 되지만 그냥 폭 640, 높이 100 주는게 짱입니다. =ㅅ= (폰트크기가 100을 넘는 경우는
거의 드물기 때문에 높이는 그냥 100으로.)

자, 이제 완벽하게 글자를 구현할 수 있게 됬습니다!
?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수 추천 수
공지 초급강의실 게임제작강좌 A-Z 색인 (2016.1.24 ver) 2 file 천무 2016.01.12 7392 1
152 고급강의실 뮤's 실전 스크립팅 강좌 [3. 기초 문법 다지기 (하)] 6 마니아 2013.09.16 1145 0
151 고급강의실 뮤's 실전 스크립팅 강좌 [2. 기초 문법 다지기 (중)] 3 마니아 2013.09.16 1371 0
150 고급강의실 뮤's 실전 스크립팅 강좌 [1. 기초 문법 다지기 (상)] 6 마니아 2013.09.16 2352 0
149 중급강의실 메뉴 용어 바꾸기 3 주섬주섬 2014.02.23 1395 1
148 중급강의실 맵으로 이동되었을때 자동으로 타이머 실행 3 물판 2014.05.01 1191 1
147 중급강의실 런타임 안깔고도 실행되게하는법!(윈도7기준) 4 공박사 2014.02.21 1256 0
146 중급강의실 데스티니 패치 연구 1~3 2 1 file 나라뜨 2012.05.05 1137 0
145 중급강의실 대쉬몬스터만들기 2 만두카레 2014.08.24 1216 0
144 중급강의실 대각선으로 이동하자! 7 바석(baseock) 2014.01.01 2121 0
143 초급강의실 느무느무 쉬운 XAS강좌!(VXA용)1.다운로드 및 규정. file 약빨은ㄱㅏㅅㅣ 2017.11.28 1374 0
142 초급강의실 누구나 쉽게 따라할 수 있는 액션/슈팅 이벤트 만들기! 4 file 이제리아 2017.01.26 4075 2
141 중급강의실 네코플에서 VXA 선택지 잘리는 버그 해결하는법 file 심심치 2017.06.22 924 2
140 고급강의실 네코 플레이어 메세지 활용하기 1  운 2015.09.01 571 2
139 고급강의실 나뚜루's - 배열, 이렇게도 만들 수 있다. 2 마니아 2013.09.17 2101 0
138 고급강의실 나뚜루's - Sprite 클래스 파헤치기 [4] 4 마니아 2013.09.17 2040 1
137 고급강의실 나뚜루's - Sprite 클래스 파헤치기 [3] 2 마니아 2013.09.17 1503 0
» 고급강의실 나뚜루's - Sprite 클래스 파헤치기 [2] 2 마니아 2013.09.17 1781 0
135 고급강의실 나뚜루's - Sprite 클래스 파헤치기 [1] 3 마니아 2013.09.17 2086 0
134 고급강의실 기본 게임 폰트를 다른 폰트로 바꾸기 5 file 러닝은빛 2015.12.21 7328 0
133 고급강의실 그림표시50개끝? 51개 해보자. 2  운 2014.12.01 1191 1
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 Next
/ 10






[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)