2010-03-15 26 views
5

Tôi đã sử dụng PyGame trong một thời gian và rất thích làm như vậy, nhưng chỉ trải nghiệm 2D sẽ không cắt nó khi tôi đăng ký công việc trò chơi video , Tôi có một số ý tưởng tôi muốn thử trong 3D. Tôi nên vào thư viện 3D nào trước tiên? Tôi đã xem xét Irrlicht, mà cũng sẽ buộc tôi phải làm việc trên C++ của tôi một lần nữa, nhưng tôi cũng đang tìm kiếm đối với XNA, vì nó sẽ được mát mẻ để viết 360 trò chơi. Bất kỳ đề xuất?Thực hiện một số thiết kế trò chơi 2D, bây giờ bạn muốn di chuyển sang 3D

+0

Hãy nhớ rằng bằng cách chọn XNA, bạn tự xóa mình khỏi Linux, Sony, Nintendo, thị trường Mac. –

+0

Tôi biết điều đó, nhưng có nền tảng nào hỗ trợ số lượng lớn hơn các nền tảng này không? – Nikwin

Trả lời

2

Theo tôi, đi với Irrlicht hoặc OGRE là một ý tưởng hay. Nó sẽ giúp bạn lấy lại liên lạc với C++ và thử nghiệm với 3D mà không làm cho nó quá dễ dàng. Bạn cũng nên học XNA và xây dựng một số nguyên mẫu trò chơi 3D ở đó.

Tóm tắt: Thực hiện cả hai, cuối cùng. Tìm hiểu OpenGL/DirectX sau.

Tất cả tốt nhất.

+0

Tôi chắc chắn đang lên kế hoạch làm cả hai lần, nhưng tôi đã hướng tới thư viện C++ trước, vì vậy tôi đoán tôi sẽ bắt đầu với Irrlicht. – Nikwin

+0

Tất cả những gì tốt nhất trên hành trình của bạn :) – batbrat

1

XNA Game Studio là một khuôn khổ tuyệt vời và cho phép người dùng nhảy vào việc tạo trò chơi khá nhanh chóng nếu bạn thấy thoải mái với .NET Framework.

Tuy nhiên, nếu bạn quyết định muốn chuyển sang thế giới 3D, bạn có thêm 1 thứ nguyên để xem xét và điều này làm cho mọi thứ trở nên khó khăn hơn theo cấp số nhân. Phát hiện va chạm đơn giản, không đơn giản như vậy nữa. Tuy nhiên, với vast amount of information available cho XNA Game Studio, bạn sẽ thấy mình dễ dàng nắm bắt được chiều thứ 3 khá nhanh.

Nếu bạn chưa thực hiện toàn bộ hướng dẫn về kiểu Nehe, tốt nhất là nên chơi với API để bạn cảm thấy thoải mái với nó.

  1. Tạo một Tam giác
  2. spin Tam giác
  3. Màu Tam giác
  4. tải một số tài sản (mô hình và kết cấu) và làm cho chúng
  5. Hãy thử tay của bạn tại Alpha Blending

Hãy xem xét rằng XNA Game Studio không có một đường ống chức năng cố định và bạn sẽ phải sử dụng Shaders (HLSL).

+1

Hãy nhớ rằng NeHe đã lỗi thời, và dành cho OpenGL, không phải DirectX/XNA. – Ricket

3

Bạn có thể thử Unity3D http://unity3d.com/. Vào mùa thu, họ phát hành engine miễn phí là nền tảng chéo (Mac, Win và Linux có thể) và nó cũng có thể được nhắm mục tiêu cho iPhone và trình duyệt web và đang bắt đầu xây dựng một cộng đồng mở và trông đầy hứa hẹn.

Tôi đã thực hiện một số nội dung XNA và các công cụ Unity trông khá tốt so với việc giúp nội dung dễ dàng hơn vào trò chơi của bạn.

+1

Vì OP đã sử dụng PyGame, không phải Game Maker, tôi KHÔNG khuyên bạn nên Unity. Tôi nghĩ anh ấy đang đi đúng hướng với Irrlicht hoặc XNA, hoặc Ogre3D hoặc CrystalSpace hoặc jMonkeyEngine hoặc một số thư viện lập trình khác, không phải là hệ thống biên tập/trò chơi/hệ thống prefab trên thế giới mà Unity là. – Ricket

0

Tôi đã đích thân sử dụng Irrlicht, Ogre3d, Unity & Xna. Bởi vì bạn muốn làm điều này để giúp cho khi bạn áp dụng cho công việc trong ngành công nghiệp game theo ý kiến ​​của tôi, tôi sẽ đề nghị Irrlicht như bạn sẽ muốn làm việc trên các kỹ năng C++ của bạn. Tôi cũng đề nghị Irrlicht vì nó là một công cụ 3D không phải là một công cụ trò chơi cụ thể mà sẽ cho phép bạn làm việc trên các kỹ năng vật lý và toán học của bạn cũng được đánh giá cao sau khi tìm trong ngành công nghiệp trò chơi.

Tôi khuyên bạn nên tránh Unity nếu bạn đang tìm kiếm kinh nghiệm để đưa vào ngành vì nó là một gói xử lý rất nhiều cho bạn và như vậy có thể hạn chế việc học của bạn.

Ogre3D là một lựa chọn khả thi vì nó tương tự như Irlicht, có thể xem xét các công cụ có sẵn để giúp bạn lựa chọn giữa hai công cụ đó.

Xna là một lựa chọn thú vị khác, nó sẽ cung cấp cho bạn nhiều cơ hội để học như Irrlicht và có một lượng lớn tài nguyên để giúp bạn học nhưng đồng thời mất đi trải nghiệm C++ đi kèm với irrlicht.

+0

Cũng có thể tìm thấy câu hỏi này hữu ích. http://stackoverflow.com/questions/149773/crystalspace-vs-irrlicht-vs/350459#350459 –

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