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

อุปกรณ์ป้อนข้อมูลที่ใช้กันทั่วไปในเกมคอมพิวเตอร์ มีรูปแบบการเคลื่อนไหวที่ตรงกว่าเมื่อเทียบกับอินพุตทิศทาง

1
เป้าหมายของเมาส์ใน FPS
ฉันต้องการสร้าง First Person Shooter และเลื่อนกล้องด้วยเมาส์ ปัญหาคือเมื่อเคอร์เซอร์ถึงขีด จำกัด ของหน้าจอกล้องจะไม่หมุนอีกต่อไป ฉันจะทำให้เมาส์อยู่ตรงกลางและตรวจจับการเคลื่อนไหวได้อย่างไร?

6
ฉันสามารถ (อย่างปลอดภัย) สมมติว่าคนที่เล่นเกมของฉันมีปุ่มกลางของเมาส์หรือไม่?
ชื่อค่อนข้างบอกว่ามันทั้งหมด ฉันกำลังเขียนเกมบนเดสก์ท็อปซึ่งอาจไม่สามารถเล่นได้โดยนักเล่นเกมทั่วไป ดังนั้นความคาดหวังของฉันคือผู้ใช้เกือบทุกคนจะมีเม้าส์ที่มีปุ่มล้อเลื่อน + อยู่แล้ว มันเป็นเรื่องจริงเหรอ? คำถามนี้มีไว้สำหรับ "นักเล่นเกม" - ฉันไม่สนใจว่าแล็ปท็อปของคุณยายของฉันไม่มีปุ่มนั้นหรือไม่ (แน่นอนฉันรู้ว่าฉันควรคิดถึงระบบที่อนุญาตให้เปลี่ยนการตั้งค่าอินพุตเพื่อให้เกมเล่นได้แม้ไม่มีปุ่มเมาส์ที่สาม)

1
การเรนเดอร์ Isometric และการเลือก?
ฉันกำลังมองหาสูตรในการพล็อต (หน้าจอโลก>) และตัวเลือกเมาส์ (หน้าจอโลก>) กระเบื้องสามมิติในโลกรูปเพชร สิ่งที่ฉันพยายามทำอยู่เสมอเป็นไปได้ วิธีปกติ / ถูกต้องในการทำเช่นนี้คืออะไร?

6
วิธีแยกความแตกต่างคลิกครั้งเดียวและดับเบิลคลิกอย่างถูกต้องใน Unity3D โดยใช้ C #
สิ่งที่ฉันพยายามที่จะเข้าใจและเรียนรู้ที่นี่เป็นสิ่งที่เป็นพื้นฐาน: สิ่งที่เป็นวิธีทั่วไปมากที่สุดและมากที่สุดในการขัดถูกต้องความแตกต่างคลิกเดียวและสองคลิกสำหรับ 3 ปุ่มเมาส์หลักในความสามัคคีโดยใช้ C #? การเน้นที่คำว่าถูกต้องไม่ใช่เพื่ออะไร แม้ว่าฉันจะประหลาดใจที่สิ่งนี้ดูเหมือนจะไม่เคยถูกถามในเว็บไซต์นี้มาก่อนแน่นอนว่าฉันค้นหาและพบคำถามที่คล้ายกันมากมายในฟอรัมของ Unity และหน้าตอบคำถามของ Unity อย่างไรก็ตามเนื่องจากเป็นกรณีที่มีคำตอบที่โพสต์ไว้ในแหล่งข้อมูลเหล่านี้พวกเขาทั้งหมดดูเหมือนจะผิดธรรมดาหรืออย่างน้อยก็ชำนาญเล็กน้อย ให้ฉันอธิบาย วิธีแก้ปัญหาที่เสนอมักจะมีสองวิธีและข้อบกพร่องที่สอดคล้องกัน: ทุกครั้งที่มีการคลิกเกิดขึ้นให้คำนวณเดลต้าเวลาตั้งแต่คลิกสุดท้ายและหากมีขนาดเล็กกว่าเกณฑ์ที่กำหนดระบบจะตรวจจับการคลิกสองครั้ง อย่างไรก็ตามวิธีการแก้ปัญหานี้ส่งผลให้มีการตรวจพบการคลิกครั้งเดียวอย่างรวดเร็วก่อนที่จะตรวจพบดับเบิลคลิกซึ่งไม่เป็นที่พึงปรารถนาในสถานการณ์ส่วนใหญ่เพราะจะเปิดใช้งานการกระทำทั้งคลิกเดียวและดับเบิลคลิก ตัวอย่างหยาบ: float dclick_threshold = 0.25f; double timerdclick = 0; if (Input.GetMouseButtonDown(0) { if (Time.time - timerdclick) > dclick_threshold) { Debug.Log("single click"); //call the SingleClick() function, not shown } else { Debug.Log("double click"); //call the …
15 c#  unity  mouse 

6
วิธีจัดการกับอินพุตของเมาส์ใน XNA
ฉันกำลังพัฒนาการ์ดเกมใน XNA มีOnClickเหตุการณ์ใดใน XNA สำหรับวัตถุหรือไม่ ฉันพยายามที่จะทำให้ไพ่เคลื่อนที่เมื่อผู้เล่นคลิกที่ไพ่ ในโครงการนี้มีคลาส Sprite ที่วาดการ์ด แต่ฉันติดอยู่เล็กน้อยเพราะฉันไม่รู้วิธีใช้OnClickเหตุการณ์หรืออะไรทำนองนั้น
13 xna  c#  input  mouse 

