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

LibGDX เป็นเฟรมเวิร์กการพัฒนาเกมข้ามแพลตฟอร์ม Java ที่ใช้ OpenGL (ES) ที่ทำงานบน Windows, Linux, Mac OS X, Android, iOS และเบราว์เซอร์ที่เปิดใช้งาน WebGL ของคุณ

5
ฉันจะให้ความสูงของภาพลวงตาแก่ลูกบอลใน 2D ได้อย่างไร?
ในเกมฟุตบอลจากบนลงล่าง 2D บางครั้งลูกบอลได้รับภาพลวงตาของการอยู่ในอากาศเช่นด้านล่าง: ฉันจะบรรลุสิ่งนี้ได้อย่างไร
40 java  libgdx  physics 

3
ทีมป้องกันการเขียนทับทำงานในไฟล์ต้นฉบับได้อย่างไร [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน4 ปีที่แล้ว มันเป็นไปได้สำหรับฉันที่มีหลายคนที่กำลังทำงานอยู่ในขณะเดียวกันเช่นเอ็นจิ้นเกม สมมติว่านักพัฒนาคนหนึ่งกำลังทำงานAudio.cppและนักพัฒนาที่สองก็กำลังทำงานอยู่Audio.cppสิ่งนี้จัดการโดยทั่วไปในทีมขนาดใหญ่เพื่อต่อสู้กับการเขียนทับได้อย่างไร (ในคำอื่น ๆ ที่จะหยุดสองนักพัฒนาจากการเปิดไฟล์จนกว่านักพัฒนาคนหนึ่งจะเสร็จสิ้น)
26 project-management  version-control  teamwork  java  2d  collision-detection  vector  collision-resolution  unity  directx  directx11  directx10  xna  ios  monogame  windows-phone-8  xamarin  design-patterns  oop  xna  collision-detection  collision-resolution  bounding-boxes  rotation  collision-detection  mathematics  javascript  algorithm  separating-axis-theorem  xna  2d  monogame  image  xna  directx  graphics  performance  opengl  2d  3d  c++  directx11  unity  c#  scale  c#  xna  collision-detection  collision-resolution  leaderboards  scoring  glsl  srgb  tilemap  three.js  tiled  unity  physics  xml  dialog-tree  xna  c#  .net  opengl  lwjgl  vbo  physics  graphics  procedural-generation  simulations  water  opengl  java  textures  lwjgl  frame-buffer  unity  unity  2d  collision-detection  collision-resolution  trigonometry  java  android  libgdx  xna  c#  frame-rate  c++  unreal-4  procedural-generation  java  graphics  lwjgl  slick  c++  software-engineering 

4
วิธีการทำให้เคลื่อนไหว 2d นามธรรมลงบนผิวน้ำ?
ต้องการปรับปรุงโพสต์นี้หรือไม่? ให้คำตอบโดยละเอียดสำหรับคำถามนี้รวมถึงการอ้างอิงและคำอธิบายว่าทำไมคำตอบของคุณถึงถูกต้อง คำตอบที่ไม่มีรายละเอียดเพียงพออาจแก้ไขหรือลบออกได้ ขณะนี้ฉันใช้เกมที่มีมุมมองจากบนลงล่างของมหาสมุทร ฉันใช้สิ่งต่อไปนี้เป็นพื้นผิวที่เป็นนามธรรมเล็กน้อย: พื้นผิวที่แท้จริงมีความโปร่งใสฉันเพิ่มสีเขียวเหมือนเพื่อความชัดเจน ปัญหาที่ฉันมีอยู่ในตอนนี้คือฉันไม่รู้ว่าจะทำให้พื้นผิวนี้เคลื่อนไหวอย่างไรดังนั้นน้ำจึงดูดี ฉันพยายามย้ายพื้นผิวด้วยคลื่นบาป: texture.y += sin(angle). แน่นอนว่าตอนนี้พื้นผิวทั้งหมดกำลังเคลื่อนไหวซึ่งดูไม่สมจริง สิ่งต่อไปที่ฉันพยายามคือเพิ่มเลเยอร์อื่นและใช้เอฟเฟกต์พารัลแลกซ์ ดังนั้นการสะท้อนกลับภายใต้ผิวน้ำก็จะเคลื่อนไหวเช่นกัน แต่ช้ากว่ามาก มันดูดีขึ้นเล็กน้อย แต่ก็ยังไม่ ... ดีพอ ฉันคิดว่าอนิเมชั่นที่ดูดีที่สุดน่าจะเป็นถ้าแต่ละเซลล์จะขยายและหดตัวเช่นเว็บหรือผ้า ลองคิดดูว่าถ้าใครจะดึงจุดยอดหนึ่งของเซลล์เหล่านี้เล็กน้อยและเซลล์เพื่อนบ้านจะขยายตัวและเซลล์ที่ฉันดึงเข้าหา (หรือกดไปที่) จะหดตัว ชนิดของใยสปริง (?) แต่ฉันไม่มีเงื่อนงำวิธีการใช้สิ่งนี้: แบบจำลองคณิตศาสตร์สำหรับเรื่องนี้คืออะไร? บางสิ่งบางอย่างกับสปริงแรงผลัก / ดึงอยู่ที่ไหน และถ้าเป็นเช่นนั้นฉันจะแมปโมเดลนี้กับพื้นผิวที่กำหนดได้อย่างไร รักษาความโค้งทั้งหมดและสิ่งที่ไม่ ... (ฉันยังเปิดรับความคิดที่แตกต่างกัน / คำตอบเกี่ยวกับวิธีการเคลื่อนไหวพื้นผิวที่กำหนดความสมจริงไม่ได้เป็นจุดที่นี่เพียงแค่น้ำดูดีเช่นการเคลื่อนไหว ... ) โซลูชันจาก DMGregory ฉันโพสต์ตัวอย่าง libgdx ในโพสต์นี้: ภาพเคลื่อนไหวน้ำ 2d ขรุขระและไม่ราบรื่น (ดูคำตอบเกี่ยวกับการกรองพื้นผิว)
24 2d  libgdx  animation  water 

5
ฉันจะสร้าง HUD บนหน้าจอใน libgdx ได้อย่างไร
ฉันใหม่สำหรับ libgdx และฉันพบว่าฉันกำลังถูกทำให้งงโดยสิ่งที่ง่ายที่สุด ดูเหมือนว่าต้องการให้ฉันทำสิ่งต่าง ๆ ด้วยวิธีเฉพาะ แต่เอกสารไม่ได้บอกฉันว่ามันคืออะไร ฉันต้องการสร้างเกม 2d ที่เรียบง่ายซึ่งผู้เล่นควบคุมยานอวกาศ ล้อเมาส์จะซูมเข้าหรือออกและข้อมูลและการควบคุมจะปรากฏขึ้นบนหน้าจอ แต่ฉันไม่สามารถทำให้ล้อเมาส์ไม่ซูม UI ได้ ฉันลอง futzing กับเมทริกซ์การฉายในระหว่าง นี่คือรหัส (ปัจจุบัน) ของฉัน: public class PlayStage extends Stage { ... public void draw() { // tell the camera to update its matrices. camera.update(); // tell the SpriteBatch to render in the // coordinate …
23 libgdx 

3
เล่นวิดีโอด้วย LibGDX
มีวิธีการเล่นวิดีโอด้วย LibGDX หรือไม่? ฉันต้องการใส่วิดีโอเป็นหน้าจอเริ่มต้นของฉันใน Android แต่ฉันไม่ต้องการใช้ Android SDK เพราะฉันใช้ LibGDX และฉันเกือบจะเสร็จแล้ว: /
22 android  libgdx  video 

4
การแก้ปัญหาความเป็นอิสระใน libGDX
ฉันจะทำให้ความละเอียด / ความหนาแน่นของเกม libGDX ของฉันเป็นอิสระได้อย่างไร มีวิธีการระบุขนาดภาพเป็น "แน่นอน" โดยไม่คำนึงถึงความหนาแน่นพื้นฐานหรือไม่? ฉันสร้างเกมสำหรับเด็กที่เรียบง่าย เพียงแค่สไปรต์แสดงบนหน้าจอและข้อความสำหรับเมนู (เมนูตัวเลือกเป็นหลัก) สิ่งที่ฉันต้องการรู้คือฉันจะทำให้การแก้ไข Sprite / แบบอักษรของฉันเป็นอิสระได้อย่างไร (ฉันห่อไว้ในชั้นเรียนของฉันเองเพื่อทำให้สิ่งต่าง ๆ ง่ายขึ้น) เนื่องจากเป็นเกมสำหรับเด็กที่เรียบง่ายฉันไม่จำเป็นต้องกังวลเกี่ยวกับ "พื้นที่ที่สามารถเล่นได้" ของเกม ฉันต้องการใช้พื้นที่หน้าจอให้มากที่สุด สิ่งที่ฉันทำอยู่ในตอนนี้ซึ่งดูเหมือนไม่ถูกต้องที่สุดคือการสร้างภาพที่เหมาะสำหรับความละเอียดขนาดใหญ่จากนั้นย่อขนาด (หรือน้อยมาก) ให้พอดีกับขนาดหน้าจอ ดูเหมือนว่าจะทำงานได้ดี (ในเวอร์ชันเดสก์ท็อป) แม้ว่าจะมีการแมปเชิงเส้นบนพื้นผิวของฉัน แต่ความละเอียดที่น้อยลงนั้นดูน่าเกลียด นอกจากนี้ดูเหมือนว่ามันจะบินไปที่ใบหน้าของ "พิกเซลอุปกรณ์อิสระ" (DPs) ของ Android หรือบางทีฉันอาจจะพลาดบางสิ่งบางอย่างและ libGDX ก็ดูแลเรื่องนี้อยู่แล้ว? วิธีที่ดีที่สุดในการแก้ไขปัญหานี้คืออะไร ฉันพบลิงค์นี้ นี้เป็นวิธีที่ดีในการแก้ปัญหา ?: http://www.dandeliongamestudio.com/2011/09/12/android-fragmentation-density-independent-pixel-dip/ มันกล่าวถึงวิธีการควบคุมภาพ แต่มันไม่ได้พูดถึงวิธีการระบุขนาดตัวอักษร / ภาพโดยไม่คำนึงถึงความหนาแน่น
22 android  libgdx 

2
บทเรียนทั้งหมดสำหรับ libGDX อยู่ที่ไหน [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ฉันค้นหาทางออนไลน์เพื่อขอความช่วยเหลือและแบบฝึกหัดใน LibGDX แต่ฉันไม่พบอะไรเลยยกเว้นและวิกิสำหรับถามคำถามเกี่ยวกับ stackexchange นอกเหนือจากแหล่งที่มา (ตัวอย่าง) และwikiแล้วยังมีบทเรียนอื่น ๆ ออนไลน์ที่ซ่อนอยู่หรือโดยอ้อม? จากสิ่งที่ฉันอ่านมีเอกสารไม่มากสำหรับ LibGDX ดังนั้นจึงมีเพียงสองตัวเลือกที่ฉันเห็น ยอมแพ้ย้ายไปยังเฟรมเวิร์กอื่น ถามคำถามกับผู้คนมากมาย
20 android  libgdx 

3
ไฟล์โครงการ libgdx ใดที่ฉันสามารถละเว้นจากการควบคุมเวอร์ชันได้
ในโครงการ libgdx ที่สร้างขึ้นโดยอัตโนมัติไฟล์ใดที่ฉันสามารถบอก Git (หรือระบบควบคุมการแก้ไขอื่น ๆ ) ให้ละเว้นได้อย่างปลอดภัย? ฉันกำลังพิจารณาสิ่งเหล่านี้: *-android/.settings/ *-android/bin/ *-desktop/.settings/ *-desktop/bin/ *-html/.settings/ *-html/gwt-unitCache/ *-html/war/WEB-INF/classes/ *-html/war/WEB-INF/deploy/ *-html/war/assets/ *-html/war/ */.settings/ */bin/ ฉันหายไปบ้างไหม มีรายการที่สมบูรณ์ที่ไหนสักแห่ง?

2
ทำไมแอปพลิเคชัน Android ของฉันไม่หมุนเมื่อฉันหมุนหน้าจอ
ฉันกำลังสร้างเกมใน LibGDX และการวางแนวหน้าจอเกมอยู่ในแนวนอน ฉันต้องการให้อยู่ในแนวนอน แต่ฉันยังต้องการให้ผู้ใช้สามารถพลิกอุปกรณ์ไปยังอีกด้านหนึ่งและหน้าจอจะหมุนได้ แอปพลิเคชันของฉันปฏิเสธที่จะทำเช่นนั้นและฉันไม่รู้จะทำอย่างไรเพื่อแก้ไข ฉันพยายามเปิด accelerometer และเข็มทิศ (ไม่ได้คาดหวังอะไรจากเข็มทิศ) แต่ไม่มีอะไรเปลี่ยนแปลง ความคิดใด ๆ
16 android  libgdx 

2
LibGDX - ตรวจสอบว่าในปัจจุบันบน Android / Desktop
ฉันใช้ LibGDX และ flixel-android เพื่อสร้างเกมบนเดสก์ท็อป / Android รู้สึกว่าควรมีวิธีตรวจสอบเพื่อดูว่าคุณกำลังเรียกใช้บนอุปกรณ์ Android เดสก์ท็อปและอื่น ๆ แต่ฉันไม่พบที่ใดเลย ฉันควรจะผ่านมันจากตัวเรียกใช้งานบุคคลหรือไม่ LibGDX บอกฉันได้ไหม?
16 java  android  libgdx 

2
กราฟิกไม่ถูกแสดงบน OUYA
ฉันหวังว่ามันจะยังเร็วเกินไปที่จะถามคำถาม OUYA dev แต่ฉันเพิ่งได้รับอุปกรณ์ dev และฉันต้องการให้เกมของฉันทำงานเร็วที่สุด! ฉันใช้ LibGDX เป็นเฟรมเวิร์กสำหรับเกมของฉันและเปิดตัวแบ็กเอนด์ Android บน OUYA ดูเหมือนว่าทุกอย่างจะดียกเว้นว่าไม่มีการแสดงกราฟิกของฉัน! ฉันบอกได้แค่ว่าเกิดอะไรขึ้นเพราะ DebugDraw ของ Box2D แสดงฟิสิกส์ของฉัน ฉันใช้ Spritebatch และ OpenGL ES 2.0 ของ LibGdx ทุกอย่างทำงานอย่างสมบูรณ์บนเดสก์ท็อปของฉันและแบ็กเอนด์ Android (โทรศัพท์) ฉันกำลังทำสิ่งผิดปกติกับการจัดการทรัพยากรของฉันสำหรับ OUYA หรือไม่ มีปัญหาอะไร อาจเป็นเพราะฉันเก็บกราฟิกไว้ในโฟลเดอร์สินทรัพย์แทนที่จะเป็น / res? แก้ไข: นี่คือผลลัพธ์ของ logcat: http://pastebin.com/BbPyPCcR
14 java  android  libgdx  ouya 

3
ฉันจะย้ายกล้องในช่วงพิกเซลเต็มได้อย่างไร
โดยทั่วไปฉันต้องการหยุดกล้องไม่ให้เคลื่อนไหวในรูปแบบย่อยเนื่องจากฉันคิดว่าสิ่งนี้นำไปสู่การสไปรต์ที่เปลี่ยนขนาดได้อย่างชัดเจนถ้าเพียงเล็กน้อยเท่านั้น (มีคำศัพท์ที่ดีกว่านี้หรือไม่) โปรดทราบว่านี่เป็นเกมภาพพิกเซลที่ฉันต้องการให้มีกราฟิกพิกเซลที่คมชัด นี่คือ gif ที่แสดงปัญหา: ตอนนี้สิ่งที่ฉันลองทำคือ: ย้ายกล้องฉายตำแหน่งปัจจุบัน (ดังนั้นจึงเป็นพิกัดของหน้าจอ) จากนั้นปัดหรือเหวี่ยงเป็น int หลังจากนั้นแปลงให้เป็นพิกัดโลกและใช้เป็นตำแหน่งกล้องใหม่ เท่าที่ฉันรู้สิ่งนี้ควรล็อคกล้องเป็นพิกัดหน้าจอจริงไม่ใช่เศษส่วน อย่างไรก็ตามด้วยเหตุผลบางอย่างyค่าของตำแหน่งใหม่ก็จะระเบิดออก 334756315000ในเรื่องของการวินาทีมันจะเพิ่มเพื่อสิ่งที่ต้องการ นี่คือ SSCCE (หรือ MCVE) ตามรหัสใน LibGDX wiki : import com.badlogic.gdx.ApplicationListener; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.Input; import com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application; import com.badlogic.gdx.backends.lwjgl3.Lwjgl3ApplicationConfiguration; import com.badlogic.gdx.graphics.GL20; import com.badlogic.gdx.graphics.OrthographicCamera; import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.g2d.Sprite; import com.badlogic.gdx.graphics.g2d.SpriteBatch; import com.badlogic.gdx.math.MathUtils; import com.badlogic.gdx.math.Vector3; import com.badlogic.gdx.utils.viewport.ExtendViewport; import …
13 libgdx  pixel 

2
การเคลื่อนไหวนั้นขึ้นอยู่กับอัตราเฟรมแม้จะใช้ Time.deltaTime
ฉันมีรหัสต่อไปนี้เพื่อคำนวณการแปลที่จำเป็นในการย้ายวัตถุเกมใน Unity ซึ่งเรียกว่าLateUpdateมา จากสิ่งที่ฉันเข้าใจการใช้งานของฉันTime.deltaTimeควรจะทำให้เป็นอิสระแปลสุดท้ายอัตราเฟรม (โปรดทราบCollisionDetection.Move()เป็นเพียงการแสดง raycasts) public IMovementModel Move(IMovementModel model) { this.model = model; targetSpeed = (model.HorizontalInput + model.VerticalInput) * model.Speed; model.CurrentSpeed = accelerateSpeed(model.CurrentSpeed, targetSpeed, model.Accel); if (model.IsJumping) { model.AmountToMove = new Vector3(model.AmountToMove.x, model.AmountToMove.y); } else if (CollisionDetection.OnGround) { model.AmountToMove = new Vector3(model.AmountToMove.x, 0); } model.FlipAnim = flipAnimation(targetSpeed); // If …

2
ฉันจะสร้างหน้าต่างแบบผุดขึ้นด้วย Scene2D ได้อย่างไร
ฉันมีหน้าจอเมนูหลักพร้อมโลโก้และปุ่มต่างๆ เมื่อกดปุ่มเข้าสู่ระบบฉันจะปรากฏกล่องโต้ตอบถามชื่อผู้ใช้และรหัสผ่าน ใช้งานได้ดีนอกเหนือจาก "popping up" ในขณะนี้กล่องโต้ตอบใหม่จะเปลี่ยนทุกอย่าง แต่ฉันต้องการวางตำแหน่งไว้เหนือฉากปัจจุบัน ฉันแค่เรียนรู้ Scene2D
13 java  libgdx  menu  scene2d 

1
ฉันจะกำหนดพื้นที่การชนที่ซับซ้อนที่ด้านบนของแผนที่ย่อยได้อย่างไร
ตามที่หลายคนแนะนำฉันใช้โปรแกรมแก้ไขแผนที่แบบเรียงต่อกันเพื่อสร้างแผนที่สำหรับเกมของฉันและมันยอดเยี่ยมโดยเฉพาะอย่างยิ่งเนื่องจากกรอบงาน libgdx ยังมี API สำหรับแผนที่จากกระเบื้องด้วย ฉันเข้าใจว่าฉันสามารถกำหนดไทล์ที่ชนกันได้หรือไม่อยู่ในตัวแก้ไขแผนที่เพื่อให้ฉันสามารถจัดการกับการชนกันในรหัสของฉันได้ แต่ตอนนี้ฉันอยู่ในสถานการณ์ที่ฉันต้องแบ่งกระเบื้องออกเป็นพื้นที่ที่สามารถชนกันได้และไม่ยุบตัว ด้วยตนเองฉันคิดว่าฉันสามารถกำหนดจุดและขอบเขตของสองพื้นที่และจัดการกับโปรแกรม แต่นั่นเป็นงานที่ต้องใช้เวลามาก ดังนั้นฉันจึง googled มากและพบตัวแก้ไขฟิสิกส์นี้ ดูเหมือนว่าเป็นเครื่องมือที่ยอดเยี่ยมในการทำให้กระบวนการที่ฉันกล่าวไว้ข้างต้นเป็นอัตโนมัติ อย่างไรก็ตามระบบใช้งานได้กับอิมเมจที่คลายการบีบอัดแต่ละอันและฉันไม่แน่ใจว่ามันจะใช้ได้แม้ว่าฉันจะแกะอิมเมจสำหรับการทำงาน ฉันสงสัยว่ามีวิธีใดที่ดีกว่าในการทำกระบวนการทั้งหมดนี้ในการกำหนดพื้นที่ปะทะกัน ข้อเสนอแนะใด ๆ จะได้รับการชื่นชมมาก

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