Một nền tảng khởi đầu tốt cho một lập trình viên tuổi teen là gì? [đóng cửa]


32

Con trai tôi (15 tuổi) đã quyết định rằng nó muốn theo đuổi nghề lập trình viên trò chơi. Tôi đã nói rằng anh ấy nên bắt đầu ngay bây giờ với một trò chơi đơn giản. Anh ấy chưa có kinh nghiệm lập trình, nhưng tôi là một lập trình viên (ứng dụng kinh doanh, không phải trò chơi) nên tôi có thể dạy anh ấy lập trình, nhưng đâu sẽ là nền tảng tốt để anh ấy bắt đầu? Ban đầu tôi đang tìm kiếm thứ gì đó có thể cung cấp kết quả nhanh chóng, để giữ cho sự nhiệt tình của anh ấy tăng lên.

Bạn đề nghị điều gì?


13
Đóng cửa? Bạn chăc hẳn la đang đua! Tôi đã hỏi câu hỏi này một năm trước đó, nó có ít nhất 19 câu hỏi, câu trả lời được nêu lên của nó đã có ít nhất 86 câu hỏi, 5 người đã đánh dấu nó là một mục yêu thích. Và các câu trả lời liên quan đến sự kiện, tài liệu tham khảo, hoặc chuyên môn cụ thể. Cuối cùng, nó cực kỳ hữu ích với tôi, và, tôi cũng sẽ đề nghị những người khác. Làm thế nào để tôi đi về kháng cáo quyết định này?
gkrogers

1
Bạn có thể tạo một bài viết về nó trên meta nếu bạn thực sự muốn. meta.gamedev.stackexchange.com
Tetrad

Câu trả lời:


30

XNA là một giải pháp tốt cho một lập trình viên khá tự tin. Nó sẽ là một mục tiêu tốt để nhắm đến trong tương lai.

Các phát triển Unreal Kit là một cách để có được kết quả xa một cách nhanh chóng và dễ dàng hơn, và có thể là một nơi tốt để bắt đầu. Các ý kiến ​​đã chỉ ra rằng UDK thực sự là một lựa chọn khá tệ , vì vậy tôi không thể khuyên bạn nên dùng nó.

Unity là một giải pháp thay thế, nó sẽ chạy trên điện thoại, điều mà UDK không thể làm (theo như tôi biết). Vì vậy, nếu anh ấy tham gia vào các trò chơi lập trình cho điện thoại, có lẽ sự đoàn kết sẽ tốt hơn?


4
Tôi đồng ý với điều này. Unity là một giải pháp thay thế cho UDK, mặc dù tôi nghĩ nó khó hơn một chút. Xem liệu bạn có thể khiến anh ấy gặp rắc rối với một số UnrealScript (ngôn ngữ kịch bản của Bộ công cụ phát triển Unreal) không. XNA chắc chắn là ngôn ngữ lập trình trò chơi thực tế đầu tiên mà anh ta nên sử dụng; nó dễ nhất (nói một cách tương đối; không dành cho người mới bắt đầu tuyệt đối) và tôi thích nó để tạo mẫu vì bạn có thể nhanh chóng bắt đầu vẽ mọi thứ trên màn hình.
Ricket

2
+1 cho đề xuất XNA. Nếu anh ta cố gắng học tốt và có ý tưởng tốt, anh ta có thể dễ dàng kiếm tiền bằng cách bán các trò chơi cho Zune / WP7 / XBOX 360.

2
Unity hoạt động trên iPhone và trong trình duyệt, do đó, đây là một cách tốt để phân phối trò chơi cho mọi người thử nghiệm và làm quen với việc bị đốt cháy sớm
Chris S

4
Tránh UDK. Nó có thể rất mạnh mẽ, nhưng cũng là một nỗi đau rất lớn. Nó chứa đầy những "vấn đề" và những hạn chế không có giấy tờ.
Peter lsted

