Unity có cho phép bạn viết mã bằng Java không? [đóng cửa]


11

Tôi còn khá mới với trải nghiệm Unity3D, nhưng tôi có kiến ​​thức rất tốt về phát triển Java và Android. Tôi thực sự bối rối rằng nếu Java hoàn toàn cần thiết để phát triển các ứng dụng Android? Tôi đã đọc ở đâu đó trong tài liệu Unity rằng việc thêm hành vi vào các đối tượng trong Unity yêu cầu sử dụng tập lệnh và sự thống nhất đó chỉ hỗ trợ các tập lệnh C #, .Net và Boo. Có sử dụng Java không?


15
Khi bạn biết Java, bạn đã biết 90% C #.
Philipp

jMonkeyEngine như đã lưu ý trong câu trả lời của SilverTiger hiện hỗ trợ cả phát triển iOS và Android ngoài phát triển máy tính để bàn. jMonkeyEngine là miễn phí và sử dụng Java. Tôi sử dụng nó để tạo ra các trò chơi của tôi.
Jason Crosby

@Philipp và những gì về C #? Tôi đã biết C # rồi giống như tôi biết 90% Java?
Asif Mushtaq

@Philipp tốt, không. Bạn cũng có thể nói "Khi bạn biết ALGOL, bạn đã biết 90% C" hoặc "Khi bạn biết trình biên dịch x86, bạn đã biết 90% về bất kỳ trình biên dịch nào" hoặc "khi bạn biết lái xe đạp, bạn đã biết biết lái xe tải "... sự tương tự của bạn bị lỗi ở nhiều cấp độ thở dài . Điều duy nhất bạn có thể nói là "khi bạn biết Java, bạn đã biết 90% cú pháp của C #". Tôi đảm bảo với bạn, tôi biết không có ai chỉ biết Java và không có quyền truy cập vào các tài liệu có thể viết mã C # đang hoạt động mà không cần kinh nghiệm trước đó.

4
Tôi đang bỏ phiếu để đóng câu hỏi này ngoài chủ đề vì đó là về Sản phẩm X có hỗ trợ tính năng Y không .
Vaillancourt

Câu trả lời:


9

Java không được Unity hỗ trợ. Bạn nên kiểm tra C #, tuy nhiên; đó là một ngôn ngữ rất giống nhau, chịu nhiều ảnh hưởng từ Java trong khi có thể làm mịn một số khía cạnh khó khăn hơn của ngôn ngữ. Cũng cần lưu ý rằng bạn sẽ cần cả Unity Pro và Unity Android Pro để tạo trò chơi Android bằng Unity. Như jhocking và tro999 ghi chú trong các bình luận, bạn không cần Unity Pro và Unity Android Pro phát hành trò chơi Unity thương mại hàng đầu trên Android.


3
Chính xác là bạn không cần Android Pro để tạo trò chơi Android. Bạn có thể triển khai lên Android từ phiên bản Unity miễn phí, nhưng bạn sẽ có một vài hạn chế đối với ứng dụng kết quả (rõ ràng nhất là nó sẽ có màn hình giật gân Unity, thay vì màn hình giật gân tùy chỉnh của riêng bạn). Nếu bạn muốn các tính năng bổ sung của Android Pro thì bạn phải sử dụng cả Unity Pro và Unity Android Pro.
jhocking

Bạn sẽ có thể bán ứng dụng thương mại?
Mắt đại bàng

3
@ Eagle-Eye có, tôi tin bạn sẽ làm được. Phiên bản miễn phí Unity dành cho các doanh nghiệp có doanh thu hàng năm dưới 100 nghìn đô la.
tro999

Nó rất giống nhau nhưng nó CỐ ĐỊNH hơn và nó thiếu hàng ngàn thư viện giúp việc mã hóa trong Java trở nên dễ dàng. Ví dụ, ProGuard có ai không? Có thể chạy được không? Danh sách SocketIO .. tiếp tục
Oliver Dixon

4

Unity chỉ hỗ trợ C#, JavaScriptBooScriptcho kịch bản. Tuy nhiên như Philipp đã đề cập, nếu bạn biết Java thì bạn biết 90% C #. Tôi vẫn chỉ biết Java và C ++ và tôi dễ dàng dịch logic của mình sang C # (Cho rằng tôi không biết nhiều về C # ngay cả sau khi viết mã một năm trong Unity).

Tuy nhiên, bạn có thể viết các plugin bằng Java cho bất kỳ tính năng gốc nào không được Unity cung cấp hoặc để triển khai một số SDK của bên thứ ba, chẳng hạn như quảng cáo được tạo riêng cho nền tảng Android. Điều tương tự cũng đúng với nền tảng Objective-C cho iOS.


1) Unity không hỗ trợ Boo trong một thời gian, 2) thực ra đó là UnityScript, không phải JavaScript, mà Unity đã sử dụng, 3) UnityScript cũng bị phản đối. Như vậy, câu trả lời này là một chút ngày nay.

2

Trên thực tế, bạn có thể sử dụng Java được biên dịch chéo (tức là nguồn Java được biên dịch thành mã .NET được quản lý) với Unity3D - nó có một số vấn đề và vấn đề, nhưng chắc chắn là có thể, ít nhất là ở mức độ bằng chứng; nó cũng không phải được thực hiện thông qua hệ thống plugin, vì IKVM tạo mã được quản lý tự động và các lib được quản lý có thể được đính kèm trực tiếp:

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

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

Vì vậy, yeah, hai câu trả lời khác là thực sự sai.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.