Thaigraph

 

   

ค้นหา
Thaigraph หน้าฟอรั่ม Ren'Py [renpy] วิธีใส่ภาพ animation หลังตั ...
ดู: 2384|ตอบ: 2
go

[renpy] วิธีใส่ภาพ animation หลังตัวละครพูดจบ ctc

Rank: 7Rank: 7Rank: 7

โพสต์เมื่อ 8-3-2013 14:51 |แสดงโพสต์ทั้งหมด
[renpy] วิธีใส่ภาพ animation หลังตัวละครพูดจบ CTC


CTC ย่อมาจากคำว่า Click to Continue icon แปลง่ายๆมันก็คือสัญลักษณ์ที่จะแสดงขึ้นเพื่อให้เราคลิกอ่านประโยคคำพูด ประโยคต่อไปของตัวละคร ถือเป็นการเพิ่มลูกเล่นอย่างนึงให้กับกรอบสนทนาค่ะ

ตัวอย่างการทำภาพ animation ใน renpy
เนื่องจากโปรแกรม renpy จะไม่อนุญาตให้นำภาพสกุล .git ที่เคลื่อนไหวมาใช้ได้ การสร้างภาพอนิเมชั่นในโปรแกรม renpy เราจำเป็นต้องสร้างภาพที่มีลักษณะการเคลื่อนไหวต่อเนื่องกัน(อย่างน้่อย 3 ภาพ) มาบันทึกไว้เป็นสกุล .png ค่ะ

สำหรับภาพที่จะนำมาทำเป็น ctc หรือ ภาพ animation หลังคำพูดของตัวละคร เราควรออกแบบให้มีขนาดประมาณ 20*20 pt ถือว่าเป็นขนาดกำลังดีค่ะ ไม่เล็ก หรือใหญ่เกินไป (จะสร้างกี่ภาพก็ได้แล้วแต่ความขยัน แต่ส่วนใหญ่ก็สร้างไว้  3 ภาพกำลังดี)

ในกรณีที่ภาพ animation ที่เราออกแบบนั้น เราต้องการให้มันหมุนวนๆ ซ้ำๆ อยู่กับที่ เราก็ควรใช้คำสั่ง rotate จาก transform มาใช้เพื่อให้ศูนย์กลางของภาพไม่เคลื่อน (คำสั่ง Rotate และ Transform มีทั้งในโปรแกรม PS และ AI)

(ภาพที่1)(จับภาพหมุนทีละ 45 องศา)


(ภาพที่2)


(ภาพที่3)

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

โค๊ดคำสั่งที่ใช้
ให้เปิดไฟล์ script.rpy ขึ้นมาและใส่โค๊ดเพื่อประกาศชื่อตัวแปรของ "ตัวละคร" ลงไปดังนี้ค่ะ
Code:


  1. define b = Character('วัฏฏะ', color="#f8f092",
  2.          ctc = Animation("ctc_1.png", 0.25,
  3.                                  "ctc_2.png", 0.25,
  4.                                  "ctc_3.png", 0.25, ))
คัดลอกไปที่คลิปบอร์ด
หรือจะเขียนแบบนี้ก็ได้เหมือนกันค่ะ
  1. init:
  2.         $ b = Character('วัฏฏะ', color="#f8f092",
  3.           ctc = Animation("ctc_1.png", 0.25,
  4.                                  "ctc_2.png", 0.25,
  5.                                  "ctc_3.png", 0.25, ))
คัดลอกไปที่คลิปบอร์ด
***ตัวเลขด้านหลัง ( 0.25) คือระยะเวลาความเร็วต่อวินาที ที่จะให้แต่ละภาพเล่นวนซ้ำค่ะ

(ตัวอย่างการใส่โค๊ดในไฟล์ script.rpy)


ที่ label start ก็ใส่โค๊ดพูดของตัวละครตัวนั้นๆ ตามปกติ


(บันทึกไฟล์และรันเกมส์)



