บทความสอนกราฟิก

 ลืมรหัสผ่าน
 ลงทะเบียน
ค้นหา
ดู: 2526|ตอบกลับ: 0

[Renpy] 15. ลูกเล่นการเปลี่ยนฉาก ด้วยคำสั่ง ImageDissolve

[คัดลอกลิงก์]

272

กระทู้

272

โพสต์

979

เครดิต

ผู้ดูแลระบบ

Rank: 9Rank: 9Rank: 9

เครดิต
979
แก้ไขครั้งสุดท้ายโดย nooknazha เมื่อ 2018-5-23 22:11

[Renpy] 15. ลูกเล่นการเปลี่ยนฉาก ด้วยคำสั่ง ImageDissolve

เป็นคำสั่งที่ใช้เทคนิคการบังภาพ เพื่อเพิ่มความน่าสนใจเวลาเปลี่ยนภาพตัวละครหรือฉากหลัง จากบทความ [renpy] ลูกเล่นเปลี่ยนฉาก(Pre-Defined Transitions ) ที่ผ่านมาเราพอจะได้รู้จักกับคำสั่งImageDissolve มาบ้างแล้วคราวนี้เราก็มารู้จักวิธีการใช้งานมันให้มากขึ้นค่ะ ^^

ฟังก์ชั่น : ImageDissolve (image, time,ramplen, reverse=False)

อธิบาย:
image
คือภาพขาว-ดำที่ต้องการนำมาบัง
time คือระยะเวลาทั้งหมดที่ใช้ในการแสดงลูกเล่นนี้(เปลี่ยนฉาก)
ramplen คือระดับความนุ่มนวลเมื่อเปลี่ยนฉาก ถ้าใส่ค่ามากจะยิ่งนิ่มนวล
reverse=False ถ้ากำหนดให้เป็นTrue จะสลับกันคือเป็นการไล่เฉดเปลี่ยนฉากใหม่โดยเริ่มจากสีดำไปหาสีขาวแทน

ตัวอย่างแบบที่1
ภาพที่จำเป็นต้องใช้  "id_circlewipe.png"  ขนาด 800*600 pt หรือเท่ากับขนาดหน้าจอเกมส์ที่เรากำหนด

id_circlewipe.png

ตัวอย่างโค๊ด:
  1. init:   
  2.     $ circlewipe = ImageDissolve("cha/id_circlewipe.png", 1.0, 8) #<---------
  3.     $ e = Character('NOOKFUFU2', color="#c8ffc8")
  4.    
  5. image bg_star = "cha/bg_star.jpg"

  6. label start:
  7.    
  8.     scene bg_star with circlewipe #<---------
  9.     e "ไง...สวัสดี!"
  10.     hide bg_star with circlewipe #<---------
  11.    
  12. return
คัดลอกไปที่คลิปบอร์ด

ผลลัพธ์ที่ได้...เวลาเปลี่ยนฉาก
ImageDissolve_01.jpg
ตัวอย่างแบบที่ 2
ภาพที่จำเป็นต้องใช้  "id_circleiris.png"  ขนาด 800*600 pt หรือเท่ากับขนาดหน้าจอเกมส์ที่เรากำหนด


id_circleiris.png
ตัวอย่างโค๊ด:
  1. init:   
  2.     $ circleirisout = ImageDissolve("cha/id_circleiris.png", 1.0, 8 )
  3.     $ e = Character('NOOKFUFU2', color="#c8ffc8")
  4.    
  5. image bg_star = "cha/bg_star.jpg"

  6. label start:
  7.    
  8.     scene bg_star with circleirisout
  9.     e "ไง...สวัสดี!"
  10.     hide bg_star with circleirisout
  11.    
  12. return
คัดลอกไปที่คลิปบอร์ด
ผลลัพธ์ที่ได้...เวลาเปลี่ยนฉาก

ImageDissolve_02.jpg

ตัวอย่างแบบที่ 3
ภาพที่จำเป็นต้องใช้  "id_dream.png"  ขนาด 800*600 pt หรือเท่ากับขนาดหน้าจอเกมส์ที่เรากำหนด
id_dream.png
ตัวอย่างโค๊ด:

  1. init:   
  2.     $ circleirisin = ImageDissolve("cha/id_dream.png", 2.0, 64 )
  3.     $ e = Character('NOOKFUFU2', color="#c8ffc8")
  4.    
  5. image bg_star = "cha/bg_star.jpg"

  6. label start:
  7.    
  8.     scene bg_star with circleirisin
  9.     e "ไง...สวัสดี!"
  10.     hide bg_star with circleirisin
  11.    
  12. return
คัดลอกไปที่คลิปบอร์ด
ผลลัพธ์ที่ได้...เวลาเปลี่ยนฉาก
ImageDissolve_03.jpg
ตัวอย่างแบบที่ 4
ภาพที่จำเป็นต้องใช้  "id_dream.png"  ขนาด 800*600 pt หรือเท่ากับขนาดหน้าจอเกมส์ที่เรากำหนด

id_teleport.png
ตัวอย่างโค๊ด:
  1. init:   
  2.     $ teleport = ImageDissolve("cha/id_teleport.png", 10, 0 )
  3.     $ e = Character('NOOKFUFU2', color="#c8ffc8")
  4.    
  5. image bg_star = "cha/bg_star.jpg"

  6. label start:
  7.    
  8.     scene bg_star with teleport
  9.     e "ไง...สวัสดี!"
  10.     hide bg_star with teleport
  11. return
คัดลอกไปที่คลิปบอร์ด
ผลลัพธ์ที่ได้...เวลาเปลี่ยนฉาก

ImageDissolve_04.jpg
ภาพที่จะนำมาใช้บัง เราจะสร้างเป็นภาพอะไรก็ได้นะค่ะ แล้วแต่ไอเดียของแต่ละคนว่าอยากจะให้ภาพตัดฉากของเราเปลี่ยนไปในลักษณะแบบไหน

บทความโดย นุ้ก
ขอจบบทความแค่เพียงเท่านี้ แล้วพบกันใหม่บทความหน้าค่ะ ^^
(ขอสงวนสิทธิ์อนุญาตให้เผยแพร่เฉพาะในเว็บ www.graphicfufu.comเท่านั้น)
ขออภัย! คุณไม่ได้รับสิทธิ์ในการดำเนินการในส่วนนี้ กรุณาเลือกอย่างใดอย่างหนึ่ง ลงชื่อเข้าใช้ | ลงทะเบียน

รายละเอียดเครดิต

ข้อความล้วน|อุปกรณ์พกพา|ประวัติการแบน|GraphicFUFU

GMT+7, 2024-3-29 22:42 , Processed in 0.106517 second(s), 21 queries .

Powered by Discuz! X3.4 R20180101, Rev.59

© 2001-2017 Comsenz Inc.

ตอบกระทู้ ขึ้นไปด้านบน ไปที่หน้ารายการกระทู้