LV. 24
GP 1k

【心得】RMMV – 利用簡單腳本讓圖片自然淡入

樓主 粽子 enchnater000
GP17 BP-
各位好,我是Maker製造機的粽子

這一篇是在製作眼中的世界結局畫面時所用到的小技巧。
最終效果是讓圖片淡入淡出。但可以簡化事件且做出自然的效果。
前情提要:
一般來說使用內建功能做淡出淡入,我們最常使用到的就是
顯示圖片1 xxxx 不透明度 255;
移動圖片1 xxx   不透明度 xxx
顯示圖片2 xxxx 不透明度 255;
移動圖片2xxx   不透明度 xxx


但在要大量使用淡出淡入時,這種做法在做微調時相對困難且複雜。但如果利用公用事件+變數來製作。就可以快速達到效果。

先來上一下實做效果影片



. 接下來就分享一下如何簡化事件做出這種效果。
. 首先我們會需要幾個變數來協助我們操作,變數id 可以自由更換。這邊說明下範例中的變數功能
  1. 變數9 : 設定顯示圖片的名稱
  2. 變數17 : 紀錄目前圖片的透明度
  3. 變數75 : 顯示圖片的ID(編輯器中的「數目」)
  4. 變數76 : 顯示圖片的x 座標
  5. 變數77 : 顯示圖片的y 座標
再來看一下地圖中的事件設置
@第一行的顯示圖片請無視,拍圖時忘記砍掉orz

      這張事件就是實際在地圖上的事件,在此簡略說明用途

  1. 利用變數9 設定 「我想顯示的圖片名稱」,也就是在picture底下的圖片檔案名稱
  2. 利用變數75設置了圖片的ID,也就是編輯器中「顯示圖片」功能的「數目」
    (第2點看不懂請直接開編輯器,選顯示圖片就會懂了!)
  3. 利用變數76 設置了圖片的座標x = -300
  4. 呼叫淡入公用事件
  5. 呼叫淡出公用事件
地圖上的事件大致上看完之後,接著看到「淡入公用事件」的設置
圖片的註解都有說明變數的功能,這邊就簡單說一下整個運作的邏輯。
第一行先將透明的設定為 0,確保圖片是從看不到的狀況下開始淡入

首先使用「迴圈」 來包住整個腳本,當透明度 >= 255 時(代表圖片完全顯示了),結束迴圈。
接著是迴圈中腳本的事情,簡單說就是將所有設定好的變數套用到「顯示圖片」的功能裡。

而控制透明度的速度則是由腳本中的 opa + 2 來控制,並且每次改變就將透明度記錄到變數17中
如果你想要淡入速度更快,就把 opa + 2 改成 +3 或+5。速度控制的部分就請作者們自己玩玩看


接下來「淡出圖片」公用事件的設置如下圖
基本上就是淡入的反向設置,只要判斷透明度為 0的時候就斷開迴圈,差別是我們不用先設置變數17(透明度)為0,不管他
現在透明度是多少,我只要確保圖片看不見時斷開迴圈就可以了。

  • 小結
    這次的分享最重要的其實是「模組化」的概念,可以避免每次想淡出淡入就要弄一堆重複的事件。在事件維護上也相對簡單。
    如果使用這個方法你只要做以下幾步驟就可以完成淡入淡出圖片。

  1. 將變數N設定為要顯示的圖片名稱
  2. 將變數N設定圖片的ID(數目)
  3. 將變數N設定圖片的x / y
  4. 呼叫淡入公用事件
  5. 呼叫淡出公用事件
    
     以上,希望各位喜歡這次的分享!


     如果你想更瞭解腳本為什麼這樣寫的話,也歡迎參考腳本說明
17
-
未登入的勇者,要加入討論嗎?
板務人員:

2685 筆精華,前天 更新
一個月內新增 4
歡迎加入共同維護。


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】