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

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


1
การแยกสถานะของโลกและแอนิเมชั่นในเกมพื้นฐาน
คุณจัดการกับการแยกอนิเมชั่นจากสภาวะโลกในเกมที่มีการเปิดได้อย่างไร? ฉันกำลังทำงานกับเกม 2D กริดในปัจจุบัน โค้ดด้านล่างนี้ง่ายต่อการอธิบายได้ดีขึ้น เมื่อนักแสดงเคลื่อนไหวฉันต้องการที่จะหยุดการไหลของการหมุนในขณะที่สิ่งมีชีวิตเคลื่อนไหวและย้ายไปยังตำแหน่งใหม่ มิฉะนั้นหน้าจออาจล้าหลังสถานะโลกอย่างมีนัยสำคัญซึ่งอาจทำให้เกิดรูปลักษณ์ที่แปลกประหลาด ฉันต้องการมีภาพเคลื่อนไหวที่ไม่ปิดกั้นการไหลของเกม - เอฟเฟกต์ของอนุภาคสามารถเปิดออกได้หลายรอบโดยไม่ส่งผลต่อการเล่นเกม สิ่งที่ฉันทำคือแนะนำภาพเคลื่อนไหวสองประเภทซึ่งฉันเรียกว่าการปิดกั้นภาพเคลื่อนไหวและภาพเคลื่อนไหวที่ไม่ปิดกั้น เมื่อผู้เล่นต้องการย้ายรหัสที่ถูกเรียกใช้งานคือ class Actor { void move(PositionInfo oldPosition, PositionInfo newPosition) { if(isValidMove(oldPosition, newPosition) { getGame().pushBlockingAnimation(new MoveAnimation(this, oldPosition, newPosition, ....)); player.setPosition(newPosition); } } } จากนั้นห่วงการอัพเดทหลักจะ: class Game { void update(float dt) { updateNonBlockingAnimations(dt); //Effects like particle explosions, damage numbers, etc. Things …

5
เพิ่มความน่าจะเป็นสำหรับไพ่ที่คล้ายกันเพื่อสร้างถัดจากกันและกัน
ฉันกำลังทำงานกับระบบแผนที่ย่อยซึ่งตราบเท่าที่มีลักษณะเช่นนี้ (สีเขียวคือหญ้าอากาศเป็นสีขาวหินเป็นสีเทาและสีน้ำเงินคือน้ำ): มันใช้ตัวสร้างตัวเลขสุ่มอย่างง่ายเพื่อให้มีโอกาส 45% ของกระเบื้องที่เป็นหญ้าโอกาส 30% ของการเป็นน้ำและโอกาส 25% ที่จะเป็นหิน มีอยู่แล้วฉันสามารถเพิ่มแนวโน้มสำหรับบล็อกหญ้า / ก้อนหินให้รวมตัวกันเพื่อก่อให้เกิดมวลบกและทำให้บล็อกน้ำก่อตัวในมหาสมุทร
9 java  algorithm  tiles  maps  lwjgl 

1
การแสดงระดับ / โครงสร้างข้อมูลที่เหมาะสมสำหรับเกมแพลต 2D จากเกม?
ฉันกำลังจะเขียนโปรแกรม Mario ใน Java ฉันกำลังคิดเกี่ยวกับการเป็นตัวแทน 2 ครั้ง / โครงสร้างข้อมูลสำหรับระดับ แต่ฉันไม่แน่ใจว่าควรเลือกแบบใด: อาร์เรย์จำนวนเต็ม 2D ควอดทรีเพื่อแบ่งระดับเป็นชิ้น ๆ อะไรคือข้อดีและข้อเสีย?

2
คุณจะกำหนดวัตถุ / พื้นผิวของผู้ใช้ที่ชี้ด้วย lwjgl ได้อย่างไร
ชื่อเรื่องสวยมากพูดทุกอย่าง ฉันกำลังทำงานกับโครงการ 'ให้คุ้นเคยกับ lwjgl' อย่างง่ายเกี่ยวกับการจัดการกับลูกบาศก์ของรูบิคและฉันไม่สามารถหาวิธีที่จะบอกว่าด้านใด / สี่เหลี่ยมของผู้ใช้ที่ชี้ไปที่

3
เกม Java ในหนึ่งหรือสองวัน [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว เราเป็นสามคนที่จะสร้างเกมง่ายๆใน Java เป็นโครงการโรงเรียน (มหาวิทยาลัยปีแรก) เกมจะต้องให้ความสำคัญกับวัตถุ เรามีเวลาไม่มากท็อปส์ซู10-20 ชั่วโมง พวกเราไม่มีใครมีประสบการณ์ในการพัฒนาเกม แต่เราทุกคนมีความสามารถพอสมควรใน Java เราสามารถเลือกประเภทของเกมได้อย่างแม่นยำและนั่นคือปัญหาที่เกิดขึ้น เราควรตั้งเป้าหมายไว้สูงแค่ไหน? มีการแข่งขันที่เกี่ยวข้องดังนั้นเราต้องการสร้างเกมที่ดีที่สุดในเวลาที่เรามี เกม 3 มิติไม่สมจริงหรือไม่? เราควรใช้เครื่องมือ - เกม / ห้องสมุดหรือไม่? เราควรหลีกเลี่ยงการทำงานประเภทใด

2
ฉันควรมีอินพุต / คีย์ในเกมจาวาขั้นสูงอย่างไร
ฉันเป็นโปรแกรมเมอร์ที่สอนตัวเองดังนั้นฉันจึงไม่ทราบวิธีที่เหมาะสมในการทำสิ่งต่าง ๆ ฉันสร้างเกมง่าย ๆ เช่นดาวเคราะห์น้อยและงู แต่ในเกมเหล่านั้นคุณสามารถปรับเปลี่ยนตัวแปรภายในฟังก์ชั่นหลักได้อย่างง่ายดาย นี่คือวิธีที่ฉันทำในเกม Asteroids ง่ายๆ: /* * key listener events */ public void keyReleased(KeyEvent k){ int keyCode = k.getKeyCode(); switch(keyCode){ case KeyEvent.VK_LEFT: turnLeft = false; break; case KeyEvent.VK_RIGHT: turnRight = false; break; case KeyEvent.VK_UP: accel = false; break; case KeyEvent.VK_1: cls = true; break; case KeyEvent.VK_ENTER: …
9 java  input 

4
มีเหตุผลที่ดีที่ฉันไม่ควรใช้แอปเพล็ต java สำหรับเกมหรือไม่?
ฉันต้องการสร้างเกมที่ใช้เบราว์เซอร์ที่มีผู้เล่นหลายคน สิ่งที่ดีเกี่ยวกับการใช้แอปเพล็คือฉันสามารถสร้างไคลเอนต์และเซิร์ฟเวอร์ในภาษาเดียวกัน (java / closure / scala / etc) ฉันรู้ว่ามี html5 และ javascript แต่จาวาสคริปต์ฝั่งเซิร์ฟเวอร์นั้นยังไม่โตเท่าแพลตฟอร์ม jvm และการสนับสนุนเบราว์เซอร์ยังคงเป็นขุยอยู่ ดูเหมือนว่าแอปเปิลจะไม่ใช้กันอย่างแพร่หลาย (ยกเว้น Runescape) แต่มีเหตุผลที่ไม่เหมาะสมหรือเป็นเพราะชื่อเสียงที่ไม่ดีที่พวกเขาพัฒนาขึ้นในวัยเด็กของพวกเขา?
9 java  web 

8
แหล่งข้อมูลที่ดีที่สุดในการเรียนรู้การพัฒนาเกมจากพื้นหลัง Java? [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน5 ปีที่ผ่านมา ฉันเป็นโปรแกรมเมอร์ของ บริษัท Java แต่มีบางสิ่งที่ฉันสนใจและสิ่งที่ทำให้ฉันรู้จักกับการเขียนโปรแกรมทั้งหมดคือแนวคิดของความสามารถในการสร้างเกม เพียงแค่สงสัยว่าใครสามารถให้คำแนะนำหรือคำแนะนำหนังสือ สิ่งที่ฉันสนใจมากที่สุดคือการออกแบบและสร้างเอ็นจิ้นเกม ผู้คนอาจพูดว่า "อ่า แต่มีอยู่มากมายว่าทำไมเขียนของคุณเอง" - เพื่อจุดประสงค์ในการเรียนรู้ล้วนๆเพื่อดูว่าสิ่งต่าง ๆ ทำงานอย่างไรและอื่น ๆ จนถึงตอนนี้ฉันได้ดูที่LWJGLแต่ไม่ได้ทำอะไรที่ร้ายแรงเกินไป ขอบคุณ
9 java 

3
Mods สำหรับเซิร์ฟเวอร์ Minecraft - มันทำงานอย่างไร?
เซิร์ฟเวอร์ Minecraft มาเป็นขวดเดียว mods พัฒนาขึ้นอย่างไร? พวกมันมีปฏิสัมพันธ์อย่างไรกับขวดดั้งเดิม? ภายใต้ประทุนมีอะไรบ้าง? มีเทคโนโลยีใดบ้างที่เกี่ยวข้อง ฉันส่วนใหญ่เป็นคน C ++ / Python แต่ฉันต้องการเรียนรู้บางอย่างเกี่ยวกับการพัฒนา mods

3
หัวข้อ Android มีปัญหาห่อหัวของฉันไปรอบ ๆ การออกแบบ
ฉันมีปัญหาในการพันหน้าออกแบบเกม บนแพลตฟอร์ม Android ฉันมีกิจกรรมและตั้งค่ามุมมองเนื้อหาด้วยมุมมองพื้นผิวที่กำหนดเอง มุมมองพื้นผิวที่กำหนดเองทำหน้าที่เป็นพาเนลของฉันและฉันสร้างอินสแตนซ์ของคลาสทั้งหมดและทำรูปวาดและการคำนวณทั้งหมดในนั้น คำถาม: ฉันควรสร้างอินสแตนซ์ของคลาสอื่นในกิจกรรมของฉันแทนหรือไม่ ตอนนี้ฉันสร้างคลาสเธรดที่กำหนดเองที่จัดการลูปเกม คำถาม: ฉันจะใช้คลาสนี้ในทุกกิจกรรมได้อย่างไร หรือฉันจะต้องสร้างอินสแตนซ์ที่แยกต่างหากของคลาสเธรดเสริมแต่ละครั้งหรือไม่ ในเกมก่อนหน้าของฉันฉันมีหลายระดับที่ต้องสร้างอินสแตนซ์ของคลาสเธรดและในคลาสของเธรดที่ฉันต้องตั้งค่าวิธีการสร้างสำหรับแต่ละระดับที่แยกจากกันและในลูปใช้คำสั่งสลับเพื่อตรวจสอบระดับที่ต้องการแสดง และอัปเดต ขออภัยหากฟังดูสับสน ฉันแค่อยากรู้ว่าวิธีที่ฉันใช้นั้นไม่มีประสิทธิภาพ (ซึ่งน่าจะเป็น) และวิธีออกแบบให้ถูกวิธี ฉันได้อ่านแบบฝึกหัดมากมายที่นั่นและฉันยังคงมีปัญหามากมายกับหัวข้อนี้โดยเฉพาะ อาจจะเชื่อมโยงไปยังบทเรียนบางอย่างที่อธิบายเรื่องนี้? ขอบคุณ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.