Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

게임콘텐츠과 수업자료

No description
by

선하 박.

on 4 November 2016

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of 게임콘텐츠과 수업자료

게임 엔진 프로그래밍 2주차
1ㅈㅜㅊㅏ
“게임을
개발하는 건
어렵다?”

일반적인 게임 개발에 있어서 게임 개발이 어렵지만
게임샐러드를 사용하면 “아니다”이다.

http://gamesalad.com/download
국내에서는 유니티만이 인지도면에서 최고!
세 가지 툴 모두 '프로그래머 없이 개발이 가능하다'라고 주장

유니티는 그 중 가장 난이도가 높고 특히 3D 베이스라 사실상 프로그래머 없이 진행하기에는 상당한 무리

그보다 조금 더 난이도가 낮은 툴이라면 루아 스크립트 베이스의 코로나, 그보다도 더 낮은 난이도의 툴이라면 게임샐러드를 꼽을 수 있다.

실제로 게임샐러드는 그래픽 디자이너 1인이 게임을 만들 수 있을 정도의 간단한 작업 난이도를 자랑하고 실제로 그렇게 진행된 프로젝트가 이미 주위에 제법 있다.

어차피 코로나나 게임샐러드는 소수로 프로젝트를 진행하고 싶은 기획자/그래픽 디자이너를 위한 툴이고 게임샐러드는 그 중에서도 가장 난이도가 낮고 기존의 어지간한 캐주얼 게임의 레퍼런스 소스는 대부분 제공하고 있다는 점이 가장 강력한 경쟁력일 듯 하다.


java, C, C++, object-C, Lua Script 등등
개발자가 아니라도 개발 언어를 몰라도 가능
게임샐러드엔진은
여러분의 머리 속에 존재하는 아이디어와 컨셉을 실현해 주는 가장 빠르고 효과적인 툴임이 확신

필요한건 자신들의 머리 속의
아이디어와 컨셉을 논리적으로 표현(Logic)


One Source Multi-Platform Service 가능

게임스트럭쳐 설계 2주차
gamesalad actor attributes pane reference

name : actor의 이름
time : scene에서 현재 actor가 존재하여 활동하는 시간.
이 속성은 읽기만 가능하며, 임의로 세팅할 수 없다.
Create Rule이나 Behaviors부분에서 조정 가능하다.
position : scene에서 actor의 X, Y 위치.
prototype에서는 위치를 설정할 수 없다.
4.size
1)width : 현 actor의 가로 사이즈
2)height : 현 actor의 세로 사이즈
5.rotation : actor가 scene에 보여지는 각도
또는 회전각을 지정할 수 있다. 즉, 배우의 시선!
6.color :빛의 3원색 RGB: red, green, blue로 actor의 색상 변경. 각각의 색상의 진함, 흐림을 설정, 최대수치는 1이며, 소수점으로 수치값을 변경.
alpha로 투명도 설정. 수치가 낮을수록 흐려짐.

7.image : actor에 나타낼 이미지 설정. 이미지 변경은 박스에 이미지를 드래그해서 넣을수 있음.
8.tags : 프로젝트 에디터에서 actor에 주어진 tag.
9. graphics : 그래픽, 보여지는 이미지에 관한 설정

1)visible : actor를 보여줄 것인지 보이지 않을건지 참, 거짓으로 선택. 체크해제하면 안보임.

2)blending mode : 블렌딩 모드는 actor와 actor, actor와 배경이미지 등의 관계에 있어 보여지는 방식을 결정한다.
10.motion
linear직선 velocity속도 : X, Y 방향의 actor의 선속도.

angular velocity : actor의 회전속도. 가속도와 관련
0보다 수치가 크면 반시계방향으로 회전하고,
-가 붙으면 시계방향으로 회전.

max speed : apply max speed가 참일 경우 actor가 이동 시 낼 수 있는 최대 속도. 아래의 apply max speed를 체크해야 작동됨.

apply max speed: 체크하면 액터의 최대속도가 정해지며, 체크하지 않으면 액터의 속도는 계속 증가함.
11.physics
density 밀도 : actor의 무게. 0이 제일 가벼운 기준.

friction : 마찰력. 0이 제일 부드러움, 객체와 객체가 충돌하거나 추락할때 사용함.

fixed rotation : 로테이션, 체크했을때 액터가 회전하지 않음.

movable이동시킬수 있는 : 액터가 다른 액터와의 충돌시 이동에 대한 체크.

collision shape 충돌 : Rectangle직사각형:구르지 않고 미끄러짐 , Circle원 : 구르며 미끄러짐

drag :속도의 저항력
angular drag
예제 2) change Attribute 액터의 사이즈 자동변화
1.액터(10*10) 하나를 추가한다.
2.액터를 화면 중앙에 배치한다.
3. 매 1초마다 똑같은 비율로 자동 확대하도록 코딩한다.

예제I) Rule값 적용

1. Sheep, Cloud1 액터추가한다.
2. Sheep은 위 방향키를 누르면 위로 올라간다.
3. 유사한 방식으로 상하좌우 움직임키를 입력한다.
4. Cloud는 한쪽 방향으로 바람에 날리듯 움직인다.
단, 반복적으로 나타나도록 한다.
•actor의 size 변경
•actor의 position 변경
•actor의 color 변경
•actor의 physics / motion (linear / angular velocity / friction) 변경

게임스트럭쳐 설계 3주차
Actor _변경
1) change attribute : type : action
change attribute는 game, scene, actor의 속성을
특정 상황에 따라
변경 또는 증감 할 수 있다.
2) constrain attribute : type : persistent behavior (지속적인 행동)

