2011-01-08 19 views
18

Anh trai đứa trẻ 11 tuổi của tôi muốn học cách lập trình trò chơi. Anh ấy chưa bao giờ được lập trình nhưng muốn học lập trình. Mối quan tâm của anh là trò chơi và lập trình trò chơi và anh hiểu rằng điều đó có thể khó nhưng anh muốn làm điều đó. Vì vậy, rõ ràng, tôi quay sang SO folks để biết những gì bạn cảm thấy về cách anh ta nên đi về nó. Hãy nhớ rằng, hãy đề nghị trênBắt đầu những điều cơ bản về lập trình trò chơi

  • khu vực mà người mới bắt đầu có thể chọn,
  • làm thế nào để bắt đầu trong khu vực đó,
  • gì để đọc trong đầu,
  • ngôn ngữ ban đầu ở phần đầu, vv

Khi phần bắt đầu được xử lý, bạn cũng có thể đề xuất nội dung trung cấp và nâng cao nhưng câu hỏi này là về cấp độ rất bắt đầu. Nếu có những khu vực như trò chơi Web Vs. giao diện điều khiển trò chơi Vs trò chơi máy tính chung, sau đó xin tư vấn về các khu vực. Như tôi đã nói anh ấy chưa bao giờ lập trình, anh ấy có thể muốn thử tất cả các lĩnh vực và chọn một trong những lĩnh vực anh ấy thích nhất. Tôi hy vọng đây không phải là quá nhiều để yêu cầu một người nào đó trong lĩnh vực này, nhưng nếu câu hỏi này là rất lớn, xin vui lòng tư vấn về cách phá vỡ nó thành nhiều câu hỏi. ~ Cảm ơn.

+13

Có thể phù hợp hơn cho http://gamedev.stackexchange.com/ – Sampson

+0

Tôi rất muốn đề xuất bạn truy cập trang web nền tảng Raspberry Pi. Toàn bộ doanh nghiệp của họ là hỗ trợ những người như anh trai của bạn. http://www.raspberrypi.org/ – Aron

Trả lời

25

Tôi bắt đầu trò chơi viết sự nghiệp lập trình khi tôi 15 tuổi và rất thú vị (mặc dù tôi đã đấu với C++ trong 3 năm chỉ vì "đó là những gì được sử dụng để viết trò chơi"). hai của tôi cent:

  • Bắt đầu với một programming language that is easy to use (KHÔNG C hoặc C++)
  • Lấy một cuốn sách mới bắt đầu cho rằng ngôn ngữ lập trình (không hướng vào trò chơi)
  • Quyết định về một số API hoặc môi trường cung cấp những gì cần thiết để viết trò chơi. Tôi bắt đầu bằng cách làm rắn, kẻ xâm lược không gian, vv trong giao diện điều khiển, nhưng bất kỳ môi trường 2D nào sẽ làm (ở lại cách xa 3D càng lâu càng tốt; có nhiều thứ quan trọng hơn để học trước). SDL/GLUT cho OpenGL có các liên kết bằng hầu hết mọi ngôn ngữ. Pygame cho Python cũng có triển vọng. Sử dụng HTML5's canvas -kết thúc, bạn thậm chí có thể viết các chương trình trong trình duyệt bằng JavaScript. Im không chắc chắn những gì tốt nhất những ngày này, nhưng có bạn có một số gợi ý.
  • Tìm cộng đồng để cảm hứng và giúp đỡ khi bị kẹt. Tôi đã sử dụng gamedev.net. Vì chúng tôi đang trên stackoverflow, gamedev.stackexchange.com cũng phải là một lựa chọn tự nhiên :)
  • Bắt đầu nhỏ. Rất nhỏ. Ý tôi là rất nhỏ. Sau đó thực hiện các bước nhỏ để thử thách mới. Vui lòng không viết MMORPG.
  • Thiết kế trò chơi và đồ họa vui nhộn nhưng tập trung vào lập trình (ít nhất là bây giờ). Khi bạn đã viết một trò chơi đơn giản, hãy tìm hiểu cách làm điều tương tự tốt hơn.
  • Đặt mục tiêu. Hãy tưởng tượng trò chơi mà bạn muốn thực hiện. Đừng cố gắng để làm cho một trong những ngay lập tức, nhưng hãy chắc chắn rằng mỗi điều mới bạn tìm hiểu hoặc thực hiện sẽ đưa bạn một bước gần hơn. Đừng học những gì bạn không cần để nói (chỉ đơn giản là quá nhiều quá học).

