ในรายละเอียดงานฉันมักจะเห็นตำแหน่งที่เรียกว่า "Gameplay Programmer" ผู้คนในตำแหน่งนั้นทำอะไร
ในรายละเอียดงานฉันมักจะเห็นตำแหน่งที่เรียกว่า "Gameplay Programmer" ผู้คนในตำแหน่งนั้นทำอะไร
คำตอบ:
เมื่อ บริษัท ต่างๆพูดถึงการว่าจ้างโปรแกรมเมอร์เกมสิ่งที่พวกเขากำลังพูดถึงคือโปรแกรมเมอร์ที่จะรับผิดชอบรหัสที่สัมผัสโดยตรงกับประสบการณ์เกม นั่นคือโปรแกรมเมอร์จะต้องรับผิดชอบในการสร้างเกมจริงแทนที่จะเป็นกลไกหรือระบบเกมที่ใหญ่กว่า แต่นอกเหนือจากนั้นสิ่งต่าง ๆ มากมาย:
บริษัท บางแห่งคาดว่าโปรแกรมเมอร์เกมเพลย์จะใช้อินเทอร์เฟซผู้ใช้ บางคนทำไม่ได้ บริษัท บางแห่งคาดหวังให้พวกเขาใช้รหัส AI แต่บาง บริษัท ก็ไม่ทำเช่นนั้น บางคนคาดว่าพวกเขาจะใช้รหัสเสียง แต่บางคนก็ไม่คิด ความจริงแล้ว "การเล่นเกม" ในโปรแกรมการเล่นเกมนั้นเป็นสิ่งที่น่าจดจำสำหรับ "ทุกสิ่งที่เราไม่ได้ว่าจ้างผู้เชี่ยวชาญมาทำ" ดังนั้นโปรแกรมเมอร์เหล่านี้จำเป็นต้องมีความหลากหลายมากและจำเป็นต้องเรียนรู้สาขาใหม่อย่างรวดเร็ว
ฉันใช้เวลาเกือบสิบห้าปีในการเป็นโปรแกรมเมอร์เกมในอุตสาหกรรมการค้าในห้า บริษัท ที่แตกต่างกัน
ประสบการณ์ของฉันคือในบาง บริษัทโปรแกรมเมอร์เกมถือเป็นตำแหน่งระดับต้นหรือระดับเริ่มต้น โปรแกรมเมอร์ที่ทำงานในเกมแต่ละเกมเท่านั้นไม่จำเป็นต้องมีความซับซ้อนเท่ากับผู้ที่ทำงานบนระบบที่ต้องการสนับสนุนเกมต่าง ๆ มากมายพร้อมกันในแบบที่นักเขียนโปรแกรมต้องการ ใน บริษัท ประเภทนี้ถ้าโปรแกรมเมอร์เกมทำได้ดีจริง ๆ เขาอาจได้รับการเลื่อนตำแหน่งให้เป็นทีมเครื่องยนต์สักวันหนึ่งถ้าเขาสามารถพิสูจน์คุณค่าของเขาได้ หรือเขาอาจกลายเป็นผู้เชี่ยวชาญหากเขาแสดงความถนัดในบางพื้นที่
ใน บริษัท อื่น ๆโปรแกรมเมอร์เกมถือเป็นตำแหน่งระดับกลาง โปรแกรมเมอร์ที่ทำงานกับเกมแต่ละเกมจำเป็นต้องมีประสบการณ์ที่มีประโยชน์และน่าเชื่อถือ โปรแกรมเมอร์ที่ไม่มีประสบการณ์อาจได้รับงานที่ไม่พึงประสงค์เพื่อตัดฟัน (ท่อข้อมูลเครื่องมือ ฯลฯ ) และในที่สุดก็ได้รับอนุญาตให้เลื่อนขึ้นเป็นงาน "gameplay programmer" ในระบบประเภทนี้โปรแกรมเมอร์เกมเพลย์ที่ทำผลงานได้ค่อนข้างดีอาจย้ายเข้ามามีบทบาทเป็นผู้นำโครงการหรืออื่น ๆ ในทีมเครื่องยนต์
ใน บริษัท อื่น ๆ ผู้เขียนโปรแกรมการเล่นเกมถือเป็นตำแหน่งอาวุโสและเป็นตำแหน่งครึ่งการออกแบบเช่นกัน โปรแกรมเมอร์เหล่านี้คาดว่าจะยอดเยี่ยมโปรแกรมเมอร์ที่ผ่านการพิสูจน์แล้ว แต่ยังมีความอ่อนไหวและคุณสมบัติในการออกแบบที่แข็งแกร่งเนื่องจากพวกเขากำลังสัมผัสรหัสโดยตรงที่ส่งผลกระทบอย่างมากต่อประสบการณ์ของผู้เล่นกับเกม ในระบบประเภทนี้โปรแกรมเมอร์เกมดีจริง ๆ น่าจะยังคงเป็นโปรแกรมเมอร์เกมตลอดไป - ซึ่งถือว่าเป็นตำแหน่งที่มีค่าที่สุดซึ่งเขาสามารถเติมได้
ตามกฎทั่วไปของหัวแม่มือยิ่งดีกว่าเกมของ บริษัท ยิ่งตำแหน่งที่สูงกว่าพวกเขาคิดว่าโปรแกรมเมอร์เกมเพลย์จะ (และดังนั้นยิ่งยากที่จะลงจอดงานจริง ๆ )
ฉันมักจะช่วยอธิบายตัวอย่างด้วย
โปรแกรมเมอร์เกมเพลย์จะได้รับงานตามสาย: ใช้ระบบการต่อสู้ระยะประชิดใช้กลไกฟื้นฟูสุขภาพหรือใช้การควบคุมการกระโดดของผู้เล่น
โปรแกรมเมอร์ด้านเครื่องมือ (สิ่งที่คุณเรียกคนที่ไม่ใช่นักเขียนโปรแกรมการเล่นเกมโดยเฉพาะ) จะได้รับงานตามสายของ: ใช้แสงที่เลื่อนออกไปหรือระบบภาพเคลื่อนไหวหรือเลเยอร์เครือข่าย
ความแตกต่างที่สำคัญคือสิ่งที่ 'ลูกค้า' คือใคร สำหรับโปรแกรมเมอร์เกมเพลย์มันเป็นทีมออกแบบ - งานของพวกเขาคือทำให้การออกแบบเป็นจริง สำหรับโปรแกรมเมอร์เครื่องยนต์จึงมักเขียนโปรแกรมอื่น ๆ โปรแกรมเมอร์โปรแกรมสร้างเทคโนโลยีและระบบที่โปรแกรมเมอร์เกมและผู้สร้างเนื้อหาสามารถใช้เพื่อตระหนักถึงการออกแบบ
โปรแกรมเมอร์เขียนโค้ดซึ่งส่วนใหญ่เป็นผู้ไม่เชื่อเรื่องเกม - เทคโนโลยีเดียวกันสามารถใช้ในหลาย ๆ เกมได้ โปรแกรมเมอร์ Gameplay มักจะเขียนโค้ดที่เฉพาะเจาะจงกับเกมที่กำลังทำอยู่ และมีการทับซ้อนกันอยู่เสมอ - บางครั้งเพื่อใช้งานการเล่นเกมที่คุณต้องการรหัสเครื่องยนต์ใหม่
การเข้ารหัสการเล่นเกมไม่ได้ยากกว่าหรือง่ายกว่าการเขียนโปรแกรม อย่างไรก็ตามเป็นชุดทักษะที่แตกต่างกันเล็กน้อย คุณมักจะต้องมีความคิดสร้างสรรค์มากขึ้นและสามารถที่จะbodgeการแก้ปัญหา เป้าหมายของคุณคือไม่สร้างระบบ re-usable ที่สมบูรณ์แบบ (เหมาะสำหรับ engine engine) แต่เพื่อสร้างการใช้งานเกมที่ดีที่สุด ดังนั้นสิ่งที่สามารถเป็นสินทรัพย์ในการเขียนโปรแกรมเครื่องยนต์ (การใส่ใจในรายละเอียดและโครงสร้างที่ได้รับการออกแบบมาอย่างดี) อาจเป็นอุปสรรคในการเขียนโปรแกรมการเล่นเกม (ซึ่งการปรับตัวและเวลาการทำซ้ำมีความสำคัญมากกว่า) โปรแกรมเมอร์รูปแบบการเล่นเกมที่ดีรู้ดีว่าจะต้องทำเมื่อไหร่ (เมื่อการออกแบบนั้นมั่นคงและรหัสจะถูกใช้ในหลาย ๆ ที่) และเมื่อใดที่จะต้องทำอย่างรวดเร็ว (เมื่อการออกแบบยังคงทำงานอยู่และรหัสของคุณมีโอกาสดี ถูกทิ้งเมื่อทดสอบ)
โปรแกรมเมอร์เกมเพลย์ส่วนใหญ่ต้องสามารถทำงานร่วมกับทีมออกแบบในระดับที่โปรแกรมเมอร์โปรแกรมทำไม่ได้ นอกเหนือจากทักษะการสื่อสารที่ชัดเจนนั่นหมายความว่าคุณต้องคุ้นเคยกับการออกแบบเกมอื่น ๆ มากกว่าที่โปรแกรมเมอร์โปรแกรมทำดังนั้นเมื่อนักออกแบบบอกว่า "ทำให้มันทำงานเหมือน Zelda" คุณรู้ว่าพวกเขากำลังพูดถึงอะไร
ในการเรียนรู้ที่จะเป็นโปรแกรมเมอร์เครื่องยนต์คุณต้องเรียนรู้เกี่ยวกับเทคโนโลยีและเรียนรู้วิธีการทำงานของมันและใช้เวอร์ชันของคุณเอง เกมดังกล่าวจะเป็นเวทีที่จะแสดงเทคโนโลยี
ในการเรียนรู้ที่จะเป็นโปรแกรมเมอร์เกมคุณจะต้องใช้เอนจิ้นของคนอื่นและใช้มันในรูปแบบที่แตกต่างกันมากที่สุดเท่าที่จะทำได้ ในคำอื่น ๆ ถ้าคุณต้องการที่จะเป็นโปรแกรมเมอร์เพลย์ทำให้เกมไม่เทคโนโลยี
โปรแกรมเมอร์ที่ใช้และบำรุงรักษากลไกการเล่นเกม
http://en.wikipedia.org/wiki/Game_programmer#Gameplay_programmer