MV 플러그인

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

플러그인 소개

웨이브 필터 플러그인은 대상 그래픽에 사인파를 형성하여 매 프레임 울렁거리는 효과를 만듭니다.  

모든 픽셀에 사인파를 형성해야 하므로 하드웨어 가속을 받기 위해 WebGL의 GLSL 셰이더를 사용합니다.

 

구동 동영상 : https://youtu.be/srKpu7k7yfA


적용 방법

 

스프라이트 : 

스트라이트 객체를 생성한 후에 wave 속성을 true 로 설정하면 스프라이트에 Wave 효과가 적용되고 false 로 하면 Wave 효과가 꺼지게 됩니다.

 

1
2
3
4
5
6
7
8
// 스프라이트 생성
var bitmap = ImageManager.loadSvEnemy('Death');
var sprite = new Sprite(bitmap);
SceneManager._scene.addChild(sprite);
 
 
// 웨이브 활성화
sprite.wave = true;
cs

 

그림: 

그림 표시 후 웨이브 효과를 적용하려면 다음과 같은 명령을 사용하세요.

 

 PictureWave Start picture_id wave_speed wave_amp

- picture_id : 그림 ID

- wave_speed : 웨이브의 속도. 0이면 멈추고, 1이면 가장 빠릅니다. 기본값은 0.25 입니다.

- wave_amp : 웨이브 진폭. 값이 커질 수록 파동이 크기 때문에 값이 크면 이미지를 알아보기 힘들어질 수 있습니다. 마찬가지로, 0 ~ 1 사이의 값이며 기본값은 0.05 입니다.

 

 PictureWave Stop picture_id

 

- picture_id : 그림 ID

 

타일맵 : 

맵(동영상 2와 같은 효과) 웨이브 효과는 아래와 같이 6 종류의 플러그인 커맨드를 지원합니다.

 

웨이브 효과를 활성화 하거나 비활성화 합니다.

 

 Tilemap_Wave Enable

 Tilemap_Wave Disable

 

웨이브의 속도를 x로 설정합니다. 기본값은 0.25 입니다. 

 

 

 Tilemap_Wave waveSpeed x

 

웨이브의 진폭을 설정합니다. x 는 0 과 1 사이의 부동 소수점이 와야 하고 기본값은 0.02 입니다.

 

 Tilemap_Wave waveFrequency x

 

UVSpeed 는 직접적인 속도입니다만 기본값은 0.25(1/4) 입니다.

 

 Tilemap_Wave UVSpeed x

 

이벤트 노트 태그 : 

이벤트 그래픽에 노트 태그를 사용하여 웨이브 효과를 적용할 수 있습니다.

 

활성화 및 비활성화 명령은 다음과 같습니다.

 

<WAVE true>

<WAVE false>

 

다음은 웨이브 효과의 속성을 다루는 노트 태그입니다

 

<WAVE_AMP x>

<WAVE_SPEED x>

 

x는 실수 값입니다. 부동 소수점이라고 하는데, 0~1 사이의 값입니다. 

 

AMP는 진폭을 뜻하고, 기본 값은 0.02 입니다. 

 

SPEED는 UV의 속도를 뜻합니다. 

기본 값은 0.25 (=1프레임이 진행되는 속도의 1/4의 속도) 입니다.

 

웨이브 필터는 진폭, 주기 파장을 결정하여 모든 픽셀에 사인파를 형성하는 것입니다.

 

최대 진폭은 waveFrequency에 의해 결정됩니다.

주기는 프레임 값에 UV 속도를 곱한 값이며, 

파장은 이미지 높이 / 4 픽셀입니다.

 

사인파는 그래픽 내 모든 픽셀에 적용됩니다.

 

전투 배경 이미지 노트 태그 :

 

 노트 태그 :

 

 맵 속성의 메모 란에 다음 노트 태그를 작성하면 배경 이미지가 울렁거리게 됩니다.

 

         <BATTLEBACK_WAVE : x y>

 

이때 미지수 x y의 값은 각각 진폭과 스피드를 뜻합니다. 

예를 들면 다음과 같습니다.

 

     <BATTLEBACK_WAVE : 0.02 0.25>

 

함수 :

 

얀플라이님의 액션 시퀀스 팩 1을 사용하고 있으시다면, 함수를 사용하여 필터를 활성화 할 수도 있습니다.

이 함수는 Spriteset_Battle의 포인터를 가지고 있기 때문에 사용하기 쉽습니다.

 

eval: $gameTemp.setBattleBackWaveEffect(cond, waveAmp, waveSpeed);

 

       - cond : 웨이브 필터 사용 여부를 true 또는 false로 지정하세요

       - waveAmp : 웨이브의 진폭으로 기본값은 0.02

       - waveSpeed : 웨이브의 속도 값으로 기본값은 0.25

 

업데이트

2016.01.14 (v1.0.0) - First Release.

2016.01.16 (v1.0.1) - 웨이브 필터 해제 기능이 추가되었습니다 (false 로 필터 해제 가능)

2016.01.18 (v1.1.0)- 플러그인 커맨드를 추가했습니다.

2016.01.22 (v1.2.0) - 세이브 & 로드 버그 픽스

2016.02.16 (v1.3.0) - 메뉴를 켰다가 다시 맵으로 돌아오면 웨이브가 적용이 되지 않는 버그 픽스

2016.02.26 (v1.3.1) - 기본 padding 값을 지정하여 잘림 현상을 수정했습니다.

2016.03.03 (v1.3.2) - 스프라이트 객체에 새로운 속성 4개를 추가하였습니다. 

