collosion
TRANSCRIPT
-
8/8/2019 collosion
1/48
TABLE OF CONTENT
Chapters Contents Page. No
1 Abstract
List of figures
2 Introduction
3 Product Environment
3.1 Hardware Specification
3.2 Software Specification
4 Product Analysis
4.1 About the Product
5 Literature Review
Appendices
Bibliography
-
8/8/2019 collosion
2/48
ABSTRACT
-
8/8/2019 collosion
3/48
This project focuses on the application of gaming which deals with an real time pixel perfect
collosion detection , this is not an web based application , it runs only in a stand alone system
and the application was developed using the set of softwares Macromedia Flash, Action script ,Photoshop, paint , flash player .
Flash is used to create fla and swf files where the Photoshop and the paint is used
for design and animation and the output of the file to be shown on a flash player. The each and
every action of this game was developed using the Action script which also a scripting language
like jsp and php, the motions and actions covers around seventy scripts for creating this
application, these Action script is a product of flash itself so the integration is very much easily
done in between the scripts .
In physical simulations, video games and computational geometry, collision detection involves
algorithms for checking for collision, i.e. intersection, of two given solids. The process or
mechanism of determining whether two shapes are partially occupying the same space. The
process of detecting simultaneous transmissions on a shared medium. Typically, each
transmitting workstation that detects a collision will wait some period of time and try again.
Collision detection is an essential part of the CSMA/CD access method.The recognition of the
collision of sprites with other sprites or display data.so called hit detection, collision detection is
the act of noting the intersection of two objects. This can be something as simple as determining
if the mouse is over a button or as complicated as detecting the overlap of two moving objects.
The integration between the scripts and the action design using the Photoshop and
pain plays the important key role for creating this application , the future enhancement for their
project is to develop this project as a web based application .
-
8/8/2019 collosion
4/48
CHAPTER 2
INTRODUCTION
-
8/8/2019 collosion
5/48
In physical simulation, we wish to conduct experiments, such as playingbilliards. Thephysicsof
bouncing billiard balls are well understood, under the umbrella ofrigid body motion and elastic
collisions. An initial description of the situation would be given, with a very precise physical
description of the billiard table and balls, as well as initial positions of all the balls. Given a
certain impulsion on the cue ball (probably resulting from a player hitting the ball with his cue
stick), we want to calculate the trajectories, precise motion, and eventual resting places of all the
balls with acomputer program. A program to simulate this game would consist of several
portions, one of which would be responsible for calculating the precise impacts between the
billiard balls. This particular example also turns out to benumerically unstable: a small error in
any calculation will cause drastic changes in the final position of the billiard balls.
Video games have similar requirements, with some crucial differences. While physical
simulation needs to simulate real-world physics as precisely as possible, video games need to
simulate real-world physics in an acceptable way, inreal time and robustly. Compromises are
allowed, so long as the resulting simulation is satisfying to the game player.
Collision detection in physical simulation
Physical simulators differ in the way they react on a collision. Some use the softness of the
material to calculate a force, which will resolve the collision in the following time steps like it is
in reality. Due to the low softness of some materials this is very CPU intensive. Some simulators
estimate the time of collision by linear interpolation, roll backthe simulation, and calculate the
collision by the more abstract methods ofconservation laws.
Some iterate the linear interpolation (Newton's method) to calculate the time of collision with a
much higher precision than the rest of the simulation. Collision detection utilizes time coherence
to allow even finer time steps without much increasing CPU demand, such as in air traffic
control.
http://en.wikipedia.org/wiki/Billiardshttp://en.wikipedia.org/wiki/Physicshttp://en.wikipedia.org/wiki/Physicshttp://en.wikipedia.org/wiki/Rigid_body_motionhttp://en.wikipedia.org/wiki/Elastic_collisionhttp://en.wikipedia.org/wiki/Elastic_collisionhttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Numerical_stabilityhttp://en.wikipedia.org/wiki/Numerical_stabilityhttp://en.wikipedia.org/wiki/Real-time_computinghttp://en.wikipedia.org/wiki/Real-time_computinghttp://en.wikipedia.org/wiki/Rollback_(data_management)http://en.wikipedia.org/wiki/Rollback_(data_management)http://en.wikipedia.org/wiki/Conservation_lawshttp://en.wikipedia.org/wiki/Conservation_lawshttp://en.wikipedia.org/wiki/Newton's_methodhttp://en.wikipedia.org/wiki/Air_traffic_controlhttp://en.wikipedia.org/wiki/Air_traffic_controlhttp://en.wikipedia.org/wiki/Physicshttp://en.wikipedia.org/wiki/Rigid_body_motionhttp://en.wikipedia.org/wiki/Elastic_collisionhttp://en.wikipedia.org/wiki/Elastic_collisionhttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Numerical_stabilityhttp://en.wikipedia.org/wiki/Real-time_computinghttp://en.wikipedia.org/wiki/Rollback_(data_management)http://en.wikipedia.org/wiki/Conservation_lawshttp://en.wikipedia.org/wiki/Newton's_methodhttp://en.wikipedia.org/wiki/Air_traffic_controlhttp://en.wikipedia.org/wiki/Air_traffic_controlhttp://en.wikipedia.org/wiki/Billiards -
8/8/2019 collosion
6/48
After an inelastic collision, special states of sliding and resting can occur and, for example,
the Open Dynamics Engineuses constrains to simulate them. Constrains avoid inertia and thus
instability. Implementation of rest by means of a scene graphavoids drift.
In other words, physical simulators usually function one of two ways, where the collision isdetected a posteriori(after the collision occurs) ora priori (before the collision occurs). In
addition to the a posteriori and a priori distinction, almost all modern collision detection
algorithms are broken into a hierarchy of algorithms. Often the terms "discrete" and "continuous"
are used rather than a posteriori and a priori".
A posteriori (discrete) versus a priori
In the a posteriori case, we advance the physical simulation by a small time step, then check if
any objects are intersecting, or are somehow so close to each other that we deem them to beintersecting. At each simulation step, a list of all intersecting bodies is created, and the positions
and trajectories of these objects are somehow "fixed" to account for the collision. We say that
this method is a posteriori because we typically miss the actual instant of collision, and only
catch the collision after it has actually happened.
In the a priori methods, we write a collision detection algorithm which will be able to predict
very precisely the trajectories of the physical bodies. The instants of collision are calculated with
high precision, and the physical bodies never actually interpenetrate. We call this a prioribecausewe calculate the instants of collision before we update the configuration of the physical bodies.
The main benefits of the a posteriori methods are as follows. In this case, the collision detection
algorithm need not be aware of the myriad physical variables; a simple list of physical bodies is
fed to the algorithm, and the program returns a list of intersecting bodies. The collision detection
algorithm doesn't need to understand friction, elastic collisions, or worse, nonelastic collisions
and deformable bodies. In addition, the a posteriori algorithms are in effect one dimension
simpler than the a priori algorithms. Indeed, an a priori algorithm must deal with the timevariable, which is absent from the a posteriori problem.
On the other hand, a posteriori algorithms cause problems in the "fixing" step, where
intersections (which aren't physically correct) need to be corrected. Moreover, if the discrete step
http://en.wikipedia.org/wiki/Open_Dynamics_Enginehttp://en.wikipedia.org/wiki/Open_Dynamics_Enginehttp://en.wikipedia.org/wiki/Scene_graphhttp://en.wikipedia.org/wiki/Scene_graphhttp://en.wikipedia.org/wiki/A_priori_and_a_posteriori_(philosophy)http://en.wikipedia.org/wiki/A_priori_and_a_posteriori_(philosophy)http://en.wikipedia.org/wiki/A_priori_and_a_posteriori_(philosophy)http://en.wikipedia.org/wiki/Open_Dynamics_Enginehttp://en.wikipedia.org/wiki/Scene_graphhttp://en.wikipedia.org/wiki/A_priori_and_a_posteriori_(philosophy)http://en.wikipedia.org/wiki/A_priori_and_a_posteriori_(philosophy) -
8/8/2019 collosion
7/48
is not related to objects relative speed, the collision could get undetected, resulting in an object
which passes through another, if fast enough.
The benefits of the a priori algorithms are increased fidelity and stability. It is difficult (but not
completely impossible) to separate the physical simulation from the collision detectionalgorithm. However, in all but the simplest cases, the problem of determining ahead of time
when two bodies will collide (given some initial data) has no closed form solution -- a
numerical root finderis usually involved.
Some objects are in resting contact, that is, in collision, but neither bouncing off, nor
interpenetrating, such as a vase resting on a table. In all cases, resting contact requires special
treatment: If two objects collide (a posteriori) or slide (a priori) and their relative motion is
below a threshold, friction becomesstiction and both objects are arranged in the same branch of
the scene graph.
Optimization
The obvious approaches to collision detection for multiple objects are very slow. Checking every
object against every other object will, of course, work, but is too inefficient to be used when the
number of objects is at all large. Checking objects with complex geometry against each other in
the obvious way, by checking each face against each other face, is itself quite slow. Thus,
considerable research has been applied to speeding up the problem.
[edit]Exploiting temporal coherence
In many applications, the configuration of physical bodies from one time step to the next changes
very little. Many of the objects may not move at all. Algorithms have been designed so that the
calculations done in a preceding time step can be reused in the current time step, resulting in
faster algorithms.
At the coarse level of collision detection, the objective is to find pairs of objects which might
potentially intersect. Those pairs will require further analysis. An early high performance
algorithm for this was developed by M. C. Lin at U.C. Berkeley [1], who suggested using axis-
aligned bounding boxes for all n bodies in the scene.
http://en.wikipedia.org/wiki/Root-finding_algorithmhttp://en.wikipedia.org/wiki/Stictionhttp://en.wikipedia.org/wiki/Stictionhttp://en.wikipedia.org/wiki/Scene_graphhttp://en.wikipedia.org/w/index.php?title=Collision_detection&action=edit§ion=5http://www.cs.berkeley.edu/~jfc/mirtich/collDet.htmlhttp://en.wikipedia.org/wiki/Axis-aligned_bounding_boxhttp://en.wikipedia.org/wiki/Axis-aligned_bounding_boxhttp://en.wikipedia.org/wiki/Root-finding_algorithmhttp://en.wikipedia.org/wiki/Stictionhttp://en.wikipedia.org/wiki/Scene_graphhttp://en.wikipedia.org/w/index.php?title=Collision_detection&action=edit§ion=5http://www.cs.berkeley.edu/~jfc/mirtich/collDet.htmlhttp://en.wikipedia.org/wiki/Axis-aligned_bounding_boxhttp://en.wikipedia.org/wiki/Axis-aligned_bounding_box -
8/8/2019 collosion
8/48
Each box is represented by the product of three intervals (i.e., a box would
be .) A common algorithm for collision
detection of bounding boxes is sweep and prune. We observe that two such
boxes, and intersect if, and onlyif,I1 intersectsJ1,I2 intersectsJ2 andI3 intersectsJ3. We suppose that, from one time step to the
next,Ik andJk intersect, then it is very likely that at the next time step, they will still intersect.
Likewise, if they did not intersect in the previous time step, then they are very likely to continue
not to.
So we reduce the problem to that of tracking, from frame to frame, which intervals do intersect.
We have three lists of intervals (one for each axis) and all lists are the same length (since each
list has length n, the number of bounding boxes.) In each list, each interval is allowed to intersectall other intervals in the list. So for each list, we will have an matrixM= (mij) of zeroes
and ones: mij is 1 if intervals i andj intersect, and 0 if they do not intersect.
By our assumption, the matrix Massociated to a list of intervals will remain essentially
unchanged from one time step to the next. To exploit this, the list of intervals is actually
maintained as a list of labeled endpoints. Each element of the list has the coordinate of an
endpoint of an interval, as well as a unique integer identifying that interval. Then, we sort the list
by coordinates, and update the matrix Mas we go. It's not so hard to believe that this algorithmwill work relatively quickly if indeed the configuration of bounding boxes does not change
significantly from one time step to the next.
In the case of deformable bodies such as cloth simulation, it may not be possible to use a more
specific pairwise pruning algorithm as discussed below, and an n-body pruning algorithm is the
best that can be done.
If an upper bound can be placed on the velocity of the physical bodies in a scene, then pairs of
objects can be pruned based on their initial distance and the size of the time step.
http://en.wikipedia.org/wiki/Sweep_and_prunehttp://en.wikipedia.org/wiki/Matrix_(math)http://en.wikipedia.org/wiki/Sorting_algorithmhttp://en.wikipedia.org/wiki/Sweep_and_prunehttp://en.wikipedia.org/wiki/Matrix_(math)http://en.wikipedia.org/wiki/Sorting_algorithm -
8/8/2019 collosion
9/48
CHAPTER 3
PRODUCT ENVIRONMENT
-
8/8/2019 collosion
10/48
3.1 HARDWARE SPECIFICATION
Processor : Intel Pentium III
Speed : 2.40 GHz
Hard Disc : 40 GB
RAM : 256 MB
Display Card : Super Video Adapter (SVGA)
Keyboard : Multimedia Keyboard.
-
8/8/2019 collosion
11/48
3.2 SOFTWARE SPECIFICATION
Operating System : Windows XP/Vista/Seven
Front End : Macromedia Flash 8
Player : Macromedia Flash Player 8
Code Behind : Action Script
-
8/8/2019 collosion
12/48
CHAPTER 4
SYSTEM ANALYSIS
-
8/8/2019 collosion
13/48
ABOUT THE SOFTWARE
Originally acquired by Macromedia, Flash was introduced in 1996, and is currently developed
and distributed by Adobe Systems. The precursor to the Flash application was SmartSketch, a
drawing application for pen computers running the PenPoint OS developed byJonathan Gay,
who began working on it in college and extended the idea forSilicon Beach Software and its
successors. When PenPoint failed in the marketplace, SmartSketch was ported to Microsoft
Windows and Mac OS. With the Internet becoming more popular, SmartSketch was re-releasedas FutureSplash, a vector-based Web animation in competition with Macromedia Shockwave. In
1995, SmartSketch was further modified with frame-by-frame animation features and re-released
as FutureSplash Animatoron multiple platforms.The product was offered to Adobe and used
by Microsoft in its early work with the Internet (MSN). In 1996, FutureSplash was acquired by
Macromedia and released as Flash, contracting "Future" and "Splash" Adobe Labs (previously
called Macromedia Labs) is a source for news and pre-release versions of emerging products and
technologies from Adobe. Most innovations, such as Flash 10,Flex 3, and ActionScript 3.0 have
all been discussed and/or trialled on the site.
One area Adobe is focusing on (as of February 2009) is the deployment ofRich Internet
Applications(RIAs). To this end, they releasedAdobe Integrated Runtime (AIR), across-
platformruntime environment which can be used to build, using Adobe Flash, rich Internet
applications that can be deployed as a desktop application. It surpassed 100 million installations
worldwide in February 2009. This is mainly because it is installed silently when Acrobat Reader
is installed. Many users are unaware of its residence on their system.
Two additional components designed for large-scale implementation have been proposed by
Adobe for future releases of Flash: first, the option to require an ad to be played in full before themain video piece is played; and second, the integration ofdigital rights management(DRM)
capabilities. This way Adobe can give companies the option to link an advertisement with
content and make sure that both are played and remain unchanged.[5]The current status of these
two projects is unclear.[dated info]
Flash Player for smart phones is available to handset manufacturers at the end of 2009.
http://en.wikipedia.org/wiki/Macromediahttp://en.wikipedia.org/wiki/Macromediahttp://en.wikipedia.org/wiki/Adobe_Systemshttp://en.wikipedia.org/wiki/PenPoint_OShttp://en.wikipedia.org/wiki/Jonathan_Gayhttp://en.wikipedia.org/wiki/Silicon_Beach_Softwarehttp://en.wikipedia.org/wiki/Internethttp://en.wikipedia.org/wiki/Vector_graphicshttp://en.wikipedia.org/wiki/Web_animationhttp://en.wikipedia.org/wiki/Adobe_Shockwavehttp://en.wikipedia.org/wiki/FutureSplash_Animatorhttp://en.wikipedia.org/wiki/Microsofthttp://en.wikipedia.org/wiki/MSNhttp://en.wikipedia.org/wiki/Macromedia_Flexhttp://en.wikipedia.org/wiki/Macromedia_Flexhttp://en.wikipedia.org/wiki/Rich_Internet_Applicationshttp://en.wikipedia.org/wiki/Rich_Internet_Applicationshttp://en.wikipedia.org/wiki/Rich_Internet_Applicationshttp://en.wikipedia.org/wiki/Adobe_Integrated_Runtimehttp://en.wikipedia.org/wiki/Cross-platformhttp://en.wikipedia.org/wiki/Cross-platformhttp://en.wikipedia.org/wiki/Cross-platformhttp://en.wikipedia.org/wiki/Runtime_environmenthttp://en.wikipedia.org/wiki/Runtime_environmenthttp://en.wikipedia.org/wiki/Application_softwarehttp://en.wikipedia.org/wiki/Digital_rights_managementhttp://en.wikipedia.org/wiki/Digital_rights_managementhttp://en.wikipedia.org/wiki/Adobe_Flash#cite_note-BBCVideoControl-4http://en.wikipedia.org/wiki/Adobe_Flash#cite_note-BBCVideoControl-4http://en.wikipedia.org/wiki/Talk:Adobe_Flash#obsoletehttp://en.wikipedia.org/wiki/Talk:Adobe_Flash#obsoletehttp://en.wikipedia.org/wiki/Talk:Adobe_Flash#obsoletehttp://en.wikipedia.org/wiki/Macromediahttp://en.wikipedia.org/wiki/Adobe_Systemshttp://en.wikipedia.org/wiki/PenPoint_OShttp://en.wikipedia.org/wiki/Jonathan_Gayhttp://en.wikipedia.org/wiki/Silicon_Beach_Softwarehttp://en.wikipedia.org/wiki/Internethttp://en.wikipedia.org/wiki/Vector_graphicshttp://en.wikipedia.org/wiki/Web_animationhttp://en.wikipedia.org/wiki/Adobe_Shockwavehttp://en.wikipedia.org/wiki/FutureSplash_Animatorhttp://en.wikipedia.org/wiki/Microsofthttp://en.wikipedia.org/wiki/MSNhttp://en.wikipedia.org/wiki/Macromedia_Flexhttp://en.wikipedia.org/wiki/Rich_Internet_Applicationshttp://en.wikipedia.org/wiki/Rich_Internet_Applicationshttp://en.wikipedia.org/wiki/Adobe_Integrated_Runtimehttp://en.wikipedia.org/wiki/Cross-platformhttp://en.wikipedia.org/wiki/Cross-platformhttp://en.wikipedia.org/wiki/Runtime_environmenthttp://en.wikipedia.org/wiki/Application_softwarehttp://en.wikipedia.org/wiki/Digital_rights_managementhttp://en.wikipedia.org/wiki/Adobe_Flash#cite_note-BBCVideoControl-4http://en.wikipedia.org/wiki/Talk:Adobe_Flash#obsolete -
8/8/2019 collosion
14/48
Open Screen ProjectOn May 1, 2008 Adobe announced Open Screen Project, which hopes to provide a consistent
application interface across devices such aspersonal computers, mobile devicesandconsumer
electronics. When the project was announced, several goals were outlined: the abolition of
licensing fees for Adobe Flash Player andAdobe Integrated Runtime, the removal of restrictions
on the use of the Shockwave Flash (SWF) and Flash Video (FLV)file format, the publishing
ofapplication programming interfacesfor porting Flash to new devices and the publishing of
The Flash Cast protocol and Action Message Format (AMF), which let Flash applications
receive information from remote databases.
As of February 2009, the specifications removing the restrictions on the use of SWF and
FLV/F4V specs have been published. The Flash Cast protocolnow known as the Mobile
Content Delivery Protocoland AMF protocols have also been made available, with AMF
available as an open source implementation,BlazeDS. Work on the device porting layers is in
the early stages. Adobe intends to remove the licensing fees for Flash Player and Adobe AIR for
devices at their release for the Open Screen Project.
The list of mobile device providers who have joined the project includesPalm, Motorola and
Nokia, who, together with Adobe, have announced a $10 million Open Screen Project fund.
Format
Flash files are in the SWF format, traditionally called "ShockWave Flash" movies, "Flash
movies," or "Flash games", usually have a .swffile extension, and may be used in the form of a
Web-page plug-in, strictly "played" in a standalone Flash Player, or incorporated into a self-
executing Projector movie (with the .exe extension inMicrosoft Windows). FlashVideo files have a .flv file extension and are either used from within .swffiles or played through
a flv-aware player, such as VLC, orQuickTime and Windows Media Playerwith
external codecsadded.
http://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Mobile_devicehttp://en.wikipedia.org/wiki/Mobile_devicehttp://en.wikipedia.org/wiki/Consumer_electronicshttp://en.wikipedia.org/wiki/Consumer_electronicshttp://en.wikipedia.org/wiki/Consumer_electronicshttp://en.wikipedia.org/wiki/Adobe_Integrated_Runtimehttp://en.wikipedia.org/wiki/Adobe_Integrated_Runtimehttp://en.wikipedia.org/wiki/Adobe_Shockwavehttp://en.wikipedia.org/wiki/File_formathttp://en.wikipedia.org/wiki/File_formathttp://en.wikipedia.org/wiki/Application_Programming_Interfacehttp://en.wikipedia.org/wiki/Application_Programming_Interfacehttp://en.wikipedia.org/wiki/BlazeDShttp://en.wikipedia.org/wiki/BlazeDShttp://en.wikipedia.org/wiki/BlazeDShttp://en.wikipedia.org/wiki/Palm,_Inc.http://en.wikipedia.org/wiki/Palm,_Inc.http://en.wikipedia.org/wiki/Palm,_Inc.http://en.wikipedia.org/wiki/SWFhttp://en.wikipedia.org/wiki/File_extensionhttp://en.wikipedia.org/wiki/Standalonehttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Flash_Videohttp://en.wikipedia.org/wiki/Flash_Videohttp://en.wikipedia.org/wiki/Swfhttp://en.wikipedia.org/wiki/Swfhttp://en.wikipedia.org/wiki/VLC_media_playerhttp://en.wikipedia.org/wiki/VLC_media_playerhttp://en.wikipedia.org/wiki/QuickTimehttp://en.wikipedia.org/wiki/Windows_Media_Playerhttp://en.wikipedia.org/wiki/Codechttp://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Mobile_devicehttp://en.wikipedia.org/wiki/Consumer_electronicshttp://en.wikipedia.org/wiki/Consumer_electronicshttp://en.wikipedia.org/wiki/Adobe_Integrated_Runtimehttp://en.wikipedia.org/wiki/Adobe_Shockwavehttp://en.wikipedia.org/wiki/File_formathttp://en.wikipedia.org/wiki/Application_Programming_Interfacehttp://en.wikipedia.org/wiki/BlazeDShttp://en.wikipedia.org/wiki/Palm,_Inc.http://en.wikipedia.org/wiki/SWFhttp://en.wikipedia.org/wiki/File_extensionhttp://en.wikipedia.org/wiki/Standalonehttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Flash_Videohttp://en.wikipedia.org/wiki/Flash_Videohttp://en.wikipedia.org/wiki/Swfhttp://en.wikipedia.org/wiki/VLC_media_playerhttp://en.wikipedia.org/wiki/QuickTimehttp://en.wikipedia.org/wiki/Windows_Media_Playerhttp://en.wikipedia.org/wiki/Codec -
8/8/2019 collosion
15/48
The use of vector graphics combined with program code allows Flash files to be smaller and
thus for streams to use lessbandwidth than the corresponding bitmaps or video clips. For
content in a single format (such as just text, video, or audio), other alternatives may provide
better performance and consume less CPUpower than the corresponding Flash movie, for
example when using transparency or making large screen updates such as photographic or text
fades.
In addition to a vector-rendering engine, the Flash Player includes a virtual machine called the
ActionScript Virtual Machine (AVM) for scripting interactivity at run-time, support for video,
MP3-based audio, and bitmap graphics. As of Flash Player 8, it offers two video codecs:On2
TechnologiesVP6 andSorenson Spark, and run-time support forJPEG, Progressive JPEG,PNG,
andGIF. In the next version, Flash is slated to use ajust-in-time compiler for the ActionScript
engine.
Flash Player is a browser plugin, and cannot run within a usual e-mail client, such as Outlook.
Instead, a link must open a browser window. AGmail labs feature allows playback of YouTube
videos linked in emails.
Flash Video
Until the advent ofHTML5, displaying video on a web page required browser plugins, which are
uniquely implemented by third party vendors. Virtually all browser plugins for video arefreeand
cross-platform, including Adobe's offering of Flash Video, which was first introduced with Flash
version 6. Flash Video has been a popular choice for websites due to the large installed user
baseand programmability of Flash. In 2010, Apple haspublicly criticized Adobe's
implementation of Flash Video playback for not taking advantage of hardware acceleration, as
well as criticizing Flash technology in general which has been cited as reason for not
implementing Apple's mobile devices. Soon after Apple's criticism, Adobe demoed and released
a beta version of Flash 10.1, which takes advantage of hardware acceleration even on a Mac.
Flash Audio
Flash Audio is most commonly encoded in MP3or AAC (Advanced Audio Coding) however it
does also support ADPCM, Nellymoser (Nellymoser Asao Codec) and Speex audio codecs.
http://en.wikipedia.org/wiki/Bandwidth_(computing)http://en.wikipedia.org/wiki/Central_processing_unithttp://en.wikipedia.org/wiki/Central_processing_unithttp://en.wikipedia.org/wiki/On2_Technologieshttp://en.wikipedia.org/wiki/On2_Technologieshttp://en.wikipedia.org/wiki/VP6http://en.wikipedia.org/wiki/Sorenson_codechttp://en.wikipedia.org/wiki/Sorenson_codechttp://en.wikipedia.org/wiki/JPEGhttp://en.wikipedia.org/wiki/Portable_Network_Graphicshttp://en.wikipedia.org/wiki/Portable_Network_Graphicshttp://en.wikipedia.org/wiki/Graphics_Interchange_Formathttp://en.wikipedia.org/wiki/Graphics_Interchange_Formathttp://en.wikipedia.org/wiki/Just-in-time_compilationhttp://en.wikipedia.org/wiki/Microsoft_Outlookhttp://en.wikipedia.org/wiki/Gmailhttp://en.wikipedia.org/wiki/Gmailhttp://en.wikipedia.org/wiki/HTML5http://en.wikipedia.org/wiki/HTML5http://en.wikipedia.org/wiki/Gratis#Softwarehttp://en.wikipedia.org/wiki/Gratis#Softwarehttp://en.wikipedia.org/wiki/Gratis#Softwarehttp://en.wikipedia.org/wiki/Adobe_Flash#Installed_user_basehttp://en.wikipedia.org/wiki/Adobe_Flash#Installed_user_basehttp://en.wikipedia.org/wiki/Adobe_Flash#Installed_user_basehttp://en.wikipedia.org/wiki/Adobe_Flash#Criticismhttp://en.wikipedia.org/wiki/Adobe_Flash#Criticismhttp://en.wikipedia.org/wiki/MP3http://en.wikipedia.org/wiki/MP3http://en.wikipedia.org/wiki/Advanced_Audio_Codinghttp://en.wikipedia.org/wiki/ADPCMhttp://en.wikipedia.org/wiki/Nellymoser_Asao_Codechttp://en.wikipedia.org/wiki/Speexhttp://en.wikipedia.org/wiki/Bandwidth_(computing)http://en.wikipedia.org/wiki/Central_processing_unithttp://en.wikipedia.org/wiki/On2_Technologieshttp://en.wikipedia.org/wiki/On2_Technologieshttp://en.wikipedia.org/wiki/VP6http://en.wikipedia.org/wiki/Sorenson_codechttp://en.wikipedia.org/wiki/JPEGhttp://en.wikipedia.org/wiki/Portable_Network_Graphicshttp://en.wikipedia.org/wiki/Graphics_Interchange_Formathttp://en.wikipedia.org/wiki/Just-in-time_compilationhttp://en.wikipedia.org/wiki/Microsoft_Outlookhttp://en.wikipedia.org/wiki/Gmailhttp://en.wikipedia.org/wiki/HTML5http://en.wikipedia.org/wiki/Gratis#Softwarehttp://en.wikipedia.org/wiki/Adobe_Flash#Installed_user_basehttp://en.wikipedia.org/wiki/Adobe_Flash#Installed_user_basehttp://en.wikipedia.org/wiki/Adobe_Flash#Criticismhttp://en.wikipedia.org/wiki/MP3http://en.wikipedia.org/wiki/Advanced_Audio_Codinghttp://en.wikipedia.org/wiki/ADPCMhttp://en.wikipedia.org/wiki/Nellymoser_Asao_Codechttp://en.wikipedia.org/wiki/Speex -
8/8/2019 collosion
16/48
Flash allows sample rates of 11, 22 and 44.1 kHz. It does not support 48 kHz audio sample rate
which is the standard Tv, DVD sample rate.
On August 20, 2007, Adobe announced on its blog that with Update 3 of Flash Player 9, Flash
Video will also support some parts of theMPEG-4 international standards. Specifically, FlashPlayer will have support for video compressed inH.264(MPEG-4 Part 10), audio compressed
using AAC (MPEG-4 Part 3), the F4V, MP4 (MPEG-4 Part 14), M4V,
M4A,3GP and MOV multimedia container formats, 3GPPTimed Text specification (MPEG-4
Part 17) which is a standardized subtitle format and partial parsing support for the 'ilst' atom
which is theID3 equivalent iTunesuses to storemetadata. MPEG-4 Part 2 and H.263 will not be
supported in F4V file format. Adobe also announced that they will be gradually moving away
from the FLV format to the standard ISO base media file format (MPEG-4 Part 12) owing to
functional limits with the FLV structure when streaming H.264. The final release of the Flash
Player supporting some parts of MPEG-4 standards had become available in Fall 2007.
Adobe Flash Player 10.1 does not support acoustic echo cancellation, unlike the VoIP offerings
of Skype and Google Voice. This makes Flash less suitable for group calling or meetings, as use
of headphones for all participants is essential, or at least highly advised.
http://en.wikipedia.org/wiki/MPEG-4http://en.wikipedia.org/wiki/H.264http://en.wikipedia.org/wiki/H.264http://en.wikipedia.org/wiki/H.264http://en.wikipedia.org/wiki/Advanced_Audio_Codinghttp://en.wikipedia.org/wiki/MP4http://en.wikipedia.org/wiki/3GPhttp://en.wikipedia.org/wiki/3GPhttp://en.wikipedia.org/wiki/MOVhttp://en.wikipedia.org/wiki/Container_format_(digital)http://en.wikipedia.org/wiki/3GPPhttp://en.wikipedia.org/wiki/Timed_Texthttp://en.wikipedia.org/wiki/ID3http://en.wikipedia.org/wiki/ITuneshttp://en.wikipedia.org/wiki/ITuneshttp://en.wikipedia.org/wiki/Metadatahttp://en.wikipedia.org/wiki/Metadatahttp://en.wikipedia.org/wiki/MPEG-4_Part_2http://en.wikipedia.org/wiki/H.263http://en.wikipedia.org/wiki/MPEG-4_Part_12http://en.wikipedia.org/wiki/MPEG-4http://en.wikipedia.org/wiki/H.264http://en.wikipedia.org/wiki/Advanced_Audio_Codinghttp://en.wikipedia.org/wiki/MP4http://en.wikipedia.org/wiki/3GPhttp://en.wikipedia.org/wiki/MOVhttp://en.wikipedia.org/wiki/Container_format_(digital)http://en.wikipedia.org/wiki/3GPPhttp://en.wikipedia.org/wiki/Timed_Texthttp://en.wikipedia.org/wiki/ID3http://en.wikipedia.org/wiki/ITuneshttp://en.wikipedia.org/wiki/Metadatahttp://en.wikipedia.org/wiki/MPEG-4_Part_2http://en.wikipedia.org/wiki/H.263http://en.wikipedia.org/wiki/MPEG-4_Part_12 -
8/8/2019 collosion
17/48
Adobe Flash Professional
Adobe Flash Professional
Adobe Flash CS5 Professional (11.0.2.489)
Developer(s) Adobe Systems (formerly byMacromedia)
Written in C++
Operating system Microsoft Windows andMac OS X
Type Multimedia
License ProprietaryEULA
Website Adobe Flash Professional Homepage
http://en.wikipedia.org/wiki/Software_developerhttp://en.wikipedia.org/wiki/Adobe_Systemshttp://en.wikipedia.org/wiki/Macromediahttp://en.wikipedia.org/wiki/Programming_languagehttp://en.wikipedia.org/wiki/C%2B%2Bhttp://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Mac_OS_Xhttp://en.wikipedia.org/wiki/Mac_OS_Xhttp://en.wikipedia.org/wiki/List_of_software_categorieshttp://en.wikipedia.org/wiki/Multimediahttp://en.wikipedia.org/wiki/Software_licensehttp://en.wikipedia.org/wiki/Proprietary_softwarehttp://en.wikipedia.org/wiki/EULAhttp://en.wikipedia.org/wiki/EULAhttp://en.wikipedia.org/wiki/Websitehttp://www.adobe.com/products/flash/flashpro/http://en.wikipedia.org/wiki/File:Adobe_Flash_CS5.jpghttp://en.wikipedia.org/wiki/File:Flash_icon.pnghttp://en.wikipedia.org/wiki/Software_developerhttp://en.wikipedia.org/wiki/Adobe_Systemshttp://en.wikipedia.org/wiki/Macromediahttp://en.wikipedia.org/wiki/Programming_languagehttp://en.wikipedia.org/wiki/C%2B%2Bhttp://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Mac_OS_Xhttp://en.wikipedia.org/wiki/List_of_software_categorieshttp://en.wikipedia.org/wiki/Multimediahttp://en.wikipedia.org/wiki/Software_licensehttp://en.wikipedia.org/wiki/Proprietary_softwarehttp://en.wikipedia.org/wiki/EULAhttp://en.wikipedia.org/wiki/Websitehttp://www.adobe.com/products/flash/flashpro/ -
8/8/2019 collosion
18/48
The Adobe Flash Professional multimedia authoring program is used to create content for theAdobe
Engagement Platform, such as web applications, games and movies, and content for mobile phones and
other embedded devices.
ABOUT ACTION SCRIPT
The ActionScript 3.0 Language Reference is a reference manual for the application programming
interfaces (APIs) for Flash Player and Adobe AIR.
This version includes new ActionScript classes, methods, and properties that support the AdobeAIR runtime environment. Where possible, new AIR-specific items have been indicated by this
small icon next to their names:
This manual provides information on the syntax and usage of supported elements in the
ActionScript language. It includes the following sections:
Language elements, such as globals, operators, statements, keywords, directives, and
special types Packages
Alphabetical entries for class elements
An index containing all entries
An appendix that compares some key language and API changes from ActionScript 2.0 to
ActionScript 3.0
An appendix that describes the SQL syntax for use with local databases in AIR 1.0
Appendixes of errors and warnings with annotations
This reference is available in several forms, including the Help Panel within your authoring tool,
andLiveDocs. It is intended to be used with other instructional media, such as the Programming
ActionScript 3.0 guide, and resources on the Adobe website, such as theActionScript Topic
Center.
http://en.wikipedia.org/wiki/Adobe_Engagement_Platformhttp://en.wikipedia.org/wiki/Adobe_Engagement_Platformhttp://livedocs.adobe.com/http://livedocs.adobe.com/http://www.adobe.com/devnet/actionscript/http://www.adobe.com/devnet/actionscript/http://www.adobe.com/devnet/actionscript/http://en.wikipedia.org/wiki/Adobe_Engagement_Platformhttp://en.wikipedia.org/wiki/Adobe_Engagement_Platformhttp://livedocs.adobe.com/http://www.adobe.com/devnet/actionscript/http://www.adobe.com/devnet/actionscript/ -
8/8/2019 collosion
19/48
SAMPLE CODES
Action tag
stop();
this.onEnterFrame = function ()
{
if (this.getBytesTotal()
-
8/8/2019 collosion
20/48
if (i >= 10)
{
return;
}
var mc = eval("mc" + i);
if (i
-
8/8/2019 collosion
21/48
ActionScript for game.swf
import stm.mprojector.mWindow;
// define function
function messageReceiver (message: String):void {
message.text = message;
};
// register messageReceiver as callable by other windows.
mWindow.addCallback("messageReceiver", messageReceiver);
// ActionScript in parent.swf
PlayerWindow = mApplication.createWindow( "Player.swf ", 50, 50, "PLAYER
", "PLAYER ", "STANDARD ",
160000, true, 100, true, true, " ");
if (PlayerWindow != null) {
mApplication.trace( "PlayerWindow: " + PlayerWindow.toString());
PlayerWindow.messageReceiver( "hello from parent ");
}
};
-
8/8/2019 collosion
22/48
ActionScript in Player.swf
mWindow.messageReceiver = function (message: String):void {
message.text = message;
};
// ActionScript in parent.swf
PlayerWindow = mApplication.createWindow( "Player.swf ", 50, 50, "PLAYER
", "PLAYER ", "STANDARD ",
160000, true, 100, true, true, " ");
if (PlayerWindow != null) {
mApplication.trace( "PlayerWindow: " + PlayerWindow.toString());
PlayerWindow.messageReceiver( "hello from parent ");
}
};
-
8/8/2019 collosion
23/48
CODE FOR EVENT LISTENER
import stm.mprojector.mWindow;
import stm.mprojector.mWindowEvent;
function windowEventHandler(e:mWindowEvent):void {
switch (e.type) {
case mWindowEvent.ACTIVATE ://doSomethingCoolToMakeWindowStatesDistinct
("ACTIVE");
break;
case mWindowEvent.DOCUMENT_COMPLETE :
//if (!e.error)
// doSomethingWithDocumentURL (e.documentURL);
break;
case mWindowEvent.DRAG_FILES :
//doSomethingWithFiles (e.files);
-
8/8/2019 collosion
24/48
break;
case mWindowEvent.DROP_FILES :
//doSomethingWithFiles (e.files);
break;
case mWindowEvent.MAXIMIZED :
//doSomethingMaximized ();
break;
case mWindowEvent.MINIMIZED :
//doSomethingMinimized ();
break;
case mWindowEvent.RESTORED :
//doSomethingRestored ();
break;
case mWindowEvent.SCROLL_WHEEL ://doSomethingScrollWheelie (e.scrollDelta));
break;
default:
break;
}
}
-
8/8/2019 collosion
25/48
// == initialize listeners ====
function initListeners():void {
// window events
mWindow.addEventListener(mWindowEvent.ACTIVATE,
windowEventHandler);
mWindow.addEventListener(mWindowEvent.DEACTIVATE,
windowEventHandler);
mWindow.addEventListener(mWindowEvent.MAXIMIZED,windowEventHandler);
mWindow.addEventListener(mWindowEvent.MINIMIZED,
windowEventHandler);
mWindow.addEventListener(mWindowEvent.RESTORED,
windowEventHandler);
mWindow.addEventListener(mWindowEvent.SCROLL_WHEEL,
windowEventHandler);
}
Also
-
8/8/2019 collosion
26/48
mWindowEvent.ACTIVATE, mWindowEvent.DOCUMENT_COMPLETE,
mWindowEvent.DRAG_FILES, mWindowEvent.DROP_FILES,
mWindowEvent.MAXIMIZED, mWindowEvent.MINIMIZED,
mWindowEvent.RESTORED, mWindowEvent.SCROLL_WHEEL
FLASH TASKBAR BUTTON
This example flashes the Windows taskbar button or bounces
import stm.mprojector.mApplication;
function alertUser () {
if (mSystem.isMac()) {
mApplication.bounceDockIcon(true);
} else {
mApplication.flashTaskBarButton(true);
}
}
function alertUser () {
if (mSystem.isMac()) {
mApplication.bounceDockIcon(true);
} else {
-
8/8/2019 collosion
27/48
mApplication.flashTaskBarButton(true);
}
}
TO QUIT
The following example quits the application when a button is released.
import stm.mprojector.mApplication;
function quit_btn_click(e:Event):void {
mApplication.quit();
}quit_btn.addEventListener(MouseEvent.CLICK, quit_btn_click);
ActionScript 2.0 Example:
The following example quits the application when a button is released.
quit_btn.onPress = function ()
{
mApplication.quit();
}
-
8/8/2019 collosion
28/48
TO GET ARGUMENTS
import stm.mprojector.mApplication;
var Args = mApplication.getArguments();
for (var i=0; Args[i]; i++)
{
trace(Args[i]);
}ActionScript 2.0 Example:
The following example returns the command line arguments.
var Args = mApplication.getArguments();
for (var i=0; Args[i]; i++)
{
trace(Args[i]);
}
-
8/8/2019 collosion
29/48
TO SHOW MOUSE
This example hides the mouse.This can be useful when resizing the window.
import stm.mprojector.mApplication;
mApplication.showMouse(false);
TO ACTIVATE
import stm.mprojector.mApplication;
import stm.mprojector.mApplicationEvent;
function applicationEventHandler(event:mApplicationEvent):void {
switch (event.type) {
case mApplicationEvent.ACTIVATE :
-
8/8/2019 collosion
30/48
// do something here to draw the window as active, make is animate
maybe.
case mApplicationEvent.DEACTIVATE :
// do something here to draw the window as in-active, gray it outmaybe.
}
}
function initListeners():void {
mApplication.addEventListener(mApplicationEvent.ACTIVATE,
applicationEventHandler);
mApplication.addEventListener(mApplicationEvent.DEACTIVATE,
applicationEventHandler);
}
initListeners();
-
8/8/2019 collosion
31/48
CHAPTER 5
PRODUCT DEVELOPMENT
-
8/8/2019 collosion
32/48
5.1 SCREEN DESIGNING
1. Open flash click new flash document.
2. Open the page properties if its not already opened which it should be
Window/Properties/Properties
3. Change the size of the canvas to 800, 600.
4. Click on the background button and change it to #333333
5. After you have done this click the square tool
-
8/8/2019 collosion
33/48
6. The color of the square should be white so click on the paint bucket tool and choose the color
white. The stroke should also be off.. This is what it looks like. The stroke tool is right in top of
the paint bucket.
7. Drag and make a square any size we would change that manually in a moment.
8. Now change the width, height, x, and y positioning (change the width to 650, the height to
469.2, the x positioning to 398.1, and the y positioning to 299.3.) to change this dimensions is all
in the page properties. You have to click on the square and with it selected you can start making
this change.
-
8/8/2019 collosion
34/48
9. With the square still selected now make it into a symbol to do this press (F8) a screen will
come up what will ask you to name it. Name it Background Symbol. Make sure the movie clip
button is clicked.
-
8/8/2019 collosion
35/48
10. make a new layer to do tis click on the insert layer button.
-
8/8/2019 collosion
36/48
11. Select the new layer and click on the square tool again and make another square with the
stroke off and the color instead of white make it black. This time with this dimensions.( width:
632.4, height: 450.4, x positioning: 81.6, and y positioning:73.3)
12. Make the new square into a symbol by pressing (F8) and name it masked symbol.
-
8/8/2019 collosion
37/48
13. After you have made it into a symbol double click into the square this will take you inside the
symbol and a new time line. This is just like the time line you were in but now you are inside of
a symbol. Make a new layer just like you did it before by click in on the insert layer button. all
the art work is in the bottom layer as of right now you can tell because of the little black dot
under and on the top layer there is a white dot. The white dot means there is no art work on this
layer.
14. Now click and hold down on Layer 1 and with it still clicked drag it in top of Layer 2.
Remember that all this is happening inside that symbol we made called masked symbol.
-
8/8/2019 collosion
38/48
16. Right click on Layer 1 and then select Mask
-
8/8/2019 collosion
39/48
17. When you do this both layers are going to be locked you can tell because now the have alittle lock next to them. Click on the bottom lock to take it off.
-
8/8/2019 collosion
40/48
18. Select Layer 2 find an image you like and now we are going to place in there. the way youdo this is you go File/Import/Import to stage. Then a search window is going to come up and youfind where your picture is and double click and it will be placed on the stage.
-
8/8/2019 collosion
41/48
Literature Review
-
8/8/2019 collosion
42/48
Tennis is a sport usually played between two players (singles) or between two teams of two
players each (doubles). Each player uses a racquet that is strung to strike a hollow
rubberball covered with felt over a net into the opponent's court.
The modern game of tennis originated in the United Kingdom in the late 19th century as "lawn
tennis" which has heavy connections to various field/lawn games as well as to the ancient game
ofreal tennis. After its creation, tennis spread throughout the upper-class English-speaking
population before spreading around the world.[1]Tennis is an Olympic sport and is played at all
levels of society at all ages. The sport can be played by anyone who can hold a racket, including
people in wheelchairs.
The rules of tennis have not changed much since the 1890s. Two exceptions are that from 1908
to 1960 the server had to keep one foot on the ground at all times, and then the adoption of
the tie-breakin the 1970s. A recent addition to professional tennis has been the adoption of
electronic review technology coupled with a point challenge system, which allows a player to
challenge the line (or chair) umpire's call of a point. Players have unlimited opportunity to
challenge, but once three incorrect challenges are made in a set, they cannot challenge again until
the next set. If the set goes to a tie break, players are given one additional opportunity to
challenge the call. This electronic review, currently called Hawk-Eye, is available at a limited
number of high-level ATP and WTA tournaments.
http://en.wikipedia.org/wiki/Sporthttp://en.wikipedia.org/wiki/Types_of_tennis_matchhttp://en.wikipedia.org/wiki/Types_of_tennis_matchhttp://en.wikipedia.org/wiki/Racquethttp://en.wikipedia.org/wiki/Tennis_ballhttp://en.wikipedia.org/wiki/Tennis_courthttp://en.wikipedia.org/wiki/United_Kingdomhttp://en.wikipedia.org/wiki/Real_tennishttp://en.wikipedia.org/wiki/Tennis#cite_note-0http://en.wikipedia.org/wiki/Tennis#cite_note-0http://en.wikipedia.org/wiki/Olympic_Gameshttp://en.wikipedia.org/wiki/Wheelchair_tennishttp://en.wikipedia.org/wiki/Tennis_score#Scoring_a_tiebreak_gamehttp://en.wikipedia.org/wiki/Hawk-Eyehttp://en.wikipedia.org/wiki/Sporthttp://en.wikipedia.org/wiki/Types_of_tennis_matchhttp://en.wikipedia.org/wiki/Types_of_tennis_matchhttp://en.wikipedia.org/wiki/Racquethttp://en.wikipedia.org/wiki/Tennis_ballhttp://en.wikipedia.org/wiki/Tennis_courthttp://en.wikipedia.org/wiki/United_Kingdomhttp://en.wikipedia.org/wiki/Real_tennishttp://en.wikipedia.org/wiki/Tennis#cite_note-0http://en.wikipedia.org/wiki/Olympic_Gameshttp://en.wikipedia.org/wiki/Wheelchair_tennishttp://en.wikipedia.org/wiki/Tennis_score#Scoring_a_tiebreak_gamehttp://en.wikipedia.org/wiki/Hawk-Eye -
8/8/2019 collosion
43/48
BIBLOGRAPHY
-
8/8/2019 collosion
44/48
WEB REFERENCES
1. http://www.adobe.com/support/flash/action_scripts/actionscript_dictionary/
2. http://www.adobe.com/support/documentation/en/flash/
3. http://www.adobe.com/support/documentation/en/flash/
http://www.adobe.com/support/flash/action_scripts/actionscript_dictionary/http://www.adobe.com/support/documentation/en/flash/http://www.adobe.com/support/documentation/en/flash/http://www.adobe.com/support/flash/action_scripts/actionscript_dictionary/http://www.adobe.com/support/documentation/en/flash/http://www.adobe.com/support/documentation/en/flash/ -
8/8/2019 collosion
45/48
List Of Figures
-
8/8/2019 collosion
46/48
1.Overall structure
-
8/8/2019 collosion
47/48
2.Ball
-
8/8/2019 collosion
48/48
3.Ball track