CSE335 Project 2: Make Me a Movie
Tweets by cse335
for this assignment
Project 2 Design Reviews Scheduler
There was a Project 2 Information Session on Wednesday 11/7/2018 from 7-8pm in 1345 Engineering.
Slides from that presentation
Project 2 has two parts. The first is an implementation of Harold’s Magical Musical Machines, where you will write a program that operates machines that you build. The second part is integration of Harold’s Magical Musical Machines into the Canadian Experience project so your machines can be added to the landscape of Canada. You then must create a short movie in the system.
I consider Project 2 the single most important part of this course. It is where you bring together all you have learned and produce a complete subsystem you will add to the Canadian Experience. Part 1 is relatively light, but Part 2 has two significant development components. It is your responsibility to budget your time appropriately. During the project there will be no step assignments and only one relatively short and simple design assignment, so you are being given plenty of time. But, if you wait until the last week to start the implementation you will likely not finish it.
submission page
Part 1
There one programming element due for Part 1 (a) and the Harold’s Magical Musical Machines design task (b) is considered an element of Part 1. Part (b) has its own page:
a) A Prop
b) Harold’s Magical Musical Machines Design
For (a) Add one additional graphic object that your characters can use as a prop, such as a flag, hammer, chain saw, etc. I don’t care if you make it part of an actor or create a new actor for it.
Since I am providing the starter project, there is relatively little programming in part 1. The design is the most important part!
Part 1 includes a team participation report that must be completed by all team members. See the submission page for details.
Part 2
a) Harold’s Magical Musical Machines Implementation
The Harold’s Magical Musical Machines Design page details the functionality of this element. Note that there are two tasks here: getting Harold’s Magical Musical Machines working in MachineDemo, and getting it working in CanadianExperience.
You are required to implement two machines. Machine 1 should be similar to the example machine. It should have all of the same parts, though it is not required that they have the same appearance. Your machine 2 should be the machine you are entering in the contest. What it does and what it looks like is up to you.
b) A Cool Movie Movie
Make a cool 30 second movie using your program. You can have your characters dance, act out a story, or whatever. You must have at least 30 keyframe locations in your presentation. Your two machines must be part of the scene and running. We reserve the right to show the better ones to the class. You must utilize the prop from (a) above.
When done with you presentation, put the .anim file in the solution folder, then submit your project. If you are submitting via the web site, be sure to put the file in the folder before you export the .zip file.
See the Submission Page for details on submitting the project. Useful pages and information
Harold’s Magical Musical Machines Design
Design Questions You Must be Able to Answer Common Design Rejections
Implementation of Harold’s Magical Musical Machines Integration into the Canadian Experience
The CPolygon class
The Parable of the Tree
Some Common Questions Doubly-linked Lists
Testing MachineLib classes
Some implementation help pages (available after Part 1 closes):
Harold’s Magical Musical Machines Ideas and Advice Sinks to Components
Example machine factory code
Harold’s Magical Musical Machines designs are due Friday, November 16by 11:55pm. These are to be placed in an envelope and turned in to Dr. Owen or one of the course staff during the day. You may slip them under Dr. Owen’s office door (1138 Engineering) after hours. The following due dates are for the programming elements of Project 2:
Part 1 is due Friday, November 16, 2018 at 11:55pm
Part 2 is due Friday, November 30, 2018 at 11:55pm
Your project 2 design must be approved by course staff. If they approve your design, you will receive a certificate. You must include that certificate with your design to get credit for Part 1. Be sure your team can answer the design questions before the presentation.
I suggest reading this entire assignment immediately.
The design for Harold’s Magical Musical Machines is a team project. All programming elements
of this assignment are an individual assignment. There are two contests associated with this project.
Project 2 Team: Fortissimo
The email links are mailto: links for the team members or the entire team.
Name |
User ID |
|
Steven Leroy Cauthen |
cauthens |
cauthens@msu.edu |
Brandon Alexander Field |
fieldbr2 |
fieldbr2@msu.edu |
Noah Aaron Girard |
girardno |
girardno@msu.edu |
Justin Michael Perry |
perryjus |
perryjus@msu.edu |
Robert Mitchell Ramirez |
ramir202 |
ramir202@msu.edu |
Yash Prasad Vesikar |
vesikary |
vesikary@msu.edu |
Zhihan Wang |
wangzh61 |
wangzh61@msu.edu |
I am providing a Step 6 reference solution with XML save/load code and the machine library already added (available after Step 6 closes) that you can use for the project. You are welcome to use your own Step 6 solution if you wish, but you will have to add the two additional projects and save/load functionality, so I recommend using this solution as the starting point.
Project 2 Starter Project
The starter project has two executable projects: CanadianExperience and MachineDemo. To choose which one to run and debug, select it in Solution Explorer and choose Project>Set as Startup Project.
This is an executable version of MachineDemo that includes my example machine:
MachineDemo Executable
Extract to a folder and run MachineDemo.exe. Drag the slider to the right to run the machine or press the play button. Machine 1 is the reference machine. You are required to make a machine that functions like this one. Machine 2 is another machine I made. Machines 10-17 are machines I made to create the project pages. You may find them useful.
Two content pages are provided with information important to Project 2. They are:
Adapter Classes
The Infamous Lecture 13
Notice: If you attempt to do the project without watching the Infamous Lecture 13 video, you will probably ask a question in Interact! that will make it obvious you did not watch the Infamous Lecture 13 video.
The Movie Contest
We are holding a contest based on the Project 2 movies. The movie element of this assignment is a creative activity and deserves some recognition.
To be eligible for this contest you must have completed both the machine implementation and have integrated it into your system. A perfect implementation or integration is not required for contest eligibility, but most of the functionality must be there. You must also not have been indicated as a non-participant in the Part 1 design.
A judging panel will select the best five movies. These will be published on the class web site. The students who’s movies are selected will win the following amazing prize:
You are excused from the final exam and will receive an automatic 100% grade for that exam.
Wow! Great prize, huh?
The Coolest Machine Contest
We are holding a contest based on the Project 2 machines. You have a lot of flexibility in how you construct and parameterize your machine, so some will look more impressive than others. For example, you can have multiple pistons, use graphics you have found, or have some interesting functionality that your machine performs.
You are allowed to add additional images for your machine if you like beyond those supplied. However, at least two winners will be choosen who use images only in the supplied set. You are free to draw things other than images as much as you want. For example, if you choose to draw a lever yourself instead of using an image, that will be fine. If you want to add text to your machine, that is fine.
To be eligible for this contest you must have completed both the machine implementation and have integrated it into your system. A perfect implementation or integration is not required for contest eligibility, but most of the functionality must be there. You must also not have been indicated as a non-participant in the Part 1 design.
Here is how the contest will work:
For each eligible student the judges will select your Machine 2 and hit play in MachineDemo.
A judging panel will select the best five machines. These will be published on the class web site. The students who’s machines are selected will win the following amazing prize:
You are excused from the final exam and will receive an automatic 100% grade for that exam.
Wow! Great prize, huh?
The Fine Print
The judging panels will consist of Dr. Owen, the TAs, and any others we may choose to invite. The judging panels will not include undergraduate students, but may include other faculty and/or spouses.
You can only win once (you can’t get 200% on the final exam). If a student is selected in both contests, an additional winner will be chosen so at least ten students receive the prize.
We reserve the right to extend each winning cohort beyond five if we are significantly impressed with more than 5 machines or movies.
Interact!7 questions, 1 announcement
CSE335 Home Page
Dr. Charles B. Owen
Computer Science and Engineering
Call MSU: (517) 355-1855 Visit: msu.edu
MSU is an affirmative-action, equal-opportunity employer. SPARTANS WILL
© Michigan State University