CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on...
-
Upload
cassandra-floyd -
Category
Documents
-
view
216 -
download
3
Transcript of CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on...
![Page 1: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/1.jpg)
CompSci 4 6.1Applets & Video Games
Applets & Video Games
![Page 2: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/2.jpg)
CompSci 4 6.2Applets & Video Games
The Plan
Applets Demo on making and running a simple applet
from scratch Demo on making and running a simple
application from scratch Video Games
Measurements Frame rates Threads
![Page 3: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/3.jpg)
CompSci 4 6.3Applets & Video Games
Applets
Definition Differences from applications Download process Use of html Use of jar files Example
![Page 4: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/4.jpg)
CompSci 4 6.4Applets & Video Games
Definition
From the Java 5.0 APIAn applet is a small program that is intended notto be run on its own, but rather to be embeddedinside another application.
The name Applet is derived from the name Application.
![Page 5: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/5.jpg)
CompSci 4 6.5Applets & Video Games
Applet vs. Application
Applets Run in web browser Often downloaded
from untrusted site Restricted from file
system access Restricted from
outside network communication
Applications Run independently Typically obtained
through trusted source
Allow creation and modifications of files
Allow outside network communication
Must have a main method
![Page 6: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/6.jpg)
CompSci 4 6.6Applets & Video Games
Running an Applet
1. Load a web page with an <applet> tag embedded in the HTML
2. Load the compiled applet from website to local machine
3. Run the compiled applet on the local machine
![Page 7: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/7.jpg)
CompSci 4 6.7Applets & Video Games
HTML for Applet
<applet code=“pong/Pong.class” archive=“pong.jar” width=200 height=200></applet>
code is the name of the class that extends JApplet
archive is the name of the jar file containing all classes
![Page 8: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/8.jpg)
CompSci 4 6.8Applets & Video Games
Jar files
Jar is short for Java Archive Compresses files and directories into a
single file Can be executed in compressed format Files and directories can be extracted Can contain any combination of source
code, byte code, and other files
![Page 9: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/9.jpg)
CompSci 4 6.9Applets & Video Games
Demo
Applet Demo Make an applet in Eclipse Make the html in composer Save both to network drive View from the webApplication Demo Make an application in Eclipse Run in Eclipse
![Page 10: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/10.jpg)
CompSci 4 6.10Applets & Video Games
Video Games
Simulation Measurement units Discrete/Continuous Monitor frame rate limitation Model frame rate limitation User interaction rate Threads overview
![Page 11: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/11.jpg)
CompSci 4 6.11Applets & Video Games
Video Game as Simulation
Video games are simulations of the real world and worlds that do not exist. These simulations are built for our pleasure, but may serve other purposes as well.
Examples Flight simulator Oregon trail Pinball
![Page 12: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/12.jpg)
CompSci 4 6.12Applets & Video Games
Measurement Units
Initial setup in coordinate system with origin at top left and (1, 1) at bottom right Allows simple scaling to varying screen
resolutions Can be done hierarchically
Distances in pixels Time in seconds Velocity in pixels/second
![Page 13: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/13.jpg)
CompSci 4 6.13Applets & Video Games
Discrete vs. Continuous Time
Discrete Used to approximate
continuous Simple conceptually
for good rough estimates
Causes problems when modeling continuous functions with too coarse grain estimates
Continuous Requires abstract
representation or infinite precision
Requires analytical reasoning
Conceptually difficult to model directly
![Page 14: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/14.jpg)
CompSci 4 6.14Applets & Video Games
Monitor Frame Rate
Why 75-85 Hz (Frames/second)?Because we don’t actually visually process
continuously
Smooth fast movement?Consider a rate of 1 pixel a second would take
more than 8 seconds to move across the screen.
For fast movement there must be jumps in location.
![Page 15: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/15.jpg)
CompSci 4 6.15Applets & Video Games
Model Frame Rate
Model is continuous.Frame rate is discrete.The granularity of frame rate is too coarse
for our continuous model.How do we solve this problem? Two
separate rates: Monitor frame rate Model frame rate
![Page 16: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/16.jpg)
CompSci 4 6.16Applets & Video Games
User Interaction Rate
Devices such as the keyboard and mouse must also be polled at regular intervals.
At what rate should they be polled?Depends on: Available compute power
In contention with monitor frame rate In contention with model frame rate
Which thread has priority
![Page 17: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/17.jpg)
CompSci 4 6.17Applets & Video Games
How it happens “all at once”
Threads! Threads are like programs within programs Seem to run all at once, but typically share
resources, primarily the processor Cost overhead for switching the thread running
![Page 18: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/18.jpg)
CompSci 4 6.18Applets & Video Games
Summary
User interaction, model frame rate, and monitor frame rate all contend for the processor.
Threads enable programs to behave as if several sub-programs (threads) were running at once.
Continuous events can be modeled discretely.
Careful selection of measurement units can simplify program modifications.
Video games can be viewed as simulations.
![Page 19: CompSci 4 6.1 Applets & Video Games. CompSci 4 6.2 Applets & Video Games The Plan Applets Demo on making and running a simple applet from scratch.](https://reader036.fdocuments.us/reader036/viewer/2022082816/56649ccb5503460f94993c32/html5/thumbnails/19.jpg)
CompSci 4 6.19Applets & Video Games
Summary
Applets are like small applications run from a web
browser. have security restrictions. require HTML code to be executed are downloaded from a remote site and
executed locally use jar files to compress and combine all
compiled code and supporting files