비주얼노벨 강좌

FAL.노드이름에 관해서 알아보자


서론.

 FAL.노드이름은 매우 독특하게도 그 값이 부정적(不定的)이다. 이 특성을 이용해 피니엔진을 이용해 슈팅게임을 제작하는 강좌가 두 번 올라온 적 있었다. 그러나 아쉽게도 FAL.노드이름은 지금까지 그 실체에 대해 명확하게 설명하고 있는 글이 없어서, Dana님의 도움을 받아서 불완전하게나마 FAL.노드이름에 대해 이야기해보고자 한다.


캡처159.PNG

하언님의 15분만에 똥피하기 게임을 만드는 방법(http://nooslab.com/piniengine/bbs/board.php?bo_table=TIPBoard&wr_id=106&page=2)


캡처160.PNG

PR3A님의 슈팅게임 예제(http://nooslab.com/piniengine/bbs/board.php?bo_table=TIPBoard&wr_id=90&page=2)


본론.

 FAL.노드이름은 정확히는 사용자애니메이션 매크로(http://nooslab.com/piniengine/wiki/index.php?title=Reference:custom_animation)에 포함된 변수이다. FAL.노드이름의 정확한 기능은 사용자애니메이션 매크로에서 다른 매크로를 호출했을 때, 그 매크로의 대상을 특정하기 위해서 사용자애니메이션의 대상의 아이디를 저장하는 것이다. 뭔가 상당히 복잡하게 설명했는데, 사실 아래와 같다.

=====

이미지 1 소환 -> a사용자애니메이션 실행! -> c 매크로 실행!

이미지 2 소환 -> a사용자애니메이션 실행! -> c 매크로 실행!

=====

 이런 과정이 있다고 하자. 만일 사용자애니메이션을 사용할 이미지가 A와 B 둘 뿐이라면, 조건을 사용하든, 뭐를 사용하든 사람의 손으로 값을 조정할 수 있다. 그런데 만약 셀 수 없이 많은 이미지가 등장한다면? 예들 들어 '총알'을 구현할 때 말이다. 노가다를 하려고 해도, 끝이 있어야 노가다를 하든지 말든지 할 텐데 이건 노가다를 해서는 답이 안나오는 수준이다.

=====

이미지 1 소환 -> a사용자애니메이션 실행! -> c 매크로 실행!

이미지 2 소환 -> a사용자애니메이션 실행! -> c 매크로 실행!

이미지 3 소환 -> a사용자애니메이션 실행! -> c 매크로 실행!

이미지 4 소환 -> a사용자애니메이션 실행! -> c 매크로 실행!

이미지 5 소환 -> a사용자애니메이션 실행! -> c 매크로 실행!


=====

 위와 같이 작동한다고 했을 때, 이 과정 중에서 서로를 구분할 수 있는 유일한 요소가 이미지의 아이디이다. 따라서, 사용자애니메이션에서 매크로를 호출할 때 그사용자애니메이션의 대상이 되는 이미지의 아이디를 FAL.노드이름에 저장하는 것이다.

=====

이미지 1 소환 -> a사용자애니메이션 실행! -> a사용자애니메이션의 대상을 FAL.노드이름에 저장 -> c 매크로 실행!

이미지 2 소환 -> a사용자애니메이션 실행! -> a사용자애니메이션의 대상을 FAL.노드이름에 저장 -> c 매크로 실행!

이미지 3 소환 -> a사용자애니메이션 실행! -> a사용자애니메이션의 대상을 FAL.노드이름에 저장 -> c 매크로 실행!

이미지 4 소환 -> a사용자애니메이션 실행! -> a사용자애니메이션의 대상을 FAL.노드이름에 저장 -> c 매크로 실행!

이미지 5 소환 -> a사용자애니메이션 실행! -> a사용자애니메이션의 대상을 FAL.노드이름에 저장 -> c 매크로 실행!


=====

 이 과정에서 마치 FAL.노드이름에 두 개 이상의 아이디가 저장되는 것처럼 보일 수 있는데, 그 이유는 대기 계열 매크로가 들어가지 않는 이상 매우 빠르게 처리되기 때문이다. 실제로는 한 FAL.노드이름에는 하나의 아이디만 저장되니 주의하자.


결론.

FAL.노드이름이 필요할 때는 특유의 부정성이 가장 필요한 순간, 즉 제작자도, 사용자도 정확히 알기 힘든, 혹은 너무 많아서 일일히 써넣기 힘든 것을 처리할 때이다. 그 외에 FAL은 반드시 대문자야 한다는 점과,FAL.노드이름의 최종 값은 맨 마지막에 실행된 사용자애니메이션의 대상이란 것을 기억하도록 하자.

Who's 하늘바라KSND

profile

하늘바라KSND

하늘

하늘이

늘바

바라

하바

하바케이

하바케이엔

하느님 

------------------------------

현재 하는 일 :



허걱님과 함꼐하는 하늘섬 환상세계 시나리오 작성 중.

자세한 경과는 이야기 연재란에서.

 

Lighna형과 함께하는 프로젝트, D.A 시나리오 작성 중.

프로젝트 D.A 많은 관심 부탁드려요~

http://projetda.tistory.com/

-------------------------------

 

ㅎㅎ. 안녕하세요 하늘바라 KSND 입니다. 

(96년생)

성별 : 남

사용툴 : VX

주요 활동 : 소설쓰기, 댓글, 뻘글, 글소글

 

블로그 주소 : http://hb_tjdtn.blog.me/                 

 

이전 준비 중

http://habakn.tistory.com/         

 

 

Atachment
첨부 '2'

List of Articles
분류 제목 글쓴이 날짜 조회 수
Ren'Py 렌파이 관련 유용한 링크 모음 3 file 습작 2012.12.02 17571
Nekonovel 네코노벨 관련 유용한 링크 모음 1 file 습작 2012.11.19 11944
Vasilriot 해상도 조절에 관한 간단한 고찰 2 하늘바라KSND 2013.05.18 3128
Visual Novel Maker 한글 텍스트 입력 file 러닝은빛 2017.11.21 1427
피니엔진 피니엔진 타이틀 만들기 예제(구버전) 1 file 하늘바라KSND 2015.01.27 1754
피니엔진 텍스트, 대화, 독백 명령어 하늘바라KSND 2014.12.21 1554
피니엔진 타이틀+클릭메뉴 예제 file 하늘바라KSND 2015.07.11 1091
Neko:Lua 좀비서바이벌 1.11b 버전 Lua 스크립트 16 판져중위 2009.11.30 9279
기타 제작툴 소개 : Novelty란 무엇인가? 4 file 습작 2013.05.09 4552
기타 제작툴 소개 : LiveMaker란 무엇인가? 4 file 습작 2013.05.09 8698
Vasilriot 장면 전환할 때 사용할 '장막효과'를 구현해보자. 하늘바라KSND 2013.05.09 2701
피니엔진 애니메이션-스프라이트 간단한 팁 몇가지 하늘바라KSND 2015.07.11 1279
피니엔진 안드로이드로 배포판을 만들기 위해 필요한 것들 하늘바라KSND 2014.12.20 1514
Neko:기타 쓰레드에 '대기' 명령어를 넣었을 때 나타날 수 있는 현상 file 하늘바라KSND 2014.11.27 1016
VNAP 선택지 발생 3 file FNS키리토 2015.01.11 2001
Neko:Lua 비쥬얼 C++에 루아 연동시키기- file Saber 2010.01.02 7976
기타 비주얼 노벨을 처음 제작하시는 분들께 1 file FNS키리토 2015.01.11 13753
Vasilriot 바실리어트의 최신 버전 file 하늘바라KSND 2013.05.11 3977
Vasilriot 바실리어트에서 지원하는 vr팩. 언팩이 가능할까? 하늘바라KSND 2013.05.11 2646
Vasilriot 바실리어트 스크립트 정리하기. file 하늘바라KSND 2012.11.10 3501
Vasilriot 바실리어트 사용할 때 조심해야 할 것 :: 글자수 제한(명령어 오류)(2013.05.15수정) file 하늘바라KSND 2013.05.09 2750
Vasilriot 바실리어트 버튼 사용하기 file 하늘바라KSND 2012.12.21 3160
Board Pagination Prev 1 2 3 Next
/ 3