4
Tôi cũng 15 tuổi, học pascal đầu tiên ở 10, rồi C, rồi C ++. Đã thử lập trình một số trò chơi trong C ++ và allegro ở mức 12+ -, không thành công lắm, tôi có thể làm rất nhiều thứ, nhưng tôi không thể nghĩ cách xây dựng toàn bộ trò chơi. Điều đó giữ tôi lên. Với XNA, mọi thứ trở nên dễ dàng hơn rất nhiều, và cũng vậy, việc xử lý lỗi dễ dàng của các ngoại lệ C # được hiển thị tại thời điểm gỡ lỗi giúp ích rất nhiều để giúp bạn biết bạn đang làm gì sai. Tất nhiên, các ngôn ngữ khác cũng có, nhưng tôi nghĩ Visual C # có công cụ gỡ lỗi tốt nhất xung quanh.
Gustavo Maciel

20

Tôi cũng 15 tuổi, vì vậy tôi đoán điều đó có thể giúp gì? : P

Gần đây tôi đã bắt đầu học Python (đã làm C ++ được một năm hoặc lâu hơn) và tôi thấy nó dễ học hơn nhiều so với C ++. Có rất ít cạm bẫy và bạn cần ít mã để có một cái gì đó 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 hàm bao như Pygame và Pyglet trên SDL / OpenGL cho mặt đồ họa.

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


9
Python và Pygame là một luồng gió mới cho tôi sau khi viết game ở C trong nhiều năm. Tôi hình dung rằng tôi có thể hoàn thành công việc tương tự trong khoảng 10% thời gian trong Python vì khía cạnh cấp cao hơn cho mọi thứ.
dash-tom-bang

Tôi biết, tôi cũng cảm thấy như vậy (và tôi đã làm C ++ được một năm).
Vịt Cộng sản

+1. Tôi phải nói rằng, mặc dù chỉ hơi quen thuộc với Python, nhưng đó là đề xuất đầu tiên của tôi cho những người lập trình mới bắt đầu. Bây giờ chúng ta chỉ cần một con trăn-robot! Cũng đề xuất tốt cho ví dụ hangman. =)
leander

