การพัฒนาเกม

คำถาม & คำตอบสำหรับนักพัฒนาเกมมืออาชีพและเป็นอิสระ

17
ฉันจะจัดการโครงการเกมอดิเรกได้อย่างมีประสิทธิภาพได้อย่างไร [ปิด]
คุณมีเคล็ดลับและกลวิธีที่จะประสบความสำเร็จในการทำโปรเจ็กต์เกมอดิเรกในเวลาว่างของคุณหรือไม่? คุณจะกระตุ้นให้ตัวเองทำอย่างไรเพื่อให้ทันและขับรถผ่านไปจนจบโดยไม่สูญเสียความสนใจหรือแรงจูงใจไปพร้อมกัน?


28
เกมที่ดีในการ“ รับปีกของคุณ” คืออะไร? [ปิด]
ฉันเชื่อว่าในการที่จะเป็นนักพัฒนาเกมที่ดีคุณต้องสร้างเกม จากมุมมองของโปรแกรมเมอร์เกมระดับเริ่มต้นที่ดีสำหรับมือของคุณสกปรกคืออะไร? แต่ละเกมเหล่านี้สอนทักษะและความท้าทายอะไรให้คุณ?

14
ฉันจะหาชุดสีที่เหมาะสมสำหรับผู้เล่น 10 คนได้อย่างไร
ฉันต้องการให้สีที่ไม่ซ้ำใครในการระบุผู้เล่น 10 คน มีชุดสีที่เหมาะสมสำหรับสิ่งนี้หรือไม่? ฉันจะสร้างได้อย่างไร ทุกชุดที่ฉันคิดขึ้นมามีสีต่าง ๆ ที่คล้ายคลึงกันมากเกินไป อัปเดต: ฉันถูกถามด้านล่างสิ่งนี้มีไว้สำหรับ (คำถามที่เป็นธรรม) ตอนนี้ฉันสามารถบอกคุณได้ - Windwardopolisและสีใช้งานได้ดี

30
บล็อกการพัฒนาเกม [ปิด]
บล็อกการพัฒนา / ออกแบบเกมที่ดีควรติดตามคืออะไร? โปรดหนึ่งบล็อกต่อคำตอบ (ตรวจสอบให้แน่ใจว่ามีลิงก์ ) และสรุปโดยย่อเกี่ยวกับเนื้อหาของการโพสต์บล็อก หากเป็นไปได้ให้เลือกบทความเดียวที่แสดงมูลค่าสูงและแบ่งปันตัวอย่างของบทความนั้น
265 game-design  assets  blog 

11
ฉันควรใช้ขั้นตอนเวลาแบบคงที่หรือแบบแปรผันเมื่อใด
ลูปเกมควรเป็นไปตามขั้นตอนเวลาคงที่หรือแปรผันหรือไม่? เป็นหนึ่งที่เหนือกว่าเสมอหรือตัวเลือกที่เหมาะสมแตกต่างกันไปตามเกม? ขั้นตอนเวลาผันแปร การอัปเดตทางฟิสิกส์จะถูกส่งผ่านอาร์กิวเมนต์ "เวลาที่ผ่านไปนับตั้งแต่การอัปเดตครั้งล่าสุด" และขึ้นอยู่กับอัตราเฟรม position += distancePerSecond * timeElapsedซึ่งอาจหมายถึงทำคำนวณเป็น จุดเด่น : ราบรื่นและง่ายต่อการเขียนโค้ดจุด ด้อย : ไม่สามารถกำหนดค่าได้คาดเดาไม่ได้ในขั้นตอนเล็กหรือใหญ่ ตัวอย่างdeWiTTERS : while( game_is_running ) { prev_frame_tick = curr_frame_tick; curr_frame_tick = GetTickCount(); update( curr_frame_tick - prev_frame_tick ); render(); } ขั้นตอนเวลาคงที่ การอัปเดตอาจไม่ยอมรับ "เวลาที่ผ่านไป" เนื่องจากจะถือว่าการอัปเดตแต่ละรายการเป็นช่วงเวลาที่แน่นอน การคำนวณอาจทำได้position += distancePerUpdateดังนี้ ตัวอย่างมีการแก้ไขระหว่างการเรนเดอร์ จุดเด่น : สามารถคาดการณ์ได้กำหนดขึ้น (ซิงค์เครือข่ายง่ายกว่า) รหัสการคำนวณที่ชัดเจนจุด ด้อย …

