Computing and SE II Chapter 13: Software Maintenance Er-Yu Ding Software Institute, NJU.
Lecturer: Lisa Hua Producer: Jack Shi PM: Yinlan Zhao TM: Yemin Sui Software Institute, NJU Software...
-
Upload
kristina-caldwell -
Category
Documents
-
view
218 -
download
0
Transcript of Lecturer: Lisa Hua Producer: Jack Shi PM: Yinlan Zhao TM: Yemin Sui Software Institute, NJU Software...
Games' Controling by Mobile Phone's Sensors on Android PlatformLecturer: Lisa HuaProducer: Jack Shi
PM: Yinlan ZhaoTM: Yemin SuiSoftware Institute, NJU
Software Institute, Nanjing University
Contents Everything From the Name
Innovations
Market Analysis
Everything From the Name
What is in the name “Mobic”?
Mobic = Mobile + Computer The logo “Mobic” is from Google
from
Innovations
Innovation-1: The project’s name and logo
Innovation-2: User Experience
Innovation-3: User Interface
Innovation-4: Powerful Program Interface
Innovation-6: Data Processing
Innovation-7: Not only games
Innovation-5: Using XML
Innovation-2: User Experience
Give a sense of reality to users.
It allows users to exercise instead of using mouse and keyboard only.
Games is no longer only a game, they are sports that your opponent is PC
Innovation-3: User Interface
open source
Use the thought of games’ control in the UI control.
Your only work on PC is double click the application.
Make users feel that the routine use the system is very smooth, and make the system keep consistent and convenient.
TM
Innovation-4: Powerful Program Interface
Mobile Terminal:
The difference between Sofa Mode and Sports Mode is using different sensors.
The Routine to Start a Mode
Create a new object, newMode
newMode.start();
newMode.suspend();
newMode.cancel();
newMode.prepare();
How to extend?
Extend a new abstract mode like SofaMode and SportsMode
Implement a new mode for game like Game_SpeedMode
Override prepare() to set sensors that to be used
Implements the abstract method process(Message msg);
Override cancel() to unregister sensors that be used
This method is used for process data from sensors
Motion Definition
Initialize a motion by using constructor according to your process in the method process(Message msg);
The only job you should do is
Then dispatch it by motion.dispatch();
Nearly the same with mobile terminalThe motion on PC we call it
Action
PC Terminal
When we get a Action newAction, we use
newAction.doAction() to control our game.
Innovation-5: Using XML
Properties Examplename VR2installpath F:\vr2\project\Ppj2dd.exe actionList name Forward
info 前进key W
Using xml to configure a game’s properties make the Expansibility stronger.
Innovation-6: Data Processing —— Difficulties
Sensor data is not very accurate;1
Acceleration Sensor’s data is not the real acceleration, they include the gravity.2
The data are very small like 0.000213111;3
The problem of multi-thread.4
Frameworks designed for performance
Frameworks designed for performance
Solutions——How to get accelerations?
Firstly, get the acceleration that has gravity component, and orientation data.
acc_x=acc[0]-9.8*sinθ
acc_y=acc[0]+9.8*sinα
acc_z=sqrt(9.82-acc_x2-acc_y2)
xy
z
G
Solutions——Data are too small to computer
V = V0+ATS = V0T+0.5*AT2
To make the computing get a suitable result, we magnify the time T 1000 times.
The result S is often NAN because the T=50ms=0.05s.
Solutions——Multi-Thread Problem
Message msg = mode.getDataHandler().obtainMessage(1, msg_obj);mode.getDataHandler().sendMessage(msg);
To solve the chaos of multi-thread, and get data in order, we use message mechanism
SensorEventListenerMessageQueueMode.process(Message msg)
So many games!
Speed SBKX VR2Tennis
Innovation-7: For Games, But Not Only Games
Innovation-7: For Games, But Not Only Games
In the future, even in the remote control domain for TVs or others
Market Analysis
Our AdvantagesLow Cost
Large Number of Users
Conveniences
Easy to Maintain
Our AdvantagesLow Cost
We needn’t to develop games for our system, the system’s task is to improve users’ experience on existed games on PC.
On the other hand, you needn’t buy more equipment. You only need an Android mobile phone.
Our Advantages
ConvenienceYou needn’t carry other equipment. You can use the
system wherever and whenever only if you have a mobile phone and a computer.
Our Advantages
Powerful interface and using xml make the system is so easy to extend that you needn’t change its source code.
On the other hand you needn’t maintain the games the system control.
Easy to maintain
Our Advantages
Large Number of
Users• In China, there are more than 0.1 billion computer
users;• This shows that we have many users and potential
users;• In China, the users of Android has exceed Iphone;
and in the world even though the users of Android is less than Iphone, but it is increasing very fast.
Summary
Mobic is a system that has lower risk than other same kind products
Low cost;Number of users;Easy to maintain;Convenience;Etc.
MobicTM
JUNE 7-10, 2010 | NEW ORLEANS, LA
Q&A
DECEMBER 21-10, 2010 | Nanjing, Jiangsu
MobicTM
2010 PRC