การพัฒนาเกม

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

1
วิธีการคำนวณเวกเตอร์แทนเจนต์และบิทูเมน
ฉันมีพื้นผิวโหลดใน three.js จากนั้นส่งผ่านไปยังเฉดสี ใน shader ที่ฉันคำนวณปกติ, และฉันบันทึกลงในตัวแปรเวกเตอร์ยูวี <script id="vertexShader" type="x-shader/x-vertex"> varying vec3 N,P; varying vec2 UV; void main() { gl_Position= projectionMatrix * modelViewMatrix * vec4(position,1.0); P= position; N= normalMatrix * vec3(normal); UV= uv; } </script> <script id="fragmentShader" type="x-shader/x-fragment"> varying vec3 N,P; varying vec2 UV; uniform sampler2D texture; void main() { …

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

1
การแยกทฤษฎีบทแกนด้วยหลายเหลี่ยม
ฉันพยายามที่จะใช้ทฤษฎีบทแกนแยกใน C # ฉันมีฟังก์ชั่นที่สามารถคำนวณเวกเตอร์การแปลขั้นต่ำระหว่างรูปหลายเหลี่ยมสองอัน อย่างไรก็ตามฉันไม่สามารถสร้างฟังก์ชันที่คำนวณเวกเตอร์การแปลขั้นต่ำได้ระหว่างรูปหลายเหลี่ยมหนึ่งกับรูปหลายเหลี่ยมอื่น ๆ สุจริตฉันได้ทำงานกับสิ่งนี้มาหลายเดือนแล้วและฉันก็ไม่ได้เข้าใกล้ทางออกและไม่สามารถหาวิธีแก้ปัญหาออนไลน์ได้ มีกรณีขอบบางอย่างที่ไม่ส่งคืนผลลัพธ์ที่ถูกต้องนำไปสู่ข้อบกพร่องที่มีลำดับความสำคัญสูงในเกมของฉัน นี่คือกรณีขอบทั่วไปที่ทำงานไม่ถูกต้อง: มีวิธีแก้ไขปัญหาที่รู้จักกันดีสำหรับปัญหานี้หรือไม่? ทั้งหมดที่ฉันสามารถหาได้คือคนที่พูดว่า "แค่ทำ SAT ในรูปหลายเหลี่ยมแต่ละอัน" แต่นี่ไม่ค่อยจะสร้างเวกเตอร์การแปลขั้นต่ำ ความช่วยเหลือใด ๆ จะได้รับการชื่นชมอย่างมาก

1
ฉันจะ "ติด" วัตถุลงในตารางใน Skyrim และยังอนุญาตให้วัตถุเหล่านั้นสามารถโต้ตอบกับผู้เล่นได้อย่างไร
ฉันพยายามวางหม้อแบบไม่คงที่ ( RuinsPot01) บนโต๊ะ ( RuinsAltar) ด้วยการจำลอง Havok ฉันวางหม้อเล็กน้อยเหนือโต๊ะแล้วเปิด Havok หม้อหล่นลงมา แต่ปล่อยให้ลอยอยู่เหนือโต๊ะเล็กน้อย ถ้าฉันหันของ Havok และกดFมันจะถูกจัดชิดอย่างถูกต้องกับโต๊ะ แต่ทันทีที่ฉันเปิด Havok Simulation มันจะกระโดดขึ้นเล็กน้อยแล้วลอยเหมือนเมื่อก่อน มีใครมีการแก้ไขสำหรับเรื่องนี้? การทำให้หม้อคงที่ไม่ใช่ตัวเลือกจึงต้องเคลื่อนย้ายได้

3
ทำให้สิ่งที่ดูรวดเร็วช้า (Box2D)
ฉันกำลังทำงานกับเกมที่คุณควบคุม Trebuchet เพื่อขว้างลูกบอลให้ฝ่ายตรงข้าม มันเหมือนเกมที่เรียกว่า 'Medieval Siege' เมื่อ Trebuchet กำลังแกว่งแขนผู้เล่นต้องยึดช่วงเวลาที่ดีที่สุดเพื่อกดปุ่มและปล่อยลูกบอล จากนั้นลูกบอลจะลอยไปที่มุมสัมผัส ปัญหาของฉันในตอนนี้คือแขน trebuchet แกว่งเร็วเกินไปสำหรับผู้เล่นที่จะคว้าช่วงเวลาที่เหมาะสม ในขณะเดียวกันก็ต้องมีความเร็วอย่างนี้ไม่อย่างนั้นมันก็ไม่สามารถโยนได้ไกลพอ และมีสายเล็ก ๆ ที่เชื่อมต่อลูกบอลและแขน trebuchet ถ้าแขนแกว่งช้าเกินไปลูกบอลก็จะลอยอยู่บนเชือกเมื่อแขนขยับ ฉันแก้ปัญหาด้วยการสลับขนาดก้าวเมื่อใดก็ตามที่แขนแกว่งไปมาฉันเปลี่ยนขนาดก้าวจาก 1/60 เป็น 1/200 และเมื่อผู้เล่นปล่อยลูกบอลมันกลับไปที่ 1/60 วิธีนี้ใช้งานได้ดียกเว้นเกมของฉันมีไว้สำหรับผู้เล่นหลายคนที่มีเครือข่าย ดังนั้นขั้นตอนการเปลี่ยนอาจทำให้เกิดปัญหา อีกวิธีที่ฉันคิดได้คืออนุญาตให้มันแกว่งช้า แต่เมื่อผู้เล่นปล่อยลูกบอลฉันจะเพิ่มความเร็วลงบนลูกบอลในขณะที่ยังคงทิศทางไว้ ฉันไม่ชอบวิธีแก้ปัญหานี้เพราะมันดูปลอมและฉันยังคงมีปัญหาว่าลูกบอลกำลังลอยอยู่บนสายเว้นแต่ว่าฉันจะทำให้สายสั้นมาก .. กรุณาส่องไฟนี้ออกมาขอบคุณ! แก้ไข ขอบคุณสำหรับการป้อนข้อมูลของทุกคนฉันแก้ปัญหาด้วยการแกว่งแขนช้าและเมื่อผู้เล่นปล่อยลูกบอลคว้าความเร็วของบอลและสองครั้ง ดูเหมือนว่าเหมือนกับการเปลี่ยนขนาดขั้นตอน มีอีกสิ่งหนึ่งที่ฉันต้องทำ เนื่องจากแขนแกว่งช้ามากลูกบอลจึงแขวนอยู่ที่ปลายแขนแทนที่จะแกว่ง ฉันแก้ปัญหานี้โดยใช้แรงเท่ากับแรงโน้มถ่วงบนลูกบอลในระหว่างและเฉพาะในช่วงสวิง จากนั้นมันจะไม่แขวนที่นั่นอีกต่อไป แต่จะแกว่งแขนพร้อมกัน คำตอบของ @MrCranky มีรายละเอียดและดูเป็นไปได้ดังนั้นฉันจึงยอมรับ :)

