การพัฒนาเกม

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

4
ฉันควรเรียนรู้การพัฒนาเกม 2d ก่อน 3d หรือไม่? [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน3 ปีที่ผ่านมา ฉันเป็นผู้พัฒนาแอพ iPhone ฉันต้องการเล่นเกม iOS คำถามคือ - ฉันควรเริ่มต้นด้วยการเรียนรู้ 2D เช่น Cocos 2D หรือ Corona SDK ก่อนเรียนรู้การเล่นเกม 3D เช่น Unity หรือไม่ ฉันสนใจเกม 3D มากขึ้น แต่คุณคิดว่าการรู้เกม 2D เป็นข้อกำหนดเบื้องต้นสำหรับการเรียนรู้การพัฒนา 3D หรือไม่?
14 2d  3d  ios 

2
นี่เป็นสถาปัตยกรรมที่เหมาะสมสำหรับเกมบนมือถือ MMORPG ของเราหรือไม่
ทุกวันนี้ฉันพยายามออกแบบสถาปัตยกรรมของเกม MMORPG บนมือถือใหม่สำหรับ บริษัท ของฉัน เกมนี้คล้ายกับ Mafia Wars, iMobsters หรือ RISK แนวคิดพื้นฐานคือการเตรียมกองทัพให้พร้อมเพื่อต่อสู้กับคู่ต่อสู้ของคุณ (ผู้ใช้ออนไลน์) แม้ว่าก่อนหน้านี้ฉันเคยทำงานกับแอพมือถือหลายตัว แต่นี่เป็นสิ่งใหม่สำหรับฉัน หลังจากการต่อสู้อย่างหนักฉันได้พบกับสถาปัตยกรรมที่แสดงด้วยความช่วยเหลือของแผนภาพการไหลระดับสูง: เราตัดสินใจที่จะไปกับรูปแบบไคลเอนต์ - เซิร์ฟเวอร์ จะมีฐานข้อมูลส่วนกลางบนเซิร์ฟเวอร์ ลูกค้าแต่ละรายจะมีฐานข้อมูลท้องถิ่นของตัวเองซึ่งจะยังคงซิงค์กับเซิร์ฟเวอร์ ฐานข้อมูลนี้ทำหน้าที่เป็นแคชสำหรับจัดเก็บสิ่งต่าง ๆ ที่ไม่เปลี่ยนแปลงบ่อยครั้งเช่นแผนที่ผลิตภัณฑ์สินค้าคงคลังเป็นต้น ด้วยรุ่นนี้ฉันไม่แน่ใจว่าจะแก้ไขปัญหาต่อไปนี้ได้อย่างไร: อะไรจะเป็นวิธีที่ดีที่สุดในการซิงโครไนซ์เซิร์ฟเวอร์และฐานข้อมูลลูกค้า เหตุการณ์ควรถูกบันทึกลงในฐานข้อมูลท้องถิ่นก่อนที่จะอัปเดตไปยังเซิร์ฟเวอร์หรือไม่ ถ้าแอพยุติลงด้วยเหตุผลบางอย่างก่อนที่จะบันทึกการเปลี่ยนแปลงในฐานข้อมูลส่วนกลาง คำร้องขอ HTTP แบบง่ายจะมีจุดประสงค์ในการซิงโครไนซ์หรือไม่ จะทราบได้อย่างไรว่าผู้ใช้คนใดที่เข้าสู่ระบบอยู่ในปัจจุบัน? (วิธีหนึ่งอาจให้ไคลเอนต์ส่งคำขอไปยังเซิร์ฟเวอร์หลังจากทุก ๆ x นาทีเพื่อแจ้งว่ามีการใช้งานอยู่มิฉะนั้นให้ถือว่าไคลเอ็นต์ไม่ทำงาน) การตรวจสอบด้านลูกค้าเพียงพอหรือไม่ หากไม่มีวิธีการคืนค่าการกระทำหากเซิร์ฟเวอร์ไม่ได้ตรวจสอบบางอย่าง? ฉันไม่แน่ใจว่านี่เป็นวิธีแก้ปัญหาที่มีประสิทธิภาพหรือไม่ ฉันจะขอบคุณมาก ๆ ถ้าคนที่ทำงานในแอพนั้นสามารถแบ่งปันประสบการณ์ซึ่งอาจช่วยให้ฉันได้เจอสิ่งที่ดีกว่า ขอบคุณล่วงหน้า. ข้อมูลเพิ่มเติม: ฝั่งไคลเอ็นต์ถูกนำไปใช้ในเอ็นจิ้นเกม C ++ ที่เรียกว่ามาร์มาเลด นี่คือเอ็นจิ้นเกมข้ามแพลตฟอร์มซึ่งหมายความว่าคุณสามารถเรียกใช้แอพของคุณในระบบปฏิบัติการมือถือที่สำคัญทั้งหมด เราสามารถบรรลุเธรดได้อย่างแน่นอนและยังแสดงให้เห็นในแผนภาพการไหลของฉัน …

4
การป้องกันหอคอยแบบ 2 มิติ - กระสุนใส่ศัตรู
ฉันกำลังพยายามหาวิธีแก้ปัญหาที่ดีสำหรับกระสุนเพื่อตีศัตรู เกมดังกล่าวเป็นการป้องกันหอคอยแบบ 2 มิติหอคอยควรจะยิงเป็นกระสุนและโจมตีศัตรูที่รับประกัน ฉันลองวิธีแก้ปัญหานี้ - http://blog.wolfire.com/2009/07/linear-algebra-for-game-developers-part-1/ ลิงค์ที่กล่าวถึงเพื่อลบต้นกำเนิดของกระสุนและศัตรูเช่นกัน (การลบเวกเตอร์) ฉันพยายามที่ แต่กระสุนเพียงแค่ติดตามรอบศัตรู float diffX = enemy.position.x - position.x; float diffY = enemy.position.y - position.y; velocity.x = diffX; velocity.y = diffY; position.add(velocity.x * deltaTime, velocity.y * deltaTime); ฉันคุ้นเคยกับเวกเตอร์ แต่ไม่แน่ใจว่าต้องดำเนินการขั้นตอนใด (การดำเนินการคณิตศาสตร์เวกเตอร์) เพื่อให้โซลูชันนี้ทำงานได้

1
คุณจะเพิ่มอุปกรณ์ไปยังตัวละครแบบ 3D โดยใช้ XNA / Blender ได้อย่างไร
ฉันเคยดูแบบฝึกหัด Blender มาบ้างแล้ว แต่ฉันยังไม่เห็นตัวอย่างของการสลับรุ่นย่อย ดังนั้นคำถามของฉันคือคุณจะสลับอุปกรณ์ในรูปแบบตัวละครได้อย่างไร โดยเฉพาะฉันต้องการที่จะสามารถเพิ่ม / แลกเปลี่ยนเสื้อผ้าและรายการที่จัดทำโดยตัวละครใน XNA ในทางกลับกันไอเท็มจะเป็นไปตามโครงสร้างกระดูกของโมเดลตัวละคร ตัวอย่างเช่น; เริ่มต้นด้วยตัวละครเปลือยใน XNA ฉันต้องการให้ตัวละครถือขวานและสวมเชนเมล์ที่ตามหลังภาพเคลื่อนไหวของตัวละคร ฉันต้องการที่จะสามารถเปลี่ยนอุปกรณ์นี้เป็นดาบและแผ่นจดหมายได้ตลอดเวลาในระหว่างเกม ฉันไม่ต้องการสร้างแบบจำลองสำหรับชุดอุปกรณ์แต่ละชุด มีวิธีการเพียงแค่เพิ่มกระดูก (พูดกระดูกดาบ) และตาข่ายของแบบจำลองหนึ่งไปยังกระดูกรุ่นอื่น (พูดกระดูกข้างขวา) หรือไม่? ขอบคุณ ...
14 xna-4.0  blender 

2
วิธีการได้รับผลลัพธ์ที่แม่นยำด้วยอัลกอริทึมของ Painter
ไม่นานมานี้ฉันถามว่าจะกำหนดได้อย่างไรเมื่อใบหน้าซ้อนทับกัน คำแนะนำคือการใช้บัฟเฟอร์ Z อย่างไรก็ตามฉันไม่สามารถใช้บัฟเฟอร์ Z ในโครงการปัจจุบันของฉันได้ดังนั้นฉันจึงต้องการใช้อัลกอริทึมของ Painter ฉันไม่มีเงื่อนงำที่ดีเหมือนเมื่อพื้นผิวอยู่ข้างหลังหรือข้างหน้าอีกแม้ว่า ฉันได้ลองวิธีการมากมาย แต่พวกเขาทั้งหมดล้มเหลวในกรณีขอบหรือพวกเขาล้มเหลวแม้ในกรณีทั่วไป นี่คือรายการวิธีการเรียงลำดับที่ฉันได้ลองไปแล้ว: ระยะทางถึงจุดกึ่งกลางของแต่ละหน้า ระยะทางเฉลี่ยของแต่ละจุดยอดของใบหน้า ค่าเฉลี่ย z ของแต่ละจุดยอด ค่าสูงสุดของจุดยอดของแต่ละหน้าและวาดอันดับแรก ค่า z ต่ำสุดของจุดยอดของแต่ละหน้าและวาดสุดท้าย ปัญหาคือใบหน้าอาจมีระยะใกล้กว่า แต่ก็ยังอยู่ไกลออกไป วิธีการทั้งหมดนี้ดูไม่น่าเชื่อถือ แก้ไข:ตัวอย่างเช่นในภาพต่อไปนี้พื้นผิวที่มีจุดสีน้ำเงินเป็นจุดกึ่งกลางจะถูกทาสีเหนือพื้นผิวที่มีจุดสีแดงเป็นจุดกึ่งกลางเนื่องจากจุดสีน้ำเงินอยู่ใกล้กว่า อย่างไรก็ตามนี่เป็นเพราะพื้นผิวของจุดสีแดงมีขนาดใหญ่กว่าและจุดกึ่งกลางอยู่ไกลออกไป พื้นผิวที่มีจุดสีแดงควรทาสีเหนือจุดสีน้ำเงินเนื่องจากอยู่ใกล้มากขึ้นในขณะที่ระยะกึ่งกลางบอกว่าตรงกันข้าม อะไรคือสิ่งที่ใช้ในอัลกอริทึมของ Painter เพื่อกำหนดลำดับของวัตถุที่ควรวาด
14 3d  algorithm  objects  face 

1
ข้อดีและข้อเสียของ Voronoi ป่นปี้คืออะไร
ผมเคยเห็นบาง Voronoi วิดีโอป่นปี้ใน Youtube ประสบการณ์ของคุณกับมันคืออะไร? อะไรคือข้อดีและข้อเสียในความซับซ้อนของเวลาความซับซ้อนของทรัพยากรความยากในการใช้งาน ... มันจำลองว่าวัสดุจริงจะตอบสนองอย่างไร
14 algorithm 

3
XNA และ C # เทียบกับหน่วยประมวลผลกลางของ 360
หลังจากที่ได้อ่านคำพูดนี้ฉันรู้สึกว่ามันน่าจะถูก (เพราะ Xenon และ CELL BE นั้นมีความไวสูงต่อการแตกแขนงและโค้ดที่ไม่รู้แคช ) แต่ฉันได้ยินมาว่าผู้คนกำลังเล่นเกมกับ C # เช่นกัน ดังนั้นมันเป็นความจริงหรือที่เป็นไปไม่ได้ที่จะทำสิ่งใดกับ XNA อย่างมืออาชีพหรือโปสเตอร์หายไปสิ่งที่ทำให้ XNA นั้นเป็น killer API สำหรับการพัฒนาเกม โดยมืออาชีพฉันไม่ได้หมายถึงในแง่ที่ว่าคุณสามารถสร้างรายได้จากมัน แต่ในแง่ที่ว่าเกมระดับมืออาชีพมากขึ้นมีรูปแบบ phsyics และระบบภาพเคลื่อนไหวที่ดูเหมือนจะไม่สามารถเข้าถึงภาษาได้ด้วยอุปสรรคที่ชัดเจนสำหรับอินทริน . ถ้าฉันต้องการเขียนระบบการชนหรือเครื่องยนต์พลศาสตร์ของไหลสำหรับเกมของฉันฉันไม่รู้สึกว่า C # ให้โอกาสฉันทำเช่นนั้นในฐานะตัวสร้างโค้ดรันไทม์และการขาดความสามารถในการทำงาน อย่างไรก็ตามคนจำนวนมากดูเหมือนจะทำงานได้ดีภายใต้ข้อ จำกัด เหล่านี้ทำให้เกมที่ประสบความสำเร็จ แต่ดูเหมือนจะหลีกเลี่ยงปัญหาใด ๆ โดยการละเลย ฉันไม่ได้สังเกตเห็นเกม XNA ใด ๆ ที่ทำอะไรที่ซับซ้อนมากกว่าสิ่งที่ห้องสมุดให้ไว้แล้ว คือการหลีกเลี่ยงการเปลี่ยนแปลงเกมที่ซับซ้อนมากขึ้นเพราะเต๋นี้ข้อ จำกัด ของ C #หรือคนก็มุ่งเน้นที่การได้รับมันทำ ? ในความซื่อสัตย์ทั้งหมดฉันไม่อยากจะเชื่อว่าสงคราม AI สามารถรักษา AI …
14 xna  c# 

4
ฉันจะไปหาศิลปินกราฟิกเกมได้ที่ไหน [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ที่ไหนดีในการโพสต์เพื่อค้นหาศิลปินเกมที่ยอดเยี่ยมเพื่อสร้าง sprite 32 บิตจำนวนเล็กน้อย นี่เป็นเฟรมเวิร์กสงครามรหัสภายในเพื่อให้ทำงานได้น้อยที่สุด - อาจใช้เวลาสองสามชั่วโมง คำแนะนำใด ๆ ที่ฉันควรโพสต์เพื่อหาคนทำ
14 sprites 

4
HTML5 และ Canvas นั้นดีสำหรับการสร้างต้นแบบเกมอย่างรวดเร็วหรือไม่? [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงอภิปรายโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน6 ปีที่ผ่านมา มีเฟรมเวิร์กและกระบวนการสำหรับ HTMl5 ที่สามารถใช้สำหรับการสร้างต้นแบบเกม 2 มิติได้อย่างรวดเร็วหรือไม่?

6
ห้องสมุด SIMD C ++ [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน2 ปีที่ผ่านมา ในอดีตฉันเคยใช้ Visual Studio กับห้องสมุดคณิตศาสตร์ DirectX XNA ตอนนี้ฉันใช้คอมไพเลอร์ GNU ใครสามารถให้คำแนะนำห้องสมุดคณิตศาสตร์ SIMD ด้วยเอกสารที่ดี?
14 c++  mathematics  simd 

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

4
จะโหลดโมเดล 3 มิติลงใน Java ได้อย่างไร
การใช้ LWJGL วิธีที่ง่ายที่สุดในการโหลดแบบจำลอง 3 มิติที่จะวาดลงบนหน้าจอคืออะไร? ฉันรู้ว่า LWJGL ไม่ได้รองรับการโหลดในตัวดังนั้นฉันกำลังมองหาไลบรารี่ขนาดเล็กที่จะช่วยโหลดไฟล์. blend โดยเฉพาะ
14 3d  java  3d-meshes  blender  lwjgl 

4
RTS Game AI Thread
ฉันมีโครงการเพื่อสร้างเกมกลยุทธ์แบบเรียลไทม์ตั้งแต่เริ่มต้น ฉันยังอยู่ในช่วงเริ่มต้นของการวางแผน แต่ฉันได้เขียนโปรแกรมเล็กน้อยเพื่อดูกลไก ฉันรู้วิธีการเขียนโปรแกรม ฉันยังมีความคิดที่ดีว่าฉันจะจัดโครงสร้างคลาสเกมและ AI แบบ Rule-Based (state-machine) สำหรับเครื่องเล่นคอมพิวเตอร์อย่างไร ฉันต้องการที่จะพัฒนาหลักคำสอนซึ่งจะให้พฤติกรรมที่เฉพาะเจาะจงกับหน่วยงานที่เฉพาะเจาะจง (แต่สามารถนำมาใช้ในหลาย ๆ หน่วยในเวลาเดียวกัน) เช่น Scout, Follow the Mission Route, ดำรงตำแหน่ง (โจมตีศัตรูที่อนุมัติหรือถอยหากจม) ฯลฯ หลักคำสอนจะใช้กับหน่วยเท่านั้นจึงจะมีมุมมองของหน่วยและไม่ทราบเกี่ยวกับการจัดทำแผนที่ทั้งหมด Computer AI จะวิเคราะห์แผนที่ที่มองเห็นได้ทั้งหมดและตัดสินใจว่า Soctrine ใดที่จะกำหนดแต่ละหน่วยขึ้นอยู่กับกฎชุดอื่น ฉันกำลังทำสิ่งนี้ใน C # กับ OpenGL สำหรับตอนนี้ฉันมีไม่มากมีเพียงไม่กี่อย่างเท่านั้นในการทดสอบก่อนที่ฉันจะเริ่มต้นความคิดหลักของฉัน ฉันมีวนรอบเกมที่การประมวลผลเกมทั้งหมด (ที่ฉันจะเรียกว่าการปรับปรุงการต่อสู้การเรนเดอร์การแสดงผลและอื่น ๆ หลังจากนั้น) จะเกิดขึ้นมันจะถูกเรียกบ่อยมากถ้าแอปพลิเคชันเหตุการณ์ ตอนนี้ฉันก็สงสัย เนื่องจากจะมีหลายสิ่งหลายอย่างที่ต้องดำเนินการใน gameloop Computer AI และหน่วยงานควรเลือกการกระทำของพวกเขาในลูปนั้นหรือช้าเกินไป? ถ้าฉันต้องการให้ทุกสิ่งพร้อมกันฉันควรสร้างเธรดแยกต่างหากสำหรับคอมพิวเตอร์ AI หรือไม่ หรือแม้กระทั่งด้ายแยกสำหรับทุกหน่วย? …
14 c#  ai  multithreading 

3
อัลกอริธึมการกระจัดกลาง
คำถามนี้ส่วนใหญ่มาจากความสิ้นหวังที่แท้จริงหลังจากใช้เวลาหลายชั่วโมงพยายามที่จะเข้าใจปัญหา หากคุณละสายตาไปที่รูปภาพด้านบนคุณจะเห็นว่าอัลกอริทึมการแทนที่ตำแหน่งกลางของฉันทำงานได้สำเร็จ ในการผลิตรูปแบบเสียงค่อนข้างสอดคล้องกัน อย่างไรก็ตามมันทิ้งไว้ข้างหลังจุดประสีดำบนภาพและฉันก็ไม่รู้ว่าทำไม ฉันคาดการณ์ได้ว่านี่เป็นปัญหาในวิชาคณิตศาสตร์ แต่ฉันมองไม่เห็น และนี่ไม่ได้ชี้ให้เห็นในแหล่งข้อมูลออนไลน์ใด ๆ ว่าเป็นปัญหาที่เป็นไปได้; ดังนั้นความช่วยเหลือใด ๆ จะได้รับการชื่นชมว่าจะตามล่าข้อผิดพลาดนี้ unsigned char** mdp(unsigned char** base, unsigned base_n, unsigned char r) { size_t n = (2 * base_n) - 1; unsigned char** map = new unsigned char*[n]; for (unsigned i = 0; i < n; ++i) map[i] = new …

2
เมื่อใดที่จะใช้อาร์เรย์จุดสุดยอดและเมื่อใดที่จะใช้ VBO
ฉันพยายามเรียนรู้เกี่ยวกับอาร์เรย์จุดยอดและวัตถุบัฟเฟอร์จุดสุดยอดแต่ฉันไม่เข้าใจความแตกต่างในแง่ของ: กรณีใช้งาน (เรขาคณิตคงที่เช่นภูมิประเทศเรขาคณิตที่เปลี่ยนแปลงทุกเฟรมเช่นระบบอนุภาค ฯลฯ ) ประสิทธิภาพ พกพาได้ (การ์ดกราฟิกเก่าคอนโซลอุปกรณ์เช่น Android หรือ iPhone ฯลฯ ) ชี้แจงบ้างไหม?
14 opengl 

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