비주얼노벨 강좌

*본 글은 커니스의 연구소에서 배포할 때 기본값으로 설정되어있던 대체 명령어를 기반으로 합니다.



 #영상 설명


 처음은 쓰레드에 있는 대기 명령어를 활성화 했을 때의 장면입니다. 문제의 명령어가 있는 장면이 나타나기 전까지는 아무 일 없다가 쓰레드에 대기 명령어가 나타나자 그 이후 메뉴에서 문제가 발생하는 것을 볼 수 있습니다. 나타나는 현상은 다음과 같습니다.


 ------

 1. 회상 창의 CLOSE버튼이 정상적으로 작동하지 않음. 마우스 오른쪽을 클릭해야 종료됨.

 2. 세이브, 로드, 옵션 창이 켜지자마자 바로 종료됨.

 3. '대사' 명령어 뒤에 고양이 모양 진행표는 출력됨.

 ------


 다음은 쓰레드에 있는 대기 명령어를 주석처리 하여 쓰레드에 대기가 없을 때의 모습을 보여줍니다. 보시다시피, 세이브, 로드, 옵션 창이 정상적으로 나타나고 종료되는 것과 메세지로그의 close 버튼이 정상적으로 작동합니다. 다만 이때 대사 명령어 뒤에 나오는 고양이 모양 진행표는 나오지 않습니다.


 #추측 1

 우선 1번과 똑같은 현상을 일으키는 다른 원인은 버튼대기, 또는 대기 명령이 두 번 쓰였을 때입니다. 하지만 이 각각의 경우는 조금씩 다릅니다. 그 이유는 대기 명령어와 버튼대기 명령어의 미묘한 차이 때문입니다. 우선 아래의 예시를 보며 알아보도록 하겠습니다.


예--------------------------------------------------------

1-1. 대기 - 버튼대기

캡처222.PNG

 이 경우 CLOSE 버튼을 누르기 전에 다른 부분 한 번 클릭했다가 CLOSE 버튼을 누르면 정상작동하는 것을 알 수 있습니다. CLOSE 버튼을 먼저 누르면 제대로 종료되지 않고요.


1-2. 버튼대기 - 버튼대기

캡처223.PNG

 이 경우 CLOSE 버튼이 제대로 작동하게 하는 방법은 없습니다.

 

1-3. 버튼대기 - 대기

캡처224.PNG

 이 경우 버튼을 한 번 누르고 화면 어디든 다시 한 번 클릭하면 정상적으로 종료되는 것을 알 수 있습니다.

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

 아까 위에서 이 차이가 발생하는 게 대기 명령어와 버튼대기 명령어의 미묘한 차이때문이라고 했었는데요, 이 미묘한 차이란 '대기'는 어디든 클릭(혹은 버튼 입력)만 있으면 다음 명령어로 넘어가는 반면, '버튼대기' 명령어는 버튼이 눌러질 때까지 다음으로 넘어가지 않기 때문입니다. 


 그렇다면 1번 현상은 어디에 가까울까요?


 실험을 통해 살펴본 결과 1-2번과 비슷하다는 결론을 얻었습니다. 이를 통해 추론할 수 있는 것은 다음과 같습니다.


## 1번 현상 가정

 1-가 : 버튼대기가 두 번 이상 반복된다.

 1-나 : 대기 명령어가 무한 반복된다.


 #추측 2

 반면 2 현상은 1번과는 다릅니다. 2 번 현상을 일으키는 다른 방법은 버튼대기를 없애는 것입니다. 

캡처225.PNG


  ## 2번 현상 가정

 어떤 것에 의해 버튼대기 명령어가 제대로 작동하고 있지 않다.


 # 쓰레드에 '대기'명령어를 넣는 생각을 한 이유.

 이것은 3 번과 관련있다. 대사 명령어 뒤에 나오는 고양이 모양 진행표(위 영상참조)를 나오게 하기 위해서는 대사 명령어가 있은 후 대기 명령어가 있어야 한다.

 그런데 쓰레드 안에 '대기' 명령어가 없으니 이 진행표가 나오지 않아서 대기를 한 번 더 넣을 생각을 했습니다. 이때 이렇게 해도 두 번 누르지 않아도 다음으로 넘어가지기에 별 문제 없는 것 같았습니다만, 메뉴 이용에 문제가 생기므로, 사용하지 않는 것을 권장합니다. 특히 그 장면 뿐 아니라 그 이후로 계속 메뉴 사용에 문제가 있으므로, 한 문장의 진행표를 희생하는 것이 좋다고 생각합니다.

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/         

 

 


List of Articles
분류 제목 글쓴이 날짜 조회 수
Ren'Py 렌파이 관련 유용한 링크 모음 3 file 습작 2012.12.02 17640
Nekonovel 네코노벨 관련 유용한 링크 모음 1 file 습작 2012.11.19 11978
Neko:기타 쓰레드에 '대기' 명령어를 넣었을 때 나타날 수 있는 현상 file 하늘바라KSND 2014.11.27 1030
Neko:응용 네코노벨 미니게임 관련 스크립트-글라스 스노우 하늘바라KSND 2013.06.27 3367
Neko:기초 네코노벨 무작정 따라하기 - 2편 : 로고만들기 9 file 습작 2012.12.21 6147
Neko:기초 네코노벨 무작정 따라하기 - 1편 : 둘러보기 2 file 습작 2012.12.08 12613
Neko:Lua 마인크래프트에서 루아언어를 써 Boa요! 2 철쭉 2012.07.21 4183
Neko:Lua Lua for Windows 1 루아마당 2010.08.08 5556
Neko:Lua LUA 란 무엇인가? 6 루아마당 2010.08.08 7229
Neko:Lua 루아의 메모리 관리 방식 루아마당 2010.08.08 5472
Neko:Lua 루아 스크립트를 1 무뇌인 2010.04.20 5924
Neko:Lua 비쥬얼 C++에 루아 연동시키기- file Saber 2010.01.02 7983
Neko:Lua 좀비서바이벌 1.11b 버전 Lua 스크립트 16 판져중위 2009.11.30 9285
Neko:Lua 루아에 잘못 알고계신분이 있는거 같아서 몇줄 적습니다. 16 코르뉴 2009.09.25 8088
Neko:Lua 루아가뭔가요 10 영웅 2009.09.24 6181
Neko:Lua 루아스크립트란 무엇인가? 9 행운 2009.06.11 8452
Neko:Lua 루아가 뭐죠? 11 sooe 2009.06.09 7212
Neko:Lua 루아에 대하여 궁금한점 18 아하!잘봤어요. 2009.05.04 7154
Neko:Lua 루아의 재미있는 기능! 15 엠피군 2009.01.18 7681
Neko:Lua 루아 스크립트 기초 강좌 2부 5 백호 2009.01.12 7760
Neko:Lua 루아 스크립트 기초 강좌 1부 6 백호 2009.01.12 13633
Neko:Lua Lua 시작 [펌] 6 나뚜루 2009.01.10 7437
Board Pagination Prev 1 2 Next
/ 2