30
วิธีป้องกันกลุ่มอาการ“ เจ๋งเกินกว่าจะใช้” [ปิด]
เมื่อคุณมอบไอเท็มที่หายาก แต่ทรงพลังซึ่งสามารถใช้ได้เพียงครั้งเดียว แต่ไม่จำเป็นต้องดำเนินการต่อไปผู้เล่นส่วนใหญ่จะไม่ใช้เลยเพราะพวกเขากำลังรอช่วงเวลาที่สมบูรณ์แบบ แต่ถึงแม้เมื่อช่วงเวลานี้มาถึงพวกเขาจะยังลังเลที่จะใช้เพราะอาจมีช่วงเวลาที่ดีขึ้นในภายหลัง ดังนั้นพวกเขาจึงหมกกันอยู่ครู่หนึ่งซึ่งจะไม่มา ในตอนท้ายพวกเขาจะนำไอเท็มไปรอบ ๆ จนกว่ามันจะถูกแย่งชิงโดยแหล่งข้อมูลอื่นแหล่งข้อมูลที่หาได้ง่ายกว่าหรือจนกว่าจะจบเกม นั่นหมายความว่าไอเท็มที่ถ่ายได้ครั้งเดียวนั้นไม่มีคุณค่าในการเล่นเลย พวกเขาเป็นเพียงน่ากลัวเกินไปที่จะใช้ คุณสามารถทำอะไรได้บ้างเพื่อกระตุ้นให้ผู้เล่นใช้ประโยชน์จากไอเท็ม one-shot ของพวกเขาและไม่สะสมไว้

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

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

30
คุณจะป้องกันเงินเฟ้อในเศรษฐกิจเสมือนได้อย่างไร
ด้วย MMORPG ทั่วไปของคุณผู้เล่นสามารถทำฟาร์มทั่วโลกเพื่อวัตถุดิบเป็นหลักได้ตลอดไป โดยทั่วไปแล้วสัตว์ประหลาด / หลอดเลือดดำแร่ / ฯลฯ มักจะอยู่ในช่วงเวลาของการเกิดใหม่ดังนั้นเมื่อเวลาผ่านไปจะไม่มีวิธีที่ดีในการ จำกัด จำนวนสกุลเงินใหม่ที่เข้าสู่ระบบ ที่จริง ๆ แล้วทิ้งเงิน sinks เพื่อพยายามนำเงินออกจากระบบเท่านั้น มีกลยุทธ์อะไรบ้างที่จะป้องกันภาวะเงินเฟ้อของสกุลเงินในเกม?
185 game-design  mmo  economy 

1
อะไรคือบทบาทของ“ ระบบ” ในสถาปัตยกรรมเอนทิตีที่อิงองค์ประกอบ
ฉันได้อ่านเกี่ยวกับองค์ประกอบและระบบเอนทิตีและได้คิดว่าความคิดของเอนทิตีที่เพิ่งเป็น ID นั้นค่อนข้างน่าสนใจ อย่างไรก็ตามฉันไม่ทราบวิธีการทำงานอย่างสมบูรณ์กับองค์ประกอบด้านหรือด้านระบบ ส่วนประกอบเป็นเพียงวัตถุข้อมูลที่จัดการโดยระบบที่เกี่ยวข้อง ระบบการชนใช้ BoundsComponent ร่วมกับโครงสร้างข้อมูลเชิงพื้นที่เพื่อพิจารณาว่ามีการชนกันหรือไม่ ดีมากจนถึงตอนนี้ แต่ถ้าระบบหลาย ๆ ระบบต้องการเข้าถึงส่วนประกอบเดียวกัน ข้อมูลควรอยู่ที่ไหน ระบบอินพุตสามารถแก้ไขเอนทิตี BoundsComponent แต่ระบบฟิสิกส์ต้องการการเข้าถึงองค์ประกอบเดียวกันเช่นเดียวกับระบบการเรนเดอร์บางระบบ นอกจากนี้นิติบุคคลจะสร้างอย่างไร ข้อดีอย่างหนึ่งที่ฉันได้อ่านมามากคือความยืดหยุ่นในการสร้างเอนทิตี ระบบเชื่อมโยงกับส่วนประกอบอย่างแท้จริงหรือไม่? หากฉันต้องการแนะนำส่วนประกอบใหม่บางอย่างฉันต้องแนะนำระบบใหม่หรือแก้ไขส่วนประกอบที่มีอยู่ด้วยหรือไม่? อีกสิ่งที่ฉันได้อ่านบ่อยๆก็คือ 'ประเภท' ของเอนทิตีถูกอนุมานด้วยส่วนประกอบที่มันมี หากเอนทิตีของฉันเป็นเพียง ID ฉันจะรู้ได้อย่างไรว่าเอนทิตีโรบ็อตของฉันต้องถูกย้ายหรือเรนเดอร์และทำการแก้ไขโดยระบบบางระบบ ขออภัยสำหรับการโพสต์ยาว (หรืออย่างน้อยก็ดูเหมือนจากหน้าจอโทรศัพท์ของฉัน)!

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

16
ผู้เขียนเกมทุกคนควรรู้คณิตศาสตร์ [ปิด]
คำถามง่ายๆพอ: โปรแกรมเมอร์เกมทุกคนควรมีความเข้าใจอย่างถ่องแท้เพื่อให้ประสบความสำเร็จ ฉันไม่ได้พูดถึงการแสดงผลคณิตศาสตร์หรืออะไรในพื้นที่เฉพาะของการเขียนโปรแกรมเกมโดยเฉพาะอย่างยิ่งสิ่งต่าง ๆ ที่แม้แต่ผู้เขียนโปรแกรมเกมควรรู้และถ้าพวกเขาไม่คิดว่ามันจะมีประโยชน์ หมายเหตุ:เนื่องจากไม่มีคำตอบที่ถูกต้องคำถามนี้ (และคำตอบ) คือวิกิชุมชน นอกจากนี้ถ้าคุณอยากสมการทางคณิตศาสตร์น้ำยางแฟนซีรู้สึกอิสระที่จะใช้http://mathurl.com/

