Syllabus for SSE 643
Advanced Graphic Interfaces
Spring Semester 2010
(10S)
Instructor: Dr. Paul E. MacNeil
Office: Suite 223a, School
of Engineering
Phone: 478-301-2185
478-301-2732
Email: macneil_pe@mercer.edu
Back to Top
Textbooks and Supplies:
This syllabus presents four options. The option you select will have a large influence on your experience in this course. Please read the sections on Texts and Software (immediately below) before you make your selection. The four options are:
- Java using the Java3D framework. This is the only option that has a langauge-specific text. You will have to search the internet for some of the resources you will need.
- Java using the JMonkeyEngine facility. Read http://www.jmonkeyengine.com/wiki/doku.php/chapter_1_-_getting_started before selecting this option. Tutorial materials are available online.
- C# using the XNA framework 3.1 and Visual C# 2008 Express Edition (not the 2010 beta!). Tutorial materials are available online.
- C++ using Dark GDL and Visual C++ 2008 Express Edition (not the 2010 beta!). Tutorial materials are available online.
Texts (including web
sites):
- "Game Design " (1st ed.) by Thompson et al.,
Wiley, ISBN 0471968943 (Required) Check
Out This Text
- Killer Game Programming in Java (1st ed.) , by Andrew Davison, O'Reilly
Media, Inc., ISBN 0596007302 (2005) Check
Out This Text at Amazon.com (Required if you are programming in Java using Java3D;
if you are programming in C# or C++, or in Java using JMonkeyEngine, you will use other sources.)
Back to Top
Software (including
web sites):
Back to Top
Other Useful Resources
(including web sites):
Back to Top
Catalog
Description (Course Purpose):
The development of graphic user interfaces more sophisticated than those covered
in the prerequisite course. Development environments and application libraries
specifically designed for interface development may be included. Topics may
vary significantly depending on the student's choice of programming language
(e.g., C#, C++, or Java).
Please note that this course is conducted *asynchronously* with
regard to the face-to-face class meeting schedule. That is, the course begins
on January 12, 2010, for *all* students.
Back to Top
Course Objectives:
Breadth and Depth in Defining, Analyzing, and Solving Complex Problems:
- After successfully completing this course, you should be able to demonstrate
a basic capability to apply advanced graphic interface development techniques
to solve complex problems.
Communicate Technical Aspects of the Solution for Complex Software Engineering
Problems to a Technical Audience:
- After successfully completing this course, you should be able to demonstrate
a basic ability to communicate regarding the application of advanced graphic
interface development techniques to a technical audience.
Back to Top
Prerequisites:
SSE 550 or permission of the program director.
Back to Top
Class Location:
Back to Top
Grading:
Item |
Percent of Term Grade |
| Project 1 |
30 |
| Project 2 |
30 |
| Project 3 |
30 |
| Listserv/Threaded Discussion contributions |
10 |
Credit will be given only for original work.
More information about grading is contained in the recently-updated General
Project Rubric.
Back to Top
Assignments:
- Purpose of projects:
- Use the projects to develop your capabilities, and
- Use the projects to demonstrate your capabilities.
- Study the assigned book(s) and other assigned documentation/tutorials, and
try out some of the examples from them; this work is _not_ part of any project.
Then grow your capabilities by doing projects that build on these capabilities.
- Deliverables for all projects:
- Your report should be organized in such a way as to make the topics that
you want credit for covering easy to find, and demonstrate your capabilities
clearly and convincingly. Everything you want considered for credit, including
code and tests (including test results), should be included in the report.
- Each project can be a single, integrated project that tries to actually
do something, or a collection of exercises that demonstrate your capabilities
but don't accomplish anything else, or any combination of these two alternatives
that you find convenient.
- You may include other material outside of the report, if you wish, but this
material may or may not be considered in evaluating your work.
- For each capability that you demonstrate within a report or major section
of that report, you may present only the final result of your work; you need
not demonstrate every step in the development of that result.
- Some suggestions for doing a project are contained in the One Way to Do a Project page.
Project Delivery
Project 1 may be delivered
entirely via the FTP site (which will be announced when it is
ready), or you may deliver your Project 1 report via the wiki, with any supporting material submitted via the FTP site.
The Project 2 and 3 reports will be
delivered via the course wiki, so use Project 1 to learn how to
use the wiki.
- Project 1 (solo):
Part 1: Advanced Graphic Interfaces
- Java Options: Develop and demonstrate your capabilities
in the topics covered in Chapters 1 through 13 of the (Java) text for Option 1, or (Option 2) develop an appropriate plan for using JMonkeyEngine to develop your capabilities, and complete the first third of your approved plan. Submit your plan early, please, for review.
- C# Option: Develop and demonstrate your capabilities
in topics covered in the XNA Game Studio
Express Documentation.
Use the course listserv and /or threaded discussion
capability to report your intended project scope, and to help to manage
that scope.
- C++ Option: Develop and demonstrate your capabilities
in the topics covered in Tutorials 1 through 3 of the (Dark GDK) documentation.
Use the course listserv and /or threaded discussion
capability to report your intended project scope, and to help to manage
that scope.
- TBD.
Part 2 Web 2.0/Wiki
Learn to edit pages for our
wiki, so that you will be able to collaborate on and deliver your
Project 2 and 3 reports at the appropriate time. See the wiki
page.
Document your learning and
accomplishments with wiki development in screen shots, and include
this documentation in your Project 1 report.
Retain this documentation at
least until you graduate, in case you need it for a later course.
Project 1 may be delivered
entirely via the FTP site (which will be announced when it is
ready).
The Project 2 and 3 reports will be
delivered via the course wiki, so use Project 1 to learn how to
use the wiki.
Project 1 is not complete, and
Part 1 will be not be graded, until Part 2 is acceptable.
- Project 2 (solo):
- Java Options:Develop and demonstrate your capabilities in the topics covered in
Chapters 14 through 28 of the text (Option 1), or (Option 2) complete the second third of your approved plan.
- C# Options: Develop and demonstrate your capabilities
in topics covered in the XNA Game Studio
Express Documentation and/or other sources (c.f., the Microsoft
XNA Development Center ).
Use the course listserv and /or threaded discussion
capability to report your intended project scope, and to help to manage
that scope.
- C++ Option: Develop and demonstrate your capabilities
in the topics covered in Tutorials 4 and 5 of the (Dark GDK) documentation.
Use the course listserv and /or threaded discussion
capability to report your intended project scope, and to help to manage
that scope.
- TBD.
- Project 3 (team):
- Develop and demonstrate your capabilities in the topics covered in
the texts/documentation.
- Java Options: Option 1: The capabilities and topic (from the text) that you
develop and demonstrate in this project may or may not include the capabilities/topicsDistance
covered in Chapters 29 through 32 and/or the Appendices of the text,
but should clearly and explicitly demonstrate capabilities that you
did not demonstrate in the earlier projects. Option 2: Complete the last third of your approved plan.
- C# Option: Develop and demonstrate your capabilities
in topics covered in the XNA Game Studio
Express Documentation and/or other sources (c.f., the Microsoft
XNA Development Center ). Use the course listserv and /or threaded
discussion capability to report your intended project scope, and to
help to manage that scope.
- C++ Option: Develop and demonstrate your capabilities
in the topics covered in Tutorials 6 and 7 of the (Dark GDK) documentation.
Use the course listserv and /or threaded discussion
capability to report your intended project scope, and to help to manage
that scope.
- You may form your own teams. Announce your team's composition via
the course listserv.
- Two person teams are strongly prefered; three person teams require
the prior written (email is okay) approval of the professor.
- TBD
- Please raise questions and issues via the course listserv.
Back to Top
Additional Information:
- Asynchronous Learning Nets (ALNs)
Self Study: You study the texts
and any other course study material on your own.
Collaborative Projects: After
your self-study, you collaborate (via the Internet [wiki,email, ftp])
with your partner(s) to produce a team product. Your collaborative
work is substantial, asynchronous, and rapid.
Back to Top
What Do I Do?
Subscribe to the course email
listserv and be able to access our wiki and FTP server (after it has been announced).
Study the assigned material.
Write and read email messages (to
the listserv) about ideas, problems and solutions to do with the
assigned study material.
Do the assigned projects/exercises.
Write and read email messages
(to/from the listserv) about ideas, problems and solutions to do
with the assigned homework.
Review the reports done by other people; give them credit in your future reports if you adopt something good from their (earlier) report.
Back to Top
Changes to this Syllabus:
There will be changes to this syllabus, so check back frequently, and don't
forget to hit "Reload" or "Refresh".
Schedule of Events and Assignments:
Start Date |
End Date |
Activity/Event |
| January 12, 2010 |
April 26, 2010 |
Course in Progress | Distance
| January 12, 2010 |
February 15, 2010 |
Work on Project 1. |
| |
February 15, 2010 |
Project 1 due. |
| |
March 22, 2010 |
Project 2 due. |
| |
April 30, 2010 |
Project 3 due. |
| |
April 30, 2010 |
Course ends. |
Notes:
1. If you are doing some Advanced Graphic Interface work _other than_ computer
games, please contact me in advance regarding this reading assignment.
Back to Top
Schedule of Macon Face-to-face
Meetings:
attendance is 100% optional.
Date |
| January 13, 2010 |
| January 20, 2010 |
All Macon face-to-face meetings are from 6:00 pm to 9:00 pm.
Back to Top
List of all courses.
Contact Information
- My Name: Dr. Paul E. MacNeil (Atlanta, Macon and DL Section)
- My E-mail: macneil_pe@mercer.edu
.
- My Office Phone: 478 301-2185
- My FAX: 478 301-2732
- US Mail:
- Dr. Paul E. MacNeil
- School of Engineering
- Mercer University
- 1400 Coleman Ave.
- Macon, GA 31207
Back to Top
Important Additional Information:
Students requiring accommodations for a disability should inform the instructor
at the close of the first class meeting or as soon as possible. If you
are not registered with Disability Services, the instructor will refer you
to the Disability Support Services office for consultation regarding documentation
of your disability and eligibility for accommodations under the ADA/504. In
order to receive accommodations, eligible students must provide each instructor
with a “Faculty Accommodation Form” from Disability Services. Students
must return the completed and signed form to the Disability Services Coordinator
on the 3rd floor of the Connell Student Center. Students with a documented
disability who do not wish to use academic accommodations are also strongly
encouraged to register with Disability Services and complete a Faculty Accommodation
Form each semester. For further information, please contact Carole Burrowbridge,
Disability Services Coordinator, at 301-2778 or visit the web site at http://www.mercer.edu/stu_support/swd.htm
Accreditation: Mercer University is accredited by SACS.