[바람wind의 강좌]초보자분들을 위한 캐릭터 만드는방법! - 6.핵심에 들어가기 이전에 알아야할 기본 상식
페이지 정보
작성자 Leona123 작성일 24-10-09 11:52 조회 717 댓글 0본문
네 돌아왓슴돠
그럼시작하죠...
<주의 : 오늘은 사진도 없는 완벽히 재미없는 진지한 애기지만 이걸알아두면 무겐을 넘어 모든 프로그래밍 언어에 적용이되는 기본을 알수있습니다. >
아그리고 늦은거 정말 죄송합니다.
시험기간도 있고 바쁘기도 해서말이죠 허허...
일단 우선 무겐은 무엇으로 만들어졋을까요
C언어 든 어셈블리어로 만들었든 무슨언어로 만들든 기본적으로 정해둔게 있습니다.
바로 제어문,이스케이프 시퀸스,변수,연산자 ... 이런것들인데요...
이스케이프문은... 딱히알필요는없습니다.
그렇다면 이제 일단 연산자 부터 배워봅시다.
======대입 연산자========
a=b : a에 b를 대입한다.
======사칙 연산자========
a+b : a 더하기 b 를한다.
a-b : a 빼기 b 를한다.
a*b : a 곱하기 b 를한다.
a/b : a 나누기 b 를한다.
a%b : a 나누기 b 를하여 나머지를 구한다
======비교 연산자========
a==b : a랑 b랑 같다
a>b : a가 b보다 크다(초과)
a<b : a가 b보다 작다(미만)
a!=b : a랑b가 같지 않다
a>=b : a는 b보다 크거나같다.(이상)
a<=b : a는 b보다 작거나 같다.(이하)
이렇게 연산자가 있는데요...
여기서 a 와 b 는 변수입니다.
여기서 잠깐 변수란?
값이정해져있지않은변하는수 를 줄여서 변수 라고 부른다고 생각하시면 편합니다.
변수에는 타입을 줄수있는데요
int, char, float, double,long 등이 기본으로 있지만 우리 무겐은 그럴필요가없습니다!
무겐은 스크립트식로 만들어졌기 때문이죠! (아마도...)
프로그래밍 언어중에 자바스크립트라는 것이 있는데 아마도 그식으로 만들어졌을겁니다.
자바 스크립트의 특징중 하나는 변수가 위에서 말한거처럼 변수의 타입을 줄필요없이 var 라고 써주시면 바로 변수 선언이됩니다.
예시를보자면...
int a;
float b;
char c;
이렇게 있다면 위에부터
숫자형변수 a 선언
실수(소수)형변수 b 선언
문자형변수 c 선언
이렇게 되는데요
하지만 자바스크립트는?
var a;
끝입니다.
하지만 조금불확실한것은 타입이 어떠한것이 될수있기때문에 오류가 날수있다는 거지만 우리는 알필요가 음슴니다.
자다시 연산자를 봅시다.
======대입 연산자========
a=b : a에 b를 대입한다.
======사칙 연산자========
a+b : a 더하기 b 를한다.
a-b : a 빼기 b 를한다.
a*b : a 곱하기 b 를한다.
a/b : a 나누기 b 를한다.
a%b : a 나누기 b 를하여 나머지를 구한다
======비교 연산자========
a==b : a랑 b랑 같다
a>b : a가 b보다 크다(초과)
a<b : a가 b보다 작다(미만)
a!=b : a랑b가 같지 않다
a>=b : a는 b보다 크거나같다.(이상)
a<=b : a는 b보다 작거나 같다.(이하)
이제 뭔가가 조금 이해되시나요?
대입 연산자는 대입만 하는 연산자이고
사칙 연산자는 사칙계산만 하는 연산자이고
비교 연산자는 비교만 하는 연산자입니다.
무겐도 마찬가지입니다.
예를들어 var선언 state를 봅시다.
[State 2710,ヒットフラグ]
Type = ParentVarSet
Trigger1 = time =0
var(10) = 1
자이제 이걸보자면...
[State 2710,ヒットフラグ]
Type = ParentVarSet //알필요없습니다. 나중에 알려드리죠 일단 대충 var선언이란것만 알고계세요
Trigger1 = time = 0 //Trigger은 조건입니다. 스테이트의 모든것은 조건이 있어야합니다. 나중에 더 설명해 드릴게요
var(10) = 1 //원래는 var 이름; 이런식으로 이름도 따로 설정가능하지만 무겐은 그렇게 하지않고 숫자 로 설정하게 한겁니다.
이런식인데요... 어렵죠...?
당연합니다. 안어려우면 당신은 머리가좋은거죠 ㅋ
수학을 적어도 중1아니면 중2까지 했다면 이해가 될겁니다. (아마도...)
근데 여기서 수학을 했다고 해도 모를만한건 비교연산자 죠
아마 이렇게 생각할겁니다
"우리는 = 이 같다 라는 식으로 배웠는데 이건대입이고 왜 == 가 같다냐!"
이대답에 저는 이렇게 설명합니다
제가 압니까?
뻥이고요
컴퓨터가 실행할때 렉을 줄이게 하기 위해서입니다.
무슨소리냐면 컴퓨터는 위에서 아래로 책읽듯이 왼쪽부터 오른쪽으로 프로그밍언어를 읽습니다.
그런데 만약 대입도 = 고 '같다'도 = 이라고 해봅시다
그러면 컴퓨터는
'어? a = b = 5 네? 그럼 a에 b를 대입하고 거기다 또 5대입인가?
아니면 a 는 b 랑 같고 b 는 5랑 같다는소리인가?
어? 그럼 b 값은뭐지?
어?!'
이런식으로 됩니다.
그렇기 때문에 ==는 같다, = 는 대입 으로 공통으로 설정한겁니다.
하지만 우리 무겐은 다릅니다.
비교연산자는 말그대로 비교를 하는연산자입니다.
맞을시 1(True) 를 내보내고 틀릴시 0(false)를 내보냅니다.
그런데 무겐처럼 정해져있는 틀안에서 정해져있는 곳에 정해져있는 것을 써야될때는 상황이조금달라지죠
그래서 trigger 가 조건인데 = 로 해도 같다 라는 식으로되는겁니다.
그리고 하나더 모르실만한것은 ! 인데요
이 ! 의 뜻은 NOT 즉, 아닐경우 를 말하는겁니다
그렇다면 != 의 뜻은 뭐겠습니다
=가 같다니까 != 는 같지 않을경우 가됩니다.
(프로그래밍에서도 !=는 같지않을경우입니다. 딱히 !== 이렇게 귀찮게하지않아도 않을경우를 대입할 필요는 없잖아요? 그래서 != 는 다른 프로그래밍 언어에서도 같지 않을경우 입니다.)
자이제 연산자 끝났네요
이제 제어문을 배워보죠
라고 할것도 없습니다.
무겐에서는 반복은 저절러 이루어집니다.
무슨소리냐면 무겐은 공격모션같은거에서 다시 기본모션으로 돌아가는 state만 없으면 계속 그자세가 반복됩니다.
그렇다면 반복문은 조건만 조절해주시면 된다는겁니다.
그렇다면 조건문은 어딧을까요?
바로 맨날보는 trigger 입니다.
솔직히 state 자체가 조건문이기 때문에 trigger 가 조건이되는겁니다.
오늘 여기까지 읽어주셔서 감사합니다!
댓글목록 0
등록된 댓글이 없습니다.