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

Android เป็นระบบปฏิบัติการสำหรับอุปกรณ์มือถือที่พัฒนาและดูแลโดย Google, Inc. แท็กนี้ควรมีคำถามเกี่ยวกับการเขียนโปรแกรมเฉพาะเกี่ยวกับ Android

1
การพัฒนาข้ามแพลตฟอร์ม C ++ / OpenGL ES (iOS / Android) [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน4 ปีที่แล้ว ฉันมีประสบการณ์ที่สมเหตุสมผลกับ C ++ และ OpenGL และฉันเพิ่งตัดสินใจลองพัฒนาเกมมือถือ หลังจากประสบความสำเร็จในการสร้างแอป OpenGL ES Android อย่างง่ายโดยใช้ Java ฉันวิจัยวิธีกำหนดเป้าหมายทั้ง Android และ iOS ด้วยรหัสการเขียนใหม่ให้น้อยที่สุดเท่าที่จะทำได้ ฉันลองใช้เครื่องมือพัฒนาแอพข้ามแพลตฟอร์มที่ภูมิใจของ Visual Studio 2015 แต่พบว่ามันใหม่เกินไปและมีการจัดทำเอกสารน้อยมาก ฉันสามารถสร้างเทมเพลตโครงการที่โปรแกรมมอบให้ฉัน แต่ฉันไม่สามารถหาวิธีได้จากเทมเพลตเหล่านี้ฉันอาจเพิ่มเนื้อหาลงในเกมหรือจัดการกับหน้าจอสัมผัส ฉันมีความปรารถนาที่เฉพาะเจาะจง แต่น่าเสียดายที่เฉพาะเจาะจงที่จะค้นหาด้วย Google ฉันต้องการสร้างเกม OpenGL ES โดยใช้ C ++ พร้อมโปรแกรมเสริมเฉพาะแพลตฟอร์มสำหรับ Android และ iOS ผู้คนถามคำถามที่คล้ายกันกับฉัน (แต่ไม่เหมือนกัน) …

1
ใช้ประโยชน์จากการมัลติเธรดระหว่างเกมลูปและ openGL
การพูดคุยในบริบทของเกมโดยใช้ openGL renderer: สมมติว่ามีสองหัวข้อ: อัพเดทตรรกะของเกมและฟิสิกส์เป็นต้นสำหรับในเกมวัตถุ ทำให้ openGL ดึงสายสำหรับแต่ละวัตถุในเกมตามข้อมูลในวัตถุในเกม (เธรด 1 นั้นทำการปรับปรุงอยู่เสมอ) ยกเว้นว่าคุณมีสองสำเนาของวัตถุแต่ละเกมในสถานะปัจจุบันของเกมคุณจะต้องหยุดเธรด 1 ในขณะที่เธรด 2 ทำการเรียกการดึงมิฉะนั้นวัตถุในเกมจะได้รับการอัปเดตในช่วงกลางของการดึงการดึงสำหรับวัตถุนั้น ไม่พึงประสงค์! แต่การหยุดเธรด 1 เพื่อโทรออกอย่างปลอดภัยจากเธรด 2 ฆ่าวัตถุประสงค์ทั้งหมดของการทำงานหลายเธรด / การทำงานพร้อมกัน มีวิธีการที่ดีกว่านี้กว่าการใช้หลายร้อยหรือหลายพันหรือซิงค์วัตถุ / รั้วเพื่อให้สถาปัตยกรรมแบบมัลติคอร์สามารถใช้ประโยชน์จากประสิทธิภาพการทำงานหรือไม่ ฉันรู้ว่าฉันยังสามารถใช้มัลติเธรดสำหรับการโหลดพื้นผิวและการรวบรวมเฉดสีสำหรับวัตถุที่ยังไม่ได้เป็นส่วนหนึ่งของสถานะเกมปัจจุบัน แต่ฉันจะทำอย่างไรกับวัตถุที่ใช้งาน / มองเห็นได้โดยไม่ทำให้เกิดความขัดแย้งกับการดึงและอัปเดต จะเกิดอะไรขึ้นถ้าฉันใช้การล็อกการซิงค์แยกกันในแต่ละวัตถุของเกม วิธีนี้เธรดใด ๆ จะบล็อกเฉพาะวัตถุหนึ่งรายการ (กรณีที่เหมาะสมที่สุด) แทนที่จะเป็นทั้งรอบการอัพเดท / วาด แต่การล็อกแต่ละวัตถุมีค่าใช้จ่ายเท่าใด (เกมอาจมีวัตถุนับพันรายการ)

2
เนื่องจาก Table.drawDebug เลิกใช้แล้วใน libGDX ฉันควรใช้อะไรแทน
ฉันกำลังติดตามหนังสือ "Learning LibGDX Game Development" เพื่อสร้างเกมอย่างง่าย ฉันอยู่ในส่วนการสร้างเมนูที่เราสร้างสเตจและแสดงผลด้วยเส้นขอบการดีบัก หนังสือเล่มนี้บอกว่าจะใช้Table.drawDebug(stage)แต่วิธีการแบบคงที่นี้ดูเหมือนว่าจะถูกลบออกจากTableชั้นเรียนกรอบทั้งหมด ฉันกำลังนำเข้าcom.badlogic.gdx.scenes.scene2d.ui.Table; ด้านล่างคือรหัสของฉัน: @Override public void render(float deltaTime) { Gdx.gl.glClearColor(0.0f, 0.0f, 0.0f, 1.0f); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); if (debugEnabled) { debugRebuildStage -= deltaTime; if (debugRebuildStage <= 0) { debugRebuildStage = DEBUG_REBUILD_INTERVAL; rebuildStage(); } } stage.act(deltaTime); stage.draw(); Table.drawDebug(stage); } บรรทัดสุดท้ายTable.drawDebug(stage);มีข้อผิดพลาดในการรวบรวม"The method drawDebug(ShapeRenderer) in the type Table is …