Anh bạn nên học một ngôn ngữ .net (tôi thích C #, F # không nhiều lắm, vb.net vẫn ổn. Boo không hỗ trợ trong các studio trực quan :(). Các ngôn ngữ ít bị lỗi hơn C ++ và bạn sẽ có ngoại lệ khi bạn làm gì đó sai (một điều rất tốt. C ++ nên làm nhiều hơn thế). Và bạn có thể tìm hiểu cách sử dụng ngăn xếp cuộc gọi, xem các biến, điểm dừng (tôi giả sử các điểm dừng hoạt động trong IDE python?) và bạn sẽ có thể gỡ lỗi nhanh chóng Thật tuyệt vời khi bạn viết mã người mới bắt đầu không ổn định.

13

Một chút câu trả lời không chính thống ở đây:

Biên tập viên Galaxy Starcraft II.

Bạn có thể thực hiện hầu hết mọi trò chơi trong Starcraft 2.

Nó cũng dạy hầu hết các cấu trúc lập trình như các vòng lặp và nếu các câu lệnh theo cách tập trung vào GUI.

Một khi anh ấy tự tin với những điều cơ bản, bạn có thể có cho anh ấy những thứ kịch bản.

Nếu anh ta giỏi về nó và thấy điều này thú vị, anh ta sẽ thích lập trình trò chơi thích hợp.


3
Tôi đã đề nghị Warcraft III. Bắt đầu bằng một ngôn ngữ kịch bản đơn giản thực sự là một cách hay để đi. Cả Warcraft III và Starcraft II đều có GUI bạn có thể sử dụng để thoải mái và chức năng xem mã dưới dạng tập lệnh thô, để xem hoạt động bên trong.
William Mariager

2
Theo dõi đúng . Bắt đầu với bất kỳ trình soạn thảo cấp độ nào là cách tốt nhất để đi. Anh ta có thể bỏ qua tất cả các giàn giáo và khó khăn và đến ngay phần thú vị của việc dệt một kịch bản và thiết kế một cấp độ.
bobobobo

Cho đến nay, một trong những câu trả lời hay nhất tôi từng thấy cho loại câu hỏi này, tôi bắt đầu làm trò chơi đầu tiên khi tôi còn rất ít với MS powerpoint thông qua các siêu liên kết và chơi một trò chơi gọi là "câu lạc bộ robot"; trong lối chơi của nó dạy cho bạn rất nhiều điều cơ bản về lập trình giantbomb.com/the-robot- club / 3030-29776
Jim Jones

10

Tôi đại khái sẽ chia các công cụ phát triển trò chơi thành ba loại lớn:

  1. Dễ học và sử dụng, nhưng hạn chế. Game Maker, Game Salad, RPG Maker, Adventure Game Studio đều thuộc loại này.
  2. Mạnh mẽ, nhưng với một đường cong học tập dốc. C ++ và các ngôn ngữ lập trình "khó tính" khác phù hợp ở đây.
  3. Các ngôn ngữ trung gian, nói chung là các ngôn ngữ script như Lua, Python và ActionScript, phân tách sự khác biệt bằng cách yêu cầu bạn thực sự viết một số mã nhưng quan tâm đến các chi tiết khó hiểu hơn như quản lý bộ nhớ cho bạn.

Đối với những người không có kinh nghiệm lập trình, tôi thường khuyên họ nên bắt đầu trong danh mục đầu tiên, chỉ để bắt đầu thực hiện SOMETHING. Khi họ cảm thấy thoải mái với một công cụ tác giả nhất định nhưng thực sự cảm thấy như những hạn chế đang vượt xa lợi ích, đã đến lúc học một cái gì đó trong danh mục tiếp theo.


9

Tôi biết điều này sẽ hẹn hò với tôi phần nào, nhưng lớn lên tôi thực sự rất thích P-Robots . Có một mục tiêu thực sự đơn giản (đánh bại các robot khác), API đơn giản và một khoảng thời gian ngắn giữa các thay đổi về mã và xem kết quả. Nó phân biệt thành AI, các mẫu thiết kế và thậm chí cả cấu trúc mã quy mô lớn hơn (một số robot này có thể trở nên khá lớn - và việc chia sẻ mã giữa các robot thì sao?). Nếu bạn có thể tìm thấy một cái gì đó tương tự nhưng mới hơn thì đó là một cách tốt để có được phần "bắt đầu lập trình". Gợi ý:

Khi đã xong, hãy cân nhắc đến một game bắn súng cuộn 2D, platformer hoặc trò chơi "kiểu arcade" tương tự - bạn có thể sử dụng SDL hoặc XNA hoặc bất cứ thứ gì quen thuộc nhất. Ngay cả việc nhận được một bản sao pong lên và chạy trong những điều này không hoàn toàn tầm thường. Điều này cung cấp cho bạn một tiếng vang nhỏ về những gì nó muốn xây dựng một cái gì đó "tiếp đất".

Sau này, khám phá: một bản mod cho một trò chơi 3d hiện có (một đối tượng mới, hoặc bot, hoặc một cái gì đó) để cung cấp một cái nhìn sâu sắc về các công cụ lớn hơn.

Các chìa khóa, từ những gì tôi đã thấy, dường như là:

  • lặp lại nhanh chóng: khả năng nhìn thấy kết quả nhanh chóng
  • nguyên mẫu: nhiều thử nghiệm nhỏ để có được bề dày kinh nghiệm và sự tự tin (được rồi, chúng ta sẽ làm một trò chơi bằng đá cẩm thạch như thế nào? về những kẻ xâm lược không gian? v.v.)
  • khám phá: học cách yêu thích tìm hiểu cách các trò chơi của người khác được xây dựng, tinh chỉnh chúng, v.v.

2
+1 cho các cơn bão, nhưng tôi sẽ sử dụng ROBOCODE ( robocode.sourceforge.net ) thay vì P-Robots.
Callum Rogers

@Callum: rực rỡ, sẽ cập nhật câu trả lời =)
leander