3
Slerping กระจกหมุน
ฉันหมุนตัวละครเกมของฉันเพื่อดูที่เป้าหมายโดยใช้รหัสต่อไปนี้: transform.rotation = Quaternion.Slerp(startQuaternion, lookQuaternion, turningNormalizer*turningSpeed/10f) startQuaternion เป็นการหมุนปัจจุบันของตัวละครเมื่อกำหนดเป้าหมายใหม่ lookQuaternion เป็นทิศทางที่ตัวละครควรมองและมันก็เป็นแบบนี้: destinationVector = currentWaypoint.transform.position - transform.position; lookQuaternion = Quaternion.LookRotation(destinationVector, Vector3.up); TurningNormalizer เพิ่งTime.deltaTimeเพิ่มขึ้นและturningSpeedเป็นค่าคงที่ที่กำหนดในตัวแก้ไข ปัญหาคือในขณะที่ตัวละครเปลี่ยนตามที่ควรจะเป็นส่วนใหญ่มันมีปัญหาเมื่อมันต้องเข้าใกล้ 180 องศา จากนั้นในบางครั้งก็กระวนกระวายใจและสะท้อนการหมุน: ในภาพที่วาดไม่ดีตัวละคร (ด้านขวา) จะเริ่มหันไปทางวงกลมทางด้านซ้าย แทนที่จะแค่หมุนไปทางซ้ายหรือขวามันเริ่มต้น "mirror dance" นี้: มันเริ่มหมุนไปทางด้านหน้าใหม่ จากนั้นมันก็หันไปที่มุมเดียวกันทันที แต่อยู่อีกด้านหนึ่งและหมุนไปเรื่อย ๆ มันเป็นการ“ ทำมิเรอร์” นาน ๆ จนกว่ามันจะมองไปที่เป้าหมาย นี่คือสิ่งที่มี quaternions, slerping / lerping หรืออย่างอื่น? แก้ไข 1: เห็นได้ชัดว่าปัญหาไม่ได้เกิดจากการหมุนของตัวเอง …

