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

คำทั่วไปที่อ้างถึงส่วนที่มองเห็นของเกม พยายามหลีกเลี่ยงการใช้ที่ไม่เกี่ยวข้องและติดแท็กประเภทกราฟิกเฉพาะ (2D, 3D), API, เฟรมเวิร์กหรือไลบรารีที่คุณใช้แทนหากเป็นไปได้

3
Age of Empires II ชื่ออะไร?
ใครจะอธิบาย "มุมมอง" ของ Age of Empires 1 เป็นเกมสไปรต์ 2D: ด้านล่างเป็นภาพหน้าจอของ Age of Empires II คุณจะอธิบาย "มุมมอง" อย่างไร? มันเป็นเกมสไปรต์ 2D หรือไม่? "เปอร์สเปคทีฟ" อาจไม่ใช่คำที่ถูกต้อง ถ้าไม่ใช่ฉันควรใช้อะไร

5
ข้ามแพลตฟอร์ม API กราฟิกระดับต่ำ
เมื่อสร้างสิ่งที่เป็นนามธรรมระบบจะดีกว่าที่จะมีแพลตฟอร์ม API ที่แตกต่างกันที่ซ่อนอยู่โดยอินเตอร์เฟซทั่วไปในระดับต่ำสุดที่เหมาะสม คำนึงถึงความทันสมัยที่แตกต่างกัน (โดยไม่มีฟังก์ชั่นคงที่) API กราฟิคดั้งเดิม: OpenGLES 2.0+, OpengGL 3.0+, DirectX 10.0+, Xbox DirectX 9, LibGCM ถ้ามีใครอยากสร้างAPI กราฟิคระดับต่ำให้อยู่เหนือพวกเขาทั้งหมดนี่จะเป็นวิธีที่ดีที่สุดในการทำให้มันผอมและเร็วที่สุดเท่าที่จะเป็นไปได้?

