Làm thế nào tôi có thể tham gia vào phát triển trò chơi mã nguồn mở? [đóng cửa]


7

Câu hỏi ngắn và ngọt ngào

Tôi mới làm quen với lập trình trò chơi nói chung, vậy làm cách nào để tạo ra các trò chơi mã nguồn mở TỐT CHẤT LƯỢNG?

Những gì tôi đã đi qua

Có vô số trò chơi mà tôi đã chơi trên Linux thật đáng xấu hổ. Đồ họa rất tệ, AI còn thiếu và khả năng chơi lại rất ít. Đừng hiểu lầm tôi; Tôi đã chơi một số trò chơi mã nguồn mở tốt như World of Goo, Gish và Aquaria; nhưng tôi thực sự đang bỏ lỡ những trò chơi hay ở đây trong túp lều Linux của tôi.

Những gì tôi đã tìm thấy

Vì vậy, tôi đã làm một nghiên cứu nhỏ về cách các trò chơi được đề cập đã được thực hiện. Vì vậy, tôi đã bắt đầu học OpenGL và SDL bằng kinh nghiệm lập trình C ++ của mình (khoảng một năm lập trình, không nhiều). Tôi cũng đã chọn những cuốn sách sau, được các lập trình viên khuyên dùng khi tràn stack:

  • Tập trung vào SDL (Bây giờ chỉ để tôi đăng một liên kết ...)
  • Kinh thánh OpenGL Super
  • GEB và MÃ

Những gì tôi đã được đề nghị

Tôi cũng đã nói chuyện với một người là một lập trình viên khá có kinh nghiệm khuyên tôi nên đi theo con đường C ++ để chơi game, và OpenGL và SDL sẽ là một cách tốt để đi. Anh ấy cũng khuyên tôi nên bắt đầu sử dụng kiểm soát phiên bản với các chương trình của mình (đặc biệt là Git). Ý kiến ​​của bạn về điều đó là gì?

Hy vọng rằng đã rõ ràng, các bạn.

Hãy cho tôi biết,
Immanu'el


có thể trùng lặp các dự án trò chơi mã nguồn mở
Tetrad

Tôi đọc điều này như muốn biến trò chơi của mình thành Nguồn mở hơn là tham gia một dự án hiện có.
ChrisF

Câu hỏi này là một chút quá mơ hồ để có ích.
khoan hồng

Tôi sẽ không đồng ý, tôi thấy câu trả lời hữu ích cho việc chỉ cho tôi đi đúng hướng.
Immanu'el Smith

Câu trả lời:


5

Rõ ràng và đơn giản, cách tốt nhất để tham gia vào trò chơi mã nguồn mở là làm điều đó.

Git là một lựa chọn tốt để kiểm soát phiên bản và bạn nên bắt đầu sử dụng nó ngay lập tức. Nó sẽ là thứ bạn sử dụng liên tục trong suốt quá trình phát triển và vì vậy bạn càng sớm làm quen với nó thì càng tốt. Là một phần thưởng bổ sung, bạn có thể lưu trữ nguồn của mình trên một trang web như GitHub để người khác có thể sao chép, làm việc và kiểm tra mã vào kho lưu trữ của bạn.

Lộ trình c ++ / sdl là một tuyến tốt và một tuyến đã được di chuyển tương đối tốt. Bạn sẽ có thể tìm thấy một lượng tài nguyên tốt trên hầu hết các chủ đề.

Khi hướng đến việc thực hiện một dự án nguồn mở, hãy nhớ rằng có thể có bất kỳ số lượng người đóng góp từ tất cả các nền văn hóa, nền tảng khác nhau, v.v. Ý tưởng của họ có thể không nhất thiết phù hợp với những gì bạn có trong đầu cho dự án. Bạn cần giữ cân bằng giữa việc duy trì những người đóng góp và chỉ đạo dự án hướng tới mục tiêu cuối cùng đó.

Tôi tin ở trên là lý do tại sao chúng ta thấy các trò chơi nguồn mở chất lượng tương đối thấp. Bạn có rất nhiều đầu bếp đóng góp trong khi bất cứ ai có động lực mạnh mẽ đến một ý tưởng cụ thể (đó là điều tôi cảm thấy cần một trò chơi) có thể trở nên xa lạ tại một số điểm trong quá trình phát triển.

Tôi có thể sai ở đây nhưng Gish và Aquaria chỉ có nguồn gốc gần đây và được phát triển bởi một nhóm kín. Tôi cũng khá chắc chắn rằng nguồn World of Goo vẫn đang đóng.

Có thể là không nên để bước đột phá đầu tiên của bạn vào chơi game là bước đột phá đầu tiên của bạn vào việc cung cấp nguồn mở cho một trò chơi. Sẽ không hại gì khi ném nó vào một kho lưu trữ công cộng, nhưng tôi đã tìm thấy, giống như nướng bánh, cái đầu tiên bị 'vứt đi'. Đó là một kinh nghiệm học tập - có được các quy trình, kỹ thuật và toán học cần thiết để có được thứ gì đó có thể sử dụng được. Đừng mong đợi trò chơi đầu tiên của bạn sẽ chiếm ưu thế như 0 AD, Battle for Wesnoth hoặc FreeCiv.

Bạn có thể muốn xem phần giới thiệu đóng góp cho một trong những trò chơi trên, đó sẽ là trải nghiệm vô giá nếu bạn muốn chạy một dự án tương tự tại một số điểm.


0

Nếu bạn đang làm bất kỳ loại phát triển phần mềm nào thì kiểm soát phiên bản là điều cần thiết. Bạn phải có khả năng theo dõi các thay đổi và nếu cần quay lại các phiên bản trước đó, đã biết, ổn định.

Điều này hoàn toàn đúng (nếu có thể) với sự phát triển nguồn mở khi bạn hoạt động hiệu quả trong một nhóm phân tán, có thể ở các quốc gia, múi giờ hoặc lục địa khác nhau.


Tôi có nên lo lắng về việc kiểm soát phiên bản trước hoặc sau khi tôi tìm hiểu những điều cơ bản về phát triển trò chơi mã nguồn mở?
Immanu'el Smith

@Emmanuel - sử dụng kiểm soát nguồn ngay từ đầu. Tôi đã không thực hiện một vài dự án cá nhân và rất tiếc vì tôi đã không có một bản ghi nào về sự thay đổi mà tôi đã thực hiện.
ChrisF

0

Cách tốt nhất để tạo ra các trò chơi độc lập chất lượng (mã nguồn mở hoặc không) là tạo ra nhiều trò chơi thực sự tồi tệ trước tiên. Đừng lặp đi lặp lại cùng một trò chơi, nhưng chỉ cần tạo ra nhiều trò chơi nhỏ và học một cái gì đó mới mỗi lần.


Tôi thực sự không thích từ "người xấu trước", bạn có được kinh nghiệm từ công việc của mình tốt hay xấu.
Robin

Điều quan trọng là nhiều người mong đợi trò chơi đầu tiên của họ là tốt. Nó sẽ không được. Chỉ cần làm một cái gì đó hoàn chỉnh và tiếp tục, ngay cả khi nó không tuyệt vời.
coderanger
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.