1
ปริมาณการแพร่กระจายแสง: การกรองแบบแอนไอโซทรอปิกของข้อมูลปริมาณ
ฉันได้ดำเนินการขยายพันธุ์แสง Cascaded เล่มอัลกอริทึม (ไม่มีแชโดว์อ้อมยัง) สำหรับแบบ real-time กระจายโลกสว่างรายละเอียดที่นี่และที่นี่ ใช้งานได้ดี แต่ฉันยังคงพยายามแก้ไขสิ่งประดิษฐ์โดยเฉพาะอย่างยิ่ง สรุปสั้น ๆ คุณสามารถข้ามสิ่งนี้ได้หากคุณรู้วิธีการทำงานของอัลกอริทึมแล้ว อัลกอริธึมทำงานโดยการจัดเก็บข้อมูลแสงในรูปแบบของฮาร์โมนิกส์กลมในตาราง 3 มิติโดยเริ่มแรกข้อมูลในแต่ละเซลล์ของกริดมาจากการแสดงแผนที่เงาแบบขยาย ( แผนที่เงาสะท้อนแสง)) ที่มีสีและข้อมูลปกตินอกเหนือจากความลึก แนวคิดก็คือพิกเซลทั้งหมดที่มองเห็นโดยแหล่งกำเนิดแสงนั้นเป็นสาเหตุของการสะท้อนแสงทางอ้อมครั้งแรกดังนั้นคุณจึงจัดเก็บข้อมูลที่จำเป็นพร้อมกับบัฟเฟอร์ความลึกปกติที่คุณใช้สำหรับการทำแผนที่เงาและตัวอย่างข้อมูลทั้งหมดเพื่อเริ่มต้นตาราง 3D . ข้อมูลในตาราง 3 มิติจะถูกแพร่กระจายซ้ำ ๆ กัน (สำหรับการวนซ้ำแต่ละครั้ง) เผยแพร่ข้อมูลในเซลล์เดียวไปยังเพื่อนบ้านโดยตรงทั้งหมด 6 แห่ง (เหนือ, ล่าง, ซ้าย, ขวา, บน, ล่าง) เมื่อต้องการให้แสงฉากโดยใช้ข้อมูลในตารางคุณใช้การส่งผ่านหน้าจอแบบเต็มหน้าจอสำหรับแต่ละพิกเซลที่ผ่านการแรสเตอร์คุณมีตำแหน่งพื้นที่โลกของพื้นผิวที่มีการแรสเตอร์ (เช่นจาก G-Buffers ในการแรเงาแบบเลื่อน) ทราบว่าเซลของกริดหนึ่งพิกเซลบนหน้าจอเป็นของใคร นี่เป็นการทำงานที่ดีสำหรับส่วนใหญ่นี่คือภาพสองภาพที่ไม่มีการจำลอง GI และเพียงแค่คำศัพท์ล้อมรอบฮาร์ดโค้ดและถัดจากภาพด้วยอัลกอริทึม LPV สังเกตเห็นการสะท้อนสีบนพื้นผิวรายละเอียดเชิงลึกที่ดีขึ้น ฯลฯ ปัญหา เมื่อค้นหาเซลล์ในช่วงแสงการแก้ไข trilinear …

2
วิธีดึงดูด modders ให้กับเกมของคุณ?
ฉันกำลังพัฒนาเกม แต่ขณะที่ฉันกำลังทำอยู่คนเดียวปริมาณของเนื้อหาที่ฉันสามารถสร้างได้มี จำกัด มาก เนื่องจากว่าฉันต้องการให้เกมของฉันได้รับการดัดแปลงเพื่อจุดประสงค์นี้ฉันวางแผนที่จะสร้าง API modding ที่สมบูรณ์ซึ่งจะได้รับการเปิดเผยสำหรับการเขียนสคริปต์ Lua ฉันจะสร้างบทช่วยสอนเพื่อให้ผู้คนเริ่มต้น และเกม "ดั้งเดิม" ก็จะเป็น "mod" (คล้ายกับแผนที่ Warcraft III) คำถามของฉันคือนักพัฒนาสามารถทำอะไรได้บ้างเพื่อสนับสนุนการดัดแปลงเกม PS: เกมของฉันคือการเอาตัวรอดของผู้เล่นหลายคนแบบ sandbox-ish (ทุกอย่างเป็นขั้นตอน)

