티스토리 뷰
이번에는 스프라이트 애니메이션이 적용된 케릭터에게 움직임을 주도록합니다.
좌우위아래로 자연스럽게 움직이는 케릭터를 `ㅡ` ㅋ
비행기 의 모습입니다. 이상하게 생겼지만 팽귄입니다..-_-...(어딜봐서...)
자 시작합니다.
가장 먼저 비행기를 화면상으로 나타내야합니다.
일단 가장먼저 비행기(펭귄)을 불러올 2D이미지를 선업합니다.
Texture 2D pengs;
그리고 이 펭귄을 움직임을 줄 벡터를 선업합니다.
Vector2 pengmove;
컨텐트에 Flight 의 비행기를 불러와주시구요 ( 불러오는 방법은 컨텐트>오른쪽마우스>추가 >기존항목)
불러오셨으면 로드 하도록합시다 앞에서 선언안 pengs에 이미지를 넣어봅시다.
pengs = Content.Load<Texture2D>("Flight"); 자 그림파일을 pengs 에 저장했구요
다음으로는 케릭터의 움직임을 지정해줍시다.
protected override void Update(GameTime gameTime)
게임실행시 계속해서 실행하라는 곳입니다.
일단 현재 키보드상태의 정보를 가지고있는 녀석을 지정해주시구요
KeyboardState currentKeyState = Keyboard.GetState();
currentKeyState 요놈이 사용자가 키보드에 무엇을 입력했는지 저장하고 있습니다.
이제 수치값을 지정해봅시다 매초마다 얼만큼 움직이게 할것인가 입니다.
float move = 200 * (float)gameTime.ElapsedGameTime.TotalMilliseconds / 1000.0f;
float 형태의 move를 지정합니다. float형태는 소수점까지 저장할수있는 형태입니다.
앞에 수치값의 변화에 따라 움직임의 속도가 달라집니다. 높을수록 빠르겠죠?
if (currentKeyState.IsKeyDown(Keys.Right))
pengmove.X += move;
if (currentKeyState.IsKeyDown(Keys.Left))
pengmove.X -= move;
if (currentKeyState.IsKeyDown(Keys.Up))
pengmove.Y -= move;
if (currentKeyState.IsKeyDown(Keys.Down))
pengmove.Y += move;
만약 키보드 오른쪽 키를 눌렀다면 pengmove를 x축의 +방향으로 move 만큼 이동시켜라.
나머지 좌 위 아래도 같은 방법으로 코딩해줍니다.
자 모든 준비가 끝났습니다. 이제 상콤하게 움직여 봅시다.
화면상에 출력하는 부분으로 가봅시다.
Draw 가 화면상에 그리는 부분입니다.
spriteBatch.Draw(pengs, pengmove, flightangle[anim], Color.White);
그립시다. ( 이미지명, 움직임 , 이미지변경애니메이션 , 색 )
flightangle[anim] < 이부분은 스프라이트 이미지 입니다. 앞에 강의 참조하시구요~ㅎ
자 이제 디버깅해봅시다.
다음시간에는 미사일을 발사 시키도록 합시다.
좌우위아래로 자연스럽게 움직이는 케릭터를 `ㅡ` ㅋ
비행기 의 모습입니다. 이상하게 생겼지만 팽귄입니다..-_-...(어딜봐서...)
자 시작합니다.
가장 먼저 비행기를 화면상으로 나타내야합니다.
일단 가장먼저 비행기(펭귄)을 불러올 2D이미지를 선업합니다.
Texture 2D pengs;
그리고 이 펭귄을 움직임을 줄 벡터를 선업합니다.
Vector2 pengmove;
컨텐트에 Flight 의 비행기를 불러와주시구요 ( 불러오는 방법은 컨텐트>오른쪽마우스>추가 >기존항목)
불러오셨으면 로드 하도록합시다 앞에서 선언안 pengs에 이미지를 넣어봅시다.
pengs = Content.Load<Texture2D>("Flight"); 자 그림파일을 pengs 에 저장했구요
다음으로는 케릭터의 움직임을 지정해줍시다.
protected override void Update(GameTime gameTime)
게임실행시 계속해서 실행하라는 곳입니다.
일단 현재 키보드상태의 정보를 가지고있는 녀석을 지정해주시구요
KeyboardState currentKeyState = Keyboard.GetState();
currentKeyState 요놈이 사용자가 키보드에 무엇을 입력했는지 저장하고 있습니다.
이제 수치값을 지정해봅시다 매초마다 얼만큼 움직이게 할것인가 입니다.
float move = 200 * (float)gameTime.ElapsedGameTime.TotalMilliseconds / 1000.0f;
float 형태의 move를 지정합니다. float형태는 소수점까지 저장할수있는 형태입니다.
앞에 수치값의 변화에 따라 움직임의 속도가 달라집니다. 높을수록 빠르겠죠?
if (currentKeyState.IsKeyDown(Keys.Right))
pengmove.X += move;
if (currentKeyState.IsKeyDown(Keys.Left))
pengmove.X -= move;
if (currentKeyState.IsKeyDown(Keys.Up))
pengmove.Y -= move;
if (currentKeyState.IsKeyDown(Keys.Down))
pengmove.Y += move;
만약 키보드 오른쪽 키를 눌렀다면 pengmove를 x축의 +방향으로 move 만큼 이동시켜라.
나머지 좌 위 아래도 같은 방법으로 코딩해줍니다.
자 모든 준비가 끝났습니다. 이제 상콤하게 움직여 봅시다.
화면상에 출력하는 부분으로 가봅시다.
Draw 가 화면상에 그리는 부분입니다.
spriteBatch.Draw(pengs, pengmove, flightangle[anim], Color.White);
그립시다. ( 이미지명, 움직임 , 이미지변경애니메이션 , 색 )
flightangle[anim] < 이부분은 스프라이트 이미지 입니다. 앞에 강의 참조하시구요~ㅎ
자 이제 디버깅해봅시다.
다음시간에는 미사일을 발사 시키도록 합시다.
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 포토샵 에러
- 안드로이드 개발
- 안드로이드 게임
- 플래시
- 듀랑고 매크로
- 듀랑고
- 메이저골프게임
- 매크로 강좌
- C# 이미지매크로
- 이미지 찾기 매크로
- XNA 3D tutorial
- 비활성화 화면 캡쳐
- 매크로
- XNA 퍼즐게임
- 매크로 강의
- 골프 게임
- xna 2D
- XNA 2D tutorial
- 듀랑고 자동
- 모바일게임 매크로
- MSP 프로젝트P
- C# 매크로 강의
- 리니지m 매크로
- MSPproject
- 모모앱플레이어 매크로
- XNA
- C# 듀랑고 매크로
- 메이저골프
- 안드로이드
- C# 매크로
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함