Tôi muốn bạn và anh trai của bạn may mắn nhất, tôi không bao giờ hối tiếc đi xuống con đường mà anh sắp sửa tham gia!

5

Đối với trò chơi bắt đầu phát triển enthousiast, tôi nghĩ bạn không thể sai khi kết hợp Python + Pygame. Python là một ngôn ngữ tuyệt vời, thanh lịch (và dễ học) toàn diện và rất nhiều hướng dẫn tuyệt vời có sẵn cho Pygame, giải thích những điều cơ bản của phần lớn là lập trình trò chơi 2D.

1

Nó có thể mất một thời gian cho đến khi ông có thể lập trình một trò chơi thích hợp ...

Nhưng khi tôi nhìn thấy nó, ông nên bắt đầu với Java vì nó rất dễ dàng để tìm hiểu và tốt cho các trò chơi cơ bản.

Bắt đầu từ anh ấy sẽ không thể làm nhiều hơn một trò chơi đoán, nhưng anh ấy không nên thất vọng, điều này sẽ mất thời gian.

Tôi nghĩ bạn nên mua cho anh ấy một cuốn sách về java và bắt đầu từ những điều cơ bản.

Bạn sẽ nhận được nhiều câu trả lời khác nhau về cái này vì nó là chủ yếu là ý kiến ​​cá nhân ...

1

dạy cho cháu biết những điều cơ bản của chương trình: biến, tờ khai, tài sản, phương pháp, lập luận, các lớp học, mảng, vòng. Tôi đề nghị C# như một ngôn ngữ bắt đầu, nó có vẻ đơn giản hơn C hoặc C++ để bắt đầu, theo ý kiến ​​của tôi. Một khi anh ta hiểu những khái niệm đó, nó không phải là cực kỳ khó khăn cho anh ta để nhảy vào và làm theo một số hướng dẫn XNA trên một trò chơi đơn giản như pong hoặc một cái gì đó.

-3

IMHO anh ấy nên bắt đầu học C. sau đó chuyển sang OpenGL sau khi anh ấy đã nắm được các cấu trúc C cơ bản.

+2

Con trai tôi cũng 14 tuổi và tôi thực sự không chắc chắn đó là một khởi đầu tốt! python dễ hiểu hơn nhiều. – VGE

+5

Wow, đó là rất nhiều đại số tuyến tính và lập trình cồng kềnh cho một người mười bốn tuổi không bao giờ viết bất kỳ mã nào. – LandonSchropp

0

Viết một số kịch bản đơn giản cho trò chơi như Wesnoth có thể là một khởi đầu tốt.

Cơ sở học tập lập trình cũng rất quan trọng. Một ngôn ngữ như python có lẽ là một khởi đầu tốt. Ngôn ngữ rõ ràng và dễ học và dạy. Và điều đó rất dễ hiểu.

1

, một phần của Stack Exchange, là một tài nguyên tuyệt vời cho các loại điều này. Nó được tải với các bài đăng như this một.

3

There's this post trên trạm biến áp Gamedev nơi áp phích ở đúng vị trí tương tự.

Trích dẫn câu trả lời của tôi từ đó:

Tôi cũng 15 là, vì vậy tôi đoán rằng có thể giúp đỡ? : P

Tôi vừa mới bắt đầu học Python (được làm C++ cho một năm hoặc lâu hơn), và Tôi thấy nó dễ dàng hơn để học hỏi hơn so với C++. Có ít cạm bẫy hơn, và bạn cần ít mã để nhận được nội dung nào đó trên màn hình - những gì tôi tìm thấy khiến bạn muốn tiếp tục.

Và có các trình bao bọc như Pygame và Pyglet trên SDL/OpenGL cho mặt đồ họa .

Và trước khi bắt đầu thực hiện các trò chơi đơn giản , tôi khuyên bạn nên học một ngôn ngữ trong ít nhất một vài tháng là .(Tất nhiên, dựa trên văn bản trò chơi như đoán số lượng và treo cổ là bài tập tốt trong thời gian này)