constrain attribute는 change attribute와는 달리
하나 하나의 속성 값이
계속해서
반영이 된다.
예를 들어, actor의 포지션을 지정 할 수 있으며, 마우스, 터치 등의 조작에 따라
actor의 포지션 변화를 가져올 수도 있다.

color와 angular velocity(각속도) 등을 변경할 수 있다. 
예를 들어, game의 스코어를 증감 시키거나 player actor의 라이프를 증감 시킬 수 있으며,
3) interpolate : type : behavior

interpolate는 기존 속성 값에 보완하는 속성을 적용한다.
예를 들어, 기존 스코어가 100이고 획득한 스코어가 50일 경우
스코어 반영 시 100에서 150으로 한번에 바뀌는 경우
interpolate를 통해 1씩 또는 10씩 증가하는 속성 정의를 하면
기존 100에서 정의된 수 만큼 증가하여 최종 스코어를 보여 줄 수 있다.


예제 3) contrain Attribute 액터의 위치 변화
1. ball, bar, wall을 추가한다.
2. ball은 자동으로 아래방향으로 떨어진다.
3. bar는 마우스로 이동하여 떨어지는 공이 이탈하지 않도록한다.
4. wall은 고정되어 있다.
게임스트럭쳐 설계 4주차
게임샐러드에서 자주 사용되는 기능 중 하나가 timer behavior이다.

일반적으로 해당 scene이 플레이 되면 해당 scene의 actor는 정해진 규칙에 따라 즉시 실행하게 된다.

하지만 timer를 통해 조건과 시간에 따라 시간을 설정할 수 있다.


*every : 매 시간 반복해서 실행한다. 
*after : 정해진 시간 이후 실행한다.
*for : 정해진 시간 동안 실행한다.
**Run to Completion : 만약 조건의 시간이 'after'와 'for'의 옵션일 경우, 주어진 규칙을 수행 후 완료한다. 

예제4) Timer

1. actor를 생성하여 scene에 위치.
2. actor editor에서 timer container 추가
3. timer > constrain attribute 추가
4. constrain attribute : self.rotation,  to : self.rotation + 10

**이상의 조건을 규정한 후 every / after / for 그리고 Run to completion을 체크 및 해제로 결과를 확인할 수 있다.


Move




actor 또는 scene을 지정된 방향으로 이동 시킨다. move type은 additive, stacked로 additive는 중복된

방향이동이 적용되는 반면, stacked는 마지막 이동 지시 방향으로만 움직인다.

예를 들면 additive로 right와 up의 이동을 설정한 후 right와 up을 동시에 누르면 해당 방향의 대각선으로

이동하는 반면, stacked는 right와 up 중 최종적으로 누른 방향 1곳으로만 이동한다.




Move to




지정된 X와 Y 좌표 방향으로 이동한다. "run to completion"을 선택하게 되면 한번만 해당 방향의 컨트롤을

지시하면 지정된 좌표까지 이동 후 멈추지만 해제하게 되면 계속해서 추가 컨트롤을 하지 않는 이상 actor는

이동을 멈춘다. 다시 이야기하면 이동 키를 한번 누르고 목표지점까지 이동을 시키느냐 계속해서 이동 키를

눌러 줘야 되느냐를 선택 한다.





Accelerate




지정된 방향(direction)으로 actor 또는 scene을 정의한 가속도(acceleration)로 이동 시킨다.

rule behavior 내에서 키보드, 터치 등의 이벤트와 함께 자주 사용된다.

만약 rule behavior와 컨트롤 이벤트가 아닌 독립적인 행동 정의로 사용이 되면 최고 스피드까지 계속해서

이동할 수 있다.




Accelerate Toward




지정된 정확한 X와 Y의 위치 방향으로 정의된 가속도 값으로 이동 한다.

Accelerate와 마찬가지로 rule과 컨트롤 이벤트가 없으면 최고 스피드까지 계속해서 왕복 이동을 한다.


예제 5) HP 값 설정

게임스트럭쳐 설계 5주차
boolean : true / false 를 나타내는 자료형. (선택 시 true, 해제 시 false)
text : 텍스트 값. (각 개체의 name, tag 등을 정의할 때 사용)
integer : 양과 음의 정수 값으로 정의.
real : 소수점이 가능한 양과 음의 십진수로 정의.
angle : 0~ 359 사이의 양의 정수로 정의. 
index : 0과 같거나 큰 양의 정수로 정의.
예제5) Text Box change-Change Image
Button
Button을 누르면 텍스트박스가 바뀐다.
'+'키를 눌러 추가
예제6) control camera
Actor를 touch pressed일 경우 Actor의 색을 Red로 바꾸고, touch released일 경우 Actor의 색을 Green으로 바꾸는 방법
behavior는 Rule에 주어진 모든 조건을 만족할 경우(When All conditions are valid) 다음의 조건을 실행하고 그렇지 않을 경우(otherwise) 주어진 다른 조건을 실행하라는 내용입니다.
pressed일 경우 Actor의 Color Red의 값을 1로 변경하고, Green의 값을 0, Blue의 값을 0으로 변경한다.

만약, touch pressed가 아닐경우(otherwise), Actor의 Color Red의 값을 0, Green의 값을 1, Blue의 값을 0으로 변경한다.
예제7) JUMP
예제8) PATICO
man
점수표시
점수표시
예제9) mini 슈팅게임
예제10) Rolling ball 게임
Full transcript