2016.08.17 (v1.4.0) - 1.3.0 지원

2016.08.18 (v1.5.0) - 셰이더 타일맵 지원

2016.10.20 (v1.5.1) - RMMV 1.3.2에서 동작하지 않는 문제 수정

2016.11.10 (v1.5.2) - Orange Overlay plugin에서 동작하지 않는 문제 수정

2016.11.18 (v1.5.3) - Orange Overlay plugin 사용 시, 원본 타일맵이 추가로 렌더링되면서 겹쳐지는 문제 수정

2016.11.26 (v1.5.4) - 텍스처 사용 후 필요 없게 되었을 때 메모리에서 제거하는 코드 추가

2016.11.30 (v1.5.5) - 필터 영역 안에 검정색 선이 생기는 문제 수정

2017.12.10 (v1.5.6) - PictureWave 플러그인 커맨드를 추가하였습니다 (1.6.0 베타에서 테스트 되었습니다)

2018.04.12 (v1.5.7) - 이미지 잘림 현상 수정

2018.04.13 (v1.5.7c) - 새로운 노트 태그 추가 : 이벤트 그래픽에 웨이브 효과를 지정할 수 있습니다.

2018.04.15 (v1.5.7e) - 새로운 노트 태그 및 함수 추가 : 전투 배경에 웨이브 효과를 활성화할 수 있습니다.

2018.11.01 (v1.5.9) : 

 - PictureWave 명령이 동작하지 않는 문제를 수정하였습니다.

 - 웨이브 효과가 원경의 가로 루프 효과를 설정한 것처럼 동작하는 현상을 수정하였습니다.

2018.11.29 (v1.5.10) :

- 이벤트 일시 삭제 기능 사용 시 오류가 뜨는 문제를 수정하였습니다.

2019.02.24 (v1.5.11) :

- 웨이브 필터 플러그인 활성화 전에 저장한 세이브 파일을 로드할 때 오류가 나오지 않게 수정하였습니다.

 

다운로드 링크

https://raw.githubusercontent.com/biud436/MV/master/RS_WaveFilter.js (다른 이름으로 링크 저장)

 

Who's 러닝은빛

profile

Blog                            http://biud436.blog.me/

Blog(English)                 http://biud436.tistory.com/

MV Plugins                   https://github.com/biud436/MV   

  • profile
    러닝은빛 2016.08.18 23:51


    1.5.0 업데이트 : 셰이더 타일맵에서 사용 가능.


  • ?
    13자리난수 2019.02.24 15:20
    좋은 플러그인 감사드립니다. 그런데 저만 그런 지는 모르겠는데, 이 플러그인을 적용하기 전 세이브한 파일을 플러그인을 적용한 뒤에야 로드하려고 하면

    Type Error
    Cannot read property 'wave' of undefined

    라는 메시지가 뜨는 것 같습니다. 그래도 플러그인 적용한 상태에서 세이브한 파일은 잘 작동되니 사실 별 문제는 아니고 굳이 고치실 필요 없을 것 같긴 한데 혹시 몰라서 한 번 적어봅니다.
  • profile
    러닝은빛 2019.02.24 17:32
    수정하였습니다.
  • ?
    13자리난수 2019.02.24 18:27
    정말 감사합니다!

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 플러그인 자료 게시물 작성시 주의사항 습작 2015.10.25 515
81 이름입력 한글 이름 입력의 처리 21 updatefile 러닝은빛 2015.10.20 2277
80 그래픽 VX Ace 대화창에 있는 그림 바꾸는 법 어떡해 해야 하나요?? 1 file Noha 2019.07.07 45
79 맵/타일 미니맵 플러그인 7 file Lukey 2018.01.27 750
78 그래픽 애니메이션 바로 정지 2 러닝은빛 2019.05.07 174
77 메시지 메시지 Pause 표시 이미지 위치 변경 file 러닝은빛 2019.05.07 58
76 기타 게임 속도 조절 러닝은빛 2019.05.07 123
75 전투 적 HP 표시 플러그인 6 file 부초 2016.07.19 1840
74 기타 게임 스크린샷 파일을 만드는 플러그인 1 file 러닝은빛 2015.12.23 772
73 기타 텍스트 입력창 file 러닝은빛 2016.08.09 920
» 그래픽 Wave Filter 4 러닝은빛 2016.01.14 974
71 그래픽 대화창에 캐릭터 이미지 띄우는 방법들에는 어떤 게 있을까요? 비둘기팀장 2019.02.13 217
70 그래픽 Etude87 Icon Resize 습작 2016.02.27 605
69 전투 한글 데미지 표시 6 file 러닝은빛 2018.07.09 724
68 그래픽 Simple Light 4 file 러닝은빛 2016.02.13 1222
67 메뉴 게임종료 메뉴 추가 5 file LuD 2016.01.13 1418
66 맵/타일 동적 맵 타일 수정 플러그인 1 베지테리안카카오 2018.07.17 290
65 그래픽 Mirror Area 11 file 러닝은빛 2017.01.03 1163
64 전투 9마리 이상의 몬스터 설정 | More Enemies 1 file 러닝은빛 2018.08.31 276
63 스킬 Passive Skills Not rated(패시브 스킬 플러그인) 3 진보라 2016.09.22 952
62 그래픽 전투 배경 미 설정 시 VXA와 같은 블러 효과 적용 | Battle Background Radial Blur file 러닝은빛 2018.12.18 114
Board Pagination Prev 1 2 3 4 5 Next
/ 5