2
ปัญหาในการจับคู่ขนาดตัวอักษรกับความละเอียดหน้าจอใน libgdx
ฉันมีปัญหาในการแสดงข้อความในเกมของฉันที่มีขนาดเท่ากันบนหน้าจอที่แตกต่างกันและฉันทำการทดสอบอย่างง่าย การทดสอบนี้ประกอบด้วยการแสดงข้อความที่เหมาะสมบนหน้าจอฉันต้องการให้ข้อความมีขนาดเท่ากันจากหน้าจอและจาก DPI ฉันพบสิ่งนี้และคำตอบที่ฉันคิดว่าน่าจะแก้ปัญหาได้ แต่ทำไม่ได้ ในเดสก์ท็อปขนาดก็โอเค แต่ในโทรศัพท์ของฉันใหญ่เกินไป นี่คือผลลัพธ์บน Nexus 4 ของฉัน: (ความหนาแน่น 768x1280, 2.0) และนี่คือผลลัพธ์บน MacBook ของฉัน: (ความหนาแน่น 480x800, 0.6875) ฉันใช้Open Sans Condensed (ลิงก์ไปยังฟอนต์ google) อย่างที่คุณเห็นบนเดสก์ท็อปดูดี แต่บนโทรศัพท์มันใหญ่มาก นี่คือรหัสการทดสอบของฉัน: public class TextTest extends ApplicationAdapter { private static final String TAG = TextTest.class.getName(); private static final String TEXT = "Tap the screen …

2
การแก้ไขจะทำงานอย่างไรเพื่อทำให้การเคลื่อนที่ของวัตถุราบรื่นขึ้น?
ฉันถามคำถามที่คล้ายกันสองสามครั้งในช่วง 8 เดือนที่ผ่านมาโดยไม่มีความสุขจริง ๆ ดังนั้นฉันจะทำให้คำถามทั่วไปยิ่งขึ้น ฉันมีเกม Android ซึ่งเป็น OpenGL ES 2.0 ภายในนั้นฉันมี Game Loop ดังต่อไปนี้: ลูปของฉันทำงานบนหลักการขั้นตอนเวลาที่แน่นอน (dt = 1 / ticksPerSecond ) loops=0; while(System.currentTimeMillis() > nextGameTick && loops < maxFrameskip){ updateLogic(dt); nextGameTick+=skipTicks; timeCorrection += (1000d/ticksPerSecond) % 1; nextGameTick+=timeCorrection; timeCorrection %=1; loops++; } render(); การรวมของฉันทำงานเช่นนี้: sprite.posX+=sprite.xVel*dt; sprite.posXDrawAt=sprite.posX*width; ตอนนี้ทุกอย่างทำงานได้สวยตามที่ฉันต้องการ ฉันสามารถระบุได้ว่าฉันต้องการให้วัตถุเคลื่อนที่ในระยะหนึ่ง (ความกว้างของหน้าจอพูด) ภายใน …

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){ …

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

2
ภาษาที่ใช้งานได้ดีเพียงใดใน Android
นี่เป็นกรณีพิเศษของคำถามนี้ที่ฉันรู้สึกว่าเกี่ยวข้องโดยเฉพาะ ฉันกำลังเล่นเกมสำหรับ Android และฉันวางแผนที่จะใช้ Scala กับ libgdx ฉันวางแผนที่จะสร้างเกมนักแสดง แต่ไม่จำเป็นว่าจะต้องเป็นเกมที่มีประสิทธิภาพมากเกินไป ฉันเห็นเอกสารของ libgdx เกี่ยวกับ Garbage Collectionและสิ่งนี้ทำให้ฉันคิดว่า: ฟังก์ชั่นการเขียนโปรแกรมหมายถึงวัตถุที่ไม่เปลี่ยนรูปจำนวนมาก ดังนั้นการกลายพันธุ์วัตถุต้องสร้างวัตถุใหม่ ดังนั้นวัตถุจำนวนมากได้รับการรวบรวมขยะซึ่งทำให้ประสิทธิภาพลดลง นี่เป็นปัญหาที่ผ่านไม่ได้หรือไม่ มีปัญหาที่สำคัญอื่น ๆ เกี่ยวกับสไตล์การใช้งานบน Android หรือไม่?
10 java  android  libgdx 

4
Apple และ Google จะขอแชร์หรือไม่หากการชำระเงินที่กำหนดเองทำในแอปฟรีหรือไม่
ฉันมีเกมหลายแพลตฟอร์ม (เว็บ / iOS / Android) ในการสร้าง ในเวอร์ชั่นฟรีเกมหลักยังคงเล่นได้อย่างเต็มที่ แต่ผู้ที่เลือกที่จะจ่ายจะได้รับคุณสมบัติทางสังคมมากขึ้น (และไม่มีโฆษณาแน่นอน) ฉันคิดว่าแทนที่จะมีรุ่นฟรีและจ่ายเงินสำหรับแพลตฟอร์มทั้งหมดที่ฉันสามารถปล่อยแอพได้ฟรีและหากผู้ใช้ต้องการมากกว่าพวกเขาต้องลงทะเบียนและชำระค่าธรรมเนียมครั้งเดียว (ผ่านเกตเวย์การชำระเงินหรือ PayPal ) เนื้อหาเพิ่มเติมจะพร้อมใช้งานในไคลเอนต์ทั้งหมดที่พวกเขาสามารถเข้าถึงได้ ในทางทฤษฎีนี่หมายถึงคุณค่าที่ดีกว่าสำหรับผู้เล่นและการบำรุงรักษาและปวดหัวน้อยลงสำหรับฉัน (เห็นได้ชัดว่าฉันต้องจัดการกับปัญหาการชำระเงินทั้งหมดด้วยตัวเอง) มันเหมาะกับรูปแบบธุรกิจของ Apple / Google หรือไม่? หรือพวกเขาจะยังคงเรียกร้องส่วนแบ่งค่าธรรมเนียมการลงทะเบียนของพวกเขา?

2
ฉันจะขอให้ผู้ใช้สัมผัสกับเกมฟรีได้อย่างไร?
ดังนั้นฉันมีเกมที่มีผู้ใช้งานเพียงไม่กี่คน แต่มีผู้ใช้จริงน้อยมาก มันเป็นเกมฟรีในตลาด Android รองรับผ่านโฆษณา ฉันเล่นกับความคิดของการ popping up ประกาศให้ผู้ใช้เป็นระยะกระตุ้นให้พวกเขาทำสิ่งที่ชอบ: ดูโฆษณาที่นำเสนอ เขียนคำวิจารณ์เชิงบวกใน Android Marketplace ส่งเสริมให้เพื่อนเล่น ตอนนี้ฉันได้ตั้งค่าในเวอร์ชันที่ไม่เผยแพร่เพื่อทำสิ่งนี้ทุกๆ 5 เกมเมื่อผู้ใช้เล่นอย่างน้อย 10 เกมยกเว้นว่าพวกเขาคลิกโฆษณาเป็นระยะ ฉันไม่ได้บอกให้ผู้ใช้รู้สิ่งนี้ฉันไม่ต้องการให้พวกเขาคลิกที่โฆษณาเพื่อให้ป๊อปอัปหยุด โดยพื้นฐานแล้วฉันต้องการแรงบันดาลใจเพิ่มเติมจากผู้ใช้เล็กน้อยเพื่อไปยังระดับต่อไปและฉันแจ้งให้พวกเขารู้ว่าฉันต้องการอะไรจากพวกเขา นี่จะเป็นการช่วยฉันออกมาหรือฉันจะฝังตัวเองมากกว่านี้อีกหรือเปล่า? ขอบคุณ!

1
คุณสามารถฝัง Unity3d mobile project ลงในแอพมือถือที่มีอยู่แล้วได้หรือไม่?
ฉันกำลังสร้างแอปพลิเคชันสำหรับทั้ง Android และ iPhone ที่จะมีมินิเกมอยู่สองสามตัว ฉันต้องการสร้างส่วนที่ไม่ใช่เกมใน Android และ iPhone คำถามของฉันคือมีความเป็นไปได้ไหมที่จะมีแอพพื้นฐานที่จะรวม Unity mini game ที่ฉันสร้างทั้งหมดในโปรเจค apk และ ios?
10 android  iphone  unity  ios 

1
เป็นวิธีที่ดีที่สุดในการสร้างภาพเคลื่อนไหวเมื่อทำการพัฒนา Android คืออะไร
ฉันกำลังพยายามสร้างเกม Android เกมแรกของฉันและฉันกำลังพยายามคิดออก (กับคนที่จะวาดรูปและโปรแกรมเมอร์อีกคน) สิ่งที่ดีที่สุดในการสร้างภาพเคลื่อนไหวคืออะไร (ภาพเคลื่อนไหวเช่นตัวละครเคลื่อนไหวเป็นต้น) ในตอนแรกผู้ออกแบบกล่าวว่าเธอสามารถวาดวัตถุ / ตัวละครและทำให้เคลื่อนไหวด้วยแฟลชได้ดังนั้นเธอจึงไม่ต้องวาดทุกเฟรมของการกระทำ โปรแกรมเมอร์คนอื่นและฉันไม่รู้จัก Flash มากเกินไปดังนั้นฉันจึงแนะนำให้ดึงภาพทั้งหมดจากภาพเคลื่อนไหว Flash และทำให้ปรากฏเป็นภาพหนึ่งหลังจากอีกภาพหนึ่งเมื่อภาพเคลื่อนไหวเริ่มต้นขึ้น เขาบอกว่าจะลงเอยด้วยการใช้ทรัพยากรมากเกินไปบน CPU และฉันมักจะเห็นด้วย แต่ฉันไม่เห็นว่าเราควรทำแอนิเมชั่นที่ราบรื่นโดยไม่ต้องใช้ฮาร์ดแวร์มากเกินไปและถ้าเป็นไปได้ นักออกแบบวาดทุกเฟรมใน Adobe Illustrator นักพัฒนาเกม Android ที่มีประสบการณ์สามารถช่วยฉันจัดการเรื่องนี้ได้เพื่อให้เราสามารถไปยังส่วนอื่น ๆ ของเกมได้เนื่องจากฉันไม่รู้ว่าวิธีที่ดีที่สุดในการสร้างภาพเคลื่อนไหวคืออะไร

3
Unity Android กับ Android SDK
ฉันคุ้นเคยกับ Unity และอยู่ในขั้นตอนของการเรียนรู้ SDK Android เมื่อมีการประกาศเกี่ยวกับความสามัคคีพื้นฐานของ Android ออกมา อะไรคือข้อดีและข้อเสียของการใช้ android SDK โดยตรงกับการพัฒนาโดยใช้ Unity Android

1
ไม่สนับสนุนการใช้คอลเลกชันในการพัฒนาเกมของ Android?
ในขณะที่ทำงานในโครงการเกมสำหรับ Android ฉันกำลังขุดหาข้อมูลบางอย่างเกี่ยวกับการเพิ่มประสิทธิภาพการทำงานสำหรับรหัสเกม และฉันก็รู้ว่าการใช้ Java Collectionsเช่น List, Arraylist และอื่น ๆ ไม่ได้รับการสนับสนุนในรหัสเกมถึงแม้ว่าการรวบรวมเป็นเครื่องมือที่มีประโยชน์ในการเขียนโปรแกรม Java ทำไมถึงเป็นเช่นนั้น ฉันต้องการทราบรายละเอียดทางเทคนิคมากน้อยเพียงใดที่ Framework ของ Collection มีผลกระทบต่อระบบ Android และทำไม ความช่วยเหลือในเรื่องนี้จะดีมาก
10 android 

5
มีเอ็นจิ้น 3D ฟรีและโอเพ่นซอร์สสำหรับ Android หรือไม่ [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา มีเอ็นจิ้นโอเพนซอร์ส 3D ฟรีและไม่ จำกัด สำหรับ Android หรือไม่ มีบางสิ่งที่ตรงไปตรงมากับ NDK หรือไม่? ฉันได้พบเพียงสองเครื่องยนต์: Unity และ Shiva 3D แต่ไม่มีโอเพนซอร์สหรือฟรี

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