2010-10-14 44 views
8

Tôi đang tìm kiếm một động cơ 3D (cho trò chơi). Tôi thích C# với .net hoặc Mono nhưng C++ cũng sẽ làm điều đó nếu tôi không tìm thấy bất cứ điều gì cho C#. Tôi muốn mã chương trình cho Windows và Linux. iPhone/Android cũng sẽ rất thú vị cho các dự án khác.(Đa nền tảng) Lập trình 3D với C# (mono)

Cho đến nay tôi tìm thấy những động cơ (C#):

  • Axiom - Cái này có vẻ khá công bằng và vì nó là một C# cảng Ogre3D nó nên cung cấp chức năng cơ bản (tôi khá một người mới bắt đầu trong không gian 3D để Tôi không cần nhiều chức năng). Đó là Windows và Linux :), không biết về Mac, Đó là Mã nguồn Mở
  • Unity - Tôi nghĩ rằng bản thân động cơ được viết bằng C++, nhưng tôi không chắc chắn. Nhưng bạn có thể viết trò chơi bằng C# :) và JavaScript. Đó là Windows và Mac và một số nền tảng khác như iPhone, ... nhưng không có Linux. Và tôi không biết bạn có thể làm được bao nhiêu trong phiên bản miễn phí. Nó không phải là mã nguồn mở
  • XNA, nó chỉ dành cho Windows nhưng có MONO.XNA nhưng tôi nghĩ dự án này đã chết.

Có một số công cụ khác mà tôi có thể sử dụng trong C# không?
Axiom có ​​vẻ là những gì tôi cần. Ai đó có kinh nghiệm với Axiom? Bạn sẽ chọn cái nào?

Cảm ơn!

Edit: Nó sẽ là tuyệt vời nếu chương trình được xây dựng với động cơ/khuôn khổ không yêu cầu bất kỳ chương trình runtime cài đặt (trừ .net hoặc mono) Theo như tôi biết bạn cần phải cài đặt XNA để chạy các ứng dụng XNA . :(

+0

Mono.Xna là tiếc rất chết tôi sẽ giúp phục hồi lại nó nếu... –

Trả lời

2

Nhìn vào OpenTK cho một thư viện đồ họa OpenGL cơ bản tốt. Tài liệu là here cũng như một bài tương tự từ GameDev.

0

Chỉ cần một gợi ý hoang dã, nhưng bạn có thể thử để làm điều đó bằng cách sử dụng phần tử canvas Trong html5, bạn sẽ có thể làm những điều tương tự như bạn có thể sử dụng C++/OpenGL, nhưng sử dụng JavaScript trực tiếp trong trình duyệt.Tất nhiên bạn sẽ không thể làm cho nó hoạt động khá tốt như bạn có thể sử dụng C++, nhưng tính di động sẽ rất tuyệt, không có khung công tác nào để cài đặt và bất kỳ ai có trình duyệt (bất kể hệ điều hành) có thể chơi nó như thế nào.

Đây là một số tuyệt vời tutorials

Dont quên rằng bạn sẽ nhận được những phần tốt và xấu của việc chảy máu cạnh ...

+0

Vâng, nếu đó là trường hợp bạn nên làm với Unity, nó là siêu mạnh và có thể triển khai các trò chơi bằng cách sử dụng một plugin web (Linux được bao gồm) Nhưng, nếu tôi hiểu chính xác câu hỏi, trò chơi trên trình duyệt không phải là một lựa chọn –

1

Check-out Irrlicht Engine.

Tôi nghĩ rằng nó có mọi thứ bạn đang yêu cầu (Opensource, nền tảng độc lập, v.v.). Tôi chỉ sử dụng nó cho một dự án nhỏ trong quá khứ, nhưng tôi biết nó có một hệ thống renderer rất tốt. Động cơ không có Trình chỉnh sửa cấp độ nhưng bạn mua nó như một ứng dụng bổ trợ.

Đối với tích hợp Irrlicht/Mono, look here.

Đối với iPhone/Android, tôi nghĩ đặt cược tốt nhất của bạn là đi kèm với Unity. Như bạn đã nói, nó không phải là mã nguồn mở, nhưng tôi đã thấy không có gì dễ dàng hơn động cơ ngoạn mục này.

+0

IrrlichtNetCP không thực sự là một lựa chọn tốt nếu bạn đang tìm kiếm .Net hỗ trợ và nền tảng chéo. Tôi đã cố gắng làm cho nó hoạt động trên Linux, nhưng chỉ "hỗ trợ" nó có là rất đơn giản makefile rằng không xây dựng được. Rõ ràng, hỗ trợ Linux chỉ là một suy nghĩ. –

0

Khung Qt hỗ trợ đầy đủ OpenGL. Đó là C++. Nó không chính xác là động cơ, nhưng bạn có thể cắm vào một số động cơ khác vào nguồn của bạn.

Tôi mới sử dụng Qt từ vài tuần đến một tháng trước, cũng đến từ nền C# nặng. Có một số trở ngại là đầu tiên (chủ yếu là dựa trên trình biên dịch đầu trầy xước), nhưng ngoài đó tôi đã hoàn toàn rơi vào tình yêu với nó. Tôi đã thử những thứ như Java và Python khi tôi đang tìm cách để đi qua nền tảng, nhưng Qt là nơi tôi định cư.

0

Tôi đã từng là một người hâm mộ lớn của OGRE - có thể đáng để kiểm tra xem MOGRE có được hỗ trợ trên Mono hay không.

EDIT:

Vâng, tôi đã kiểm tra, và nó nói rằng nó không được :(Guys được giới thiệu AXIOM thay

Các vấn đề liên quan