Courses

Artificial Intelligence for Computer Games

2nd Semester, 2005

Artificial Intelligence and Computer Games have strong connections. Artificial Intelligence opens for a myriad of possibilities to make Computer Games more realistic and more interesting, and Computer Games provide the field of AI with the best of scenarios to test and to apply AI techniques. In the present course we explore some of these connections. We focus on action games at the Games side and on knowledge based systems, multiagent systems, knowledge sharing and coordination mechanisms on the AI side.

Software Engineering for Computer Games

2nd Semester, 2005

Computer games are essentially software products. Moreover, computer games are highly sophisticated software products, that require the utmost software engineering techniques to be well built in due time consuming a reasonable budget. Software engineering is, therefore, a critical issue for the design and development of computer games. It is not surprising, therefore, that computer games - as well as software tools to build computer games - can be used as prototypical problems to teach software engineering concepts. The present course material contains an all purposes software engineering course, whose projects and assignments are all related to the construction of a software tool to build computer games, together with a couple of games developed using that tool. It should be useful to teach software engineering in general, although we consider it should be obviously more appealing to an audience interested in learning software engineering concepts to participate in the specific development process of games.

License

The course material found here can be used freely, provided that appropriate authorship credits are given. We would also like to know where it is being used, and how it can be improved. Hence, we kindly request that whoever uses it sends a line to fcs at ime.usp.br informing in which courses it is being used, whether it is being appreciated by the students and instructors and how it could be improved.