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

การประเมินผลลัพธ์ (โดยปกติจะเป็นตัวเลข) โดยพิจารณาจากชุดของผลลัพธ์ที่ทราบ

2
การคาดการณ์แบ่งการตรวจจับการชนกัน
ก่อนที่จะใช้การคาดการณ์กับการเคลื่อนไหวของสไปรต์การชนของฉันทำงานได้อย่างสมบูรณ์ อย่างไรก็ตามหลังจากที่ใช้การคาดการณ์กับการเคลื่อนไหวของสไปรต์ของฉัน (เพื่อทำให้สิ่งต่าง ๆ เรียบ) การชนจะไม่ทำงานอีกต่อไป นี่คือสิ่งที่ทำงานก่อนการคาดการณ์: อย่างไรก็ตามหลังจากที่ฉันใช้การคาดการณ์ของฉันแล้ว ฉันถือว่านี่เป็นเพราะมันทำหน้าที่ประสานงานใหม่ที่ได้รับการผลิตโดยขั้นตอนการอนุมาน (ซึ่งตั้งอยู่ในการเรียกของฉัน) หลังจากที่ฉันใช้การคาดการณ์ของฉัน วิธีแก้ไขพฤติกรรมนี้ ฉันลองใส่การตรวจสอบการชนกันเพิ่มเติมหลังจากการคาดการณ์ - นี่ดูเหมือนจะเคลียร์ปัญหาจำนวนมาก แต่ฉันได้ตัดออกเพราะการวางตรรกะในการแสดงผลของฉันไม่เป็นไปตามคำถาม ฉันได้ลองทำสำเนาตำแหน่ง spriteX โดยคาดการณ์และวาดภาพโดยใช้สิ่งนั้นแทนที่จะเป็นแบบดั้งเดิมดังนั้นการปล่อยให้แบบดั้งเดิมยังคงอยู่เพื่อตรรกะในการรับ - นี่ดูเหมือนจะเป็นตัวเลือกที่ดีกว่า แต่ก็ยังสร้างผลแปลก ๆ เมื่อชนกับผนัง ฉันค่อนข้างแน่ใจว่านี่ไม่ใช่วิธีที่ถูกต้องในการจัดการกับเรื่องนี้ ฉันพบคำถามที่คล้ายกันสองสามข้อที่นี่ แต่คำตอบไม่ได้ช่วยฉัน นี่คือรหัสการคาดการณ์ของฉัน: public void onDrawFrame(GL10 gl) { //Set/Re-set loop back to 0 to start counting again loops=0; while(System.currentTimeMillis() > nextGameTick && loops < maxFrameskip){ …

3
อัลกอริทึมตรวจจับการชนกันของเฟสแคบ
การตรวจจับการชนมีสามขั้นตอน Broadphase : มันวนลูประหว่าง objec ทั้งหมดที่สามารถโต้ตอบบวกได้รับอนุญาตถ้ามันจะเร่งความเร็ววน Narrowphase : พิจารณาว่าพวกเขาชนกันและบางครั้งอย่างไรไม่มีผลบวกปลอม การแก้ไข : แก้ไขการชน คำถามที่ฉันถามเป็นเรื่องเกี่ยวกับเฟสแคบ มีอัลกอริธึมหลายอย่างแตกต่างกันในความซับซ้อนและความแม่นยำ Hitbox intersection : นี่เป็นอัลกอริทึม a-posteriori ที่มีความซับซ้อนต่ำที่สุด แต่ก็ไม่แม่นยำเกินไป จุดตัดสี : จุดตัด Hitbox สำหรับแต่ละพิกเซล, a-posteriori, พิกเซลสมบูรณ์แบบ, ไม่แม่นยำในเรื่องของเวลา, ความซับซ้อนสูงขึ้น การแยกทฤษฎีบทแกน : มันถูกใช้บ่อยกว่า, แม่นยำสำหรับรูปสามเหลี่ยมอย่างไรก็ตาม, a-posteriori, เนื่องจากมันหาขอบไม่ได้, เมื่อพิจารณากรอบสุดท้ายในบัญชี, มันมีเสถียรภาพมากขึ้น Linear raycasting : อัลกอริทึม A-Priori ซึ่งเป็นประโยชน์สำหรับฟิสิกส์กึ่งที่สมจริงมองหาจุดตัดที่แม่นยำยิ่งกว่า SAT แต่มีความซับซ้อนมากขึ้น การแก้ไขเส้นโค้ง: A-Priori, แม่นยำยิ่งขึ้นกว่ารังสีเชิงเส้น, coplexity …

1
การแก้ไขความลึกสำหรับบัฟเฟอร์ z กับ scanline
ฉันต้องเขียนซอฟต์แวร์ 3d rasterizer ของตัวเองและจนถึงตอนนี้ฉันสามารถฉายโมเดล 3 มิติของฉันที่สร้างจากรูปสามเหลี่ยมลงในพื้นที่ 2d: ฉันหมุนแปลและฉายจุดเพื่อให้ได้พื้นที่ 2 มิติของสามเหลี่ยมแต่ละอัน จากนั้นฉันใช้จุดสามเหลี่ยม 3 จุดและใช้อัลกอริธึม scanline (โดยใช้การแก้ไขเชิงเส้น) เพื่อค้นหาทุกจุด [x] [y] ตามขอบ (ซ้ายและขวา) ของรูปสามเหลี่ยมเพื่อให้ฉันสามารถสแกนสามเหลี่ยมในแนวนอนได้ เรียงต่อกันแล้วเติมด้วยพิกเซล วิธีนี้ใช้ได้ผล ยกเว้นฉันต้องใช้ z-buffering ด้วย ซึ่งหมายความว่าการรู้พิกัด z ที่หมุนและแปลของจุดยอด 3 จุดของรูปสามเหลี่ยมฉันต้องแก้ไขพิกัด z สำหรับจุดอื่น ๆ ทั้งหมดที่ฉันพบด้วยอัลกอริทึมสแกนไลน์ของฉัน แนวคิดดูเหมือนชัดเจนพอแรกพบ Za และ Zb ด้วยการคำนวณเหล่านี้: var Z_Slope = (bottom_point_z - top_point_z) / (bottom_point_y - top_point_y); …

5
ทำไมฉันไม่สามารถใช้โอเปอเรเตอร์ '> =' กับ Vector3s ได้
ฉันพยายามที่จะได้รับรูปสี่เหลี่ยมผืนผ้าย้ายไปมาระหว่างสองตำแหน่งที่ผมพูดถึงและ_positionA ทั้งสองประเภท_positionB Vector3สี่เหลี่ยมผืนผ้าเคลื่อนไหวได้ดี อย่างไรก็ตามเมื่อมันมาถึง_positionBมันจะไม่เคลื่อนที่ในทิศทางตรงกันข้ามเหมือนอย่างที่ควร ฉันกลับไปที่โค้ดเพื่อดู ฉันมาถึงข้อสรุปว่าเป็นวัตถุย้ายที่ifงบในรหัสพลาดเฟรมซึ่งในตำแหน่ง rects _positionBเท่ากับ ฉันตัดสินใจที่จะปรับเปลี่ยนรหัสไปในทิศทางที่ตรงกันข้ามถ้าตำแหน่ง rects คือมากกว่าหรือเท่ากับ _positionBรหัสของฉันไม่ยาวเกินไปดังนั้นฉันจะแสดงด้านล่าง: using UnityEngine; using System.Collections; public class Rectangle : MonoBehaviour { private Vector3 _positionA = new Vector3(-0.97f, -4.28f); //Start position private Vector3 _positionB = new Vector3(11.87f, -4.28f); //End position private Transform _rect_tfm; private bool _atPosA = false, _atPosB = …
9 unity  c#  vector  mathematics  vector  matrix  unity  c#  transformation  java  3d  terrain-rendering  shading  ios  opengl-es  opengl  rendering  optimization  python  scripting  minecraft-modding  modding  pc  3d-meshes  mesh  culling  point-cloud  networking  interpolation  mathematics  game-design  ai  game-mechanics  animation  unreal-4  skeletal-animation  3dsmax  unity  c#  3d  opengl  c++  textures  unity  ide  cocos2d  cocos2d-x-js  unity  c#  mono  il2cpp  c++  game-loop  timer  linux  flash  actionscript-3  java  glsl  c++  vector  entity-component  c++  directx11  windows  visual-studio  libgdx  mouse  unity  c#  architecture  storage  unity  c#  rotation  coordinates  quaternion  vrpn  movement  vector  unreal-4  unity  shaders  unity  gui  text  bug  shooter  3d  animation  rendering  voxels  c++  mmo  multithreading  linux  textures  procedural-generation  terrain-rendering  multiplayer  mmo  game-state  java  android  libgdx  opengl  procedural-generation  unity  gui  3d  animation  tools  geometry-shader  mobile  advertisements  unity  c#  animation  scripting  unity  animation  unityscript  coroutines  unity  shaders  lighting  camera 

2
อินพุตฝั่งเซิร์ฟเวอร์
ขณะนี้ในเกมของฉันลูกค้าไม่มีอะไรนอกจากเป็น renderer เมื่อมีการเปลี่ยนแปลงสถานะอินพุตไคลเอนต์จะส่งแพ็กเก็ตไปยังเซิร์ฟเวอร์และย้ายผู้เล่นราวกับว่ากำลังประมวลผลอินพุต แต่เซิร์ฟเวอร์มีตำแหน่งสุดท้ายที่บอกตำแหน่ง วิธีนี้ใช้งานได้ดีโดยทั่วไปยกเว้นปัญหาที่สำคัญอย่างหนึ่ง: การหลุดจากขอบ โดยทั่วไปหากผู้เล่นเดินไปที่ขอบพูดหน้าผาและหยุดทันทีก่อนที่จะออกจากขอบบางครั้งในวินาทีต่อมาเขาจะหายตัวไปจากขอบ นี่เป็นเพราะแพ็คเก็ต "ฉันหยุดกด W" ถูกส่งหลังจากเซิร์ฟเวอร์ประมวลผลข้อมูล นี่คือแผนภาพความล่าช้าเพื่อช่วยให้คุณเข้าใจสิ่งที่ฉันหมายถึง: http://i.imgur.com/Prr8K.png ฉันสามารถส่งแพ็กเก็ต "W Pressed" แต่ละเฟรมเพื่อให้เซิร์ฟเวอร์ประมวลผล แต่ดูเหมือนว่าจะเป็นวิธีแก้ปัญหาแบนด์วิดท์ที่มีราคาแพง ความช่วยเหลือใด ๆ ที่ชื่นชม!
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.