การสร้างไอเท็ม 3 มิติ - 3D MAY...
ZEPETO BuiltIn Shader
BuiltIn Shader - คำถามที่พบบ่อยเกี่ยวกับการย้ายไปใช้ URP
2 นาที
q ในสภาพแวดล้อม urp ยังสามารถใช้ custom shader (เช่น poiyomi, particle) ได้หรือไม่? a custom shader อาจไม่สามารถแสดงผลได้อย่างถูกต้องใน urp เนื่องจาก urp ใช้โมเดลการ shading และโครงสร้างการ rendering ที่แตกต่างจาก birp (built in render pipeline) โดย urp ทำงานบนพื้นฐานของ shader graph และ rendering pass มาตรฐาน (forward/universal) ขณะที่โค้ด shader ที่ซับซ้อนซึ่งใช้ใน birp (เช่น การคำนวณแสงแบบกำหนดเองของ poiyomi หรือเอฟเฟกต์พิเศษของ particle) มักจะไม่เข้ากันได้กับโครงสร้าง hlsl (high level shader language) ของ urp ดังนั้น เพื่อความเสถียรในการแสดงผล จึงขอแนะนำให้ใช้ zepeto built in shader q หลังจากเปลี่ยนไปใช้ urp แล้ว custom shader ประเภทใดบ้างที่อาจแสดงผลไม่ถูกต้อง? a shader ที่ไม่รองรับอาจแสดงเป็นสี magenta (ม่วง/ชมพู) unity จะแสดงโค้ดที่ไม่รองรับใน urp ด้วยสี magenta เป็นข้อผิดพลาด ตัวอย่างเช่น shader poiyomi ใช้โมเดลการคำนวณแสงแบบกำหนดเองใน birp เพื่อสร้างการสะท้อนและการผสมที่ซับซ้อน แต่ urp (forward/universal pass) ไม่สามารถประมวลผลได้จึงแสดงเป็นสี magenta นอกจากนี้ shader ของ particle อาจไม่ทำงานปกติ เนื่องจากโครงสร้าง particle system ของ urp และการคำนวณ alpha blending/color แตกต่างออกไป q zepeto built in shader สามารถทำงานได้ตามปกติใน urp หรือไม่? a ได้ zepeto built in shader พัฒนาโดยตรงโดย zepeto และเตรียมไว้ให้ทำงานได้ใกล้เคียงกับ birp มากที่สุดในสภาพแวดล้อม urp q ไอเทมที่วางขายอยู่ในปัจจุบันจะทำงานได้ปกติใน urp หรือไม่? a ไอเทมส่วนใหญ่ที่ขายอยู่ตอนนี้ใช้ shader ที่อ้างอิงจาก birp เนื่องจาก urp ไม่รองรับโครงสร้าง legacy shader ของ birp ไอเทมที่ใช้ custom shader อาจแสดงเป็นสี magenta หรือการแสดงผลถูกจำกัด ในขณะที่ไอเทมที่ใช้ zepeto built in shader จะสามารถทำงานได้ตามปกติผ่านเครื่องมือแปลง (conversion tool) q เมื่อเปลี่ยนไปใช้ urp ไอเทมที่มีอยู่แล้วจะถูกแปลงอัตโนมัติหรือไม่? a ไอเทมที่สร้างด้วย built in shader สามารถแปลงอัตโนมัติได้ เนื่องจากโครงสร้าง shader ถูกจัดการโดย zepeto อย่างไรก็ตาม custom shader มีโครงสร้างและโค้ดที่หลากหลาย ทำให้ยากต่อการแปลงอัตโนมัติ q แล้ว custom shader บางตัวที่ซื้อมาแบบเสียเงิน จะมีการแจ้งล่วงหน้าหรือไม่? a จะมีการกำหนดช่วงเวลาในการแก้ไขที่เพียงพอ เพื่อไม่ให้กระทบกับการทำงานของครีเอเตอร์ และยังสามารถใช้รอบแก้ไขไอเทมประจำที่มีอยู่ควบคู่ได้ q หากสร้างหรืออัปโหลด shader ขึ้นใหม่ในช่วงแก้ไข จะสามารถได้สีหรือเอฟเฟกต์เหมือนเดิมหรือไม่ a เป็นเรื่องยาก เนื่องจากโครงสร้างของ urp และ birp แตกต่างกัน urp ใช้ระบบ shading/lighting แบบ pbr (physically based rendering) ที่เป็นมาตรฐาน ขณะที่ birp อนุญาต custom pass และมีความยืดหยุ่นมากกว่า ความแตกต่างนี้ทำให้ไม่สามารถรับประกันผลลัพธ์ที่เหมือนกันได้ อย่างไรก็ตาม zepeto built in shader จะใช้ conversion tool เพื่อคงผลลัพธ์ที่ใกล้เคียงที่สุด q จะมีการรองรับแบบย้อนกลับ (backward compatibility) ให้ built in custom shader แสดงผลใน urp ได้หรือไม่? a ด้วยความหลากหลายของโครงสร้าง custom shader (เช่น การใช้แสงแบบไม่มาตรฐาน, custom pass) จึงยากที่จะทำฟีเจอร์รองรับแบบย้อนกลับ แต่ zepeto built in shader จะมี conversion tool เพื่อทำงานได้อย่างเสถียรใน urp q ปัญหาไอเทมที่ใช้ custom shader แสดงเป็นสี magenta (ชมพู) หลังเปลี่ยนไปใช้ urp จะแก้ไขได้หรือไม่? a zepeto built in shader จะมีเครื่องมือแปลงเพื่อแก้ไขปัญหานี้ อย่างไรก็ตาม custom shader มีโครงสร้างและวิธีการที่แตกต่างกัน ทำให้ไม่สามารถสร้างเครื่องมือแปลงรวมเป็นหนึ่งเดียวได้ q หากไอเทมเก่าไม่ทำงาน ทำให้ผู้ซื้อใช้งานไม่ได้ จะจัดการอย่างไร? a ไอเทมที่ใช้ built in shader จะได้รับการสนับสนุนผ่าน conversion tool เพื่อให้ทำงานได้ตามปกติ ส่วนไอเทมที่ใช้ custom shader จะมีการพิจารณาแนวทางสนับสนุนเพิ่มเติม เช่น การแปลงและวางขายใหม่ q ในการเปลี่ยนไปใช้ urp จะมีเครื่องมือแปลงและโซลูชันเสริมเพื่อรองรับหรือไม่? a ใช่ zepeto built in shader จะมาพร้อม conversion tool เฉพาะ เพื่อให้ทำงานได้อย่างเสถียรในช่วง urp migration นอกจากนี้จะมีการเตรียมโซลูชันเสริมเพื่อช่วยลดความไม่สะดวกของครีเอเตอร์ q ไอเทมเก่าที่แสดงผลไม่ถูกต้องสามารถแก้ไขและกู้คืนได้อย่างไร? จะหยุดขายหรือไม่? a ไอเทมเก่าจะไม่ถูกยกเลิกการขาย แต่สามารถแก้ไขและนำกลับมาวางขายใหม่ได้ แผนงานรายละเอียดจะแจ้งให้ทราบเมื่อเตรียมพร้อมแล้ว q การใช้ zepeto built in shader จะเป็นข้อบังคับหรือไม่? a ปัจจุบันเป็นเพียงการแนะนำ แต่ในระยะยาวเป้าหมายคือให้ทุกไอเทมใช้ built in shader การเปลี่ยนแปลงจะเป็นแบบค่อยเป็นค่อยไป โดยจะมีนโยบายและเครื่องมือช่วยเหลือเพื่อให้ครีเอเตอร์มีเวลาพอในการเตรียมตัว q จะมีการให้คำแนะนำหรือคำอธิบายเพิ่มเติมสำหรับการเปลี่ยนแปลงครั้งใหญ่เช่นนี้หรือไม่? a ใช่ เราเข้าใจดีว่าการเปลี่ยนแปลงครั้งใหญ่ต้องการคำอธิบายและการสื่อสารที่เพียงพอ การใช้ zepeto built in shader ไม่ใช่การบังคับ แต่เป็นคำแนะนำเพื่อความเสถียรและความสำคัญในการตรวจสอบ ในอนาคตจะมีการจัดทำคู่มือและเซสชันเพิ่มเติมเพื่อเสริมสร้างการสื่อสารกับครีเอเตอร์ q การใช้ built in shader จะเปลี่ยนจาก “แนะนำ” เป็น “บังคับ” หรือไม่? a ต้องขออภัยสำหรับความสับสน ปัจจุบันยังเป็นเพียงการแนะนำ แต่ในอนาคตจะเปลี่ยนเป็นข้อบังคับทีละขั้นตอน โดยจะเตรียมนโยบายและเครื่องมือที่เกี่ยวข้องเพื่อช่วยให้ครีเอเตอร์ปรับตัวได้อย่างราบรื่น q การเปลี่ยนไปใช้ urp จะกระทบกับ world ด้วยหรือไม่? จะมีประกาศแยกต่างหากหรือไม่? a ขณะนี้เราได้จัดลำดับความสำคัญในเรื่องของไอเทมก่อน ส่วนเรื่องนโยบาย world จะมีการแจ้งแยกออกไปเมื่อจัดทำเสร็จ เพื่อให้ครีเอเตอร์มีเวลาและข้อมูลที่เพียงพอในการเตรียมตัว