Tôi sẽ sử dụng LegoMindstorms với NXC
Joe the Person

6

Lời khuyên của tôi là làm cho các trò chơi dựa trên web. Tại sao? Chà, trước hết, JavaScript là một ngôn ngữ đẹp sẽ dạy cho anh ta tất cả các khái niệm cơ bản về lập trình và bạn thực sự có thể tạo ra một trò chơi tuyệt vời, có thẩm quyền và đa nền tảng với nó. Nó cũng sẽ đủ điều kiện cho anh ta nhiều thứ khác ngoài việc làm game ... Nếu vì một lý do nào đó, bạn không muốn con trai mình phát triển web, thì tôi khuyên bạn nên sử dụng Python, với một mô-đun có tên PyGame. Tôi cũng có kinh nghiệm với điều đó, và tôi thật tuyệt vời. Những gì tôi không đề xuất là bắt đầu với C / C ++, đó là những gì tôi đã làm và thật tồi tệ và có thể khiến anh ấy không có động lực để lập trình hoàn toàn.

Một lưu ý khác, có lẽ bạn là một người cha tuyệt vời, xin chúc mừng!


1
Gợi ý tốt. Điều đó nói rằng, tôi đã bắt đầu với C (không phải là có những sự thay thế thực sự hồi đó) và nó thực sự không quá đau đớn; Tất nhiên, đó không phải là lý do để sử dụng nó vì có ngôn ngữ cấp cao hơn.
o0 '.

1
Cảm ơn! Ngoài ra, tôi đã không bắt đầu với các trò chơi, và quan điểm của tôi là anh ấy, sau khi học một ngôn ngữ cấp cao hơn, sẽ hiểu rõ hơn về khái niệm lập trình chung và sẽ không khiến động lực của anh ấy cạn kiệt. Và tất nhiên - tôi đã thể hiện một chút ở đó;)
jcora

1
Ở tuổi đó, việc có thể chia sẻ những sáng tạo của tôi một cách dễ dàng với bạn bè là một động lực. Trò chơi web được chia sẻ dễ dàng hơn. Bạn đăng URL của mình lên Facebook và nhờ bạn bè dùng thử. Actioncript / Flash hoặc Javascript / HTML5 có thể là cược tốt nhất của bạn để có thể chia sẻ dễ dàng, với Java hoặc Unity một giây.
amitp

5

Mindstorms Roboter thực sự rất tuyệt. Chúng tôi có một số NXT ở trường, và tuần trước chúng tôi đã bắt đầu với việc lập trình những thứ như theo dõi một dòng, và những thứ đó. Bạn có thể nhận được kết quả dễ dàng.

Ngoài ra tôi đã tìm thấy www.3dgamestudio.de một lúc trước. Tôi không có nhiều hơn về nó, nhưng nó thực sự thú vị. Bạn có thể lập trình với lite-C đó là:

Lite-C là ngôn ngữ lập trình cho các ứng dụng đa phương tiện và trò chơi máy tính, sử dụng tập hợp con cú pháp của ngôn ngữ lập trình C với một số yếu tố của ngôn ngữ lập trình C ++

Tại http://tutorial.3dgamestudio.net/ bạn vào đó. Và cũng có một trình soạn thảo cấp độ, mô hình và địa hình.

ps: Tôi 16 tuổi và bắt đầu với một người bạn lập trình một trang web và tùy chỉnh một máy chủ trò chơi được lập trình. Vì vậy, điều này cũng có thể thú vị cho anh ta.


+1 Tài liệu rất dễ làm thế nào, dường như rất dễ đối phó với thực sự.
Giải thưởng

4

Tôi không thể đề nghị điều này đủ, nhưng xây dựng cấp độ của riêng mình cho trò chơi yêu thích của mình .

Đối với một người ở độ tuổi / kỹ năng đó, họ nên bắt đầu bằng cách xây dựng các cấp độ trong công cụ trò chơi yêu thích của họ .

