คำถามติดแท็ก assets

แหล่งข้อมูลเกมแยกจากซอฟต์แวร์ (รหัส) และฮาร์ดแวร์ (แพลตฟอร์ม) เนื้อหาที่พบบ่อยที่สุดคือกราฟิกและเสียง

3
การระบุเนื้อหาในเครื่องมือสร้างเกม?
ฉันต้องการระบุเนื้อหาที่โหลด แต่ไม่ทราบว่าควรเลือกแบบใด มี 2 ​​ตัวเลือก: ชื่อ (สตริง) นี่เป็นวิธีที่ง่ายที่สุดและรวดเร็วด้วย unordered_map (O (1)) แต่วิธีที่ช้ากว่านั้นใช้จำนวนเต็ม เข้าใจได้ง่ายในรหัส จำนวนเต็ม ที่เร็วที่สุด ไม่เข้าใจในโค้ด ฉันรู้ว่าสายไม่ปลอดภัยหรือเร็ว แต่มันแย่ขนาดนั้นหรือนับว่าแย่ในชื่อ AAA เท่านั้น? ฉันสามารถสร้าง enums ใช้จำนวนเต็ม แต่ถ้าฉันโหลดฉากสินทรัพย์ ฯลฯ จากไฟล์ตอนรันไทม์ฉันไม่สามารถใช้ enums ได้ มีวิธีทำให้จำนวนเต็มเหล่านี้สามารถอ่านได้ถ้าพวกเขาจะถูกสร้างขึ้นที่ runtime? ฉันรู้ว่าปัญหานี้มีเธรดไม่กี่ทั่วอินเทอร์เน็ต แต่ฉันไม่สามารถหาวิธีที่สำคัญในกรณีนี้

