Có rất nhiều sự lựa chọn tốt. (Tôi dạy CS1 và CS2, cũng như lập trình trò chơi.) Đầu tiên, tất nhiên, học cách suy nghĩ như một nhà khoa học máy tính. Đừng quá bó buộc trong ngôn ngữ, bởi vì các khái niệm thực sự là phổ quát.
Java là một ngôn ngữ khá tốt, nhưng việc xây dựng một trò chơi bằng Java thì hơi tẻ nhạt. Có một số công cụ thú vị ngoài kia làm cho quá trình dễ dàng hơn một chút. Thật không may, việc gắn một công cụ trò chơi vào công cụ chỉnh sửa của bạn có thể gây đau đớn.
Tôi thích công cụ FANG (đáng buồn là tôi chưa thể đăng siêu liên kết, vì vậy hãy tìm nó trên Google.) Một phần thú vị của dự án này là trình chỉnh sửa trực tuyến. Điều này có nghĩa là bạn có thể bắt đầu ngay lập tức mà không phải gặp rắc rối với cài đặt nhật thực.
Tôi thực sự không phải là một fan hâm mộ của Game Maker. GUI phù hợp với những người không muốn học cách lập trình và đó là một công cụ tạo mẫu tốt (nhưng không tuyệt vời). Tuy nhiên, có hai điều tôi không thích. Đầu tiên, đó là thương mại. Đó không phải là một điều xấu, nhưng nếu có những lựa chọn thay thế nguồn mở miễn phí cũng tốt như vậy (và có), có lẽ bạn nên xem xét chúng trước. Vấn đề lớn hơn với Game Maker là ngôn ngữ kịch bản. Cuối cùng, bạn sẽ vượt xa GUI và bạn thực sự muốn bắt đầu viết mã. Ngôn ngữ Scripting trong GM khá suy nghĩ ngược. Vì bạn là chuyên viên CS, nên bạn (tôi hy vọng) quan tâm đến việc sử dụng lại mã, sự thanh lịch, rõ ràng, hiệu quả và mô đun hóa. Ngôn ngữ GM sẽ làm bạn thất vọng.
Tôi yêu Python và Pygame. (Trên thực tế, tôi đã viết một cuốn sách về chúng. Xem tất cả các ghi chú và video trực tuyến của tôi trên trang web của tôi nếu bạn muốn. Bạn hoan nghênh những tài nguyên đó cho dù bạn có cuốn sách hay không.) Python là một ngôn ngữ thanh lịch tốt đẹp không phải là ' quá khó để học (đặc biệt là nếu bạn đã biết cách lập trình.) Pygame là một trình bao bọc trên công cụ SDL 2D phổ biến. Trên thực tế, tôi đã thêm một trình bao bọc thứ hai vào pygame để làm cho nó dễ sử dụng như Flash.
Nói về Flash, tôi không nghĩ nó đáng giá. (Tôi biết bạn đã không hỏi) Đó là một nền tảng tốt, nhưng chi phí và sự không chắc chắn về cách nó sẽ có giá trên các thiết bị di động có nghĩa là nó có thể không phải là một công cụ học tập tuyệt vời. (Tôi cũng đã viết một cuốn sách về nhà phát triển trò chơi trong Flash, nhưng tôi không dạy Flash nữa.)
Đây là một số điều tuyệt vời khác để thử. Nhận một bản sao đầu từ MIT:
scratch.mit.edu
Nó được tạo ra cho trẻ em, nhưng đừng để điều đó làm bạn thất vọng. Nó là một công cụ trò chơi và hoạt hình hoàn toàn đáng kinh ngạc. Chương trình sử dụng gạch, vì vậy thật dễ dàng để bắt đầu. Bạn sẽ hoàn toàn ngạc nhiên về những gì bạn có thể làm với nó.
Bạn cũng có thể dùng thử Alice từ Carnegie Melon www.alice.org Phiên bản mới nhất (thứ 3) thực sự là một phần mở rộng cho Java, sử dụng Mô hình Sims2.
Cả Scratch và Alice đều miễn phí.
Một công cụ tuyệt vời khác để xem xét là Blender
www.blender.org
Đây là một công cụ mô hình 3D, nhưng nhiều người không biết đây cũng là một công cụ trò chơi hoàn chỉnh với giao diện lập trình kéo và thả. Khi bạn đã vượt qua các ô, nó có hỗ trợ Python tích hợp.
Bây giờ tôi khá hứng thú với HTML5 (hầu như không có HTML - Đó thực sự là HTML, CSS và JavaScript.) Nó không hoàn toàn ở đó như một môi trường phát triển trò chơi, nhưng tôi tin rằng nó sẽ là một người chơi lớn. Cuốn sách tiếp theo của tôi sẽ là về phát triển trò chơi trong HTML5.
Chúc may mắn cho bạn, và cho tôi biết nếu bạn có thêm câu hỏi.