Nhiều trò chơi tuyệt vời đi kèm với trình chỉnh sửa cấp độ cho phép nhiều mức độ tự do.

RPG : Sê-ri bộ công cụ điện tử NWN 2 của Obsidian , cuộn Elder

RTS : Trình chỉnh sửa cấp độ của Warcraft III là một trình soạn thảo RTS tuyệt vời và thậm chí còn loại bỏ trò chơi của riêng nó( liên minh các huyền thoại anh hùng mới hơn ).

FPS's : Hammer for Half-life 2. Counterstrike ban đầu là một mod nửa đời.

Bắt đầu từ đây . Xây dựng cấp độ cho trò chơi yêu thích của bạn có lẽ là nơi tốt nhất để bắt đầu.



3

Mặc dù tất cả thông tin ở đây đều hữu ích, tôi muốn đề cập rằng Thử thách STEM (một cuộc thi trò chơi quốc gia do Nhà Trắng và ESA quảng bá) có một số đề xuất về các nền tảng http://www.stemchallenge.org/about/Default.aspx

Gamestar Mechanic, Gamemaker, Kodu, Scratch, PBS KIDS Sẵn sàng để học Stream

Tôi có cảm giác rằng có các tài nguyên cộng đồng về các nền tảng này cụ thể vì nó liên quan đến STEM.

Xem thêm hướng dẫn tuyệt vời này về python và pygame (cũng là một cuốn sách trực tuyến) http://inventwithpython.com/ch chương / đây là bản PDF của phần tiếp theo của cuốn sách cụ thể về pygame http://inventwithpython.com/blog/making -games-with-python-pygame /

Đây là một bài viết khác của NYT http://www.nytimes.com/2011/11/10/tĩ/personaltech/computer-programming-for-children-minus-cryptic-syntax.html?_r=2&sq=mitchel+resnick&st=cse&adxnnl= 1 & scp = 1 & adxnnlx = 1322489239-tMp1Wjl9FUcI8rLaJ6cbOw

Cập nhật: đây là một cuộc thảo luận về slashdot http://ask.slashdot.org/story/11/12/27/152228/ask-slashdot-tools-for-teaching-high-school-kids-how-to-make-games


2

Game Maker là một lựa chọn tuyệt vời cho những người không có kinh nghiệm lập trình. Nó có phiên bản miễn phí và phiên bản trả phí tương đối rẻ. Nó cho phép bạn nhanh chóng tạo các trò chơi với giao diện kéo và thả, nhưng bao gồm hỗ trợ cho kịch bản nâng cao hơn.


5
Tôi sẽ không đánh giá thấp điều này, nhưng GameMaker và Visual Basic đều là những công cụ dạy cú pháp xấu (VB) và GameMaker không thực sự quá tuyệt vời. Đối với một người, bạn không có quyền truy cập vào các IDE đẹp như VS, Trò chơi kéo và thả không thực sự dạy bất cứ điều gì.
Joe the Person

1
Tôi không chắc tại sao bạn lại đề cập đến VB; Game Maker gần như dựa trên C. Bất kể, Game Maker là một cách tốt để tiến bộ từ không biết gì đến hiểu được loại suy nghĩ cần thiết cho nhà phát triển trò chơi. Trả lời các sự kiện, duy trì vòng lặp trò chơi, sử dụng các mối quan hệ giữa tài nguyên đồ họa và mã, đưa một dự án từ ý tưởng đến xuất bản; đây là tất cả những điều bạn có thể tìm hiểu về phát triển kéo và thả. Tôi đồng ý rằng GML là một ngôn ngữ hạn chế, nhưng toàn bộ hệ thống là một điểm xuất phát tốt.
Gregory Avery-Weir

1
Tôi đang đề cập đến VisualBasic vì DarkBASIC, một công cụ lập trình khủng khiếp khác.
Joe the Person

