고급강의실
2013.09.17 09:43

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

조회 수 1782 추천 수 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 7440 1
172 초급강의실 게임의 퀼리티를 높이자! 3편-맵배치 2 ifeve 2016.04.08 4992 2
171 초급강의실 게임의 퀼리티를 높이자! 1편-표지판 9 file ifeve 2016.01.18 4936 0
170 고급강의실 RPG Maker MV 메모리 누수 문제 해결법 6 러닝은빛 2016.01.07 4757 1
169 초급강의실 RPG Maker MV에서 도트 느낌의 폰트 사용하기 1 file 러닝은빛 2018.07.15 4598 1
168 중급강의실 RPGXP의 데미지 계산식 (Part 1. 기본공격편) 7 마니아 2013.09.17 4546 1
167 중급강의실 아오오니처럼 따라오는 이벤트 만들기 5 빙냥이 2013.12.11 4360 3
166 고급강의실 RGSS 스크립트 강좌 입문 1 - 기초 개념 8 마니아 2013.09.16 4353 0
165 초급강의실 [동영상] RPG Maker MV 튜토리얼 강좌 6화 스위치의 응용 7 file 작긔 2015.12.22 4159 2
164 고급강의실 처음부터 전체화면으로 시작하기 3 file 러닝은빛 2015.12.21 4148 0
163 초급강의실 누구나 쉽게 따라할 수 있는 액션/슈팅 이벤트 만들기! 4 file 이제리아 2017.01.26 4099 2
162 고급강의실 VX ACE XAS로 액션 RPG를 만들어보자! - 1. 개요 데크크래프트 2015.04.01 3971 0
161 초급강의실 [동영상] 게임을만들자 (5편) - 퀘스트 만들기 - 3 file 천무 2016.02.11 3834 1
160 중급강의실 RPGXP의 데미지 계산식 (Part 2. 스킬편) 4 마니아 2013.09.17 3763 2
159 중급강의실 [초보]누구나 할수있는 맵효과! 18 GM봉래산 2013.09.30 3756 5
158 고급강의실 [RPG MV] 타이틀 메뉴 일부 없애기 9 박야옹 2015.12.20 3743 1
157 고급강의실 RPG Maker VX ACE - MapInfos.rvdata2 데이터 구조. JunkMan 2014.10.05 3630 0
156 고급강의실 캐릭터그래픽 픽셀 3  운 2014.07.19 3628 0
155 고급강의실 [RMMV] 크로노 엔진(Chrono Engine) 플러그인 사용법 1 러닝은빛 2017.07.16 3610 2
154 고급강의실 [MV플러그인] Armor Scaling 강의 1 file 백난화백 2016.02.13 3607 2
153 초급강의실 MV에서 이벤트로만 액션RPG를 만들기 1 file 델군 2016.02.19 3441 0
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 Next
/ 10






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

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