ในกรณีที่กำหนดให้ ตัวละครตัวนั้นๆ แสดงภาพความรู้สึกประกอบการพูดด้วย เราก็จะต้องใช้การเขียนโค๊ดอีกแบบค่ะ
Code:

  1. init:
  2.     $ p = Character('ปกิณกะ', color="#FCFC68",
  3.                what_xpos = 5,
  4.                
  5.                ctc="ctc_animation",
  6.                
  7.                show_side_image=ConditionSwitch(
  8.                     "pg == 'normal' ", "cha/dongmai_mini.png",
  9.                     "pg == 'happy' ", "cha/dongmai_mini_smile.png",
  10.                     None, Null(),
  11.                     xalign=0.01, yalign=1.01))
  12. image ctc_animation = Animation("menu/ctc_1_1.png", 0.20,
  13.                                                  "menu/ctc_1_2.png", 0.20,
  14.                                                  "menu/ctc_1_3.png", 0.20, )
คัดลอกไปที่คลิปบอร์ด
*** การใส่ภาพตัวละครประกอบคำสนทนาศึกษาเพิ่มเติมได้จากบทความนี้ค่ะ [renpy] วิธีใส่ภาพตัวละคร ประกอบคำสนทนา

(ตัวอย่างการใส่โค๊ดในไฟล์ script.rpy)



ใส่โค๊ดพูดของตัวละครตัวนั้นๆ "พร้อมภาพประกอบในกรอบ" ที่ label start


(บันทึกไฟล์และรันเกมส์)



และถ้าต้องการกำหนดตำแหน่งที่จะแสดงภาพ Animation ด้วย ก็ต้องเพิ่มโค๊ดลงไปดังนี้ค่ะ
Code:

  1. init:
  2.     $ p = Character('ปกิณกะ', color="#FCFC68",
  3.                what_xpos = 5,
  4.                
  5.                ctc="ctc_animation",ctc_position="fixed",
  6.                
  7.                show_side_image=ConditionSwitch(
  8.                     "pg == 'normal' ", "cha/dongmai_mini.png",
  9.                     "pg == 'happy' ", "cha/dongmai_mini_smile.png",
  10.                     None, Null(),
  11.                     xalign=0.01, yalign=1.01))
  12. image ctc_animation = Animation("menu/ctc_1_1.png", 0.20,
  13.                                                  "menu/ctc_1_2.png", 0.20,
  14.                                                  "menu/ctc_1_3.png", 0.20,
  15.                                                  xpos=0.85, ypos=0.95,
  16.                                                  xanchor=1.0, yanchor=1.0 )
คัดลอกไปที่คลิปบอร์ด

(ตัวอย่างการใส่โค๊ดในไฟล์ script.rpy)


(บันทึกไฟล์และรันเกมส์)


ขอให้สนุกกับการทำเกมส์นะค่ะ

บทความโดย NOOKFUFU2

(ขอสงวนสิทธิ์ให้เผยแพร่เฉพาะในเว็บไทยกราฟเท่านั้น!!!)
ไฟล์แนบ: คุณจำเป็นต้องเข้าสู่ระบบก่อนจึงจะสามารถดูและดาวน์โหลดไฟล์แนบได้ หากยังไม่มีแอคเคานต์หรือยังไม่ได้เป็นสมาชิก กรุณาสมัครสมาชิก
บางบทความคุณจำเป็นต้องสมัครสมาชิกแบบ VIP และ SUPERVIP ถึงจะเข้าอ่านบทความได้

Rank: 1

โพสต์เมื่อ 16-3-2013 23:31 |แสดงโพสต์ทั้งหมด
ข้าผู้น้อยยังต้องเรียนรู้อีกเยอะ :)  Thank you  

Rank: 2

โพสต์เมื่อ 18-3-2013 14:02 |แสดงโพสต์ทั้งหมด
ขอบคุณมากค่ะ มีอะไรที่เราไม่รู้เยอะจริงๆ
คุณต้องเข้าสู่ระบบก่อนจึงจะสามารถตอบกลับ เข้าสู่ระบบ | สมัครสมาชิก


Thaigraph

GMT+7, 23-9-2019 03:32 , Processed in 0.024888 second(s), 20 queries .

Powered by Discuz! X1.5

© 2001-2010 Comsenz Inc. Thai Language by DiscuzThai! Team.

Top 10 Best Sellers in Clothing for 2017 Top 10 Best Sellers in Clothing Best Sellers in Clothing
Top 10 Best Sellers in Books reviewer 2017 Top 10 Best Sellers in Books Best Sellers in Books