Và đối với những gì để đọc; Tôi có thể tư vấn cho Invent With Python. Nó đi từ việc học ngôn ngữ theo một cách rất gamedev - đó là một bước tốt để đảm bảo rằng anh ta vẫn quan tâm; Tôi nghi ngờ nhiều trẻ em tuổi của mình sẽ muốn tìm hiểu tất cả về các biến và vòng lặp, moreso có thể làm cho một trò chơi - tất cả các cách để liên tục giới thiệu PyGame và đồ họa.

1

Làm thế nào thay vì buộc anh ta phải học một ngôn ngữ đầu tiên, hãy khiến anh ta tham gia vào việc sử dụng một khuôn khổ nơi anh ta có thể dễ dàng nhìn thấy kết quả để duy trì sự quan tâm. Một cái gì đó dọc theo dòng RPGMaker có thể là đủ.

Lý do của tôi cho điều này là, vâng, bạn muốn anh ấy tìm hiểu các khái niệm cơ bản về tạo trò chơi và giới thiệu lập trình, nhưng bạn không muốn đốt cháy anh ấy theo các thủ tục của ngôn ngữ.

Nếu anh ấy 14 tuổi, anh ấy ở độ tuổi trung học (giả sử Hoa Kỳ ...), và có cơ hội tốt là có các khóa học lập trình sẵn có cho anh ấy ở đó. Hãy để anh ta đánh răng của mình trên những người để mài ra những khó khăn của việc giới thiệu lập trình, và sau đó một khi anh ta quan tâm đến việc mở rộng vượt ra ngoài giới hạn của các bộ công cụ giới thiệu anh ta với câu trả lời được đăng bởi những người dùng khác.

hai xu của tôi ... Tôi đã nhìn thấy những đứa trẻ từ bỏ chương trình trước vì họ nhảy ngay vào làm trò chơi và nhanh chóng bị thất vọng ...

1

Ban đầu, chắc chắn rằng bạn giữ cho nó vui vẻ. Thử chế nhạo những trò chơi cũ như 1 sân khấu khúc côn cầu hay khúc côn cầu trên không. Và sử dụng một ngôn ngữ lập trình với việc thực hiện dễ dàng bộ hẹn giờ. Bởi vì tính giờ, tôi nghĩ là cách dễ nhất để hiển thị một số hiệu ứng hiển thị. Tôi muốn giới thiệu hình ảnh cơ bản hoặc khách quan-c (Tôi biết nhiều người sẽ không đồng ý, NHƯNG nó là dễ dàng chết tiệt với sức mạnh của Xcode). Thumbs up! Chúc vui vẻ.

1

Tôi đồng ý với ChristopheD về Python và Pygame. Khi nói đến ngôn ngữ Python là tuyệt vời cho người mới bắt đầu bởi vì nó là rất cao cấp do đó dễ dàng hơn để hiểu và cú pháp là sạch sẽ và đơn giản. Và Pygame là một thư viện tuyệt vời cho việc học lập trình game.

Cuối cùng, anh ấy sẽ muốn chuyển sang C++, điều mà tôi hiểu là chuyển sang ngôn ngữ để phát triển trò chơi. Nhưng Python và Pygame sẽ là một khởi đầu tốt hơn, đặc biệt là cho một 11 tuổi.

Một loạt tốt dễ dàng để đọc sách trực tuyến như sau ba:

http://greenteapress.com/thinkpython/thinkpython.html học Python http://inventwithpython.com/ trang web này đã hai cuốn sách, những gì để làm cho trò chơi trong đồng bằng Python và khác để làm cho trò chơi bằng cách sử dụng Pygame thư viện cho Python. Một khi anh ta trải qua ba cuốn sách này, anh ấy sẽ có thể bắt đầu tạo ra các trò chơi của riêng mình bằng Python sử dụng Pygame và sau đó cuối cùng chuyển sang các công cụ/công cụ phát triển trò chơi nghiêm túc hơn.

0

Đây là mã nguồn trò chơi - rất cơ bản (Bướm phiêu lưu 1.0) được tạo bằng javascript để bắt đầu tìm hiểu lập trình. Chỉ sử dụng các mã cơ bản (biến, nếu, chuyển đổi, hàm, sự kiện, v.v.).

Có thể hữu ích khi bắt đầu học phát triển trò chơi.

  • Chơi trò chơi link
  • Source code link
  • hướng dẫn Video (Chỉ trong Thổ Nhĩ Kỳ) link

Ảnh chụp màn hình

enter image description here

Hãy vui vẻ.