Game Maker chắc chắn là một cách tốt để giảng dạy theo định hướng kết quả. Không cần phải học vật lý hay dựng hình. Chỉ cần sử dụng các tính năng tích hợp. Và việc chuyển sang C ++ rất dễ dàng, vì bạn có thể bắt đầu bằng cách tạo các dll và sử dụng chúng trong Game Maker, và sau đó, bỏ hoàn toàn Game Maker.
William Mariager

Không bao giờ, không bao giờ đề nghị GameMaker cho một người lớn hơn mười một tuổi ... Nếu anh ta mười lăm tuổi, anh ta cũng có thể quấn lấy đầu lập trình.
jcora

2

Như Martin đã đề cập, UDK có lẽ là cách nhanh nhất để có được thứ gì đó hoạt động vì nó đi kèm với rất nhiều thứ có sẵn như AI, mô hình và cũng là vô số sách. Nó có một trình soạn thảo bản đồ rất tốt và ngôn ngữ là Java-esque (và ECMA-script giống như).

Một cách khác có thể là thử làm các trò chơi trong Flash hoặc Silverlight - bắt đầu với các trò chơi 2D đơn giản. Bất cứ thể loại trò chơi nào anh ấy thích đều ra lệnh cho bộ công cụ.


1
Không! Không phải UDK! Đó là: lỗi, chậm, dễ bị lỗi, phức tạp, v.v. Thay vào đó hãy đi với Unity.
Joe the Person

@ fireude67 Lỗi UDK, dễ bị lỗi? đùa à
Quazi Irfan

theo kinh nghiệm của tôi, nó bị tụt lại một cách khó tin, bất cứ điều gì tôi xây dựng đều mang lại cho BSOD và tôi không thể tìm thấy bất kỳ tài liệu hữu ích nào. Ngay cả các dự án ví dụ chạy.
Joe the Person

1
Tôi chưa bao giờ tìm thấy lỗi UDK, nhưng tôi đặc biệt KHÔNG giới thiệu nó cho một lập trình viên trò chơi. Một nghệ sĩ, có, nhưng một lập trình viên, không. 'Tài liệu' là một trò đùa và để tìm ra những lớp bạn phải phân lớp, bạn thực sự phải mở lớp cha, vì chúng đã quyết định không cung cấp cho bạn một tham chiếu API. Ngoài ra, rất nhiều công việc là cần thiết để tạo ra các loại trò chơi khác nhau, vì nó là một công cụ FPS trái tim.
DMan

1

Đến từ một đứa trẻ 14 tuổi, lời khuyên này có thể hữu ích. Tôi thấy, cách tốt nhất để chọn một nền tảng, là nền tảng phù hợp nhất với mục đích. Tôi đã thực hiện bài viết này nhiều lần trước đây.

Từ Reddit -

Chọn một ngôn ngữ phù hợp với mục đích của bạn. Hầu hết các game thủ không quan tâm đến ngôn ngữ mà trò chơi được lập trình. Họ quan tâm xem họ có thể chơi nó hay không. Họ quan tâm nếu nó chạy nhanh trên máy tính của họ. Họ quan tâm nếu trò chơi không có kích thước 10gb. Họ không quan tâm nếu đó là exe hoặc jar.

Nhìn vào các trò chơi như Minecraft. Chắc chắn nó được viết bằng Java, một ngôn ngữ có thị phần cực kỳ nhỏ trong ngành công nghiệp phát triển trò chơi. Người tiêu dùng có quan tâm không? Không. Họ quan tâm đến chức năng.

Tuy nhiên, vì con trai bạn không có bất kỳ kinh nghiệm nào về lập trình, tôi khuyên bạn nên học một ngôn ngữ nhanh để viết mã như Python hoặc sử dụng một nền tảng hiện có, chẳng hạn như XNA. Cá nhân tôi yêu Slick2D với Java, nhưng tôi đoán đó là sở thích của tôi ...


0