1
พื้นที่การวิจัยใดที่มีอยู่ในการเขียนโปรแกรมเกม [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ขณะนี้ฉันอยู่ในกลุ่มที่ทำการวิจัยการเพิ่มประสิทธิภาพเครือข่ายและแอพพลิเคชั่นแบบกระจายฉันสนใจในเกมมากกว่า แต่จากด้านการวิจัยมีทรัพยากรที่มุ่งเน้นหัวข้อการวิจัยเฉพาะสำหรับการพัฒนาเกม ของการวิจัย? หมายเหตุ: ฉันเข้าใจว่าการพัฒนาเกมประกอบด้วยหัวข้อต่าง ๆ ที่ได้รับการวิจัยอย่างละเอียดคำถามของฉันมุ่งเน้นไปที่พื้นที่ที่เป็นเอกสิทธิ์ของแอปพลิเคชันเกมหรืออย่างน้อยก็สำคัญสำหรับการเล่นเกม ตัวอย่างหนึ่งอาจเป็น "วิธีอัลกอริทึมทางพันธุกรรมเพื่อความก้าวหน้าของทักษะตัวละคร" ซึ่งจะมุ่งเน้นไปที่การสร้างความก้าวหน้าของทักษะที่เหมาะสมที่สุดในการกลับมาของผู้เล่น ฯลฯ ฯลฯ ... ความคิดแบบสุ่ม แต่คุณได้รับจุดของฉัน ฉันหมายถึงด้านเทคนิคของการพัฒนาด้วยเช่นกัน แต่ฉันไม่ต้องการ จำกัด สิ่งนี้


5
รูปแบบ / เทคนิคการมุ่งเน้นในการสร้างผลงานทัศนศิลป์อย่างมีประสิทธิภาพ
ฉันเป็นโปรแกรมเมอร์ส่วนใหญ่ แต่ฉันต้องการที่จะทำงานที่มีความสามารถในส่วนอื่น ๆ ของเกมที่ฉันทำเมื่อทำงานในโครงการเดี่ยว สิ่งที่ฉันถามโดยเฉพาะในที่นี้คือเทคนิคหรือรูปแบบใดสำหรับการสร้างเนื้อหาภาพฉันควรศึกษาและใช้เพื่อให้สามารถทำงานได้อย่างมีประสิทธิภาพมากที่สุด โดยทั่วไปสิ่งที่ท้ายที่สุดก็คือการทำงานโดยรวมน้อยที่สุดโดยคำนึงถึงการเปลี่ยนแปลงที่อาจเกิดขึ้นในการพัฒนาการใช้สินทรัพย์ที่สร้างขึ้นสำหรับโครงการอื่น ๆ เป็นต้น สิ่งที่ฉันหมายถึงโดย "เทคนิคหรือสไตล์" นี่คือสิ่งต่าง ๆ เช่นเวกเตอร์อาร์ต, การวาดภาพดิจิตอล, ศิลปะพิกเซล, การสร้างแบบจำลองโพลี, การแกะสลัก ฯลฯ ฉันสนใจที่จะเปรียบเทียบเทคนิคต่างๆโดยรวมเป็นส่วนใหญ่ เป็นการยากที่จะได้รับมุมมองภาพรวมที่ดีของสถานการณ์ที่ไม่มีประสบการณ์มากกับการทำงานจริงกับแต่ละเทคนิค เห็นได้ชัดว่าถ้าคุณกำลังสร้างเกม 3 มิติคุณจะต้องสร้างเนื้อหา 3 มิติ แต่สำหรับตอนนี้เรามาพูดถึงเทคนิคในการสร้างเนื้อหาสำหรับเกม 2 มิติที่สินทรัพย์อาจเป็น 2 มิติหรือ 3 มิติ
12 graphics  2d  assets  art 

5
เหตุใดจึงต้องใช้ไฟล์รายการเนื้อหา
บางครั้งคุณจะเห็นคนแนะนำว่าแทนที่จะใช้กราฟิก / ไฟล์เสียง / ฯลฯ แบบนี้... // Game code Image myImage = new Image("path/to/image.png"); ... คุณควรใช้ไฟล์Manifestเป็นระดับทางอ้อมแทน: // Manifest file MY_IMAGE: path/to/image.png // Game code Manifest myManifest = new Manifest("path/to/manifest"); Image myImage = myManifest.getImage("MY_IMAGE"); ฉันจะมีเหตุผลอะไรในการทำแนวทางนี้ หากฉันไม่ได้ใช้ภาษาที่คอมไพล์แล้วจะมีเหตุผลที่จะทำเช่นนี้หรือไม่?

1
การค้นหาไฟล์เนื้อหาในเกม Linux
อะไรคือวิธีปกติในการจัดเก็บแบบจำลอง 3 มิติพื้นผิวเสียงและสคริปต์ (เช่นไฟล์ Lua) ในระหว่างการพัฒนาและในรีลีส? ฉันกำลังพัฒนาเกมกับเพื่อนของฉันในภาษา C ++ เป็นหลัก; ในขั้นตอนการสร้างต้นแบบเรามีเพียงพื้นผิวเดียวที่ได้รับการบันทึกเป็นส่วนหัว C กับ GIMP แต่แน่นอนวิธีการนี้ไม่ได้ปรับขนาดได้ดีและเพิ่มเวลาการรวบรวมอย่างมาก ภายใต้ Windows การปฏิบัติตามปกติคือการทิ้งไว้ใน%PROGRAMFILES%ไดเรกทอรีย่อยที่มีเกมปฏิบัติการอยู่บางทีอาจจัดเรียงไว้ในโครงสร้างต้นไม้ที่เหมาะสม อย่างไรก็ตามบน Linux ภาพดูเหมือนซับซ้อนมากขึ้น ปฏิบัติการมักจะอาศัยอยู่ใน/usr/binขณะที่การใช้งานจัดเก็บไฟล์อื่น ๆ ของพวกเขาใน/usr/shareและฉันคิดว่ามันจะเป็นปฏิบัติไม่ดีอย่างยิ่งที่จะนำ executables /usr/binไม่ใช่ใน อย่างไรก็ตามโครงสร้างไดเรกทอรีระหว่างการพัฒนานั้นแตกต่างกันโดยสิ้นเชิง ฉันสามารถหาวิธีแก้ปัญหาที่เป็นไปได้สองแบบ: /optให้หาไฟล์ปฏิบัติการเทียบกับตัวเองสินทรัพย์และติดตั้งเกมที่จะ จากนั้นวาง symlink /usr/binไว้ที่ ในระหว่างการพัฒนาเส้นทางสัมพัทธ์ของสินทรัพย์ไปยังไบนารีนั้นเหมือนกับในระหว่างการปรับใช้ เข้าถึงไฟล์ด้วยพา ธ สัมบูรณ์ซึ่งกำหนดเป็นสัญลักษณ์ตัวประมวลผลล่วงหน้า ปล่อยให้กระบวนการสร้าง (ในกรณีของเราดิบMakefile) ดูแลการกำหนดตามความเหมาะสม ทั้งสองวิธีดูเหมือนจะไม่ค่อยเหมาะสมกับฉันในด้านใดด้านหนึ่ง มีวิธีปฏิบัติทั่วไปในอุตสาหกรรมการพัฒนาเกมเกี่ยวกับเรื่องนี้หรือไม่? คำถามที่เกี่ยวข้องเท่านั้นที่ฉันสามารถค้นหาได้คือการระบุตำแหน่งของสินทรัพย์เกมดิสก์ที่ติดตั้ง / บนและเส้นทางไดเรกทอรีสำหรับทรัพยากรและสินทรัพย์แต่คำถามเหล่านั้นไม่ได้แก้ไขปัญหาในการเรียกใช้ "จากแผนผังต้นไม้"

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

3
คุณบรรจุทรัพยากรในเกมอย่างไรเมื่อคุณมีทรัพยากรมากเกินไป
ฉันเพิ่งสร้าง Space Invaders พื้นฐานใน C ++ โดยใช้ Allegro 5 framework หลังจากฉันเสร็จฉันก็รู้ว่าฉันมีสไปรต์ประมาณ 10 อันและค่า DLLs 13MB ผู้เล่นบางคนไม่มีแม้แต่ mingW DLLs ซึ่งทำให้เกมสับสนมาก ฉันจะแพ็คทรัพยากรทั้งหมดของฉันในวิธีที่ฉันสามารถเพิ่มและลบข้อมูลในเกมของฉันได้อย่างง่ายดายและเพื่อลดขนาดของทรัพยากรที่ใช้โดยทั่วไปแล้ววางไว้ในที่เดียว ฉันใช้ codeblocks
10 c++  assets 

3
ทรัพยากรที่ยอดเยี่ยมและมีประโยชน์สำหรับเกม Isometric ที่สร้างบน XNA Framework คืออะไร [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน6 ปีที่ผ่านมา ขณะนี้ฉันกำลังทำงานในเกมภาพสามมิติโดยใช้ Microsoft XNA Framework ฉันกำลังมองหาแหล่งข้อมูลที่จะใช้ในการทำให้โครงการนี้ประสบความสำเร็จเช่นไอโซเมตริกเอนจิ้นฟิสิกส์ฟิสิกส์เอ็นจิ้นสไปรต์ (สำหรับเกมไอโซโทป) ตัวจัดการเหตุการณ์สำหรับ ... การป้อนข้อมูลใด ๆ จะได้รับการชื่นชมอย่างมาก

2
แหล่งข้อมูล Engine Engine / Programming / Etc [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน4 ปีที่แล้ว โพสต์คำถามนี้ที่นี่แทนที่จะเป็นเพราะมันเกี่ยวข้องกับการพัฒนาเกม ภาวะที่กลืนไม่เข้าคายไม่ออกของฉันคือ: ขณะนี้เป็นวันหยุดฤดูร้อนของฉันหลังจากภาคการศึกษาแรกของ CompSci ของฉันและฉันได้เรียนรู้ C ++ เพียงพอที่จะเริ่มต้นในสิ่งที่สูงขึ้นเล็กน้อย ฉันไม่ต้องการเริ่มเขียนโปรแกรมเกมจนกว่าฉันจะสอนตัวเองเกี่ยวกับพีชคณิตเชิงเส้นตรีโกณมิติ ฯลฯ อย่างไรก็ตามฉันต้องการทราบพื้นฐานทฤษฎีและวิธีการที่ใช้ในการเขียนโปรแกรมเกม! ฉันคิดว่าฉันมีหนังสือดีๆอยู่ในห้องสมุดของวิทยาลัย แต่พวกเขาล้าสมัยไปแล้วอย่างมากกับหนังสือเกี่ยวกับการเขียนโปรแกรมเกมหรือเครื่องมือเกมหรือเกม / กราฟิก (หัวข้อที่นี่) ตั้งแต่ต้น 90s ถึง 2002 เมื่อทราบถึงความผันผวนของเทคโนโลยีคอมพิวเตอร์ฉันคิดว่าการจับความรู้เกี่ยวกับเทคโนโลยีที่ทันสมัยจากหนังสืออายุสิบปีไม่ใช่ความคิดที่ดี อเมซอนเองทำให้ฉันไร้ความรู้สึกว่าฉันต้องการหนังสือเล่มไหน สิ่งที่ฉันไม่ต้องการ: หนังสือขึ้นอยู่กับแพลตฟอร์ม ฉันไม่ได้เรียนรู้ OpenGL, Direct3D หรือ API เฉพาะใด ๆ ฉันแค่อยากจะรู้ว่าสิ่งต่าง ๆ เช่น tessellation วิธีที่ GPU จัดการกับสิ่งต่าง ๆ …
10 books  assets 

3
การควบคุมแหล่งที่มาสำหรับจัดเก็บทุกสิ่งในโครงการเกมหรือไม่
เป็นเรื่องปกติที่จะจัดการไม่เพียง แต่ซอร์สโค้ด แต่เนื้อหาพื้นผิวศิลปะไฟล์เอกสาร ฯลฯ ภายใต้ที่เก็บ git สำหรับการควบคุมเวอร์ชันหรือไม่? ตัวอย่างเช่นฉันต้องการกลับไปใช้พื้นผิวแบบเก่า หากเป็นการปฏิบัติที่ไม่ดีมากคุณใช้เครื่องมือใดในการควบคุมเวอร์ชันของเนื้อหาและเนื้อหาอื่น ๆ

2
การสาธิต (และเกมจริง) การป้องกัน
ในอีกไม่กี่เดือนฉันวางแผนที่จะเริ่มแสดงเกม (โฆษณาเชิงพาณิชย์) ที่ฉันกำลังทำอยู่ต่อสาธารณะ (อินเทอร์เน็ต) สิ่งนี้คือนอกเหนือจากภาพหน้าจอและตัวอย่าง (ฟังก์ชั่นการทำงานของคุณสมบัติ) แล้วจะมีการสาธิตการใช้งานที่สามารถป้องกันได้อย่างไร ขออธิบายหน่อย เกมดังกล่าวเป็นเกม RPG แนวข้ามแพลตฟอร์ม ตอนนี้วิธีที่ฉันมีรหัสเกมคือมันอ่านในแผนที่ตัวละครและข้อมูลอื่น ๆ จากไฟล์และตัดสินใจทุกอย่างที่ทำให้ฉันสามารถขยายโลก / เรื่องราวเพียงแค่กำหนดค่าไฟล์และเพิ่มเนื้อหา ความกังวลของฉันคือถ้าฉันสร้างเกมตัวอย่างซึ่งพูดว่าเป็นเกมจริง แต่หลังจากนั้นสินทรัพย์ / ไฟล์ config / etc ทั้งหมดจะถูกลบออกเพื่อที่จะเป็นเพียงตัวอย่างที่มีแผนที่ / ระดับแรก มีวิธีในการป้องกันใครสักคนแล้วปล่อยดาต้าแพ็คของเกมจริง (เมื่อวางจำหน่าย) และตอนนี้ทุกคนที่มีตัวอย่างของ EXE สามารถเล่นเกมจริงได้หรือไม่? การป้องกันการสาธิตนั้นเป็นสิ่งสำคัญอันดับแรกของฉันเพราะฉันต้องการการสาธิตในขณะนั้นก่อนที่เกมจริงจะวางจำหน่าย ฉันสามารถตัดสินใจได้ว่าจะเลือกวิธีการป้องกันแบบใดในเกมจริงในภายหลัง (ก่อนวางจำหน่าย แต่ก็ยังภายหลัง .. ) ฉันคิดว่ามันน่าจะมีวิธีป้องกันเกมอยู่ดี (ฉันไม่ต้องการ จำกัด ให้ผู้ใช้ต้องทำการตรวจสอบออนไลน์ใด ๆ เพราะเกมนี้จะข้ามแพลตฟอร์มและไม่ต้องใช้อินเทอร์เน็ตเพื่อเล่นเกม) สิ่งสุดท้ายที่ฉันต้องการทำคือยุ่งกับผู้ใช้ที่ถูกกฎหมาย และฉันต้องการปล่อยให้สินทรัพย์เปิดถ้าเป็นไปได้เพราะนั่นหมายถึงการแก้ไขโฟลเดอร์ได้อย่างง่ายดายและทำให้ผู้ดูแลสามารถทำสิ่งเล็กน้อยได้ ฉันหมายถึงแม้ว่าฉันจะตั้งค่าระบบลิขสิทธิ์แบบพื้นฐาน แต่อะไรคือการหยุด 1 คนจากการอัพโหลดกุญแจและสำเนาของเกมที่ไหนสักแห่ง? ฉันเคยเห็นคนพูดคุยเกี่ยวกับการปรับปรุงบ่อย …

1
ฉันจะโหลดทรัพยากรกราฟิกแบบอะซิงโครนัสได้อย่างไร
สมมติว่าผู้ไม่เชื่อเรื่องพระเจ้าแพลตฟอร์ม: ฉันต้องการโหลดทรัพยากรกราฟิกในขณะที่เกมที่เหลือกำลังทำงานอยู่ โดยหลักการแล้วฉันสามารถโหลดไฟล์จริงในเธรดแยกต่างหากหรือใช้ async I / O แต่ด้วยวัตถุกราฟิกฉันจะต้องอัปโหลดไปยัง GPU และสามารถทำได้ (ปกติ) บนเธรดหลักเท่านั้น ฉันสามารถเปลี่ยนลูปเกมของฉันให้มีลักษณะดังนี้: while true do update() for each pending resource do load resource to gpu end draw() end ในขณะที่มีทรัพยากรโหลดด้ายแยกจากดิสก์เพื่อแรม อย่างไรก็ตามหากมีทรัพยากรจำนวนมากที่ต้องโหลดสิ่งนี้อาจทำให้ฉันพลาดกำหนดเส้นตายของเฟรม ดังนั้นฉันสามารถเปลี่ยนวงนี้: while true do update() if there are pending resources then load one resource to gpu remove that resource …

3
อะไรคือความทันสมัยในการส่งมอบกราฟิกเกมเช่นไฟล์ BMP ขนาดเล็กจำนวนมาก? [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Game Exchange Stack Exchange ปิดเมื่อปีที่แล้ว เรามีไฟล์ BMP ขนาดเล็กจำนวนมากซึ่งฉันคิดว่าจะคัดลอกได้ง่ายกว่าถ้าเรารวมมันไว้ใน TAR / ZIP / ใหญ่ ๆ อะไรคือสถานะของศิลปะในการจัดส่งกราฟิกเกม? เราใช้ C # และตระหนักถึง zlib เพียงระดมสมองเพื่อดูว่ามีโซลูชั่นอื่นใดที่ดีกว่า zlib หรือไม่
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.