2
Coroutines ในซีรีส์
ฉันจะไปเกี่ยวกับการรวบรวมชุดการโทร Coroutine ที่ควรดำเนินการหลังจากที่อื่นได้อย่างไร ฉันได้ลองรับเอฟเฟกต์สีที่กระพริบวนลูปสีใน coroutine แต่มันไม่ทำงาน
9 unity 

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

2
ฉันจะเลือกสัดส่วนการปรับของโลกเกม 3 มิติได้อย่างไร
ฉันกำลังสร้างต้นแบบเกมรถถัง 3D พร้อมการจำลองทางฟิสิกส์บางอย่างฉันใช้ C ++ หนึ่งในการตัดสินใจที่ฉันต้องทำคือขนาดของโลกของเกมที่สัมพันธ์กับความเป็นจริง ตัวอย่างเช่นฉันสามารถพิจารณา 1 หน่วยการวัดในเกมเพื่อให้สอดคล้องกับความจริง 1 เมตร สิ่งนี้ให้ความรู้สึกเป็นสัญชาตญาณ แต่ฉันรู้สึกว่าฉันขาดอะไรบางอย่างไป ฉันสามารถคิดต่อไปนี้เป็นปัญหาที่อาจเกิดขึ้น: ความเข้ากันได้ของโปรแกรมการสร้างแบบจำลอง 3 มิติ (?) ความแม่นยำเชิงตัวเลข (สิ่งนี้สำคัญหรือไม่) โดยเฉพาะอย่างยิ่งในระดับขนาดใหญ่เกมอย่าง Battlefield มีแผนที่ขนาดใหญ่อย่างไรพวกเขาจะไม่สูญเสียความแม่นยำเชิงตัวเลขหากใช้การแมป 1: 1 กับมาตราส่วนโลกแห่งความเป็นจริงเนื่องจากการแสดงจุดลอยตัว ตัวเลข (เช่นกับการหล่อเรย์, การจำลองทางฟิสิกส์)? เพลย์ ฉันไม่ต้องการให้การเคลื่อนไหวของหน่วยรู้สึกช้าหรือเร็วในขณะที่ใช้ค่าเกือบโลกเหมือน-9.8 m/s^2แรงโน้มถ่วง (นี่อาจเป็นอัตนัย) การขยายขนาดสินทรัพย์ที่นำเข้าขึ้น / ลงตกลงหรือว่าเหมาะสมกับโลกที่มีขนาดดั้งเดิมหรือไม่ การแสดงผล ตาข่ายขนาดใหญ่ที่มีจุดสุดยอดเท่ากันนับช้าลงเพื่อแสดงผลหรือไม่? ฉันสงสัยว่าฉันควรแยกคำถามนี้เป็นหลายคำถามหรือไม่ ...

3
ทางเลือกที่ยืดหยุ่นสำหรับคลาส polymorphic ขนาดเล็กจำนวนมาก (เพื่อใช้เป็นคุณสมบัติหรือข้อความหรือเหตุการณ์) C ++
เกมของฉันมีสองคลาสที่มีประโยชน์มาก แต่ก็ค่อยๆเจ็บปวด ข้อความและคุณสมบัติ (คุณสมบัติเป็นส่วนประกอบหลัก) พวกเขาทั้งคู่มาจากคลาสพื้นฐานและมีสแตติก id เพื่อให้ระบบสามารถให้ความสนใจกับสิ่งที่พวกเขาต้องการ มันทำงานได้ดีมาก ... ยกเว้น ... ฉันกำลังสร้างประเภทข้อความและประเภทคุณสมบัติใหม่อยู่ตลอดเวลาขณะที่ฉันขยายเกม ทุกครั้งที่ฉันต้องเขียนไฟล์ 2 ไฟล์ (hpp และ cpp) และสำเร็จรูปจำนวนมากเพื่อให้ได้ classID และหนึ่งหรือสองชนิดข้อมูลมาตรฐานหรือตัวชี้ มันเริ่มที่จะทำให้การเล่นและการทดสอบความคิดใหม่ ๆ เป็นงานที่น่าเบื่อ ฉันต้องการเมื่อฉันต้องการสร้างข้อความใหม่หรือประเภทคุณสมบัติฉันต้องการให้สามารถพิมพ์บางสิ่งเช่น ShootableProperty: int gunType, float shotspeed; ItemCollectedMessage: int itemType; แทนการสร้างไฟล์ส่วนหัวและ cpp เขียนตัวสร้างรวมถึงผู้ปกครองชั้น ฯลฯ ฯลฯ มันอยู่ที่ประมาณ 20 - 40 บรรทัด (รวมถึงยามและทุกอย่าง) เพื่อทำในสิ่งที่เป็นตรรกะใน 1 หรือ 2 บรรทัดในใจของฉัน มีรูปแบบการเขียนโปรแกรมเพื่อหลีกเลี่ยงปัญหานี้หรือไม่? …