Tôi được giới thiệu lập trình từ nhỏ (dưới 15 tuổi) và bố tôi quyết định sử dụng VB (1.0). Chúng tôi đã tạo ra một phiên bản xoắn của pong bằng cách sử dụng đối tượng hẹn giờ và bản vẽ GDI. Tôi thích điều đó bởi vì chúng tôi đã bắt đầu với một khung vẽ trống và có thể tìm hiểu những điều cơ bản về cấu trúc lập trình trong khi cố gắng làm cho một cái gì đó vui vẻ.

Hôm nay, tôi nghĩ rằng tôi sẽ chọn XNA và chọn một trò chơi 2D đơn giản. C # và XNA khá thẳng về phía trước và chúng khiến bạn có nhiều chỗ để phát triển, và chúng miễn phí.


-4

Nếu anh ta chỉ muốn làm game thì anh ta nên sử dụng XNA, Unreal, Unity, v.v ... Nếu anh ta muốn trở thành một lập trình viên trò chơi thì anh ta nên học C / C ++ và OpenGL / SDL hoặc D3D trước.

XNA, Unreal, Unity, v.v ... rất tốt để làm game nhưng thực sự rất tệ khi làm quá nhiều cho bạn. Tôi chắc chắn mọi người sẽ không đồng ý với tôi về điều này, nhưng về cơ bản, điều này biến bạn thành một lập trình viên lười biếng và khi đến lúc học những thứ như điểm trong C ++, điều đó sẽ khó khăn hơn vì trước tiên bạn đã chọn các tùy chọn dễ dàng hơn.

Nói chung, tôi không bao giờ đề xuất việc chống lại C / C ++ khác như ngôn ngữ đầu tiên để học nếu bạn muốn trở thành một lập trình viên trò chơi. Lý do chính là ngay cả khi bạn đi và học C # / XNA, nếu bạn nghiêm túc về việc trở thành nhà phát triển trò chơi, bạn sẽ phải biết C hoặc C ++ ở một giai đoạn nào đó bởi vì không ai sẽ thuê bạn. Vì vậy, nếu họ nghiêm túc với nghề thì bạn chỉ trì hoãn việc học những gì mong đợi từ bạn.


10
Vào thời điểm một đứa trẻ 15 tuổi sẵn sàng làm việc chuyên nghiệp (tám năm kể từ bây giờ), tôi thấy không có lý do gì để cho rằng mọi người sẽ sử dụng C ++. Tám năm trước, C ++ mới bắt đầu được sử dụng trong các trò chơi và đạt được tiêu chuẩn thực tế đầu tiên, và hầu hết mọi người đều giao hàng với C. Tám năm trước, C ++ ở trong tình trạng tồi tệ đến phát triển trò chơi và thứ tự ngày nay là C và asm. Tám năm kể từ bây giờ, hầu hết các chương trình trò chơi có thể sẽ trông giống XNA hơn rất nhiều so với C ++ 03 hiện tại. (tt)

8
Yếu tố chính là trở thành một lập trình viên giỏi , độc lập với bất kỳ ngôn ngữ riêng lẻ nào. Đối với các lập trình viên mới, C # sẽ giúp họ có động lực nhanh hơn. Họ sẽ quay lại và tìm hiểu những thứ chi tiết hơn nếu họ muốn trở nên tốt hơn, nhưng bạn cần phải móc chúng đủ lâu để đến giai đoạn đó.

5
Các chi tiết quan trọng trong lập trình trò chơi là SIMD, không phải SSE; dòng cache, không phải là bố cục chuẩn C ++; băm, không std :: unordered_map; Đa hình, không phải chức năng ảo. Những điều sau đó là vụn vặt , và là ngẫu nhiên, không cơ bản. Khi bạn biết cái trước, cái sau có xu hướng tầm thường.

2
Starting with C++ is a bad idea, generally. It's a difficult language, and moreso as a first.
The Communist Duck

4
I started C++ at 15, and while I'm happy with where I am now, starting with something easier would probably have been a lot less painful, and allowed me to focus on actual game dev, rather than pointers and segfaults...
Riley Adams
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.