การพัฒนาเกม

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

1
การใช้คอนโทรลเลอร์ PS3 สำหรับการป้อนข้อมูลใน Mac OSX
ฉันจัดการค้นหาไดรเวอร์ USBเพื่อเชื่อมต่อกับคอนโทรลเลอร์ PS3 ใน OSX และตามที่ได้รายงานไว้ที่นี่สามารถเชื่อมต่อกับคอนโทรลเลอร์ผ่านทางบลูทู ธ ได้ ฉันตรวจสอบแล้วว่าอินพุตทำงานอย่างถูกต้องผ่าน Snes9x อย่างไรก็ตามนั่นเป็นเพียงพื้นหลังสำหรับคำถามที่แท้จริงของฉัน มีวิธีการเข้าถึง PS3 HID ผ่าน C ++ บน Mac หรือไม่? ฉันค่อนข้างใหม่ในการพัฒนา C ++ บน Mac โดยใช้ XCode และอินเทอร์เน็ตก็ผิดหวังในการค้นหาห้องสมุดที่จะใช้ ใครบ้างมีความคิดเกี่ยวกับวิธีที่ฉันสามารถเข้าถึงปุ่มควบคุม / แกนรัฐในรหัสเพื่อให้ฉันสามารถถ่ายโอนไปยังแผนที่อินพุตของฉันได้อย่างไร