1
วิธีการใช้ OpenGL ที่ทันสมัยสำหรับเกม 2D?
ฉันพบบทแนะนำ "ทันสมัย" OpenGL (3.0+) มากมายสำหรับ 3D แต่ฉันพบว่าไม่มีอะไรเลยเมื่อมองหาข้อมูลเกี่ยวกับวิธีใช้สำหรับการพัฒนาเกม 2D ฉันจะเริ่มต้นใช้งาน OpenGL สำหรับ 2D gamedev ได้อย่างไร โดยเฉพาะฉันสนใจรับคำตอบของหัวข้อต่อไปนี้: ฉันจะตั้งค่าเมทริกซ์ต่าง ๆ สำหรับการฉายภาพแบบออโธกราฟฟิคได้อย่างไร? มีการใช้เฉดสีอย่างมากในแอปพลิเคชัน 2D เหมือนกับใน 3D หรือไม่? ถ้าเป็นเช่นนั้นอะไรคือวัตถุประสงค์ของพวกเขาในการตั้งค่า 2D? ฉันจะจัดการกับพื้นผิวจำนวนมากที่จำเป็นสำหรับเกม 2D ได้อย่างไร ฉันขอโทษสำหรับคำถามที่ค่อนข้างกว้าง แต่ฉันใช้เวลานานในการค้นหาและฉันพบข้อมูลที่มีประโยชน์น้อยมากที่ใช้กับ OpenGL ที่ทันสมัย
9 opengl  2d 

5
ฉันจะขยายขนาดพิกเซลภาพโดยไม่ทำให้พร่ามัวใน GM Studio ได้อย่างไร
ฉันกำลังสร้างเกมใน Game Maker Studio ที่ใช้ภาพพิกเซล เมื่อฉันเปิดเกมพื้นผิวที่ขยายขนาดทั้งหมดนั้นพร่ามัวจริงๆ (ไม่เกิดกับเด็กเล็ก) ตัวอย่างเช่นภาพนี้ แสดงผลในเกมเช่นนี้: อย่างไรก็ตามมีการปรับขนาดพิกเซลขนาดเล็กเข้าไปในพิกเซลขนาดใหญ่แทนพิกเซลเบลอ ?

2
การสร้างข้อมูลคำนามสามเหลี่ยม
เมื่อระบุรายการของดัชนีสามเหลี่ยมเราจะแปลงมันไปยังรายการของดัชนีด้วยการใช้คำคุณศัพท์สำหรับ shader เรขาคณิตได้อย่างไร โปรดทราบว่าเรากำลังพูดถึงดัชนีที่นี่อย่างเคร่งครัด- มีจุดยอด แต่เราจะมุ่งเน้นไปที่ดัชนีเพียงอย่างเดียวเพราะเราสามารถใช้เพื่อจับคู่จุดยอดที่ซ้ำกันโดยไม่ต้องไปเปรียบเทียบจุดลอยตัวและ epsilons - งานนั้นมี เสร็จเรียบร้อยแล้ว ฉันรู้ว่าสำหรับสามเหลี่ยมใด ๆ ที่ระบุในรายการดัชนี {0, 1}, {1, 2} และ {2, 0} (หรือ {n, n + 1}, {n + 1, n + 2}, { n + 2, n} หากคุณต้องการ) มันเป็นขอบ รายการดัชนีมีรูปแบบที่ดีและเคารพลำดับการหมุนอย่างถูกต้อง ฉันรู้ว่าสำหรับขอบใดก็ตามที่กำหนดเราสามารถค้นหารายการทั้งหมดสำหรับสามเหลี่ยมอีกอันที่ใช้สองดัชนีเหล่านั้นและดัชนีที่สามของสามเหลี่ยมนั้นเป็นดัชนีที่ใช้ในการทำสามเหลี่ยมที่อยู่ติดกันให้เสร็จ ฉันรู้ว่าในรายการคำคุณศัพท์แต่ละรูปสามเหลี่ยมดั้งเดิมนั้นแทนด้วย 6 ดัชนีดัชนีดั้งเดิมเข้าสู่ช่อง 0, 2, 4; ดัชนีใหม่เพื่อให้ adjacency เสร็จสมบูรณ์เข้าไปในสล็อต 1, …

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