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

กระบวนการแก้ไขซอฟต์แวร์เพื่อทำให้บางส่วนทำงานได้อย่างมีประสิทธิภาพมากขึ้นหรือใช้ทรัพยากรน้อยลง โดยทั่วไปนี่หมายถึงมันดำเนินการได้เร็วขึ้นหรือต้องการทรัพยากรน้อยลง

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

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 

1
ในเอนจินฟิสิกส์ 2 มิติฉันจะหลีกเลี่ยงการชนที่ไร้ประโยชน์ได้อย่างไรเมื่อวัตถุเข้ามาพัก
ในเครื่องมือฟิสิกส์ที่ฉันกำลังพัฒนา (เพื่อการเรียนรู้) โดยใช้ความรัก -2dฉันใช้ความละเอียดการชนในลักษณะนี้: FixedUpdate(dt) // I use fixed timestep foreach collide c1 in allNotStaticColliders c1.integartePhysic // i.e. apply gravitational force.. foreach collider c2 "near" c1 // "near"= I use spatial hashing if collide(c1,c2) resolve collision (c1,c2) // the heavy operation collison callbacks c1 collison callbacks c2 ... อย่างที่คุณเห็นในตอนท้ายของอนิเมชั่น gif …

1
STL มีประสิทธิภาพเพียงพอสำหรับอุปกรณ์พกพาหรือไม่
เมื่อพูดถึงการพัฒนาเกมมือถือบน iOS และ Android NDK นักพัฒนาบางคนเขียนคอนเทนเนอร์ C ++ ของตัวเองขณะที่คนอื่นอ้างว่า STL นั้นเพียงพอสำหรับการพัฒนาเกมมือถือ (ตัวอย่างเช่นผู้เขียนโปรแกรม 3D iPhone ใช้ STL แทนวัตถุประสงค์ - C ในตัวอย่างของเขาการป้องกันของเขาคือ STL นั้นไม่ช้ากว่า Objective-C) จากนั้นก็มีนักพัฒนามือถือที่ละทิ้ง C ++ ทั้งหมดและพัฒนาเกมทั้งหมด (หรือส่วนใหญ่) ในภาษา C (C89 / C90) ประโยชน์และข้อเสียของแต่ละวิธีมีอะไรบ้าง

7
วิกิพีเดียอัลกอริธึมการนำทาง * ใช้เวลานาน
ฉันติดตั้ง A * pathfinding ใน C # สำเร็จแล้ว แต่ช้ามากและฉันไม่เข้าใจว่าทำไม ฉันพยายามไม่เรียงลำดับรายการ openNodes แต่ก็ยังเหมือนเดิม แผนที่ 80x80 และมี 10-11 โหนด ฉันเอา pseudocode จากที่นี่Wikipedia และนี่คือการดำเนินการของฉัน: public static List<PGNode> Pathfind(PGMap mMap, PGNode mStart, PGNode mEnd) { mMap.ClearNodes(); mMap.GetTile(mStart.X, mStart.Y).Value = 0; mMap.GetTile(mEnd.X, mEnd.Y).Value = 0; List<PGNode> openNodes = new List<PGNode>(); List<PGNode> closedNodes = new List<PGNode>(); …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.