Vertex Shader Processor คืออะไรขอท้าวความกันสักนิดกับคำว่า Vertex คืออะไร โดยทั่วไปแล้วในเกมสามมิตินั้น ในฉากแต่ละฉากที่ประกอบไปด้วยสิ่งต่างๆ ไม่ว่าจะเป็นต้นไม้ ก้อนหิน หรืออะไรทุกๆอย่างที่ปรากฎอยู่ภายในฉาก จะเกิดขึ้นจากถาพสามเหลี่ยมหลายๆภาพมารวมกันเป็นพื้นผิว และคำว่า Vertex ก็คือจุดยอดของสามเหลี่ยมแต่ละชิ้นนั่นเอง

และจุดหลายๆจุดเหล่านี้เองที่เป็นข้อมูลสำคัญให้กับคอมพิวเตอร์ โดยที่ในจุดแต่ละจุดนั้นจะมีข้อมูลของตัวเองในลักษณะตำแหน่งของตัวเอง คือจะมีข้อมูลในรูปของแนวแกน คือ X , Y , Z และ W นอกจากข้อมูลทางด้านตำแหน่งของตัวเองแล้วยังจะประกอบไปด้วยข้อมูลของสีไปอีก ด้วย เพื่อให้คอมพิวเตอร์ของเราทราบได้ว่าในแต่ละตำแหน่งของจุดนั้นประกอบไปด้วย สีอะไรบ้าง โดยที่ข้อมูลของสีนั้นก็จะถูกเก็บไว้ในรูปของ RGBA ( R= Red , G = Green , B = Blue , A = Alpha )

นอกจากข้อมูลเหล่านี้แล้วนั้น ยังจะต้องมีข้อมูลทางด้าน Texture หรือข้อมูลเกี่ยวกับพื้นผิวของแต่ละ Vertex อีกด้วยเพื่อให้ภาพสามมิติเหล่านั้นสมบูรณ์ขึ้นมาได้ ข้อมูลทางด้านพื้นผิวเหล่านี้อย่างเช่น ผิวหนังมนุษย์ ยาง สนิม เปลือกไม้เป็นต้น และเมื่อมีพื้นผิวแล้วในความเป็นจริงของพื้นผิวก็ยังต้องประกอบไปด้วยแสงเงา อีกเช่นกัน ตรงจุดนี้จะเห็นได้ว่าในแต่ละ Vextex นั้นจะประกอบไปด้วยข้อมูลมากมายที่จะต้องทำการประมวลผล เท่านั้นยังไม่พอในเกมสามมิตินั้นจะยังมีการเคลื่อนไหวของตัวละคร จึงทำให้พื้นผิวเหล่านี้เปลี่ยนไปตลอดเวลา

เราจะเรียกอาการนี้ว่า Transform ถึงเวลานี้ก็หมดหน้าที่ของ Vertex Shader Processor จากนั้นก็จะส่งข้อมูลทั้งหมดเหล่านี้ที่เกิดขึ้นไปสู่ Pixel Shader Engine ซึ่ง Pixel Shader Engine นั้นก็จะทำหน้าที่แปลงสัญญาณข้อมูลที่ได้รับมาจาก Vertex Shader ที่เดิมนั้นจะมาในรูปของข้อมูลสามมิติ X , Y , Z แต่ในความเป็นจริงแล้วนั้นจอมอนิเตอร์ของเรานั้นเป็นเพียงจอแบบสองมิติ คือมีเพียงแนงแกน X และ Y เท่านั้น

ดังนั้นหน้าที่หลักของ Pixel Shader คือการเปลี่ยนสัญญาณจาก X, Y , Z ให้มาอยู่ในรูปของ X และ Y โดยการนำข้อมูลทั้งหมดมาเรียงกันบน Pixel และทำการใส่เอกเฟกสืให้กับภาพที่ปรากฏขึ้น แต่ก่อนที่จะมีการใส่สีสันและเอกเฟกส์ให้กับภาพนั้น Pixel Shader จะต้องทำการลบข้อมูลที่ไม่จำเป็นออก คือข้อมูลที่มองไม่เห็นในขณะที่แสดงภาพจริงบนมอนิเตอร์ หรือพูดง่ายๆว่าสิ่งของที่โดนบังภายในภาพ จากนั้นก็จะนำข้อมูลเหล่านั้นมาเรียงบนระนาบใน pixel ต่างๆ แล้วใส่แสง สี พื้นผิวลงบนจุด หรือ Pixel ให้กับแต่ละจุด โดยแสงสีที่แตกต่างกันออกไปของแต่ละ Pixel ทำให้เรามองเห็นภาพที่ปรากฎจริงนั้นเป็นภาพสามมิติ ซึ่งจริงๆแล้วมันก็คือภาพเสมือนสามมิติ Virtual 3D นั่นเอง

Credit:
**Hidden Content: To see this hidden content your post count must be 1 or greater.**