18
ผู้พัฒนาเกมอินดี้ไม่ควรทำอะไร [ปิด]
อะไรคือสิ่งที่ยิ่งใหญ่ที่สุด - และดีกว่า: ร้ายกาจและไม่คาดฝัน - ความผิดพลาดที่นักพัฒนาเกมทำขึ้นมา? โดยเฉพาะอย่างยิ่งเมื่อทำการเปลี่ยนจาก hobbyist เป็นอินดี้เต็มเวลา

8
เหตุใด MVC & TDD จึงไม่ได้ใช้งานสถาปัตยกรรมเกมมากขึ้น? [ปิด]
ฉันจะนำหน้าสิ่งนี้โดยบอกว่าฉันไม่ได้ดูแหล่งเกมเป็นจำนวนมากหรือไม่ได้สร้างในแบบของเกม แต่มาจากการพยายามใช้วิธีการเข้ารหัส 'องค์กร' ในเว็บแอปดูที่ซอร์สโค้ดของเกมทำให้เจ็บอย่างรุนแรง: "มุมมองนี้ทำอะไรกับตรรกะทางธุรกิจหรือไม่นี่จำเป็นต้องมีการปรับโครงสร้างใหม่ ... " สิ่งนี้ทำให้ฉันกังวลขณะที่ฉันกำลังจะเริ่มโครงการเกมและฉันไม่แน่ใจว่าพยายาม mvc / tdd กระบวนการ dev จะขัดขวางเราหรือช่วยเราเพราะฉันไม่เห็นตัวอย่างเกมมากมายที่ใช้สิ่งนี้ หรือผลักดันให้มีการปฏิบัติงานสถาปัตยกรรมที่ดีขึ้นในชุมชน ต่อไปนี้เป็นสารสกัดจากบทความที่ยอดเยี่ยมเกี่ยวกับเกมต้นแบบแต่สำหรับฉันแล้วดูเหมือนว่าทัศนคติที่ผู้พัฒนาเกมส่วนใหญ่ใช้ในการเขียนรหัสเกม ความผิดพลาด # 4: การสร้างระบบไม่ใช่เกม ... หากคุณพบว่าตัวเองกำลังทำงานบางอย่างที่ไม่ได้เดินหน้าต่อไปให้หยุดตรงนั้น ในฐานะโปรแกรมเมอร์เรามีแนวโน้มที่จะพยายามทำให้รหัสของเราเป็นแบบทั่วไปและทำให้มันดูสง่างามและสามารถรับมือกับทุกสถานการณ์ได้ เราพบว่าคันอย่างหนักไม่เกา แต่เราต้องเรียนรู้วิธี ฉันใช้เวลาหลายปีกว่าจะรู้ตัวว่ามันไม่เกี่ยวกับรหัส แต่มันเกี่ยวกับเกมที่คุณจัดส่งในตอนท้าย อย่าเขียนระบบองค์ประกอบของเกมที่หรูหราข้ามตัวแก้ไขไปอย่างสมบูรณ์และทำให้สถานะเป็นรหัสไม่ติดขัดหลีกเลี่ยงการใช้ข้อมูลการแยกวิเคราะห์ตัวเองความบ้าคลั่งของ XML และโค้ดสิ่งที่ถูกสาป ... รับของบนหน้าจอให้เร็วที่สุดเท่าที่จะทำได้ และไม่เคยใช้อาร์กิวเมนต์ "ถ้าเราใช้เวลาเพิ่มเติมและทำสิ่งนี้ในวิธีที่ถูกต้องเราสามารถนำมันกลับมาใช้ใหม่ได้ในเกม" EVER เป็นเพราะเกม (ส่วนใหญ่) มีการมุ่งเน้นการมองเห็นดังนั้นจึงสมเหตุสมผลว่าโค้ดจะถูกถ่วงน้ำหนักอย่างหนักในมุมมองดังนั้นประโยชน์ใด ๆ จากการเคลื่อนย้ายสิ่งของออกไปยังตัวแบบ / คอนโทรลเลอร์นั้นค่อนข้างน้อยดังนั้นทำไมต้องกังวล? ฉันได้ยินข้อโต้แย้งว่า MVC แนะนำค่าใช้จ่ายด้านประสิทธิภาพ แต่ดูเหมือนว่าฉันจะเพิ่มประสิทธิภาพก่อนวัยอันควรและมีประเด็นปัญหาด้านประสิทธิภาพที่สำคัญกว่าที่จะแก้ไขก่อนที่คุณจะกังวลเกี่ยวกับค่าใช้จ่าย MVC (เช่นเรนเดอร์ไลน์ การข้ามผ่าน ฯลฯ …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.