1
วาดครึ่งกลางของทรงกลมโดยทางโปรแกรม
ฉันพยายามสร้างครึ่งกลางของทรงกลม โดยทั่วไปเพื่อสร้างทรงกลมจะมีการกำหนดหมายเลขสแต็กและหมายเลขสแลชและมีตัวแปรสองตัวphi(สำหรับสไลซ์) และtheta(สำหรับสแต็ค) ที่รับผิดชอบต่อความก้าวหน้า และกระบวนการนี้แบ่งออกเป็นการสร้างฝาด้านล่างลำตัวและฝาปิดด้านบน (ดังที่เห็นด้านล่าง) เพื่อให้ได้ครึ่งกลาง ( thetaตรงกลาง 50% ดังด้านล่าง) เราจำเป็นต้องเว้นการแคปและแก้ไขส่วนใดส่วนหนึ่ง ฉันกำลังเล่นกับหมายเลข stack ( 1/4*stackNumbers to 3/4*stackNumbers) แต่ไม่ได้ให้ผลลัพธ์ที่ต้องการ ฉันจะแก้ไขการสร้างทรงกลมเพื่อให้ได้ครึ่งกลาง ( pi/4 <theta <pi*3/4) ได้อย่างไร ปัญหาโดยรวมของฉันคือฉันจะแบ่งทรงกลมออกเป็น 3 ส่วนต่าง ๆ ได้อย่างไรตอนบน 25%, กลาง 50% และ 25% ด้านล่าง? นี่คือรหัสยอดนิยมสำหรับการสร้างทรงกลมโดยทางโปรแกรม: private void generateSphere(int stackNumber, int sliceNumber, boolean facingOut) { int capVertexNumber = 3 …

1
วิธีสร้าง shader พิกเซลแบบ "ย้อนยุค" สำหรับสไปรต์ 2D แบบเปลี่ยนรูปซึ่งรักษาความเที่ยงตรงของพิกเซลได้อย่างไร
ภาพด้านล่างแสดงสไปรต์สองรายการที่มีการสุ่มตัวอย่างแบบจุดบนพื้นหลัง: กะโหลกศีรษะด้านซ้ายไม่มีการหมุน / การปรับสเกลดังนั้นทุกพิกเซลจึงเข้ากันกับพื้นหลังอย่างสมบูรณ์ กะโหลกศีรษะด้านขวาจะหมุน / ปรับขนาดและผลในพิกเซลขนาดใหญ่ที่ไม่ได้แกนชิด ฉันจะพัฒนาตัวสร้างพิกเซลที่จะแสดงสไปรต์ที่ถูกแปลงทางด้านขวาด้วยพิกเซลที่จัดเรียงตามแนวแกนที่มีขนาดเท่ากับส่วนที่เหลือของฉากได้อย่างไร สิ่งนี้อาจเกี่ยวข้องกับวิธีการนำสไปรต์สเกลมาใช้ในเกมเก่า ๆ เช่น Monkey Island เพราะนั่นเป็นเอฟเฟกต์ที่ฉันพยายามจะทำ แต่มีการเพิ่มการหมุน แก้ไข ตามคำแนะนำของ kaoD ฉันพยายามที่จะแก้ไขปัญหาว่าเป็นกระบวนการหลังการขาย วิธีที่ง่ายที่สุดคือการเรนเดอร์ไปยังเป้าหมายการเรนเดอร์แยกต่างหากก่อน (ลดขนาดลงเพื่อให้ตรงกับขนาดพิกเซลที่ต้องการ) จากนั้นเพิ่มขนาดเมื่อทำการเรนเดอร์ครั้งที่สอง มันตอบสนองความต้องการของฉันด้านบน ครั้งแรกที่ฉันลองทำมันLinear -> Pointและผลลัพธ์ก็คือ: ไม่มีการบิดเบือน แต่ผลลัพธ์ดูเบลอและเสียสีส่วนใหญ่ไป ในความคิดของฉันมันแบ่งดูย้อนยุคที่ฉันต้องการ ครั้งที่สองที่ฉันลองPoint -> Pointและผลลัพธ์คือ: แม้จะมีการบิดเบือน แต่ฉันคิดว่ามันอาจจะดีพอสำหรับความต้องการของฉันถึงแม้ว่ามันจะดูดีกว่าในรูปภาพนิ่งมากกว่าในการเคลื่อนไหว ในการสาธิตนี่เป็นวิดีโอของเอฟเฟกต์ถึงแม้ว่า YouTube จะกรองพิกเซลออกจากมัน: http://youtu.be/hqokk58KFmI อย่างไรก็ตามฉันจะเปิดคำถามทิ้งไว้อีกสองสามวันในกรณีที่มีใครบางคนที่มาพร้อมกับวิธีการสุ่มตัวอย่างที่ดีกว่าที่รักษารูปลักษณ์ที่คมชัดในขณะที่ลดจำนวนการบิดเบือนเมื่อเคลื่อนไหว

3
มีข้อได้เปรียบในการใช้ DX10 / 11 สำหรับเกม 2D หรือไม่?
ฉันไม่คุ้นเคยกับชุดคุณลักษณะที่แนะนำโดยฮาร์ดแวร์ระดับ DX10 / 11 ฉันคุ้นเคยกับขั้นตอนใหม่ที่เพิ่มเข้ากับไปป์ไลน์กราฟิกที่ตั้งโปรแกรมได้เช่น geometry shader, compute shader และขั้นตอน tessellation ใหม่ ฉันไม่เห็นว่าสิ่งเหล่านี้สร้างความแตกต่างให้กับเกม 2D ได้อย่างไร มีเหตุผลที่น่าสนใจไหมที่จะเปลี่ยนไปใช้ DX10 / 11 (หรือ OpenGL ที่เทียบเท่า) สำหรับเกม 2D หรือมันจะฉลาดกว่าที่จะยึดติดกับ DX9 โดยพิจารณาว่าส่วนแบ่งที่สำคัญของตลาดยังคงใช้เทคโนโลยีเก่า (เช่น กุมภาพันธ์ 2555 การสำรวจบน Steam แสดงรายการผู้ใช้ประมาณ 17% ที่ยังใช้ Windows XP อยู่ใช่ไหม?
10 2d  graphics  directx 

3
สไตล์ของมุมมองของเกมเช่น Final Fantasy 6, Chrono Trigger หรือ Alundra คืออะไร?
คำที่แท้จริงสำหรับสไตล์ 'จากบนลงล่าง' ของเกม Super Nintendo เช่น Final Fantasy 6, Chrono Trigger และอื่น ๆ คืออะไร ฉันกำลังมองหาคำศัพท์ที่เทียบเท่าของ: 'isometric' - (Jaggered Alliance, Final Fantasy Tactics, Fallout), 'คนแรก' - (Half Life, Doom, Quake) 'นกตา' - (Grand Theft Auto) ? ใส่คำศัพท์ที่นี่? - (Final Fantasy 6, Chrono Trigger)

3
จะจ้างนักออกแบบกราฟิกสำหรับเกมมือถือได้ที่ไหน
ฉันต้องการหาคนที่มีความสามารถในการสร้างชุดของกราฟิก 2 มิติ a la cart สำหรับเกมมือถือของฉัน กราฟิกของฉันไม่น่าประทับใจเพียงพอ แต่การเล่นเกมนั้นแข็งแกร่งและสนุก นี่เป็นคำถามแบบหลายส่วน: ฉันจะหาคนจากที่ไหน? สิ่งที่ฉันคาดหวังว่าจะจ่ายให้กับ Sprite และพื้นหลังที่กำหนดเอง ฉันควรใช้คำศัพท์ประเภทใดดังนั้นฉันจะได้รับเอกสิทธิ์โดยไม่มีค่าลิขสิทธิ์เป็นเจ้าของผลงานศิลปะเมื่อเสร็จแล้ว

5
กราฟิกสำหรับนักออกแบบที่ไม่ใช่กราฟิก [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา มีทรัพยากรสำหรับโปรแกรมเมอร์ที่มีความสามารถด้านการออกแบบกราฟิกน้อยหรือไม่มีเลย แต่ยังต้องการสร้างกราฟิกที่ดีพอสำหรับโปรแกรมของตัวเองหรือไม่? ฉันสนใจทั้งคอมพิวเตอร์ 2 มิติและ 3 มิติที่สร้างเทคนิคกราฟิกรวมถึงที่เก็บกราฟิกฟรี
10 graphics  3d  art 


6
ทำให้อัตราเฟรมของ pygame เร็วขึ้น
จากการทำโปรไฟล์เกมของฉันฉันเห็นว่าเวลาส่วนใหญ่ในการดำเนินการของเกมงานอดิเรกของฉันคือระหว่างการ blit และการพลิก ขณะนี้มันทำงานที่ประมาณ 13fps เท่านั้น การ์ดแสดงผลของฉันค่อนข้างดีดังนั้นฉันเดาว่า pygame ไม่ได้ใช้งาน ไม่มีใครรู้เกี่ยวกับตัวเลือกกราฟิก / การแสดงผลที่ฉันต้องตั้งค่าใน pygame เพื่อให้เร็วขึ้น? หรือนี่เป็นสิ่งที่ฉันต้องอยู่ด้วยตั้งแต่ฉันเลือก pygame?

2
อะไรทำให้เป็นหน้าจอในเกม C64 ทั่วไป
ฉันกำลังพยายามหาพื้นฐานของการพัฒนาเกม C64 ที่ผ่านมา BASIC และฉันสามารถใช้คำแนะนำในสิ่งที่พื้นฐานมาก แต่สำคัญ: อะไรคือสิ่งที่อยู่บนหน้าจอจริง ๆ แล้วจะวาดอย่างไร? ดูที่Katakis / Denaris : มีอย่างน้อย 9 อย่างบนหน้าจอ: แถบคะแนนด้วยแบบอักษรที่แตกต่างกัน ตัวเรือเอง ดาวเทียมที่ติดอยู่กับเรือสามารถถอดออกได้ ขีปนาวุธอาวุธรอง ขีปนาวุธอาวุธหลัก วัตถุเคลื่อนที่ (อาจเป็นเรือศัตรู) แถบสถานะที่มีภาพของเรือจำนวนชีวิตและสามส่วนที่สามารถเติมได้ แถบชาร์จอาวุธหลักสามารถเติมจนจบ สตาร์ฟิลด์เลื่อนในพื้นหลัง (ไม่ใช่หมายเลขบนหน้าจอ) วัตถุที่เป็นของแข็งเช่นหินหรือผนังโลหะที่เป็นส่วนหนึ่งของพื้นหลัง C64 รองรับเพียง 8 sprite ต่อเส้นสแกนแนวนอนดังนั้นฉันไม่คิดว่าทุกอย่างที่อยู่ตรงกลางของหน้าจอจะเป็น sprite หรือไม่ ฉันจะสมมติว่าสิ่งใดก็ตามที่ต้องมีการปะทะกันจะเป็นสไปรต์ (เนื่องจากฉันสามารถรับการตรวจจับการชนกันของฮาร์ดแวร์กับสไปรต์) ได้ นอกจากนี้อาวุธของฉันสามารถยิงกระสุนมากกว่าหนึ่งลำ - เรือของฉันดาวเทียมและกระสุน 6 อันก็จะเรียงกันเป็น 8 ครั้งต่อเนื่อง (ดูประมาณ 50 วินาทีในวิดีโอ) นอกจากนี้เกมกราฟิกแบบไหนที่จะใช้เช่นนี้? คู่มือการเขียนโปรแกรมแสดงรายการโหมดบิตแผนที่ซึ่งจำเป็นต้องแก้ไขหน่วยความจำหน้าจอโดยตรง …

1
การเขียนโปรแกรมกราฟิกจำลองการเปลี่ยนแปลงจาก Chrono Trigger ภายในเกต
ฉันเริ่มเล่นเกมนี้เป็นครั้งแรกเมื่อเร็ว ๆ นี้และนี่เป็นจุดสนใจของฉันจริงๆ คุณสามารถเห็นการเปลี่ยนแปลงในการเคลื่อนไหวเริ่มต้นที่ ~ 12: 08 ดูเหมือนว่าจะมีคณิตศาสตร์ที่น่าสนใจเกิดขึ้นในนั้น ดูเหมือนว่ามีสองมุมมองที่แตกต่างกันมารวมกัน ระลอกคลื่นสีฟ้าจะถูกเรนเดอร์เป็นครั้งแรกในพื้นหลังจากนั้นคลื่นสั่นสีม่วงจะปรากฏขึ้นในการฉายภาพหลอก 3D บางประเภท พวกเขามาถึงผลลัพธ์นี้อย่างไร แต่อยู่นอกเหนือฉันและความอยากรู้อยากเห็นได้ดีกว่าของฉัน ฉันไม่ได้คาดหวังว่าผู้คนจำนวนมากจะรู้ว่าสิ่งนี้ทำโดยเฉพาะอย่างยิ่ง แต่ถ้าใครมีการเขียนโปรแกรมกราฟิกที่กว้างขวางบางอย่างพวกเขาอาจจะสอนฉัน

5
ฉันจะสร้างกราฟิกการ์ดแบบเคลื่อนไหวได้ใน Hearthstone ได้อย่างไร
ในเกม Hearthstone มีการ์ดที่มีภาพเคลื่อนไหวอยู่ด้วย ตัวอย่างบางส่วน: http://www.hearthhead.com/card=281/argent-commander http://www.hearthhead.com/card=469/blood-imp ดูเหมือนว่าภาพเคลื่อนไหวจะประกอบด้วยเอฟเฟกต์หลายอย่าง: ระบบอนุภาค จางหายไปสไปรต์เข้าและออก / หมุนพวกเขา พื้นผิวเลื่อนที่เรียบง่าย เอฟเฟกต์การบิดเบือนชัดเจนมากในแหลมและผมของตัวอย่างที่ 1 เอฟเฟกต์การหมุนวนแสงในตัวอย่างที่ 1 และแสงสีเขียว / สีม่วงในตัวอย่างที่ 2 องค์ประกอบสามประการแรกนั้นเล็กน้อยสิ่งที่ฉันอยากรู้ก็คือวิธีที่สองสิ่งสุดท้ายสามารถทำได้ สามารถทำได้แบบเรียลไทม์ในเกมหรือภาพเคลื่อนไหวที่แสดงล่วงหน้าหรือไม่
9 graphics 

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 …

4
ฉันควรแชร์ข้อมูลระหว่างกราฟิกและเอนจิ้นฟิสิกส์ในเกมหรือไม่
ฉันกำลังเขียนเอ็นจิ้นเกมที่ประกอบด้วยโมดูลไม่กี่ตัว สองของพวกเขาเป็นกราฟิกเครื่องยนต์และเครื่องยนต์ฟิสิกส์ ฉันสงสัยว่ามันเป็นทางออกที่ดีในการแบ่งปันข้อมูลระหว่างกันหรือไม่ สองวิธี (การแชร์หรือไม่) ดูเหมือนว่า: โดยไม่ต้องแชร์ข้อมูล GraphicsModel{ //some common for graphics and physics data like position //some only graphic data //like textures and detailed model's verticles that physics doesn't need }; PhysicsModel{ //some common for graphics and physics data like position //some only physics data //usually my physics data …

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