6
จะจ้างศิลปินสไปรต์ 2D ได้ที่ไหน [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันกำลังมองหาคอลเล็กชั่นสไปรต์ 2D ต้นฉบับคุณภาพสูงซึ่งเคลื่อนไหวได้ตามความเหมาะสม (IE ไม่ได้เป็นเพียงแค่คอลเลกชันที่ฉันสามารถซื้อเราต้องการงานต้นฉบับ) ฉันดูออนไลน์แล้ว แต่กำลังพยายามหาว่าฉันสามารถจ้างคนแบบนี้ได้ที่ไหน! ฉันจะหาคนเหล่านี้ได้ที่ไหน ฉันควรคาดว่าจะจ่ายเท่าไหร่
16 sprites  hiring 

3
มีเอกสารใดบ้างที่เปรียบเทียบ / เปรียบเทียบการปรับใช้มาตรฐานไลบรารี C ++ [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน4 ปีที่แล้ว (นี่ไม่ใช่การเขียนโปรแกรมเกมต่อ แต่ฉันแน่ใจว่าฉันถามเรื่องนี้ดังนั้นฉันจะได้รับการบอกว่าจะไม่ปรับให้เหมาะสมก่อนที่จะถึงแม้ว่าประวัติศาสตร์บอกเราทุกเกมใหญ่จบลงด้วยความกังวลเกี่ยวกับสิ่งเหล่านี้.) มีเอกสารใดบ้างที่สรุปความแตกต่างของประสิทธิภาพและโดยเฉพาะอย่างยิ่งการใช้หน่วยความจำระหว่างการใช้งานไลบรารีมาตรฐาน C ++ แตกต่างกันหรือไม่? รายละเอียดของการใช้งานบางอย่างได้รับการคุ้มครองโดย NDA แต่การเปรียบเทียบระหว่าง STLport กับ libstdc ++ เทียบกับ libc ++ กับ MSVC / Dinkumware (เทียบกับ EASTL?) ดูเหมือนว่าจะมีประโยชน์อย่างมาก โดยเฉพาะฉันกำลังมองหาคำตอบสำหรับคำถามที่ชอบ: หน่วยความจำค่าใช้จ่ายเกี่ยวข้องกับคอนเทนเนอร์มาตรฐานเท่าไร? คอนเทนเนอร์ใดมีถ้าทำการจัดสรรแบบไดนามิกโดยการประกาศเท่านั้น std :: string ทำการคัดลอกเมื่อเขียนหรือไม่? การเพิ่มประสิทธิภาพสตริงสั้น ๆ ? เชือก? std :: deque ใช้บัฟเฟอร์วงแหวนหรือไม่?

4
ฉันจะเผยแพร่เกม Windows Indie ของฉันได้ที่ไหน [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ฉันเพิ่งจบเกม XNA สำหรับ Windows Phone 7 และ XBLIG ในขณะนี้เกมดังกล่าวเป็นรุ่น 'lite' ซึ่งให้บริการฟรี แต่รุ่นถัดไปจะมีป้ายราคาเล็ก ๆ ฉันใช้ Windows เป็นเวอร์ชันด้วย ที่ไหนดีที่สุดในการเผยแพร่
16 xna  xbox360 

1
สร้างฟิสิกส์สไตล์เรโทร / NES ขึ้นใหม่ด้วยความไม่แม่นยำโดยเจตนา
พื้นหลัง: ฉันมีปัญหาในการทำให้การกระโดดโค้งถูกต้องสำหรับโปรเจ็กต์ retro platformer ของฉัน เกมดั้งเดิมมีไว้สำหรับ NES และความเร็วของผู้เล่นจะถูกเก็บไว้ในสองส่วน: หนึ่งไบต์สำหรับจำนวนเต็มและอีกส่วนสำหรับเศษส่วน Gravity ถูกเพิ่มเข้ากับความเร็ว Y ของผู้เล่นในอัตรา 0.25 / เฟรม เมื่อผู้เล่นกระโดดความเร็ว Y ของเขาถูกตั้งไว้ที่ -4.64453125 ส่วนที่เหลือของเส้นโค้งการกระโดดจะถูกปล่อยให้อยู่กับแรงโน้มถ่วง ในขณะที่ผู้เล่นเพิ่มความเร็วแนวตั้งของเขาให้เป็น 0 ในอัตรา 0.25 / เฟรม เมื่อความเร็วของผู้เล่นถึงค่าน้อยกว่าศูนย์อย่างไรก็ตามความเร็วจะเปลี่ยนไปตามรูปแบบที่แตกต่างกัน แทนที่จะลดลงเรื่อย ๆ 0.25 ทุกเฟรมมันจะเป็นไปตามรูปแบบนี้: [1.75, -0.25, -0.25, -0.25, 1.75, -0.25, -0.25, -0.25, 1.75, ...] ดูเหมือนว่าจะมีบางอย่างเกี่ยวข้องกับจำนวนเต็มล้น ข้อมูล: นี่คือดัมพ์ของข้อมูลจากต้นฉบับ มันเป็นตารางความเร็ว Jump Curve Y-Hi Y-Lo …

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

6
วัตถุในเกม 2D ควรแสดงตัวหรือไม่?
ฉันกำลังสร้างเกมแบบสตรีทไฟท์เตอร์ 2 มิติที่ไม่ได้มีการปูกระเบื้อง โดยทั่วไปแล้วคนมักแนะนำให้เอนทิตีถูกกำหนดให้กับตัวเรนเดอร์ที่แสดงพวกมันไม่ใช่ตัวเรนเดอร์ แต่ดูเหมือนว่าอินเวอร์สจะดีกว่า ทำไมคนหนึ่งถึงดีกว่าอีกคนหนึ่ง? ขอบคุณ
16 c++  rendering 

7
ฉันต้องการคำแนะนำสำหรับอาชีพในอนาคตของฉัน [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน6 ปีที่ผ่านมา ฉันอายุ 16 ปี. ฉันวางแผนอาชีพในอนาคตของฉันและฉันยืนอยู่บนบันไดและไม่ทราบวิธีที่จะไป ความฝันของฉันคือการสร้างเกมที่ดีที่สุดตลอดกาล เมื่อฉันโตขึ้นฉันเริ่มสังเกตเห็นว่าความหลงใหลในเกมของฉันไม่ได้หายไปตลอด 10 ปีที่ผ่านมาและ / ยังคงเพิ่มขึ้น ... การพัฒนาเกมยังดูเหมือน "ไร้สาระ" สำหรับพ่อแม่ของฉันและเพื่อนครอบครัวของเรา และพวกเขากำลังระบุว่าฉันควรศึกษาสิ่งที่ร้ายแรงกว่านี้ ผมไม่ทราบว่าสิ่งที่ฉันจะทำและสิ่งที่ฉันต้องการจะทำ ฉันรู้ PHP, C ++ (ปีนี้จะเป็นครั้งที่สองเมื่อฉันเรียนภาษาโปรแกรมนี้ที่โรงเรียน), JavaScript และ HTML ฉันได้ออกแบบเว็บไซต์หลายครั้ง แต่พวกเขาไม่ใช่สิ่งที่คุณสามารถเรียกได้ว่าเป็นงานออกแบบมืออาชีพ ... ฉันเรียนรู้กราฟิกแบบเวกเตอร์การสร้างแบบจำลอง 3 มิติการทำดนตรี ... ฉันพยายามทำเกมหลายครั้ง แต่ฉันไม่ได้ทำ ยังทำอะไรไม่สำเร็จ ... และ ... อืม ... ไม่มีคอมพิวเตอร์ที่ฉันสามารถทำได้ ... เอาล่ะฉันสามารถทำแพนเค้ก …
16 career 

3
การเรียงลำดับของคะแนนตามลำดับตามเข็มนาฬิกา
มีอัลกอริธึมในการเรียงลำดับอาร์เรย์ของคะแนน 2D ตามลำดับตามเข็มนาฬิกาหรือไม่? ฉันกำลังจัดการสามเหลี่ยมมุมฉากในกรณีของฉันโดยเฉพาะดังนั้น 3 คะแนน อย่างไรก็ตามฉันสนใจที่จะทราบว่ามีอัลกอริธึมอยู่หรือไม่หากไม่มีวิธีง่ายๆในการคืนค่า 3 คะแนนของสามเหลี่ยมตามลำดับตามเข็มนาฬิกา แก้ไข: ฉันพยายามคำนวณคะแนนตามเข็มนาฬิกาที่สัมพันธ์กับเซนทรอยด์ของรูปหลายเหลี่ยมซึ่งเป็นรูปนูน อัปเดต: นี่คือการนำไปใช้ที่ฉันใช้โดยใช้คำตอบที่เลือกไม่ใช่ประสิทธิภาพที่สำคัญและจะเกิดขึ้นเพียงครั้งเดียวเพื่อให้ได้ผล ArrayList<PVector> pointList = new ArrayList<PVector>(); pointList.add(A); pointList.add(B); pointList.add(C); Collections.sort( pointList, new TriangleVectorComparator(origin) ); return pointList; // Comparator package triangleeditor; import java.util.Comparator; import processing.core.PVector; public class TriangleVectorComparator implements Comparator<PVector> { private PVector M; public TriangleVectorComparator(PVector origin) { M …

2
คำแนะนำเกี่ยวกับสถาปัตยกรรมเกม / รูปแบบการออกแบบ
ฉันได้ทำงานกับ RPG 2d มานานแล้วและฉันก็ตระหนักว่าฉันได้ตัดสินใจออกแบบที่ไม่ดี โดยเฉพาะอย่างยิ่งมีบางสิ่งที่ทำให้ฉันมีปัญหาดังนั้นฉันจึงสงสัยว่าคนอื่น ๆ ที่ใช้ในการเอาชนะพวกเขาหรือใช้ สำหรับพื้นหลังเล็กน้อยฉันเริ่มทำงานในเวลาว่างของฉันเมื่อฤดูร้อนปีที่แล้ว ตอนแรกฉันสร้างเกมใน C # แต่ประมาณ 3 เดือนที่แล้วตัดสินใจเปลี่ยนเป็น C ++ ฉันต้องการได้รับการจัดการที่ดีใน C ++ เพราะมันไม่นานมานี้เพราะฉันใช้มันอย่างหนักและคิดว่าโครงการที่น่าสนใจเช่นนี้จะเป็นแรงจูงใจที่ดี ฉันใช้ห้องสมุดเพิ่มอย่างกว้างขวางและใช้ SFML สำหรับกราฟิกและ FMOD สำหรับเสียง ฉันมีโค้ดที่ค่อนข้างเป็นธรรม แต่กำลังพิจารณาที่จะทิ้งมันและเริ่มต้นใหม่ นี่คือประเด็นสำคัญที่ฉันกังวลและต้องการรับความคิดเห็นเกี่ยวกับวิธีการที่เหมาะสมที่ผู้อื่นแก้ไขได้หรือจะแก้ปัญหา 1. การพึ่งพาตามวัฏจักร เมื่อฉันทำเกมใน C # ฉันไม่ต้องกังวลเกี่ยวกับสิ่งนี้เพราะมันไม่มีปัญหา การย้ายไปที่ C ++ นี้ได้กลายเป็นปัญหาใหญ่พอสมควรและทำให้ฉันคิดว่าฉันอาจออกแบบสิ่งต่าง ๆ ไม่ถูกต้อง ฉันไม่สามารถจินตนาการได้ว่าจะแยกชั้นเรียนของฉันอย่างไรและยังให้พวกเขาทำสิ่งที่ฉันต้องการ นี่คือตัวอย่างบางส่วนของห่วงโซ่การพึ่งพา: ฉันมีคลาสเอฟเฟ็กต์สถานะ ชั้นเรียนมีวิธีการมากมาย (ใช้ / นำไปใช้, ขีด, ฯลฯ ) …
16 c++  architecture  rpg 

2
สุดยอดวิธีการใช้งาน Collision แบบ 3 มิติที่ดีที่สุด
ฉันได้ตั้งโปรแกรมระบบการชนกันแบบ 2d สำหรับเกมก่อนหน้าแล้ว มันเป็นระบบการชนครั้งแรกของฉันและมันก็น่าเกลียด ฉันกำลังมองหาการชนกันระหว่างวัตถุโดยการตรวจสอบวัตถุทั้งหมดกับวัตถุทั้งหมด ฉันเคยได้ยินเกี่ยวกับระบบกริดกับเซลล์ที่วัตถุจะมองการชนกับวัตถุอื่นจากเซลล์ปัจจุบันเท่านั้น เป็นวิธีที่ดีในการตรวจสอบการชนหรือไม่ ฉันต้องการมีเทคนิคที่ดีในการวนรายการทั้งหมดของฉันในโลก 3 มิติ

2
การออกแบบเกมที่ใช้องค์ประกอบ
ฉันกำลังเขียนปืน (เช่น 1942, กราฟิก 2D แบบคลาสสิก) และฉันต้องการใช้การอนุมัติตามส่วนประกอบ จนถึงตอนนี้ฉันคิดถึงการออกแบบต่อไปนี้: องค์ประกอบแต่ละเกม (เรือเหาะขีปนาวุธเพิ่มพลังศัตรู) เป็นเอนทิตี แต่ละหน่วยงานคือชุดของส่วนประกอบที่สามารถเพิ่มหรือลบได้ในเวลาทำงาน ตัวอย่างเช่นตำแหน่ง, Sprite, Health, IA, Damage, BoundingBox เป็นต้น แนวคิดคือ Airship, Projectile, Enemy, Powerup ไม่ใช่คลาสเกม เอนทิตีถูกกำหนดโดยส่วนประกอบที่เป็นเจ้าของเท่านั้น (และสามารถเปลี่ยนแปลงได้ในช่วงเวลา) ดังนั้นผู้เล่นเรือเหาะเริ่มต้นด้วย Sprite, ตำแหน่ง, สุขภาพและส่วนประกอบอินพุต Powerup มี Sprite, Position, BoundingBox และอื่น ๆ หลักวนรอบจัดการเกม "ฟิสิกส์" นั่นคือส่วนประกอบต่าง ๆ มีปฏิสัมพันธ์กันอย่างไร: foreach(entity (let it be entity1) with a …

3
Ledge คว้าและปีนใน Unity3D
ฉันเพิ่งเริ่มโครงการใหม่ ในโครงการนี้หนึ่งในกลไกการเล่นเกมหลักคือคุณสามารถคว้าหิ้งบนจุดหนึ่งในระดับหนึ่ง ตอนนี้คำถามของฉันเนื่องจากฉันได้ต่อสู้กับเรื่องนี้มาระยะหนึ่งแล้ว ฉันจะนำสิ่งนี้ไปปฏิบัติจริงได้อย่างไร? ฉันได้ลองกับแอนิเมชั่นแล้ว แต่มันก็น่าเกลียดจริงๆเพราะผู้เล่นจะตะครุบจนถึงจุดที่แอนิเมชั่นเริ่มต้น

1
สิ่งประดิษฐ์แผนที่เงา
ฉันต้องการลองเพิ่มเงาให้กับเกม 3D XNA ฉันได้ตั้งค่าสภาพแวดล้อมการทดสอบด้วยแสงเดียวและกล้องหนึ่งตัว อย่างไรก็ตามฉันพบสิ่งประดิษฐ์ด้วยวิธีการของฉัน ฉันใช้รหัส shader จากhttp://pastebin.com/zXi0hmsUเพื่อแสดงผลลัพธ์สุดท้ายและ http://pastebin.com/rY4Gcj9Nเพื่อสร้างแผนที่เงา รหัสตรงไปตรงมาและเกี่ยวข้องกับการผลิตความลึกจากมุมมองของแสงจากนั้นฉายลงในพื้นที่กล้องและตรวจสอบเพื่อหาข้อสรุป อย่างไรก็ตามจากมุมส่วนใหญ่ฉันได้ผลลัพธ์ที่น่าเกลียด ฉากประกอบด้วยลูกบาศก์ง่าย ๆ บางส่วน (สร้างขึ้นด้วยมือหันหน้าไปทางด้านนอกด้านหลังถูกคัดออก) แสงหนึ่งดวง (แผนที่เงาที่แสดงที่มุมบนซ้าย - ดูโอเค) และกล้องหนึ่งตัว RenderTarget ของฉันสำหรับแผนที่เงาถูกเตรียมใช้งานโดย int shadowMapSize = 512; RenderTarget2D shadowMap = new RenderTarget2D(GraphicsDevice, shadowMapSize, shadowMapSize, true, GraphicsDevice.PresentationParameters.BackBufferFormat, DepthFormat.Depth24Stencil8); GraphicsDevice.SetRenderTarget(shadowMap); GraphicsDevice.Clear(Color.White); GraphicsDevice.DepthStencilState = DepthStencilState.Default; หลังจากนั้นCreateShadowMapจะใช้เอฟเฟกต์ตามด้วยเอฟเฟกต์ LambertWithShadows SpriteBatchสุดท้ายแผนที่เงาจะถูกดึงมาใช้ ส่วนที่เหลือของรหัสประกอบด้วยเพียงแค่ให้ค่าที่ถูกต้องให้กับเฉด หากจำเป็นฉันสามารถให้บริการได้เช่นกัน

2
Ai: การเรียนรู้กับการวางกลยุทธ์
ฉันมีทฤษฎีเกี่ยวกับ AI ที่ฉันต้องการจะเขียน "whitepaper" เกี่ยวกับ ความแตกต่างที่ฉันต้องการสำรวจใน AI คือการเรียนรู้และการวางกลยุทธ์ คำถามของฉันคือฉันจะอ่านเนื้อหาอื่นเกี่ยวกับเรื่องนี้ได้ที่ไหน ขอยกตัวอย่างหมากรุก เรามาดูหมากรุก AI ว่าเป็นต้นไม้ใหญ่ซึ่งการจับยูนิตศัตรูเพิ่มมูลค่าของหน่วยนั้นใน "คะแนนการเคลื่อนที่" สำหรับการตัดสินใจนั้น การจับตัวจำนำนั้นอาจจะมี 1 จุดอัศวิน 4 คะแนนตัวโกง 5 คะแนนเป็นต้น การวางกลยุทธ์จะเป็นแบบ AI เพื่อใช้คะแนนเหล่านี้และกำหนดท่าต่อไป; เช่น. เมื่อมีการเคลื่อนไหวที่เป็นไปได้สิบแบบให้เลือกคะแนนที่ดีที่สุดเมื่อสิ้นสุดการเคลื่อนไหวสามครั้ง การเรียนรู้จะใช้การสังเกตเชิงสถิติเพื่อกำหนดค่าเหล่านั้น หากคุณเล่นเกม 100 เกม AI อาจตัดสินว่าการจับตัวประกันคือ 2 คะแนนและอัศวินมีค่า 7 คะแนนในขณะที่เกมโกงมีค่าเพียง 3 คะแนนเท่านั้น (อิงจาก 100 เกม) ความแตกต่างนี้มีอยู่ในวรรณคดีหรือไม่และถ้าเป็นเช่นนั้นฉันจะอ่านได้ที่ไหน แก้ไข:ไม่มีใครรู้เกมหมากรุก (ที่มีซอร์สโค้ดดีกว่า) ที่ใช้วิธีการนี้หรือไม่? บางทีChess960 @ Home ?
16 ai  chess 

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