4
กับดักหนูใน SDL
ฉันจะดักจับเมาส์ของผู้ใช้ในเกมได้อย่างไร มันไม่ใช่เกมแบบเต็มหน้าจอ แต่ฉันต้องการมันเพื่อที่ผู้ใช้จะไม่สามารถลากเมาส์ไปด้านนอกหน้าจอ ฉันต้องตรวจสอบพิกัดของเมาส์และ SDL_WarpCursor เพื่อให้พูดในหน้าต่าง (ด้วยตนเอง) หรือมีวิธีอัตโนมัติหรือไม่? ขอบคุณ.
12 sdl  input  mouse 

4
เป็นไปได้หรือไม่ที่จะตรวจจับหนูสองตัวที่แตกต่างกันในเวลาเดียวกันและมีการบันทึกการเคลื่อนไหวแยกจากกัน? [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน5 ปีที่ผ่านมา ฉันกำลังคิดที่จะสร้างเกมที่ต้องใช้หนูสองตัวเล่น มันต้องลงทะเบียนการเคลื่อนไหวแยกจากกัน เป็นไปได้ไหม หรือสถาปัตยกรรม Windows ไม่อนุญาตให้ทำสิ่งนั้น? ขอบคุณ.
12 input  windows  mouse 

2
วิธีการใส่เมาส์ล่าช้า?
ฉันมีเกมรถและแนวคิดก็คือผู้เล่นนั้นเมา ฉันต้องการอินพุตที่ล่าช้าจากเมาส์ซึ่งคุณเลื่อนเมาส์ไปทางด้านข้างเพื่อเลื่อน ฉันจะตั้งค่าการหน่วงเวลาคงที่ระหว่างอินพุตที่ผู้ใช้ให้และจำนวนเทิร์นของรถได้อย่างไร? ตอนนี้ฉันมีสิ่งนี้: h = Mathf.Lerp(h, (((Input.mousePosition.x / Screen.width) * 2) - 1), Time.deltaTime * 2); สิ่งที่เกิดขึ้นคือการเลี้ยวล่าช้า แต่ช้ามากกล่าวอีกนัยหนึ่งถ้าฉันเลื่อนเมาส์เร็วรถจะหมุนช้ามาก แต่ถ้าฉันหมุนตัวคูณเพื่อTime.deltaTimeให้รถหมุนเร็วขึ้น แต่เอฟเฟกต์ล่าช้าจะลดลง . ฉันจะทำสิ่งนี้ได้อีก
11 unity  c#  input  mouse 

1
C # / XNA รับตำแหน่งเมาส์ของฮาร์ดแวร์
ฉันใช้ C # และพยายามรับตำแหน่งเมาส์ฮาร์ดแวร์ สิ่งแรกที่ฉันลองคือฟังก์ชั่น XNA ง่าย ๆ ที่ใช้งานง่าย Vector2 position = new Vector2(Mouse.GetState().X, Mouse.GetState().Y); หลังจากนั้นฉันก็ทำการวาดเมาส์เช่นกันและเปรียบเทียบกับเมาส์ฮาร์ดแวร์ของ windows แล้วเมาส์ใหม่ที่มีพิกัด xna ที่ระบุนี้คือ "หยุดหย่อน" โดยที่ฉันหมายความว่ามันอยู่เบื้องหลังโดยไม่กี่เฟรม ตัวอย่างเช่นหากเกมทำงานที่ 600 fps คำสาปมันจะตอบสนอง แต่ที่ความล่าช้าของเมาส์ซอฟต์แวร์ 60 fps ไม่เป็นที่ยอมรับอีกต่อไป ดังนั้นฉันจึงลองใช้สิ่งที่ฉันคิดว่าเป็นเมาส์ฮาร์ดแวร์ [DllImport("user32.dll")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetCursorPos(out POINT lpPoint); แต่ผลลัพธ์ก็เหมือนกันทุกประการ ฉันยังลองรับเคอร์เซอร์ของ Windows และนั่นก็เป็นจุดสิ้นสุดเช่นกัน - ใช้งานได้ แต่มีความล่าช้าเท่าเดิม ล้อเล่นกับฟังก์ชัน xna: …

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
วิธีการตรวจหาเม้าส์สำหรับภาพ UI ใน Unity 5
ฉันมีภาพที่ฉันได้ตั้งค่าเพื่อเลื่อนไปมาและซูมเข้าและออกจาก ปัญหาคือการซูมสามารถทำได้จากทุกที่ในฉาก แต่ฉันต้องการแค่ซูมเมื่อเมาส์อยู่เหนือภาพ ฉันได้ลองใช้ OnMouseEnter, OnMouseOver, ทริกเกอร์เหตุการณ์, ทั้งสามตัวที่ไม่มี collider, กับ collider, กับ collider trigger, และทั้งหมดที่อยู่บนภาพเองและบนวัตถุเกมที่ว่างเปล่า อย่างไรก็ตามไม่มีของเหล่านั้นทำงานได้ ... ดังนั้นฉันจึงนิ่งงันอย่างแน่นอน ... ใครช่วยฉันออกจากที่นี่! นี่คือสคริปต์ของฉัน: private float zoom; public float zoomSpeed; public Image map; public float zoomMin; public float zoomMax; void Update () { zoom = (Input.GetAxis("Mouse ScrollWheel") * Time.deltaTime * zoomSpeed); map.transform.localScale += …
9 unity  c#  gui  image  mouse 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.