Unity - วัสดุและ Shaders

ในบทนี้เราจะเรียนรู้เกี่ยวกับวัสดุและเฉดสีโดยสังเขป เพื่อให้เข้าใจได้ดีขึ้นเราจะสร้างไฟล์3D Projectแทนที่จะเป็น 2D ปัจจุบันของเรา สิ่งนี้จะช่วยให้เราเห็นการเปลี่ยนแปลงต่างๆ

เมื่อคุณสร้างโปรเจ็กต์ใหม่แล้วให้ไปที่ลำดับชั้นและคลิกขวาแล้วไป 3D Object → Cube. สิ่งนี้จะสร้างคิวบ์ใหม่ตรงกลางฉาก คุณสามารถมองไปรอบ ๆ ลูกบาศก์ได้โดยคลิกขวาค้างไว้แล้วลากเมาส์ใน Scene View คุณยังสามารถซูมเข้าและออกโดยใช้ล้อเลื่อน

ตอนนี้คลิกที่ลูกบาศก์และดูคุณสมบัติของมัน

คุณสมบัติด้านล่างสุดดูเหมือนจะมีวัสดุเริ่มต้นและ a Standard เงา

วัสดุคืออะไร?

ใน Unity (และในหลาย ๆ ด้านของการสร้างแบบจำลอง 3 มิติ) ก Materialคือไฟล์ที่มีข้อมูลเกี่ยวกับการจัดแสงของวัตถุด้วยวัสดุนั้น สังเกตว่าทรงกลมสีเทาหมายถึงวัสดุอย่างไรโดยมีแสงเข้ามาจากด้านบน

ตอนนี้อย่าสับสนกับชื่อ วัสดุไม่มีส่วนเกี่ยวข้องกับมวลการชนหรือแม้แต่ฟิสิกส์โดยทั่วไป วัสดุถูกใช้เพื่อกำหนดว่าแสงมีผลต่อวัตถุด้วยวัสดุนั้นอย่างไร

ให้เราพยายามสร้างวัสดุของเราเอง คลิกขวาในพื้นที่ Assets ไปที่Create → Material และตั้งชื่อให้เช่น "วัสดุของฉัน"

คุณสมบัติเหล่านี้ไม่เหมือนกับสิ่งที่เราได้ศึกษาจนถึงตอนนี้ นั่นเป็นเพราะคุณสมบัติเหล่านี้เป็นคุณสมบัติที่โปรแกรมไว้ในไฟล์shaderไม่ใช่วัสดุ

วัสดุคือสิ่งที่ทำให้วัตถุของคุณมองเห็นได้ตั้งแต่แรก ในความเป็นจริงแม้ใน 2D เราก็ใช้วัสดุพิเศษที่ไม่ต้องการแสงเช่นกัน แน่นอนว่า Unity สร้างและนำไปใช้กับทุกสิ่งสำหรับเราดังนั้นเราจึงไม่ได้สังเกตว่ามันอยู่ตรงนั้น

Shader คืออะไร?

Shader เป็นโปรแกรมที่กำหนดวิธีการ every single pixelถูกวาดบนหน้าจอ Shaders ไม่ได้ถูกตั้งโปรแกรมด้วยภาษา C # หรือแม้แต่ในภาษา OOPS เลย พวกเขาถูกตั้งโปรแกรมไว้ในไฟล์C-like ภาษาที่เรียกว่า GLSL ซึ่งสามารถให้คำสั่งโดยตรงกับ GPU เพื่อการประมวลผลที่รวดเร็ว