CompSci 4 4.1 Introduction to Jam’s Video Game Package.

Slides:



Advertisements
Similar presentations
17 HTML, Scripting, and Interactivity Section 17.1 Add an audio file using HTML Create a form using HTML Add text boxes using HTML Add radio buttons and.
Advertisements

Introduction to Web Design Lecture number:. Todays Aim: Introduction to Web-designing and how its done. Modelling websites in HTML.
Chapter 18 Building the user interface. This chapter discusses n Javas graphical user interface. n Swing: an enhancement of a library called the Abstract.
Introduction to Video Game Design BBrewer Fall 2013.
Video Game Design Lesson 1. Game Designer Person involved in the development of a video game Person involved in the development of a video game Usually.
CompSci Applets & Video Games. CompSci Applets & Video Games The Plan  Applets  Demo on making and running a simple applet from scratch.
CompSci 427jd.1 Javadoc. CompSci 427jd.2 Javadoc The Plan  What is Javadoc?  Writing Javadoc comments  Using the Javadoc tool  Practice.
Intro to Programming Algebra-Geometry. Computer Programming? What is programming? The process of writing, testing, and maintaining the source code of.
1 Frameworks. 2 Framework Set of cooperating classes/interfaces –Structure essential mechanisms of a problem domain –Programmer can extend framework classes,
Lecture Bells and Whistles. Ways to Enhance Websites Java Script and Java Sound and Video Flash XML (Extended Markup Language Database Connectivity Ecommerce.
Web Page Behavior IS 373—Web Standards Todd Will.
1 Flash Programming Introduction Script Assist. 2 Course Description This course concentrates on the teaching of Actionscript, the programming language.
SE320: Introduction to Computer Games Week 8: Game Programming Gazihan Alankus.
1 CS428 Web Engineering Lecture 18 Introduction (PHP - I)
Part or all of this lesson was adapted from the University of Washington’s “Web Design & Development I” Course materials.
CompSci Computer Science 4: Java for Video Games Jam Jenkins D305 LSRC Dietolf (Dee) Ramm D226 LSRC Instructor
Using FangEngine The FangEngine is created by Brian C. Ladd & Jam Jenkins Presentation by Pepper With much credit to: Jenkins, Jam & Brian C. Ladd. Introductory.
Client/Server Architectures
index.php Palmyra Area High School 1.
Chapter 11 Adding Media and Interactivity. Flash is a software program that allows you to create low-bandwidth, high-quality animations and interactive.
Scratch the Cat. Object Oriented Programing Writing computer programs Based on Objects Instead of Actions Based on Data Instead of Logic.
© 2011 Delmar, Cengage Learning Chapter 11 Adding Media and Interactivity with Flash and Spry.
Presents. fileProGI Design Goals GUI Runtime Client for filePro Point and Click operation without processing table changes New functional capabilities.
Applets & Video Games 1 Last Edited 1/10/04CPS4: Java for Video Games Applets &
Case Study: Using Macromedia Director
Introduction to Scratch!
Inheritance & Interfaces. The Plan ● Motivate Inheritance ● Motivate Interfaces ● Examples ● Continue Practice on Observer/Observable.
Locally Edited Animations We will need 3 files to help get us started at
VIDEO GAME PROGRAMMING Video Game Programming Junior – DigiPutt INSTRUCTOR TEACHER’S ASSISTANT.
Section 17.1 Add an audio file using HTML Create a form using HTML Add text boxes using HTML Add radio buttons and check boxes using HTML Add a pull-down.
GUIs in Java Swing, Events CS2110, SW Development Methods Readings: MSD, Chapter 12 Lab Exercise.
Agenda For Feb PowerPoint Presentation (Introduction to Java Methods) 2.Finish Unit 2 exercises on page 13 (due by the end of the class today). 4.
XNA An Introduction. What XNA is… Microsoft® XNA™ is composed of industry- leading software, services, resources, and communities focused on enabling.
Sample Video Game & Sound. The Plan 1.Game Theme 2.Game Structure 3.Sprites 4.Trackers 5.Collisions 6.Score 7.Levels 8.Splash Screens 9.Design 10.Implementation.
SCRATCH. Course Outline Session 1 – 8.45am to am  Introduction  Basics of Scratch programming - Control / Movement / Looks and Sound  Example.
Programming Video Games
CSE S. Tanimoto Java Introduction 1 Java A Programming Language for Web-based Computing with Graphics.
CSE S. Tanimoto Java Introduction 1 Java A Programming Language for Web-based Computing with Graphics.
Java Methods Methods contain a group of instructions that together perform a single task. For example if I want to perform the task of “making a pizza”,
Iteration 1 Looping Structures. Iteration 2 The Plan While not everyone understands: 1.Motivate loops 2.For loops 3.While loops 4.Do-while loops 5.Equivalence.
Image #1 Getting Started
© 2011 Delmar, Cengage Learning Chapter 10 Using ActionScript to Enhance User Experience.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
Chapter 11 Adding Media and Interactivity. Chapter 11 Lessons Introduction 1.Add and modify Flash objects 2.Add rollover images 3.Add behaviors 4.Add.
JavaScript 101 Introduction to Programming. Topics What is programming? The common elements found in most programming languages Introduction to JavaScript.
CompSci Video Game Package Design Design of the Video Game Package.
Web Programming Overview. Introduction HTML is limited - it cannot manipulate data How Web pages are extended (include): –Java: an object-oriented programming.
CompSci 427jd.1 Javadoc. CompSci 427jd.2 Javadoc The Plan  What is Javadoc?  Writing Javadoc comments  Using the Javadoc tool  Practice.
CS 5JA Introduction to Java Graphics One of the powerful things about Java is that there is.
Video Game Package Intro 1 Last Edited 1/10/04CPS4: Java for Video Games Introduction.
CompSci 44.1 Game Package Introduction to Jam’s Video Game Package.
Today's Ninja Challenge: Write Your First Computer Game!
ICT/COMPUTING RULES Only use software allowed by the teacher
The Internet Salihu Ibrahim Dasuki (PhD) CSC102 INTRODUCTION TO COMPUTER SCIENCE.
Advanced Elements & Advanced HTML Codes AGCJ 407.
Game Maker Tutorials Introduction Clickball IntroductionClickball Where is it? Shooting Where is it?Shooting.
Reference: What is it? A multimedia python library – Window Management – Graphics geometric shapes bitmaps (sprites) – Input Mouse Keyboard.
CompSci Inheritance & Interfaces. CompSci Inheritance & Interfaces The Plan  Motivate Inheritance  Motivate Interfaces  Examples  Continue.
Greenfoot.
JQuery Fundamentals Introduction Tutorial Videos
A Programming Language for Web-based Computing with Graphics
Human Computer Interaction
Section 17.1 Section 17.2 Add an audio file using HTML
Introduction to Object-Oriented Programming
Motion and Looks.
Citation Map Visualizing citation data in the Web of Science
Image #1 Getting Started
An Introduction to HTML Pages
Introduction to JavaScript
Web Application Development Using PHP
Presentation transcript:

CompSci Introduction to Jam’s Video Game Package

CompSci The Plan  Scope of Video Game Package  Basic Design of the Video Game Package  Steps to making a game  How the Pong was made  Limitations of the Video Game Package

CompSci Scope of the Video Game Package  Goals of Jam’s Video Game Package  Simple to use  Reasonably fast  Designed to be examined and modified for academic purposes in computer science courses  What Jam’s package is not designed for  High speed animation/user input  Scripting games  3D

CompSci Basic Design of the Video Game Package Animation Canvas Keyboard Mouse GameLoop Tracker Sprite Tracker Sprite Tracker Sprite Game Window JButton controls JLabel title FrameAdvancer Client Server

CompSci Basic Design of the Video Game Package Tracker The Tracker is what Makes the BallSprite move

CompSci Basic Design of the Video Game Package  Point2D.Double getLocation()  double getScaleFactor()  double getRotationAddition()  void advanceTime(double time) Tracker

CompSci Basic Design of the Video Game Package Tracker Sprite

CompSci Basic Design of the Video Game Package Has instance variables, and mutator and accessor methods for:  Shape  Location  Size  Rotation  Color Tracker Sprite

CompSci Basic Design of the Video Game Package Animation Canvas Tracker Sprite Tracker Sprite Tracker Sprite

CompSci Basic Design of the Video Game Package AnimationCanvas is a JPanel  with a collection of Sprites  that paints itself by painting all of its Sprites Animation Canvas Tracker Sprite Tracker Sprite Tracker Sprite

CompSci Basic Design of the Video Game Package GameLoop adds:  Client – Server Communications  interaction via  Keyboard  Mouse Animation Canvas Keyboard Mouse GameLoop Tracker Sprite Tracker Sprite Tracker Sprite Client Server

CompSci Basic Design of the Video Game Package GameWindow adds:  Controls for starting, pausing, and muting  Ability to run as an applet for single player games  Ability to run as an application for multiplayer games

CompSci Basic Design of the Video Game Package Animation Canvas Keyboard Mouse GameLoop Tracker Sprite Tracker Sprite Tracker Sprite Game Window JButton controls JLabel title FrameAdvancer Client Server

CompSci Steps to Making a Game 1. Make packages for the parts of your game. 2. Organize your program’s resources within the packages. 3. Write the program’s classes.

CompSci Steps to Making a Game 1. Make the packages for the parts of your game. a. tipgame.game.nameofyourgame put your game logic classes here b. tipgame.game.nameofyourgame.sprite put all of your custom made sprites here c. tipgame.game.nameofyourgame.tracker put all of your custom made trackers here d. tipgame.game.nameofyourgame.html put your help file here e. tipgame.game.nameofyourgame.audio put all of your audio files here f. tipgame.game.nameofyourgame.images put your image files (jpg, gif, etc.) here Be sure to replace nameofyourgame with the actual name of your game

CompSci Steps to Making a Game 2. Organize your program’s resources: a. Make a help screen in HTML and place the file in the package tipgame.game.nameofyourgame.html b. Copy all images needed in your game to the package tipgame.game.nameofyourgame.images c. Copy all audio needed in your game to the package tipgame.game.nameofyourgame.audio

CompSci Steps to Making a Game 3. Write the program’s classes: a. In the package tipgame.game.nameofyourgame write a class to extend GameLoop. b. (Optional) Implement/copy necessary Sprite extensions and place them in tipgame.game.nameofyourgame.sprite c. (Optional) Implement/copy necessary Tracker extensions and place them in tipgame.game.nameofyourgame.tracker

CompSci Steps to Making a Game 1. Make the packages a. tipgame.game. nameofyourgame – put your game logic classes here b. tipgame.game. nameofyourgame. sprite – put all of your custom made sprites here c. tipgame.game. nameofyourgame. tracker – put all of your custom made trackers here d. tipgame.game. nameofyourgame. html – put your help file here e. tipgame.game. nameofyourgame. audio – put all of your audio files here f. tipgame.game. nameofyourgame. images – put your image files (jpg, gif, etc.) here Be sure to replace nameofyourgame with the actual name of your game 2. Organize your program’s resources: a. Make a help screen in HTML and place the file in the package tipgame.game. nameofyourgame. html b. Copy all images needed in your game to the package tipgame.game. nameofyourgame. images c. Copy all audio needed in your game to the package tipgame.game. nameofyourgame. audio 3. Write the program’s classes: a. In the package tipgame.game. nameofyourgame write a class to extend GameLoop. b. (Optional) Implement/copy necessary Sprite extensions and place them in tipgame.game. nameofyourgame. sprite c. (Optional) Implement/copy necessary Tracker extensions and place them in tipgame.game. nameofyourgame. tracker

CompSci How Pong Was Made 1. Made the packages: a. tipgame.game.pong b. tipgame.game.pong.sprite c. tipgame.game.sprite.tracker d. tipgame.game.sprite.html e. tipgame.game.sprite.audio f. tipgame.game.sprite.images

CompSci How Pong Was Made 2. Organize the program’s resources: a. Make a help screen PongHelp.html and placed it in the package tipgame.game.pong.html b. Copied the images jam.JPG and mike.JPG into the package tipgame.game.pong.images c. Copied DingLower.wav into the package tipgame.game.pong.audio

CompSci How Pong Was Made 3. Wrote the program’s classes: a. In the package tipgame.game.pong wrote PongLoop which extends GameLoop. b. Wrote YourSprite which extends Sprite. Placed this class in tipgame.game.pong.sprite c. Wrote ProjectileTracker which extends Tracker. Placed this class in tipgame.game.pong.tracker

CompSci How Pong was Made Some of the more complex parts of Pong that we’ll talk about later in more detail:  Loops  Conditionals  Event handling  Inheritance & Interfaces  Collections  Collision detection

CompSci How Pong was Made What you will need to know shortly:  Basic classes and which package they belong in  Basic structure of the gaming package  Basic steps to making the game  General idea about how PongLoop.java works  Enough familiarity with the code to make minor modifications to YourSprite and PongLoop

CompSci How Pong was Made What you don’t need to understand yet:  All of the classes in the gaming package  All of the code in the basic classes  How to make your own classes like PongLoop from scratch

CompSci How Pong was Made What you’ll be doing in the next homework:  Altering YourSprite  Altering ProjectileTracker …and it will be fun (when it works)

CompSci How Pong was Made Take a look at two classes: 1. Open up a web browser 2. Go to the course website and download pong.jar to the desktop (from code link). Also get the latest version of the gaming package tipgame.jar 3. Open up Eclipse and make a new project. 4. Import pong.jar 5. Import tipgame.jar 6. Look in tipgame.game.pong.sprite for YourSprite.java 7. Look in tipgame.game.pong.tracker for ProjectileTracker.java