Unity ให้โค้ดใน Java หรือไม่? [ปิด]


12

ฉันค่อนข้างใหม่สำหรับประสบการณ์ Unity3D แต่ฉันมีความรู้ดีมากเกี่ยวกับการพัฒนา Java และ Android ฉันสับสนจริงๆว่าถ้า Java จำเป็นสำหรับการพัฒนาแอปพลิเคชัน Android ฉันอ่านที่ไหนสักแห่งในเอกสาร Unity ที่เพิ่มพฤติกรรมให้กับวัตถุใน Unity ต้องใช้สคริปต์และความสามัคคีนั้นสนับสนุนสคริปต์ C #, .Net และ Boo เท่านั้น ไม่มีการใช้ Java เลยใช่ไหม


15
เมื่อคุณรู้จัก Java คุณรู้อยู่แล้ว 90% จาก C #
Philipp

jMonkeyEngine ดังที่ระบุไว้ในคำตอบของ SilverTiger ในขณะนี้สนับสนุนการพัฒนาทั้ง iOS และ Android นอกเหนือจากการพัฒนาเดสก์ท็อป jMonkeyEngine ให้บริการฟรีและใช้ Java ฉันใช้มันเพื่อสร้างเกม
Jason Crosby

@Philipp และ C # คืออะไร ฉันรู้ C # แล้วเหมือนกันที่ฉันรู้ 90% ของ Java?
ราวกับว่า Mushtaq

@ ฟิลลิปดีไม่ คุณสามารถพูดได้ว่า "เมื่อคุณรู้จัก ALGOL คุณรู้ 90% ของ C" หรือ "เมื่อคุณรู้จัก x86 แอสเซมเบลอร์คุณรู้ 90% ของแอสเซมเบลอร์ใด ๆ " หรือ "เมื่อคุณรู้วิธีขับจักรยานแล้ว รู้วิธีการขับรถบรรทุก" ... การเปรียบเทียบของคุณเป็นความผิดพลาดในหลายระดับดังนั้นถอนหายใจ สิ่งเดียวที่คุณสามารถพูดได้คือ "เมื่อคุณรู้จักจาวาคุณก็รู้ซินแท็คซ์ของ C # 90% แล้ว" ฉันรับรองกับคุณฉันรู้ว่าไม่มีใครรู้เพียง Java และไม่สามารถเข้าถึงเอกสารที่จะสามารถเขียนโค้ด C # ที่ใช้งานได้โดยไม่ต้องมีประสบการณ์มาก่อน

4
ฉันลงคะแนนให้ปิดคำถามนี้เป็นหัวข้อนอกเรื่องเกี่ยวกับผลิตภัณฑ์ X รองรับคุณลักษณะ Yหรือไม่
Vaillancourt

คำตอบ:


11

Unity ไม่รองรับ Java อย่างไรก็ตามคุณควรตรวจสอบ C #; มันเป็นภาษาที่คล้ายกันมากซึ่งได้รับอิทธิพลจาก Java อย่างมากในขณะที่ปรับให้เรียบขอบของภาษาที่หยาบกว่านี้ ควรสังเกตว่าคุณจะต้องมีทั้ง Unity Pro และ Unity Android Pro เพื่อสร้างเกม Android โดยใช้ Unity ในฐานะที่เป็น jhocking และ ashes999 หมายเหตุในความคิดเห็นคุณไม่จำเป็นต้องมี Unity Pro และ Unity Android Pro ที่วางจำหน่ายบน Unity เกมเชิงพาณิชย์บน Android


3
ไม่เป็นความจริงที่คุณต้องการ Android Pro เพื่อสร้างเกม Android คุณสามารถปรับใช้กับ Android จาก Unity รุ่นฟรี แต่คุณจะมีข้อ จำกัด บางประการเกี่ยวกับแอปที่เกิดขึ้น (ส่วนใหญ่จะเห็นได้ชัดว่ามันจะมี Unity Splashscreen มากกว่า Splashscreen แบบกำหนดเองของคุณเอง) หากคุณต้องการคุณลักษณะเพิ่มเติมของ Android Pro แล้วคุณต้องฤดูใบไม้ผลิสำหรับทั้งความสามัคคี Pro และความสามัคคีของ Android Pro
jhocking

คุณจะสามารถขายแอปพลิเคชันในเชิงพาณิชย์ได้หรือไม่?
Eagle-Eye

3
@ Eagle-Eye ใช่ฉันเชื่อว่าคุณจะ Unity รุ่นฟรีสำหรับธุรกิจที่มีรายรับต่ำกว่า $ 100K ต่อปี
ashes999

มันคล้ายกันมาก แต่มันมีความละเอียดมากขึ้นและไม่มีห้องสมุดนับพันที่ทำให้การเขียนโปรแกรมใน Java เป็นเรื่องง่าย ตัวอย่าง ProGuard ใคร Runnable? SocketIO .. รายการดำเนินต่อไป
Oliver Dixon

4

ความสามัคคีสนับสนุนเฉพาะC#, JavaScriptและBooScriptสำหรับการเขียนสคริปต์ อย่างไรก็ตามตามที่ Philipp ได้กล่าวถึงหากคุณรู้จัก Java คุณก็รู้ 90% ของ C # ฉันยังรู้เพียง Java และ C ++ และมันง่ายกว่าสำหรับฉันที่จะแปลตรรกะของฉันเป็น C # (เนื่องจากฉันไม่ได้รู้อะไรมากมายเกี่ยวกับ C # แม้หลังจากการเข้ารหัสเป็นเวลาหนึ่งปีใน Unity)

อย่างไรก็ตามคุณสามารถเขียนปลั๊กอินใน Java สำหรับคุณลักษณะดั้งเดิมใด ๆ ที่ไม่ได้จัดทำโดย Unity หรือใช้ SDK ของบุคคลที่สามบางอย่างเช่นโฆษณาที่สร้างขึ้นเฉพาะสำหรับแพลตฟอร์ม Android สิ่งนี้เป็นจริงสำหรับ Objective-C สำหรับแพลตฟอร์ม iOS


1) Unity ไม่สนับสนุน Boo บางครั้ง 2) มันเป็น UnityScript ไม่ใช่ JavaScript ซึ่งใช้ Unity 3) UnityScript ก็เลิกใช้แล้ว ดังนั้นคำตอบนี้ค่อนข้างล้าสมัยในปัจจุบัน

2

ที่จริงแล้วคุณสามารถใช้ Java แบบคอมไพล์ข้าม (เช่นซอร์ส Java ที่คอมไพล์แล้วเช่นรหัส. NET ที่มีการจัดการ) ด้วย Unity3D - มันมีข้อแม้และปัญหาบางอย่าง แต่เป็นไปได้อย่างแน่นอนในระดับพิสูจน์แนวคิด มันไม่จำเป็นต้องทำผ่านระบบปลั๊กอินเนื่องจาก IKVM สร้างรหัสที่ได้รับการจัดการโดยอัตโนมัติและสามารถติดตั้ง libs ที่ได้รับการจัดการได้โดยตรง:

http://answers.unity3d.com/questions/15308/can-i-access-java-code-from-unity.html

http://www.mono-project.com/docs/about-mono/languages/java/

ดังนั้นใช่อีกสองคำตอบนั้นผิดจริง

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