WO2014042484A1 - 게임 제공 방법, 단말, 서버 및 기록매체 - Google Patents

게임 제공 방법, 단말, 서버 및 기록매체 Download PDF

Info

Publication number
WO2014042484A1
WO2014042484A1 PCT/KR2013/008368 KR2013008368W WO2014042484A1 WO 2014042484 A1 WO2014042484 A1 WO 2014042484A1 KR 2013008368 W KR2013008368 W KR 2013008368W WO 2014042484 A1 WO2014042484 A1 WO 2014042484A1
Authority
WO
WIPO (PCT)
Prior art keywords
terminal
data
game
sensor
sensing value
Prior art date
Application number
PCT/KR2013/008368
Other languages
English (en)
French (fr)
Inventor
송지영
Original Assignee
(주)네오위즈게임즈
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020120102401A external-priority patent/KR20140036459A/ko
Priority claimed from KR1020120102359A external-priority patent/KR101443185B1/ko
Priority claimed from KR1020120102487A external-priority patent/KR101434274B1/ko
Priority claimed from KR1020120102354A external-priority patent/KR101415659B1/ko
Priority claimed from KR1020120102399A external-priority patent/KR101348139B1/ko
Priority claimed from KR1020120126610A external-priority patent/KR20140060025A/ko
Application filed by (주)네오위즈게임즈 filed Critical (주)네오위즈게임즈
Publication of WO2014042484A1 publication Critical patent/WO2014042484A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/211Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/22Setup operations, e.g. calibration, key configuration or button assignment
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/31Communication aspects specific to video games, e.g. between several handheld game devices at close range
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/428Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes

Definitions

  • the present invention relates to a game providing method, a terminal, a server and a recording medium.
  • Conventional games are generally made in such a way that the user's terminal is connected to the server and provided by the server or using a game program installed in the terminal.
  • the performance of the terminal on which the game is played is increased, the types thereof are also diversified, and the input device is also sensitive to various types of input devices capable of inputting various types of inputs from traditional keyboards and mice, and sensing various types of information.
  • Various sensors, touch screens, etc. have been used, and the game play environment is also rapidly changing.
  • the present invention is to provide a variety of game providing method, terminal, server and a recording medium that allows game users to enjoy a realistic game.
  • At least one sensing data including at least one sensing value measured from at least one sensor of the terminal is received from the terminal.
  • a second embodiment of the present invention the mobile terminal, receiving the IP address of the user terminal via an address server receiving and storing the IP address of the user terminal or a wireless router receiving the IP address of the user terminal; And accessing the user terminal using the received IP address.
  • a device for providing a service for controlling a game executed in an external terminal through a mobile communication terminal, the execution of game contents in the external terminal and the execution of the device and the mobile communication terminal Detecting a network connection; Receiving the at least one input signal generated by the user's input from a control interface which is an interface provided according to the execution of the application stored in the mobile communication terminal, at least one input signal is an interface generated by the user's input Doing; Selecting, from a previously stored command table, a control command corresponding to the received at least one input signal among at least one control command stored in the command table for game play in the game content being executed; And transmitting the selected control command to the game content to perform the control on the game play according to the selected control command.
  • a device including a display utilizes a terminal sensor
  • an indication position for receiving a plurality of indication position sensing values of the terminal indicating each of a plurality of reference points on the display from the terminal Receiving a sensing value
  • a scale adjustment ratio determination step of determining a scale adjustment ratio by using a difference in coordinate values between the plurality of reference points and a position sensing value difference between the plurality of indicated position sensing values
  • And calculating the pointing coordinate position on the display by applying the scale adjustment ratio to the at least one pointing position sensing value received from the terminal or the pointing position correction sensing value error-corrected with respect to the at least one pointing position sensing value. It provides a terminal sensor utilization method comprising a pointing coordinate position calculation step.
  • a game playing method performed in a game playing server that may be connected to a mobile terminal that senses user motion, the sensing data associated with the sensed user motion is received. Performing a game operation by the game client through; And when the feedback about the game operation is received from the game client, performing the sensory action by the mobile terminal through the received feedback.
  • a game playing method performed in a game playing server that can be connected to a mobile terminal, the method comprising: receiving sensing data associated with an impact by a user from the mobile terminal; Determining operation data corresponding to impact data associated with a game operation from the received sensing data; And performing a game operation by a game client through the determined operation data.
  • the present invention has the effect of providing a variety of game providing method, terminal, server and a recording medium that allows game users to enjoy a realistic game.
  • 1 is a view for explaining the type of sensor included in the terminal according to the first embodiment of the present invention.
  • FIG. 2 is a communication connection configuration diagram of a system including a device and a terminal according to the first embodiment of the present invention.
  • FIG. 3 is an internal block diagram of an apparatus according to a first embodiment of the present invention.
  • FIG. 4 is a view showing coordinates of sensing values indicating interpolation of sensing values according to the first embodiment of the present invention.
  • FIG. 5 is a conceptual diagram illustrating that a device according to a first embodiment of the present invention communicates with an application.
  • FIG. 6 is a diagram illustrating a baseball bat operated using a terminal in a haptic game according to the first embodiment of the present invention.
  • FIG. 7 is a flowchart illustrating a method of using a terminal sensor according to a first embodiment of the present invention.
  • FIG. 8 is an internal block diagram of a terminal according to the first embodiment of the present invention.
  • FIG. 9 is a flowchart illustrating a sensing data providing method according to a first embodiment of the present invention.
  • FIG. 10 is a view schematically showing a connection system according to a second embodiment of the present invention.
  • FIG. 11 is a diagram schematically showing a connection system according to a second embodiment of the present invention.
  • FIGS. 10 and 11 are diagrams for describing in more detail the user terminal illustrated in FIGS. 10 and 11 according to the second embodiment of the present invention.
  • FIG. 13 is a diagram for describing the motion server of FIG. 12 according to a second embodiment of the present invention in more detail.
  • FIG. 14 is a diagram for describing the portable terminal illustrated in FIGS. 10 and 11 in more detail.
  • 15 is a flowchart illustrating a connection method between a user terminal and a mobile terminal according to the second embodiment of the present invention.
  • 16 is a flowchart illustrating a method of connecting a user terminal and a mobile terminal according to the second embodiment of the present invention.
  • 17 is a flowchart illustrating a method of connecting a user terminal and a mobile terminal according to the second embodiment of the present invention.
  • FIG. 18 is a flowchart illustrating that a game is performed by applying a connection method between a user terminal and a portable terminal according to a second embodiment of the present invention.
  • FIG. 19 is a flowchart of a game control method through a mobile communication terminal according to a third embodiment of the present invention.
  • FIG. 21 shows another example of a flow for receiving an input signal according to the implementation of the third embodiment of the present invention.
  • FIG. 22 is a flowchart of a game control method via a mobile communication terminal according to another embodiment of the third embodiment of the present invention.
  • FIG. 23 is a block diagram of a game control device via a mobile communication terminal according to a third embodiment of the present invention.
  • 24 to 30 show examples of services provided to a mobile communication terminal or an external terminal according to each implementation of the third embodiment of the present invention.
  • FIG. 31 shows an example of a data table that can be stored in advance according to each implementation of the third embodiment of the present invention.
  • 32 is a view for explaining the type of sensor included in the terminal according to the fourth embodiment of the present invention.
  • FIG 33 is a communication connection diagram of a system including a device and a terminal according to a fourth embodiment of the present invention.
  • 34 is an internal block diagram of an apparatus according to a fourth embodiment of the present invention.
  • 35 is a diagram for describing a positional relationship when a terminal points to a reference point on a display according to the fourth embodiment of the present invention.
  • 36 is a view illustrating coordinates of a scaling value indicating interpolation of a sensing value according to the fourth embodiment of the present invention.
  • FIG. 37 is a conceptual diagram illustrating that a device according to a fourth embodiment of the present invention communicates with an application.
  • FIG. 38 is a diagram illustrating that a pointing coordinate position on a display moves according to a movement manipulation of a terminal according to the fourth embodiment of the present invention.
  • 39 is a flowchart illustrating a method of using a terminal sensor according to a fourth embodiment of the present invention.
  • FIG. 40 is an internal block diagram of a terminal according to the fourth embodiment of the present invention.
  • 41 is a flowchart illustrating a sensing value providing method according to a fourth embodiment of the present invention.
  • FIG. 42 is a diagram for explaining a game performance system according to a fifth embodiment of the present invention.
  • FIG. 43 is a block diagram illustrating a mobile terminal in FIG. 42.
  • FIG. 44 is a block diagram illustrating a game performing server in FIG. 42.
  • 45 is a flowchart illustrating a game playing process according to the present invention.
  • 46 is a flowchart illustrating an embodiment of a game operation performed by a game client through sensing data in a game playing process according to the present invention.
  • 47 is a flowchart illustrating an embodiment of performing a sensory action by a mobile terminal through feedback in a game playing process of the present invention.
  • FIG. 48 is a diagram illustrating a game performance system according to a sixth embodiment of the present invention.
  • FIG. 49 is a block diagram illustrating a mobile terminal in FIG. 48.
  • FIG. 50 is a block diagram illustrating a game performing server in FIG. 48.
  • 51 is a flowchart illustrating a game execution process according to the present invention.
  • FIG. 52 is a flowchart illustrating a game playing process according to an embodiment of the present invention.
  • 53 is a diagram illustrating an example of a game performance system according to a sixth embodiment of the present invention.
  • 54, 55, and 56 are views illustrating an example of a game screen for explaining a game playing process according to the sixth embodiment of the present invention.
  • a first embodiment of the present invention relates to a technique for utilizing a terminal sensor in an external device.
  • the haptic game means a game that can be experienced and enjoyed. You can enjoy playing sports like ping pong, tennis, boxing and baseball through these immersive games. Sometimes not only is it fun to play, but it also adds functionality such as exercise effects.
  • Two devices are required to play such a game, one is a dedicated game machine capable of driving a game, and the other is a dedicated peripheral device that recognizes a user's movement as a user's operation and delivers it to the game machine.
  • a new game can only be run through a dedicated game machine, so that the game developer or game developer can be subordinated to the producer of the dedicated game machine so that it can't deliver a new game quickly or meet the needs of users such as free games. Is that it does not provide a variety of games.
  • the game must be realized in a device such as a PC or a smart TV that has a platform open instead of a dedicated game machine.
  • a terminal such as a smart phone which is widely popular and has various motion sensors, instead of recognizing user manipulation using a separate dedicated peripheral device, as an input device for user manipulation.
  • Another object of the present invention is to provide a technique for post-processing a sensing value of a terminal sensor to reduce an error of the sensing value.
  • the present invention provides a method for using a terminal sensor, at least one sensing data including at least one sensing value measured from at least one sensor of the terminal.
  • a data receiving unit for receiving at least one sensing data including at least one sensing value measured from at least one sensor of the terminal from at least one communication unit built in the terminal;
  • a data post-processing unit generating at least one correction data by performing a data post-processing process for attenuating a data error with respect to the sensing data;
  • a data providing unit converting the correction data into at least one signal data for use by at least one other device or at least one application.
  • the present invention provides a recording medium for recording a program for executing a method utilizing a terminal sensor.
  • a data receiving function for receiving at least one sensing data including at least one sensing value measured from at least one sensor of the terminal from at least one communication unit built in the terminal;
  • a data post-processing function for generating at least one correction data by performing a data post-processing process for attenuating data errors with respect to the sensed data;
  • a computer-readable recording medium having recorded thereon a program for implementing a data providing function for converting the correction data into at least one signal data for use by at least one other device or at least one application.
  • the present invention provides a method for providing sensing data by a terminal including at least one sensor, the sensing value measuring step of measuring at least one sensing value using the at least one sensor and the at least Provided is a sensing data providing method comprising the step of transmitting the sensing data to at least one device for performing a data post-processing process for attenuating data errors for the sensing data comprising one sensing value.
  • a terminal including at least one sensor, comprising a sensing value measuring unit for measuring at least one sensing value using the at least one sensor and the at least one sensing value
  • a sensing data providing terminal including a sensing value transmitter for transmitting the sensing data to at least one device performing a data post-processing process for attenuating data errors with respect to sensing data.
  • the present invention provides a recording medium in which a program including a program for executing a method for providing sensing data by a terminal including at least one sensor, the at least one sensing value using the at least one sensor.
  • a sensing value transmission function for transmitting the sensing data to at least one device that performs a measurement value measuring function for measuring a measurement value and a data post-processing process for attenuating data errors with respect to sensing data including the at least one sensing value.
  • the device can utilize the sensing value of the terminal sensor.
  • the sensing value error of the terminal sensor is attenuated.
  • 1 is a diagram for describing the types of sensors included in the terminal 1100.
  • the terminal 1100 may be a mobile communication terminal such as a smartphone.
  • the present invention is not limited thereto, and may be other types of terminals such as a tablet PC and personal digital assistants (PDAs).
  • PDAs personal digital assistants
  • the terminal 1100 includes a first sensor 1101, a second sensor 1102, and a third sensor 1103.
  • the terminal 1100 is basically provided with a geomagnetic sensor, an acceleration sensor, a gyro sensor, a camera sensor, and a proximity sensor.
  • Each of the first sensor 1101, the second sensor 1102, and the third sensor 1103 described above may be any one of such a geomagnetic sensor, an acceleration sensor, a gyro sensor, a camera sensor, and a proximity sensor.
  • the first sensor 1101 is a gyro sensor
  • the second sensor 1102 is an acceleration sensor
  • the third sensor 1103 is a geomagnetic sensor
  • FIG. 1C shows the sensing content of the acceleration sensor.
  • the acceleration sensor measures acceleration values of three axes of the X axis 1112, the Y axis 1113, and the Z axis 1111.
  • Figure 1 (b) shows the sensing content of the gyro sensor.
  • the gyro sensor surrounds the X axis 1112 and wraps in the yaw direction 1122, the Y axis 1113, and surrounds the pitch direction and the Z axis 1111.
  • the figure measures the angle value with respect to three directions of a roll direction, respectively.
  • the geomagnetic field sensor measures azimuth angle like the compass 1131.
  • the terminal 1100 is equipped with such a variety of sensors and through the sensed value it is possible to easily and relatively accurately determine the direction of movement, the degree of movement of the terminal 1100.
  • the degree of inclination of the terminal 1100 may be determined through three-axis angle information sensed by the gyro sensor. The information thus obtained is used by applications running in the terminal 1100. For example, a specific application in the terminal 1100 is displayed on the terminal using angle information sensed by a gyro sensor. Control such as changing the direction of.
  • the terminal 1100 equipped with various sensors may recognize various user operations.
  • the terminal 1100 includes a motion sensor such as a gyro sensor
  • the terminal 1100 may recognize a user's motion manipulation.
  • the terminal 1100 retains not only the movement manipulation of the user but also the moving sensing value capable of recognizing the movement manipulation of the user.
  • the first embodiment of the present invention provides a technique of transmitting a sensing value of the terminal 1100 to an external device as described above so that the external device uses the sensing value of the terminal 1100 as a user manipulation input.
  • FIG. 2 is a communication connection diagram of a system 1200 including an apparatus 1210 and a terminal 1100 according to a first embodiment of the present invention.
  • the system 1200 includes a terminal 1100 that includes a sensor and provides a sensing value of the sensor to the device 1210 and an apparatus 1210 that utilizes the sensing value transmitted from the terminal 1100. Included by default.
  • the system 1200 may further include a network 1220 and a mobile communication system 1230.
  • the terminal 1100 transmits a value sensed through an internal sensor to the device 1210.
  • the terminal 1100 may transmit such a sensing value through various paths as shown in FIG.
  • the terminal 1100 may directly transmit a sensing value to the device 1210 without passing through another communication network.
  • the terminal 1100 may use a short range communication method 1240 such as Wi-Fi, Bluetooth, or infrared communication.
  • the terminal 1100 may sense using the short range communication method 1240.
  • the value can be passed to the device 1210.
  • the terminal 1100 when the terminal 1100 is a mobile communication terminal, the terminal 1100 transmits data on a sensing value to the base station 1230 according to the mobile communication method 1241, and the base station 1230 transmits the data for the network 1220. May be delivered to the device 1210.
  • the terminal 1100 may transmit data on the sensed value to the network 1220 through the wireless network communication, and the network 1220 may re-install the data. 1210.
  • the device 1210 may also send data to the terminal 1100 in the reverse path of the above-described path.
  • device 1210 may transmit data that it wants to send to terminal 1100 using short-range communication method 1240, and device 1210 may also transmit data that it wants to send to network 1220 and the network ( The 1210 may transmit such data to the terminal 1100 through the base station 1230 to the mobile communication method 1241 or the network 1210 may transfer the data to the terminal 1100 through wireless network communication.
  • the data is not unilaterally transmitted from the terminal 1100 to the device 1210, but the device 1210 may transmit data to the terminal 1100 as described above. If the 1200 includes a haptic game, the device 1210 may attempt to increase the game sensation by making the user feel vibration in a specific situation during the game. In this case, the device 1210 may transmit the vibration signal data to the terminal 1100, and the terminal 1100 may receive the vibration signal data and control the terminal 1100 to vibrate so that the user can feel the vibration during the game. have.
  • the above-described apparatus 1210 may include a general PC such as a general desktop or a notebook, and may include a mobile terminal such as a smart phone, a tablet PC, a personal digital assistant (PDA), a mobile communication terminal, and the like. Rather, it should be broadly interpreted as any electronic device capable of communicating with the terminal 1100 while being separated from the terminal 1100.
  • a general PC such as a general desktop or a notebook
  • a mobile terminal such as a smart phone, a tablet PC, a personal digital assistant (PDA), a mobile communication terminal, and the like.
  • PDA personal digital assistant
  • the network 1220 is a network connecting the device 1210 and another device (base station, terminal 1100, etc.), and a closed network such as a local area network (LAN) and a wide area network (WAN). It may be, but may be an open network such as the Internet (Internet).
  • the Internet includes various services existing in the TCP / IP protocol and its upper layers such as HTTP (HyperText Transfer Protocol), Telnet, File Transfer Protocol (FTP), Domain Name System (DNS), Simple Mail Transfer Protocol (SMTP), The global open computer network architecture that provides Simple Network Management Protocol (SNMP), Network File Service (NFS), and Network Information Service (NIS).
  • FIG 3 is an internal block diagram of an apparatus 1210 according to the first embodiment of the present invention.
  • the apparatus 1210 may include a data receiver 1310 which receives at least one sensing data including at least one sensing value measured by at least one sensor of the terminal 1100 from the terminal 1100.
  • At least one data post-processing unit 1320 for performing at least one correction data by performing a data post-processing process for attenuating data errors with respect to the sensed data and at least one other device or at least one application can use the correction data.
  • a data provider 1330 for converting and providing one signal data.
  • the terminal 1100 measures one sensing value with one sensor, configures one sensing data, and transmits the sensing data to the device 1210.
  • the data receiver 1310 may receive one sensing data including one sensing value corresponding thereto.
  • the terminal 1100 may measure one sensing value using a plurality of sensors.
  • the acceleration sensor measures the degree of movement but also measures the angle with respect to the roll direction and the pitch direction of the terminal 1100. Therefore, by using both the acceleration sensor and the gyro sensor, the angle with respect to the roll direction and the pitch direction may be measured as one sensing value.
  • one sensing data may include one sensing value, but one sensing data may include a plurality of sensing values.
  • the terminal 1100 may combine the sensing value of the acceleration sensor and the gyro sensor into one sensing data and then transmit the combined data.
  • the plurality of sensing values may be divided into a plurality of sensing data, respectively, and the terminal 1100 may transmit the data reception unit 1310.
  • the data post-processor 1320 performs a data post-processing process for attenuating data errors with respect to the sensed data.
  • the sensing value measured by the sensor of the terminal 1100 includes various noises.
  • the sensor of the terminal 1100 does not have a special purpose of measuring a user's movement or the like as a dedicated peripheral device used in a conventional game machine, the accuracy may be lowered and measurement errors may occur.
  • the device 1210 may not use the original sensing value including the noise or measurement error produced by the terminal 1100. What the data post-processor 1320 performs is to reduce such noise or measurement error.
  • the sensing data received by the data receiver 1310 may include noise or measurement errors as described above, but may further include various errors in the process of receiving the sensing data from the terminal 1100. .
  • the interval between the measurement time of the sensing value and the sensing data reception time of the data receiver 1310 should be constant or very short.
  • the data receiver 1310 may be a terminal ( If data is missing or a data delay occurs in the process of receiving the sensing data from 1100, this may also be recognized as a data error of the sensing data. This error may be referred to as a communication error.
  • the sensing data received by the data receiver 1310 is accompanied by a data error including various errors such as noise, measurement error, and communication error, and the data post-processing process for attenuating such data error by the data post-processor 1320. Should be done.
  • the data post-processing process in the data post-processor 1320 may include a sub-process for filtering the sensing value included in the sensing data.
  • the filtering sub process may perform low pass filtering on the sensing value to remove noise.
  • the high frequency noise is likely to be caught in the sensing value.
  • the subprocess filtering to remove such high frequency noise may perform low pass filtering.
  • the filtering sub process removes the gravity acceleration component from the sensing value measured from the acceleration sensor.
  • the sensing value may be subjected to high pass filtering. Gravity acceleration is nearly constant at similar altitudes, which corresponds to very low frequencies.
  • the correction of the sensing values will be described. Indicating the same indicator means that both the sensing value measured by the gyro sensor and the sensing value measured by the geomagnetic sensor are displayed on the same indicator that the angle of the terminal 1100 is used. In this case, if one sensing value of the two sensing values is more accurate than the other sensing value, the other sensing value may be corrected based on one sensing value.
  • the data receiver 1310 receives at least one sensing data including a first sensing value measured from the first sensor 1101 of the terminal 1100 and a second sensing value measured from the second sensor 1102. Assuming one case, it demonstrates.
  • the data postprocessor 1320 determines the difference between the first sensing value and the second sensing value as a sensing value error, and attenuates the data error by recognizing some or all of the sensing value errors as a data error for the first sensing value.
  • a data post-processing process can be performed.
  • the data postprocessor 1320 may determine the first sensing value and the second sensing value. A part of the sensing value error that is a difference is recognized as a data error with respect to the first sensing value.
  • the first sensor having a low accuracy may be a gyro sensor
  • the second sensor having a relatively high accuracy may be an acceleration sensor or a geomagnetic sensor.
  • a gyro sensor a relative value obtained by accumulating coordinate increments and a reference coordinate value is measured. In this case, when the reference coordinate value is wrong, an error may occur in the sensing value. Even if there is an error in the coordinate increment, an error occurs in the sensed value.In this case, the relative value is more lethal so the error continues to accumulate. Can be.
  • geomagnetic sensors are more accurate because they provide absolute values by sensing absolute coordinates relative to the North Pole, such as a compass. Accelerometer can measure the relative value when measuring the degree of movement, but the accuracy may be low. However, when measuring the angle such as the gyro sensor, the acceleration sensor can measure the absolute value and the accuracy is high.
  • the question of why not use the high-accuracy sensed value can be questioned.
  • Low-accuracy sensing values usually produce fast sensing dynamics, allowing quick production of sensing data.
  • a sensed value with high accuracy may measure its value only when the dynamics are slow and the terminal 1100 is in a stable state to some extent. For this reason, the device 1210 using the sensing value of the terminal 1100 or the terminal 1100 uses a first sensing value with low accuracy but a high dynamic speed and corrects it to a second sensing value with high accuracy.
  • the data post-processing process generates a first sensor correction value by adding or subtracting a part of a sensing value error that is a difference between the first sensing value and the second sensing value to the first sensing value, or corrects the previous first sensor.
  • the method may further include a correction subprocess configured to generate a first sensor correction value by adding or subtracting a part of the sensing value error to the value, and the correction data may be generated based on the first sensor correction value.
  • the data post processor 1320 basically processes the data recursively. First, a part of the sensing value error is added to or subtracted from the previous first sensor correction value to generate the first sensor correction value.
  • the first sensor correction value is generated by adding or subtracting a part of the sensing value error to the first sensor correction value at a time. Initially, the first sensing value is used because there is no first sensor correction value.
  • adding the sensing value error to the previous first sensor correction value is vice versa.
  • the sensing value error is subtracted from the previous first sensor correction value.
  • the above-described correction subprocess may use the first division value or the error division value obtained by dividing the sensing value error by the error division correction number as a part of the sensing value error. To the previous first sensor calibration value,
  • the data post-processing process may repeatedly perform the correction subprocess by an error division correction number of times according to a predetermined subprocess execution period to generate the correction data for each subprocess execution.
  • the value A should be replaced with a more accurate B, where a large difference between A and B results in a sudden change in value from the user's point of view (e.g., a user using a haptic game that receives a signal from the device 1210). You may feel unnatural.
  • the data post processor 1320 divides and corrects the BA value for a predetermined time.
  • the BA value is 100
  • calibrating 10 times by 10 through a high-resolution timer that is called periodically eliminates the unnaturalness that a user can feel.
  • the aforementioned error division correction number is 10.
  • the data postprocessor 1320 may control the above-described subprocess execution cycle to be shorter than a cycle in which the data receiver 1310 receives the sensing data. This is to make as much correction as possible before the next sensing data is received.
  • the data post processor 1320 may have a magnitude of the motion sensing value in the above-described correction subprocess. It is possible to adjust the ratio of the sensing value error that is added or subtracted accordingly.
  • the motion sensor may be an acceleration sensor.
  • the data post-processing unit 1320 may include a roll direction component and a pitch component in a roll direction and pitch direction with respect to the first sensing value during a sensing value error when the first sensor is a gyro sensor and the second sensor is an acceleration sensor.
  • the sensor detects a yaw direction component as a first sensing value.
  • the data post-processing process may be performed to reduce the data error by recognizing it as a yaw direction data error. As described with reference to FIG.
  • the yaw direction component for the sensing value measured by the gyro sensor is corrected using the sensing value of the geomagnetic sensor and the roll direction and pitch direction component Is a calibration using an acceleration sensor.
  • the data post-processing process in the data post-processing unit 1320 further includes a stable state determination subprocess and determines that the second sensor is in the stable state through the stable state determination subprocess for the second sensing value. If only a part of the sensing value error that is the difference between the first sensing value and the second sensing value can be recognized as a data error for the first sensing value.
  • the second sensing value is relatively more accurate, it is explained that the first sensing value is used due to the slow dynamic. As a result, the second sensing value may be more accurate in the stable state, but may be less accurate than the first sensing value in the other state. Therefore, the first sensing value may be corrected using the second sensing value only when the second sensing value is in a stable state.
  • a stable state means that a value in a certain range is constantly maintained or a constant rate of change is maintained. Accordingly, the stable state determination subprocess determines whether the second sensing value is maintained within a predetermined range for a predetermined time or a change rate of a predetermined range is maintained for a predetermined time, based on the history information of the second sensing value. You can determine if you are in a stable state.
  • the data post processor 1320 performs a data post-processing process by using a sensing value error that is a difference between the first sensing value and the second sensing value. It was. Below, when the data receiver 1310 receives two sensing values as described above, the data postprocessor 1320 performs the data post-processing process by using a correction value error that is a difference between the first sensor correction value and the second sensing value. This will be described later.
  • the data post-processing unit 1320 generates correction data including the first sensor correction value through the data post-processing process, and the data post-processing process includes a correction value error that is a difference between a previous first sensor correction value and the second sensing value. Some or all of these may be recognized as a data error with respect to the first sensor correction value, and the control may be controlled to reduce the data error.
  • the first sensor correction value is generated through the data post-processing process, and the difference between the first sensor correction value previously generated and the second sensing value received in the step is performed by performing the next data post-processing process.
  • the error is determined and some or all of the correction value errors are recognized as data errors with respect to the first sensor correction value.
  • the first sensor correction value may be generated by adding or subtracting a predetermined ratio of the above-described correction value error to the previous first sensor correction value.
  • the data error with respect to the sensing data may include noise, measurement error, communication error, and the like.
  • a configuration for reducing noise and measurement error of data error has been described.
  • sensing data may be received from the terminal 1100 at least 50 times per second.
  • the communication state should be good.
  • the terminal 1100 serves a different purpose, such a high speed data communication may not be performed by another communication request. In other words, the number of sensing data reception may be reduced or some data may be lost due to a poor communication state. In this case, a user who uses a haptic game or the like may have an unnatural feeling as if the input is cut off.
  • the data post-processing process in the data post-processing unit 1320 is performed with the previous sensing value included in the previous sensing data.
  • the sensing values included in the sensing data may be interpolated to generate a plurality of interpolation correction values, and the correction data including the interpolation correction values may be generated at interpolation time intervals.
  • FIG. 4 is a coordinate display diagram of a sensing value indicating that the sensing value is interpolated.
  • a sensing value corresponding to reference numeral 1401 is first identified through sensing data.
  • the next sensing data was then received over a certain time interval.
  • the sensing value included in the late sensing data received late in this manner corresponds to the reference number 1405.
  • the distance between the reference numbers 1401 and 1405 is too long so that the user may feel as if the coordinates have jumped.
  • the data post-processor 1320 interpolates the previous sensing value 1401 included in the previous sensing data and the sensing value 1405 included in the sensing data to process a plurality of interpolation correction values 1402, 1403, and 1404. And generate correction data including interpolation correction values 1402, 1403, and 1404 at interpolation time intervals.
  • correction data is generated at an interpolation time interval. This interpolation time interval should be shorter than the interval at which the data receiver 1310 receives sensing data.
  • the correction data generated by the data post processor 1320 is converted into at least one signal data by the data provider 1330 and provided to at least one other device or at least one application.
  • the data providing unit 1330 will be described for providing the above-described signal data to any one application.
  • FIG 5 is a conceptual diagram illustrating that the device 1210 communicates with an application according to a first embodiment of the present invention.
  • the device 1210 is named motion server 1210, and the application is named haptic game 1510. Both the motion server 1210 and the haptic game 1510 are perceived as a kind of program and may appear to be mounted on one piece of hardware.
  • the motion server 1210 may post-process the sensing values received from the terminal 1100 to generate correction data with accurate and stable values, and provide the corrected data to the game-like game 1510.
  • the motion server 1210 may provide various methods for providing correction data to the haptic game 1510, but a message transmission or a memory sharing method may be used.
  • the haptic game 1510 may recognize the correction data provided from the motion server 1210 as if it is a user manipulation signal input through a mouse or a keyboard so that the game can be controlled.
  • FIG. 6 is a diagram illustrating the operation of a baseball bat using the terminal 1100 in the haptic game 1510.
  • the batter tries to swing the bat like an arrow 1601.
  • the user manipulates the terminal 1100 to have a shape 1602 such as a bat swing direction (arrow, 1601) of the batter on the screen of the haptic game 1510.
  • the terminal 1100 transmits the motion sensing value by the user manipulation to the motion server 1210 as sensing data
  • the motion server 1210 may include a data receiver 1310, a data post-processor 1320, and a data provider ( It is transmitted to the haptic game 1510 via the 1330 and the haptic game 1510 recognizes such a user manipulation and controls the batter to swing as shown by the arrow 1601 in the game.
  • the haptic game 1510 may transmit predetermined data to the motion server 1210.
  • the motion server 1210 may transfer the received data to the terminal 1100.
  • the motion server 1210 receives the vibration signal data from the haptic game 1510 and transmits the vibration signal data to the terminal 1100 to further control the vibration signal transmission unit (not shown) that controls the terminal 1100 to vibrate. It may include.
  • the device 1210 receives vibration signal data from another device or an application that converts correction data into signal data, and delivers the vibration signal data to the terminal 1100 to provide the terminal 1100.
  • the device 1210 May further include a vibration signal transmission unit (not shown) for controlling the vibration operation.
  • the terminal sensor utilization apparatus 1210 according to the first embodiment of the present invention has been described.
  • a method of using the terminal sensor by the apparatus 1210 according to the first embodiment of the present invention will be described. do.
  • the method of utilizing the terminal sensor according to the first embodiment of the present invention, which will be described later, may be performed by the apparatus 1210 according to the embodiment of the present invention shown in FIG. 3.
  • FIG. 7 is a flowchart illustrating a method of using a terminal sensor according to a first embodiment of the present invention.
  • the device 1210 receives at least one sensing data including at least one sensing value measured from at least one sensor of the terminal 1100 from the terminal 1100 (S1700, data receiving step). ).
  • the device 1210 generates at least one correction data by performing a data post-processing process for attenuating data errors with respect to the sensed data (S1702, data post-processing step).
  • the data post-processing process may include a sub-process for filtering the sensing value included in the sensing data.
  • the filtering sub process may perform low pass filtering on the sensing value to remove noise, and includes the sensing value measured from the acceleration sensor of the terminal 1100 in the data receiving step S1700.
  • the filtering subprocess may perform high pass filtering on the sensing value to remove the gravity acceleration component from the sensing value.
  • At least one sensing data including a first sensing value measured by a first sensor of the terminal 1100 and a second sensing value measured by a second sensor is received, and a data post-processing step
  • a partial or all of the sensing value errors which are the difference between the first sensing value and the second sensing value, may be recognized as data errors with respect to the first sensing value to perform a data post-processing process for attenuating such data errors.
  • the data post-processing process generates a first sensor correction value by adding or subtracting a part of the sensing value error to the first sensing value, or adds or subtracts a part of the sensing value error to the previous first sensor correction value to adjust the first sensor correction value.
  • the apparatus may further include a correcting sub process, and the correction data may be generated based on the first sensor correction value.
  • the correction subprocess uses the error split value obtained by dividing the sensing value error by the error division correction number as a part of the sensing value error, and then post-processes the data.
  • the process may repeat the correction subprocess by the number of error division corrections in accordance with a predetermined subprocess execution period to generate correction data for each subprocess execution.
  • the correction subprocess is configured to a size of the motion sensing value. It is also possible to adjust the ratio of the sensing value error that is added or subtracted accordingly.
  • the roll direction component and the pitch component of the sensing value error are measured in the roll direction with respect to the first sensing value in the data post-processing step S1702.
  • the data post-processing process is performed to attenuate the data error by recognizing the pitch direction data error, and when the first sensor is a gyro sensor and the second sensor is a geomagnetic sensor, the sensing value error in the data post-processing step (S1702).
  • the yaw direction component may be recognized as a yaw direction data error with respect to the first sensing value, and a data post-processing process may be performed to reduce the data error.
  • the data post-processing process further includes a stable state determination subprocess, and the second sensor is in the stable state through the stable state determination subprocess for the second sensing value. Only when it is determined, part or all of the sensing value error that is the difference between the first sensing value and the second sensing value may be recognized as a data error with respect to the first sensing value.
  • At least one sensing data including a first sensing value measured by a first sensor of the terminal 1100 and a second sensing value measured by a second sensor is received, and a data post-processing step
  • correction data including the first sensor correction value is generated through the data post-processing process, and the data post-processing process may include some or all of the correction value error that is a difference between the previous first sensor correction value and the second sensing value. May be controlled to attenuate the data error by recognizing it as a data error with respect to the first sensor correction value.
  • the data post-processing process may generate a first sensor correction value by adding or subtracting a predetermined ratio of the correction value error to the previous first sensor correction value.
  • the data post-processing process includes sensing values included in the previous sensing data and sensing values included in the sensing data.
  • the interpolation process may generate a plurality of interpolation correction values, and generate correction data including respective interpolation correction values at interpolation time intervals.
  • the device 1210 converts and provides correction data into at least one signal data that can be used by at least one other device or at least one application (S1704, data providing step).
  • the device 1210 receives vibration signal data from another device or application that converts correction data into signal data and transmits the vibration signal data to the terminal 1100 to control the terminal 1100 to vibrate. Not shown) may be further included.
  • the method of using the terminal sensor according to the embodiment of the present invention has been described as being performed by the same procedure as in FIG. 7, but this is only for convenience of description and within the scope not departing from the essential concept of the present invention.
  • the execution procedure of each step may be changed, two or more steps may be integrated, or one step may be performed in two or more steps.
  • FIG 8 is an internal block diagram of the terminal 1100 according to the first embodiment of the present invention.
  • the terminal 1100 attenuates a data error with respect to sensing data including at least one sensing value and a sensing value measuring unit 1810 that measures at least one sensing value using at least one sensor.
  • a sensing value transmitter 820, a gyro sensor 1101, an acceleration sensor 1102, an earth magnetic field sensor 1103, and the like that transmit the sensing data to at least one device that performs a data post-processing process.
  • the gyro sensor 1101, the acceleration sensor 1102, and the geomagnetic field sensor 1103 are examples of sensors that the terminal 1100 may include, and the first embodiment of the present invention is not limited thereto.
  • 1100 may include only one of the gyro sensor 1101, the acceleration sensor 1102, and the geomagnetic sensor 1103, and may also include other types of sensors such as a proximity sensor (not shown). There may be.
  • FIG. 9 is a flowchart illustrating a sensing data providing method according to a first embodiment of the present invention.
  • the terminal 1100 performs a sensing value measuring step (S1900) of measuring at least one sensing value by using at least one sensor, and performs data on sensing data including at least one sensing value.
  • a sensing value transmitting step of transmitting sensing data to at least one device performing a data post-processing process for reducing an error may be performed.
  • the terminal 1100 transmits a sensing value of an embedded sensor to the device 1210, and the device 1210 receives the sensing value to perform a data post-processing process. It will then be provided to other devices or applications.
  • One embodiment of terminal 1100 may be understood to operate as a device corresponding to device 1210 in such a system 1200.
  • the terminal 1100 is not limited to the apparatus 1210 according to the first embodiment of the present invention described with reference to FIGS. 1 to 7, and the sensing value measuring unit 1810 described with reference to FIG. 8 is described.
  • all devices including at least one sensor of the sensing value transmitter 1820 should be interpreted as the terminal 1100 according to an embodiment of the present invention.
  • the method of using a terminal sensor and a method of providing sensing data include an application basically installed in the device 1210 and the terminal 1100 (which is included in a platform that is basically installed in a terminal or an operating system). May be a program included in the back or the like).
  • the operating system of the device 1210 and / or the terminal 1100 may be an operating system such as a window or a Macintosh installed in a general PC such as a desktop, or a mobile terminal such as a smartphone or a tablet PC. It may also be a mobile-only operating system such as iOS and Android installed.
  • the method of using the terminal sensor according to the above-described embodiment of the present invention is an application (ie, a program) that is basically installed in the device 1210 and the sensing data providing method is installed in the terminal 1100 or directly by a user. It may be implemented in a computer-readable recording medium, such as the device 1210 / terminal 1100.
  • the program implementing the method of using a terminal sensor according to an embodiment of the present invention the data receiving function, the sensing data receiving at least one sensing data including at least one sensing value measured from at least one sensor of the terminal from the terminal At least one signal data that can be used by at least one other device or at least one application to perform the data post-processing process to reduce the data error for the at least one correction data to generate at least one correction data.
  • all functions corresponding to the terminal sensor utilization method according to the embodiment of the present invention described above with reference to FIGS. 1 to 7 may be executed.
  • all functions corresponding to the method for providing sensing data according to the above-described embodiments of the present invention with reference to FIGS. 8 to 9 may be executed.
  • Such a program is recorded on a recording medium readable by a computer and executed by a computer so that the above functions can be executed.
  • the above-described program may be read by C, C ++, Code may be coded in a computer language such as JAVA or machine language.
  • Such code may include a function code associated with a function or the like that defines the above-described functions, and may include execution procedure-related control code necessary for a processor of the computer to execute the above-described functions according to a predetermined procedure.
  • the code may further include memory reference-related code for additional information or media required for a processor of the computer to execute the above-described functions at which location (address address) of the computer's internal or external memory. .
  • the code indicates that the processor of the computer is a communication module of the computer (eg, a wired and / or wireless communication module).
  • the communication code may further include communication related codes such as how to communicate with any other computer or server in the remote, and what information or media should be transmitted and received during communication.
  • codes and code segments associated therewith may be used in consideration of a system environment of a computer that reads a recording medium and executes the program. It may be easily inferred or changed by.
  • a computer-readable recording medium having recorded a program as described above may be distributed to computer systems connected through a network so that computer-readable codes may be stored and executed in a distributed manner.
  • any one or more of the plurality of distributed computers may execute some of the functions presented above, and transmit the results to one or more of the other distributed computers, and receive the results.
  • the computer may also execute some of the functions presented above, and provide the results to other distributed computers as well.
  • a computer-readable recording medium having recorded thereon a program for executing the terminal sensor utilization method and the sensing data providing method according to an embodiment of the present invention, for example, ROM, RAM, CDROM, magnetic tape , Floppy disks, optical media storage.
  • the computer-readable recording medium recording the application, which is a program for executing the terminal sensor utilization method and the sensing data providing method according to an embodiment of the present invention
  • the application store server Application Store Server
  • the storage medium e.g., hard disk, etc. included in the Application Provider Server, including the associated Web Server, etc., or the application providing server itself, or another computer on which the program is recorded or the storage thereof. It may be a medium.
  • a computer capable of reading a recording medium recording an application which is a program for executing the terminal sensor utilization method and the sensing data providing method according to the first embodiment of the present invention, is not only a general PC such as a general desktop or a laptop, but also a smart phone. It may include a mobile terminal, such as a tablet PC, personal digital assistants (PDAs), and mobile communication terminals, as well as to be interpreted as any computing device.
  • a general PC such as a general desktop or a laptop
  • PDAs personal digital assistants
  • mobile communication terminals as well as to be interpreted as any computing device.
  • a computer capable of reading a recording medium recording an application that is a program for executing the data providing method according to the first embodiment of the present invention is a mobile device such as a smart phone, a tablet PC, a personal digital assistant (PDA) and a mobile communication terminal, etc.
  • the mobile terminal may download and install the corresponding application from an application providing server including an application store server and a web server.
  • the mobile terminal may be downloaded from the application providing server to a general PC and then through a synchronization program. It may be installed in a mobile terminal.
  • the second embodiment of the present invention relates to a method for connecting a user terminal and a portable terminal, a system for implementing the same, and a recording medium. More specifically, a method for connecting a user terminal and a portable terminal without inputting an IP address, A system and recording medium for implementation.
  • a haptic game is a game that a person can experience and enjoy directly, for example, a game that can be enjoyed as if playing sports such as table tennis, tennis, boxing, and baseball.
  • Haptic games began to become popular due to the development of technology that allows users to interact with the game.
  • a game device and peripherals are required.
  • a peripheral device eg, a steering wheel, a joystick, etc.
  • a dependent interface device is required.
  • a dependent interface equipment a method of connecting a portable terminal such as a smart phone and a computer to enjoy a haptic game is proposed.
  • the user terminal receives the IP address of the user terminal and stores the address server or the wireless router that receives the IP address of the user terminal. Receiving an IP address of the terminal; And accessing the user terminal using the received IP address.
  • a method of accessing a user terminal and a portable terminal includes the steps of: transmitting, by a user terminal, an IP address of the user terminal to an address server; And receiving a connection signal from the mobile terminal that has received the IP address from the address server, and connecting to the mobile terminal.
  • a method of accessing a user terminal and a portable terminal includes the steps of broadcasting, by a user terminal, at least one IP address and user ID of the user terminal to at least one portable terminal connected to a wireless router; And when the at least one portable terminal requests an access to the received IP address by determining that the received user ID and the user ID input to the at least one portable terminal match, the at least one portable terminal and the at least one portable terminal. Characterized in that it comprises the step of connecting.
  • a connection system between a user terminal and a portable terminal includes a user terminal for providing a game; An address server for receiving an IP address from the user terminal and storing the IP address; And a portable terminal accessing the address server after executing an application to receive the IP address, and then terminating the connection with the address server and requesting access to the user terminal using the IP address.
  • a connection system between a user terminal and a portable terminal includes a user terminal for providing a game; A wireless router that receives an IP address and a user ID from the user terminal and broadcasts it to at least one connected mobile terminal; And at least one portable terminal connected to the wireless router, receiving and storing the IP address and the user ID, and requesting an access to the user terminal using the IP address.
  • the portable terminal receives the IP address of the user terminal through an address server that receives and stores the IP address of the user terminal or a wireless router that receives the IP address of the user terminal. Doing; And connecting to the user terminal using the received IP address.
  • a recording medium comprising: transmitting, by a user terminal, an IP address of the user terminal to an address server; And when the access signal is received from the portable terminal that has received the IP address from the address server, connecting with the portable terminal to record a program for implementing the connection method between the user terminal and the portable terminal.
  • a recording medium comprising: broadcasting, by a user terminal, at least one IP address and user ID of the user terminal to at least one portable terminal connected to a wireless router; And when the at least one portable terminal requests an access to the received IP address by determining that the received user ID and the user ID input to the at least one portable terminal match, the at least one portable terminal and the at least one portable terminal. And recording a program for implementing a connection method of the user terminal and the portable terminal, comprising the step of connecting.
  • the portable terminal has an effect of being able to connect even if the portable terminal does not directly know the IP address of the user terminal.
  • 'communication', 'communication network' and 'network' may be used as the same meaning.
  • the three terms refer to wired and wireless local and wide area data transmission and reception networks capable of transmitting and receiving files between a user terminal, a terminal of other users, and a download server.
  • the access system 210 includes a user terminal 2100, an address server 2200, and a portable terminal 2300.
  • the user terminal 2100 includes all of the devices capable of providing a game such as a computer, a tablet computer, a server, and the like, and the mobile terminal 2300 may be a portable wireless communication device capable of playing games (all devices) Smart phones, tablet computers, etc.).
  • the user terminal 2100, the address server 2200, and the portable terminal 2300 may be connected to each other by a network.
  • the user terminal 2100 transmits an IP address to the address server 2200, and the address server 2200 receives and stores it. Thereafter, when the application of the portable terminal 2300 is executed and the portable terminal 2300 accesses the address server 2200 through the application, the address server 2200 sends the IP address to the portable terminal 2300. Can transmit
  • the portable terminal 2300 may terminate the connection with the address server 2200 and use the same to access the user terminal 2100. A more detailed description thereof will be described later.
  • the access system 210 ' includes a user terminal 2100, a wireless router 2200', and a plurality of portable terminals 2300 '.
  • the plurality of portable terminals 2300 ′ may include first portable terminals 2310 through n-th portable terminals 23n0.
  • the user terminal 2100 includes all of the devices capable of providing a game such as a computer, a tablet computer, a server, and the plurality of portable terminals 2300 ′ are portable wireless communication and can enjoy a game.
  • all devices eg, smartphones, tablet computers, etc.
  • the first portable terminal 2310 may correspond to a smartphone and the second portable terminal 2320 may correspond to a tablet computer, and the first portable terminal 2310 may correspond to a smartphone and a second portable terminal 2320. This may correspond to a smartphone.
  • the user terminal 2100 broadcasts an IP address and a user ID to a plurality of portable terminals 2300 'connected to the wireless router 2200' through the wireless router 2200 'at regular intervals. do.
  • the plurality of portable terminals 2300 ′ receive and store the IP address and the user ID.
  • the plurality of portable terminals 2300 ' checks whether the user ID information received and stored through the application and the IDs input to each of the plurality of portable terminals 2300' match and match the plurality of portable terminals. Based on the access signal input to each of the 2300 ', the received IP address and the user terminal 2100 may be connected. A more detailed description thereof will be described later.
  • FIG. 12 is a diagram for describing the user terminal illustrated in FIGS. 10 and 11 in more detail.
  • the user terminal 2100 includes a game management module 2110, a motion server 2120, and a database 2130.
  • the game management module 2110 manages all kinds of games provided by the user terminal 2100 and reflects the information provided from the motion server 2120 to play the game. Let's proceed.
  • the game management module 2110 may store data of a game provided in the database 2130.
  • the motion server 2120 communicates with the portable terminal 2300 or 2300 'and receives information sensed by the portable terminal 2300 or 2300' from the portable terminal 2300 or 2300 '.
  • the motion server 2120 may provide the portable terminal 2300 or 2300 'with processing information corrected and processed by the motion server 2120 for information sensed by the portable terminal 2300 or 2300'. have.
  • the motion server 2120 may store the sensing information and the processing information received from the portable terminal 2300 or 2300 'in the database 2130.
  • FIG. 13 is a diagram for describing the motion server of FIG. 12 in more detail.
  • the motion server 2120 includes a communication module 2122, a correction module 2124, and a calculation module 2126.
  • the communication module 2122 exchanges data with the portable terminal 2300 or 2300 '.
  • the correction module 2124 When the correction module 2124 receives the sensing information from the portable terminal 2300 or 2300 ', the correction module 2124 corrects (or filters) the sensing information and provides the game management module 2110 shown in FIG. 12. .
  • the calculation module 2126 performs a function of processing the sensing information received from the portable terminal 2300 or 2300 '.
  • the sensing information is static acceleration of the portable terminal 2300 or 2300 '(for example, gravity acceleration received when the portable terminal 2300 or 2300' is stationary), dynamic acceleration (for example, portable terminal 2300 or 2300). '), The speed change when moving), the rotational angular velocity and the azimuth information is included (fusion) to process the function (fusion).
  • FIG. 14 is a diagram for describing the portable terminal illustrated in FIGS. 10 and 11 in more detail.
  • the portable terminal 2300 includes an acceleration sensor 2312, a gyro sensor 2314, an earth magnetic field sensor 2316, and a transmission / reception module 2318.
  • the acceleration sensor 2312 measures a function of measuring static acceleration corresponding to gravitational acceleration received when the mobile terminal 2300 is stationary and dynamic acceleration, which is a change in speed when the mobile terminal 2300 moves. Perform.
  • the gyro sensor 2314 performs a function of measuring the rotational angular velocity of the mobile terminal 2300, and the geomagnetic field sensor 2316 performs a function of obtaining absolute azimuth information such as a compass.
  • the transmission / reception module 2318 performs a function of exchanging data for communication with the user terminal 2100 of FIG. 12, and more specifically, the communication module 2122 inside the motion server 2120 of the user terminal 2100. ) To send and receive data.
  • the transmission / reception module 2318 may include the dynamic acceleration and the static acceleration measured by the acceleration sensor 2312, the rotational angular velocity measured by the gyro sensor 2314, and the orientation information measured by the geomagnetic field sensor 2316. Send to 2100.
  • connection method 15 is a flowchart illustrating a connection method between a user terminal and a mobile terminal according to the second embodiment of the present invention.
  • the connection method of the user terminal and the portable terminal may be performed by the access system 210 or 210 'illustrated in FIG. 10 or 11.
  • At least one portable terminal receives an IP address of the user terminal through an address server or a wireless router (S210).
  • the address server receives and stores the IP address of the user terminal.
  • the user terminal broadcasts an IP address to the portable terminal connected to the wireless router through the wireless router.
  • the mobile terminal accesses the user terminal using the received IP address (S220).
  • 16 is a flowchart illustrating a method of connecting a user terminal and a mobile terminal according to the second embodiment of the present invention.
  • the connection method of the user terminal and the portable terminal may be performed by the access system 210 shown in FIG.
  • the method of connecting the user terminal and the portable terminal illustrated in FIG. 16 corresponds to an embodiment of the method of connecting the user terminal and the portable terminal of FIG. 15.
  • the user terminal 2100 transmits an IP address to the address server 2200 (S2110).
  • An application of the portable terminal 2300 is executed and the portable terminal 2300 accesses the address server 2200 through the application (S2120).
  • the application includes an application for connecting to and receiving data from the address server 2200 and the user terminal 2100.
  • the address server 2200 transmits the received IP address to the mobile terminal 2300 (S2130).
  • the portable terminal 2300 terminates the connection with the address server 2200 (S2140), and accesses the user terminal 2100 using the received IP address (S2150).
  • FIG. 17 is a flowchart illustrating a method of connecting a user terminal and a mobile terminal according to the second embodiment of the present invention.
  • the connection method of the user terminal and the portable terminal may be performed by the access system 210 ′ shown in FIG. 11.
  • the method of connecting the user terminal and the portable terminal illustrated in FIG. 16 corresponds to an embodiment of the method of connecting the user terminal and the portable terminal of FIG. 15.
  • the portable terminals 2300 store the received IP address and user ID information (S2220).
  • FIG. 18 is a flowchart illustrating that a game is performed by applying a connection method between a user terminal and a portable terminal according to a second embodiment of the present invention.
  • the portable terminal 2300 or 2300 ′ of FIG. 10 or 11 may access the user terminal 2100 using the IP address received by the above-described method, and when the connection is established, the portable terminal 2300 or 2300 ′ may provide sensing information to the user terminal 2100 (S2310).
  • the user terminal 2100 processes and corrects the received sensing information and reflects it in the game (S2320).
  • processing and correction may be performed by the correction module 2124 and the calculation module 2126 of the motion server 2120 in the user terminal 2100 described with reference to FIG. 13, as described above.
  • the portable terminal has an effect of being able to access even if the IP address of the user terminal is not directly known.
  • the method according to the second embodiment of the present invention described above may be executed by an application basically installed in the terminal (which may include a program included in a platform or an operating system basically mounted in the terminal), and the user May be executed by an application (ie, a program) installed directly on the terminal through an application providing server such as an application store server, an application, or a web server related to the corresponding service.
  • an application ie, a program installed directly on the terminal through an application providing server such as an application store server, an application, or a web server related to the corresponding service.
  • the method according to the second embodiment of the present invention described above is implemented as an application (i.e., a program) that is basically installed in a terminal or directly installed by a user, and is recorded on a computer-readable recording medium such as a terminal. Can be.
  • Such a program is recorded on a recording medium readable by a computer and executed by a computer so that the above functions can be executed.
  • the above-described program may include code coded in a computer language such as C, C ++, JAVA, or machine language, which can be read by a computer processor (CPU). It may include.
  • Such code may include a function code associated with a function or the like that defines the above-described functions, and may include execution procedure-related control code necessary for a processor of the computer to execute the above-described functions according to a predetermined procedure.
  • the code may further include memory reference-related code for additional information or media required for a processor of the computer to execute the above-described functions at which location (address address) of the computer's internal or external memory. .
  • the code indicates that the processor of the computer is a communication module of the computer (eg, a wired and / or wireless communication module).
  • the communication code may further include communication related codes such as how to communicate with any other computer or server in the remote, and what information or media should be transmitted and received during communication.
  • codes and code segments associated therewith may be used in consideration of a system environment of a computer that reads a recording medium and executes the program. It may be easily inferred or changed by.
  • Examples of recording media that can be read by a computer recording a program as described above include, for example, a ROM, a RAM, a CDROM, a magnetic tape, a floppy disk, an optical media storage device, and the like.
  • a computer-readable recording medium having recorded a program as described above may be distributed to computer systems connected through a network so that computer-readable codes may be stored and executed in a distributed manner.
  • at least one of the plurality of distributed computers may execute some of the functions presented above, and transmit the result to at least one of the other distributed computers, and transmit the result.
  • the receiving computer may also execute some of the functions presented above, and provide the results to other distributed computers as well.
  • a computer-readable recording medium recording an application which is a program for executing a method according to an embodiment of the present invention, may provide an application such as an application store server, an application, or a web server associated with a corresponding service. It may be a storage medium (for example, a hard disk) included in a server (Application Provider Server) or the application providing server itself.
  • an application such as an application store server, an application, or a web server associated with a corresponding service.
  • It may be a storage medium (for example, a hard disk) included in a server (Application Provider Server) or the application providing server itself.
  • the computer which can read the recording medium which recorded the application which is a program for executing the method which concerns on each embodiment of this invention is not only general PCs, such as a desktop or a notebook, but also a smart phone, a tablet PC, PDA (Personal Digital Assistants) And a mobile terminal such as a mobile communication terminal, as well as it should be interpreted as any device capable of computing.
  • a computer capable of reading a recording medium recording an application which is a program for executing the method according to the second embodiment of the present invention, is a mobile terminal such as a smart phone, a tablet PC, a personal digital assistant (PDA) and a mobile communication terminal.
  • the application may be downloaded from the application providing server to a general PC and installed on the mobile terminal through a synchronization program.
  • a third embodiment of the present invention relates to a technology for playing a game played on an external electronic device such as a PC by using a terminal including a mobile communication function such as a portable telephone, a smart phone, a smart pad, and the like.
  • a terminal including a mobile communication function such as a portable telephone, a smart phone, a smart pad, and the like.
  • the virtual controller displayed on the terminal is a technology for allowing the operation of the game run on the external electronic device.
  • the game is played by manipulating the characters in the game through the controller or by manipulating the interface available in the game.
  • a keyboard and a mouse of a PC are recognized as a general controller.
  • the general controller provides a limited control method to the user, the need for technology of the new control interface is increasing.
  • the present invention provides a new control interface that allows users to control a game using a mobile communication terminal that users generally possess, thereby allowing users to play a game that is running on an external PC through the mobile communication terminal. It is possible to provide new fun, thereby increasing users' game utilization rate.
  • the device for providing a service that can control a game executed in an external terminal through the mobile communication terminal Detecting execution of game content on an external terminal and a network connection between the device and the mobile communication terminal;
  • Game control method through a mobile communication terminal the device for providing a service that can control the game running on the external terminal through the mobile communication terminal, the game content of the external terminal Executing and detecting a network connection between the device and the mobile communication terminal; Controlling game play of the game content being executed according to an input signal input from the mobile communication terminal; Detecting that any one of at least one predetermined event occurs during the game play; Selecting effect contents matching the event detected as occurring among the effect contents stored in the previously stored event effect table; And transmitting the selected effect content to the mobile communication terminal so that the selected effect content is executed in the mobile communication terminal.
  • the game control apparatus through the mobile communication terminal detects the execution of the game content on the external terminal and the network connection with the mobile communication terminal, and executes the application stored in the mobile communication terminal.
  • An input signal receiving unit for receiving the at least one input signal generated by the user's input from a control interface, the interface being provided and at least one input signal generated by the user's input;
  • a control command selection unit for selecting a control command corresponding to the received at least one input signal among at least one control command stored in the command table for game play in the game content being executed from a previously stored command table;
  • a control command transmitter for transmitting the selected control command to the game content so as to control the game play according to the selected control command.
  • the user can use the mobile communication terminal as a game controller, for example, a controller known as a joy pad, or play a game through the movement of the terminal through a control interface executed in the mobile communication terminal.
  • a game controller for example, a controller known as a joy pad
  • different operation patterns and operation inputs for various games can be input through a control interface executed in one mobile communication terminal through selection of a command table, it can be used as an integrated controller of various games.
  • the mobile communication terminal owned by most users can be used as a controller suitable for haptic games and the like, thereby increasing the utilization rate of the game. have.
  • “communication”, “communication network” and “network” may be used in the same sense.
  • the three terms refer to wired and wireless local and wide area data transmission and reception networks capable of transmitting and receiving files between a user terminal, a terminal of other users, and a download server.
  • the mobile communication terminal is basically provided with a touch screen, and will be described taking as an example a terminal capable of wired, wireless, remote or short-range communication.
  • the touch screen includes a pressure sensitive or electrostatic touch sensitive sensor on a screen on which an image or an image is displayed, and refers to the entire module that is input at the position when the user touches the screen. Therefore, in the following description, a touch screen is a display module that displays images and video contents, and is installed on the upper or lower portion of the display module to recognize a user's touch. It refers to a touch screen module including a touch response module to generate.
  • the mobile communication terminal may output audio through a speaker, and a vibration motor may be embedded to output a vibration effect.
  • the external terminal means all terminals capable of executing game content in the present invention.
  • the external terminal may include a communication means to be connected to the mobile communication terminal via a wired or wireless network.
  • a play video of a game may be displayed or a play voice may be output.
  • an input means may be provided to perform operation input when playing a game in general.
  • the game content in the present invention means all content that can manipulate a character or an object on a game through an input means.
  • All executable client content generally referred to as games, can be included.
  • a web board game, a haptic game, a role playing game, a shooting game, an adventure game, a first-person shooting game, and the like may include all game contents that can be executed on an external terminal.
  • FIG. 19 is a flowchart of a game control method through a mobile communication terminal according to a third embodiment of the present invention.
  • an apparatus for providing a service for controlling a game executed in an external terminal through a mobile communication terminal may be external. It may be hardware or software installed in the terminal. Or may exist as a separate terminal.
  • the device first detects whether game content is executed in an external terminal and whether an external terminal or a corresponding device is connected through a mobile communication terminal and a network (S310 and S320).
  • the mobile communication terminal When the device is embedded in an external terminal, it is possible to detect whether game content is executed through the processor of the external terminal. As to whether the mobile communication terminal is connected through a network, the mobile communication terminal attempts to connect to an external terminal or a communication module of the device, and detects the connection at the moment of being authenticated as a legitimate user.
  • an application for using the third embodiment of the present invention must be installed in the mobile communication terminal.
  • the application may be purchased and installed in an application store, and may be automatically connected to a mobile communication terminal and a device when the application is executed, or may be connected when a connection menu is selected.
  • the application may be provided with at least one type of application according to the carrier and type of the mobile communication terminal. Since the devices may be provided with the same or different interfaces according to the application, the apparatus may include identification information of the application and information about an interface that may be displayed differently according to the application. In this case, the information on the interface may include information about a combination and configuration of buttons displayed to allow a user to selectively input the mobile communication terminal as described below.
  • the device is an interface provided and displayed according to the execution of the above-mentioned application stored in the mobile communication terminal, and from the control interface which is an interface where at least one input signal is generated by the user's input, Receiving at least one input signal generated by the input of (S330).
  • the device and the mobile communication device may be connected through a network, and a control interface may be displayed on a display unit (for example, a touch screen) of the mobile communication terminal.
  • a control interface may be displayed on a display unit (for example, a touch screen) of the mobile communication terminal.
  • the control interface for example, at least one button such as a direction key and an action input key may be displayed.
  • an input signal corresponding to the corresponding button is generated.
  • the input signal may include identification information of the displayed button, and the device may receive which buttons are selected and input.
  • the device is a control command for game play in the game content being executed from the command table previously stored in the device, and at least one input signal received among at least one control command stored in the command table. Selecting a control command corresponding to (S340) is performed.
  • control command is a command for game play, and means all commands for manipulating a character or manipulating a virtual object that is displayed on the game screen and is set to be operable.
  • control command may include commands for all actions such as moving a character, allowing a character to take an action, opening an inventory window, or using an item.
  • the game content is generally operable through an input means of an external terminal on which the content is executed, and a control command corresponding to the input signal input by the input means may be set.
  • the command table refers to a data table in which at least one control command that matches each of at least one input signal that can be generated through the control interface displayed on the mobile communication terminal is stored.
  • the command table may be stored in a device or an external terminal, and may be stored in a separate memory.
  • the device may preload a command table stored in the device itself or externally when the game is detected and store it in a temporary storage space, and select a control command that matches the input signal whenever the input signal is received in real time.
  • control interface may be the same or different interfaces depending on the settings of the mobile communication terminal even if the application or the same application is installed differently depending on the type of mobile communication terminal. Accordingly, since the input signals may be the same or different according to the control interface displayed on the mobile communication terminal, the control commands matched according to the input signal may also be different according to the control interface.
  • a different table may be stored in the command table according to the type of the control interface.
  • At least one game may be executed in an external terminal. Different games may have different control commands, and different input signals may be required.
  • the device when the game content is executed and the connection with the mobile communication terminal is selected and the control command is selected, the device may load the control command table generated for each game content. That is, the command table may be generated and stored for each game content.
  • control commands stored in the command table may be set and stored such that the control commands corresponding to the input signals are the same or different from each other.
  • the command table may exist for each game and at the same time, depending on the control interface. Selecting the command table may select a control command each time the selection is made, but may also reduce the load on the system by selecting and storing in the temporary storage space when the game content is executed.
  • a command table matching the control interface and the game content to be executed will be stored, and the device selects a control command corresponding to the input signal from the command table.
  • the server performs a step (S350) to operate the game play by transmitting the selected control command to the game content.
  • step S350 the user can confirm that the game is operated according to a signal input by the user through the control interface of the mobile communication terminal on the game screen displayed on the external terminal.
  • the mobile communication terminal can operate to play a game executed in an external terminal through the execution of an application, and efficiently operate various games through one mobile communication terminal. It is possible to use a mobile communication terminal as a kind of game controller.
  • Step S331 is performed.
  • connection between the mobile communication terminal and the device through the network is automatically detected when an application for using the control interface is executed, or when a menu on the application for using the control interface is selected.
  • step S331 may be performed at the same time as step S320 or may be performed when a menu on the application is selected.
  • step S331 the device loads information on the control interface corresponding to the application running in the mobile communication terminal among the information about the at least one control interface previously stored as mentioned in the description of FIG. 19. Perform step 32.
  • the information about the control interface may include identification information about an input signal input from the control interface. Or include some sort of identification number for the control interface so that it can be used later in selecting the command table.
  • the command table may have the same or different command table for each control interface. Therefore, through the identification number for the control interface, it is possible to select a command table matching the control interface.
  • step S333 the device performs step S333 of loading a command table matching the information about the loaded control interface.
  • step S333 When the command table is loaded through the step S333, it is recognized as ready to control the game play by selecting the control command, and then the device performs the step of receiving an input signal through the control interface (S334), The subsequent steps will be performed.
  • control interface may also be provided differently.
  • a control interface provided may be different from a mobile communication terminal using only a touch screen and a mobile communication terminal selectively using a touch screen and a button type input means.
  • the input menus input by the user through the control interface may be displayed differently, and thus the input signals generated may be different from each other.
  • the embodiment of Fig. 20 is loading the command table according to the control interface to solve this problem. Therefore, it is possible to expect the effect of connecting the game to one external terminal in various mobile communication devices.
  • FIG. 21 shows another example of a flow for receiving an input signal according to the implementation of the third embodiment of the present invention.
  • the device performs an operation of receiving an input signal including at least one of a selection input for a button included in a control interface and a sensor input through a sensor embedded in a mobile communication terminal (S335).
  • the selection input for the buttons included in the control interface may be input to at least one button menu that may be displayed on a control interface such as a joy pad displayed by a touch screen or the like as described above with reference to FIGS. 19 and 2. Means the user's choice input.
  • a joypad type image may be displayed on the touch screen.
  • the user grips the mobile communication terminal and touches a button menu displayed on the touch screen in the same manner as using the joypad. At this time, an input signal is generated to correspond to each touched button menu.
  • the sensor input means an output value by the sensor that can be embedded in each mobile communication terminal. That is, all the sensing results detected by the mobile terminal according to the type of sensor may be sensor inputs.
  • the sensor input may include output values of sensors that recognize motion such as impact, position movement, vertical rotation, and shaking of a mobile communication terminal such as a gyro sensor, an earth magnetic field sensor, an acceleration sensor, and a gravity sensor.
  • a mobile communication terminal such as a gyro sensor, an earth magnetic field sensor, an acceleration sensor, and a gravity sensor.
  • the sensor input may be an analog value such as an azimuth angle, angular velocity, acceleration, gravity value, etc. output according to the type of sensor such as a gyro sensor, an earth magnetic field sensor, an acceleration sensor, a gravity sensor, or a digital signal converted by a converter.
  • the apparatus selects a control command corresponding to the input signal (S340).
  • a control command corresponding to the input signal S340.
  • the first game may be set to use only a button input, but the second game may be set to use a game by detecting rotation or movement of the mobile communication terminal.
  • a control command matching an input signal corresponding to a button menu may be stored in the command table matching the first game.
  • a control command matched to a sensor input for detecting a movement of the mobile communication terminal may be stored in the command table matched with the second game.
  • the mobile communication terminal can be used as a controller for game contents executed in an external terminal.
  • FIG. 22 is a flowchart of a game control method through a mobile communication terminal according to another embodiment of the present invention. In the following description, portions overlapping with the description of FIGS. 19 to 21 will be omitted.
  • a device first detects that game content is executed in an external terminal, detects a network connection between a device and a mobile communication terminal, and then executes according to an input signal input from the mobile communication terminal according to the above embodiment.
  • the game play of the game content being played is controlled. As described in the description of FIGS. 19 to 21, the game play may be performed through an input signal including at least one of a selection input or a sensor input for a button included in a control interface and a control command corresponding thereto. Means to manipulate.
  • the device performs a step S360 of detecting that any one event of at least one predetermined event has occurred according to the game play.
  • an event refers to all situations set according to an input of an administrator terminal or a developer terminal so as to become an important situation during game play or a certain effect may occur during game play.
  • an event could include a goal being scored or tackled in a football game, a character leveling up or dying in a role-playing game, or a puzzle completing and disappearing in a puzzle game. have.
  • the device selects the effect content that matches the event detected in operation S360 from among the effect content stored in the event effect table previously stored in the device or game content data.
  • At least one effect content may be matched with each event. For example, in an event in which a character dies, images, vibrations, and voice effects may occur simultaneously or at least one of them may be selected and generated.
  • the device transmits the selected effect content to the mobile communication terminal so that the selected effect content is executed in the mobile communication terminal (S380).
  • the effect content is performed through a series of processes in the mobile communication terminal.
  • the effect content execution module on the application may execute the effect content. That is, the effect content is delivered to the mobile communication terminal, and the application execution module that receives the effect content can substantially execute the effect content.
  • the user may check the effect contents of the event occurring in the game executed in the external terminal in the mobile communication terminal.
  • the effect content in the present invention by vibrating by operating the vibration motor of the mobile communication terminal, the video output through the display module of the mobile communication terminal, such as a display unit and the output using the audio output module, such as speakers of the mobile communication terminal It may include content for voice effects.
  • a user utilizes the mobile communication terminal as a controller of game contents executed in an external terminal, and at the same time, directly plays the game through the mobile communication terminal. You can feel like you are active in the game, and can maximize the use of the game.
  • FIG. 23 is a block diagram of a game control device via a mobile communication terminal according to a third embodiment of the present invention.
  • FIGS. 19 to 22 may be omitted.
  • the game control apparatus 310 (hereinafter referred to as an apparatus) through the mobile communication terminal 320 according to the third embodiment of the present invention may include an input signal receiver 311 and a control command selector ( 312) and a control command transmitter 313, and may further include an effect provider 314 corresponding to the embodiment of FIG.
  • the mobile communication terminal 320 and the processor that the game content is executed as a processor for the network connection for data transmission and reception with the game content execution module 330 will naturally include.
  • the input signal receiving unit 311 detects execution of game content and network connection with the mobile communication terminal 320 and at least one input signal generated by a user input from a control interface. It performs the function.
  • the input signal receiving unit 311 may include identification information on game content, identification number on a control interface, and the like, from the game content execution module 330 and the mobile communication terminal 320. Can be received together to be used for the selection of the command table.
  • the control command selecting unit 312 performs a function of selecting a control command corresponding to the input signal received by the input signal receiving unit 311 among at least one control command stored in the command table from the previously stored command table.
  • the control command selector 312 may store a plurality of command tables according to game content and a control interface.
  • the control command selector 312 loads a command table matched thereto using the identification information of the game content and the identification number of the control interface from the input signal receiver 311, stores the command table matched thereto, and stores the command table in a temporary storage space. It is possible to select a matching control command.
  • the control command transmitter 313 transmits the control command selected by the control command selector 312 to the game content execution module 330 to control the game play. That is, by transmitting a control command in the game content, a user can operate a game of an external terminal using a control interface displayed according to an application executed through the mobile communication terminal 320.
  • the input signal input through the mobile communication terminal 320 includes a selection input for at least one button displayed according to a control interface, and the above-mentioned sensor embedded in the mobile communication terminal 320. At least one of the sensor inputs detected by at least one of the sensors may be included.
  • the effect providing unit 314 When the effect providing unit 314 detects that any one event among at least one predetermined event occurs during game play, the effect providing unit 314 matches an event among effect contents stored in the event effect table stored in the effect providing unit 314 or the like. It selects the effect content and transmits it to the mobile communication terminal (320).
  • the effect content may also be set to be the same or different according to the game content, and accordingly, at least one event effect table may be stored according to the game content.
  • the effect provider 314 may receive identification information about the game content from the input signal receiver 311 and select an event effect table matched thereto.
  • the effect providing unit 314 vibrates the mobile communication terminal 320 to the mobile communication terminal 320, the video effect that the mobile communication terminal 320 is output through the display module and the voice of the mobile communication terminal 320 Content related to at least one of the voice effects output using the output module will be delivered.
  • 24 to 30 illustrate examples of services provided to a mobile communication terminal or an external terminal according to the implementation of each embodiment of the present invention.
  • FIG. 24 shows an example of an execution screen 3100 of an application that can be installed in a mobile communication terminal for the aforementioned game control.
  • the user may execute the application by touching the execution menu 3101.
  • the execution menu 3101 detects the touch, the mobile communication terminal attempts to connect the network to the game control device through the mobile communication terminal installed in the external terminal or exist as a separate terminal through the application.
  • the screen 3110 of FIG. 25 may display information indicating that a connection to a device, ie, a PC, has been successfully connected to an external terminal, and display a controller execution menu 3111 for outputting a control interface.
  • the user may touch the controller execution menu 3111 to display the control interface.
  • FIG. 26 An example of a control interface 3120 is shown in FIG. 26.
  • a joypad type screen is displayed. That is, the direction button 3121 and the action button 3122 are displayed, and the user grasps the mobile communication terminal and touches each of the buttons 3121 and 3122, so that the mobile communication terminal can be used as a joy pad.
  • FIG. 27 shows an example of sensor input.
  • the user may take a motion 3130 to shake the mobile communication terminal to which the joypad type control interface is output from side to side.
  • an acceleration sensor for the motion 3130 and Gyro sensor receives the sensor input sensed to control the game play.
  • FIG. 28 illustrates an example in which an event effect is output through a mobile communication terminal.
  • the display unit 3201 of the external terminal 3200 indicates that the user's character is dead.
  • the device transmits the effect content corresponding to the effect (3140) of vibrating the mobile communication terminal to the mobile communication terminal, the mobile communication terminal receiving the effect content is the effect of vibrating the mobile communication terminal by operating its own vibration motor Output 3140.
  • the user may feel that the mobile communication terminal held by the user vibrates.
  • 29 and 30 show examples of the control guide screens 3210 and 3220.
  • information on a control command corresponding to an input signal input through a control interface displayed on a mobile communication terminal is displayed. By checking this, the user can easily check how to control the game by manipulating the control interface displayed on the mobile communication terminal.
  • the control guide screen 3220 of FIG. 30 may generate an input signal by moving the mobile communication terminal, and information for confirming a control command corresponding thereto is displayed.
  • the user may control the direction in which the character moves by rotating the mobile communication terminal left and right, and may shake up and down to implement an action in which the character jumps.
  • 31 illustrates an example of a data table that may be pre-stored according to the implementation of each embodiment of the present invention.
  • an instruction table 3310 corresponding to game A may be checked according to game information.
  • the command table 3310 information about a control command 3312 corresponding to each of the input signal 3311 and the input signal 3311 can be checked.
  • the device selects a control command 3312 corresponding to the received input signal 3311 by referring to the command table 3310 and delivers it to the game content execution module of the external terminal.
  • the application (installed on the terminal or platform, operating system, etc. basically installed in the terminal) It may be executed by the user, or may be executed by an application (ie, a program) directly installed on the terminal by an application providing server such as an application store server, an application, or a web server associated with the corresponding service.
  • an application ie, a program
  • the game control method through the mobile communication terminal according to the third embodiment of the present invention described above is implemented as an application (that is, a program) basically installed in the terminal or directly installed by the user, and read by a computer such as a terminal. Can be recorded on a recording medium.
  • Such a program is recorded on a recording medium readable by a computer and executed by a computer so that the above functions can be executed.
  • the above-described program is executed in a computer language such as C, C ++, JAVA, machine language, etc. It may include a coded code.
  • Such code may include a function code associated with a function or the like that defines the above-described functions, and may include execution procedure-related control code necessary for a processor of the computer to execute the above-described functions according to a predetermined procedure.
  • the code may further include memory reference-related code for additional information or media required for a processor of the computer to execute the above-described functions at which location (address address) of the computer's internal or external memory. .
  • the code indicates that the processor of the computer is a communication module of the computer (eg, a wired and / or wireless communication module).
  • the communication code may further include communication related codes such as how to communicate with any other computer or server in the remote, and what information or media should be transmitted and received during communication.
  • codes and code segments associated therewith may be used in consideration of a system environment of a computer that reads a recording medium and executes the program. It may be easily inferred or changed by.
  • Examples of recording media that can be read by a computer recording a program as described above include, for example, a ROM, a RAM, a CDROM, a magnetic tape, a floppy disk, an optical media storage device, and the like.
  • a computer-readable recording medium having recorded a program as described above may be distributed to computer systems connected through a network so that computer-readable codes may be stored and executed in a distributed manner.
  • at least one of the plurality of distributed computers may execute some of the functions presented above, and transmit the result to at least one of the other distributed computers, and transmit the result.
  • the receiving computer may also execute some of the functions presented above, and provide the results to other distributed computers as well.
  • a computer-readable recording medium recording an application which is a program for executing a game control method through a mobile communication terminal according to an embodiment of the present invention, includes an application store server, an application, or a corresponding service. It may be a storage medium (eg, a hard disk, etc.) included in an application provider server such as a related web server, or the application providing server itself.
  • the computer which can read the recording medium which recorded the application which is the program for executing the game control method via the mobile communication terminal which concerns on each embodiment of this invention is not only a general PC, such as a desktop or a notebook, but also a smart phone, a tablet. It may include a mobile terminal such as a PC, personal digital assistants (PDAs), and mobile communication terminals, but also should be interpreted as all computing devices.
  • a computer capable of reading a recording medium recording an application which is a program for executing a game control method through a mobile communication terminal is a smart phone, a tablet PC, a personal digital assistant (PDA) and a mobile device.
  • the application may be downloaded from the application providing server to a general PC and installed on the mobile terminal through a synchronization program.
  • a fourth embodiment of the present invention relates to a technique for utilizing a terminal sensor in an external device.
  • the haptic game means a game that can be experienced and enjoyed. You can enjoy playing sports like ping pong, tennis, boxing and baseball through these immersive games. Sometimes not only is it fun to play, but it also adds functionality such as exercise effects.
  • Two devices are required to play such a game, one is a dedicated game machine capable of driving a game, and the other is a dedicated peripheral device that recognizes a user's movement as a user's operation and delivers it to the game machine.
  • a new game can only be run through a dedicated game machine, so that the game developer or game developer can be subordinated to the producer of the dedicated game machine so that it can't deliver a new game quickly or meet the needs of users such as free games. Is that it does not provide a variety of games.
  • the game must be realized in a device such as a PC or a smart TV that has a platform open instead of a dedicated game machine.
  • a terminal such as a smart phone which is widely popular and has various motion sensors, instead of recognizing user manipulation using a separate dedicated peripheral device, as an input device for user manipulation.
  • another object of the present invention is to provide a technology that allows a device to efficiently use the sensing value of a terminal sensor by matching the size of a user operation through a terminal with the size of a user operation recognized by the device.
  • the present invention provides a method for using a terminal sensor in a device including a display, a plurality of indication position sensing values of the terminal pointing to each of a plurality of reference points on the display Receiving an indication position sensing value received from the terminal; A scale adjustment ratio determination step of determining a scale adjustment ratio by using a difference in coordinate values between the plurality of reference points and a position sensing value difference between the plurality of indicated position sensing values; And calculating the pointing coordinate position on the display by applying the scale adjustment ratio to the at least one pointing position sensing value received from the terminal or the pointing position correction sensing value error-corrected with respect to the at least one pointing position sensing value. It provides a terminal sensor utilization method comprising a pointing coordinate position calculation step.
  • the present invention provides an apparatus including a display, comprising: an indication position sensing value receiving unit receiving a plurality of indication position sensing values of a terminal pointing to each of a plurality of reference points on the display from the terminal; A scale adjustment ratio determiner configured to determine a scale adjustment ratio by using a difference in coordinate values between the plurality of reference points and a difference in position sensing values between the plurality of indicated position sensing values; And calculating the pointing coordinate position on the display by applying the scale adjustment ratio to the at least one pointing position sensing value received from the terminal or the pointing position correction sensing value error-corrected with respect to the at least one pointing position sensing value.
  • a terminal sensor utilizing apparatus including a pointing coordinate position calculator.
  • the present invention provides a recording medium in which a device including a display executes a method for utilizing a terminal sensor, the recording medium comprising: sensing a plurality of indicated positions of the terminal pointing to each of a plurality of reference points on the display; An indication position sensing value receiving function for receiving a value from the terminal; A scale adjustment ratio determination function that determines a scale adjustment ratio by using a difference in coordinate values between the plurality of reference points and a difference in position sensing values between the plurality of indicated position sensing values; And calculating the pointing coordinate position on the display by applying the scale adjustment ratio to the at least one pointing position sensing value received from the terminal or the pointing position correction sensing value error-corrected with respect to the at least one pointing position sensing value.
  • a computer readable recording medium having recorded thereon a program for implementing a pointing coordinate position calculation function is provided.
  • the present invention provides a method for providing a sensing value by a terminal including at least one sensor, wherein the plurality of indication position sensing values of the terminal pointing to each of a plurality of reference points on a display of an external device are displayed. Transmitting an indication position sensing value to transmit to the apparatus; And a pointing position for measuring a pointing position sensing value for manipulating a pointing coordinate position of the external device, the scale adjustment ratio being determined using the plurality of indicating position sensing values, by using the at least one sensor and transmitting the same to the external device.
  • a sensing value providing method comprising transmitting a sensing value is provided.
  • the present invention in the terminal including at least one sensor, the indication position sensing for transmitting a plurality of indication position sensing values of the terminal pointing to each of a plurality of reference points on the display of the external device to the external device A value transmitter; And a pointing position for measuring a pointing position sensing value for manipulating a pointing coordinate position of the external device, the scale adjustment ratio being determined using the plurality of indicating position sensing values, by using the at least one sensor and transmitting the same to the external device.
  • a sensing value providing terminal including a sensing value transmitter.
  • the present invention provides a recording medium in which a terminal including at least one sensor for executing a method for providing a sensing value, the recording medium comprising: indicating each of a plurality of reference points on a display of an external device; An indication position sensing value transmission function for transmitting a plurality of indication position sensing values to the external device; And a pointing position for measuring a pointing position sensing value for manipulating a pointing coordinate position of the external device, the scale adjustment ratio being determined using the plurality of indicating position sensing values, by using the at least one sensor and transmitting the same to the external device.
  • a computer-readable recording medium having recorded thereon a program for implementing a sensing value transmission function.
  • the device can utilize the sensing value of the terminal sensor.
  • the size of the user operation through the terminal and the size of the user operation recognized by the device is matched so that the device can efficiently use the sensing value of the terminal sensor.
  • 32 is a diagram for describing types of sensors included in the terminal 4100.
  • the terminal 4100 may be a mobile communication terminal such as a smartphone.
  • the present invention is not limited thereto, and may be other types of terminals such as a tablet PC and personal digital assistants (PDAs).
  • PDAs personal digital assistants
  • the terminal 4100 includes a first sensor 4101, a second sensor 4102, and a third sensor 4103.
  • the terminal 4100 is a smartphone, it is generally known that the terminal 4100 is basically provided with a geomagnetic sensor, an acceleration sensor, a gyro sensor, a camera sensor, and a proximity sensor.
  • Each of the first sensor 4101, the second sensor 4102, and the third sensor 4103 described above may be any one of such a geomagnetic sensor, an acceleration sensor, a gyro sensor, a camera sensor, and a proximity sensor.
  • the first sensor 4101 is a gyro sensor
  • the second sensor 4102 is an acceleration sensor
  • the third sensor 4103 is an earth magnetic field sensor
  • the respective sensing contents are illustrated in FIGS. 32B and 32C, respectively.
  • FIG. 32C shows the sensing content of the acceleration sensor.
  • the acceleration sensor measures acceleration values for three axes of the X axis 4112, the Y axis 4113, and the Z axis 4111, respectively.
  • FIG. 32 (b) shows the sensing content of the gyro sensor.
  • the gyro sensor surrounds the X-axis 4112 and surrounds the yaw direction 4122, the Y-axis 4113, and the pitch direction and the Z-axis 4111.
  • the figure measures the angle value with respect to three directions of a roll direction, respectively.
  • the geomagnetic field sensor measures the azimuth angle like the compass 4131.
  • the terminal 4100 is equipped with such a variety of sensors and through the sensed value it is possible to easily and relatively accurately determine the direction of movement, the degree of movement of the terminal 4100.
  • the degree of inclination of the terminal 4100 may be determined through three-axis angle information sensed by the gyro sensor. This information is used by applications running in the terminal 4100. For example, a specific application in the terminal 4100 is displayed on the terminal using angle information sensed by a gyro sensor. Control such as changing the direction of.
  • the terminal 4100 equipped with various sensors may recognize various user operations.
  • the terminal 4100 includes a motion sensor such as a gyro sensor
  • the terminal 4100 may recognize a user's motion manipulation.
  • the terminal 4100 retains not only the movement manipulation of the user but also the moved sensing value capable of recognizing the movement manipulation of the user.
  • the fourth embodiment of the present invention provides a technique for transmitting the sensed value of the terminal 4100 to an external device as described above so that the external device uses the sensed value of the terminal 4100 as a user manipulation input.
  • FIG 33 is a communication connection diagram of a system 4200 including a device 4210 and a terminal 4100 according to a fourth embodiment of the present invention.
  • the system 4200 includes a terminal 4100 that includes a sensor and provides a sensing value of the sensor to the device 4210, and an apparatus 4210 that utilizes the sensing value transmitted from the terminal 4100. Included by default.
  • the system 4200 may further include a network 4220 and a mobile communication system 4230.
  • the terminal 4100 may transmit a value sensed through an internal sensor to the device 4210, and may transmit such a sensing value through various paths as shown in FIG. 33.
  • the terminal 4100 may directly transmit a sensing value to the device 4210 without passing through another communication network.
  • the terminal 4100 may use a short range communication method 4240 such as Wi-Fi, Bluetooth, or infrared communication.
  • the terminal 4100 may sense by using the short range communication method 4240.
  • the value can be passed to the device 4210.
  • the terminal 4100 transmits data on the sensing value to the base station 4230 according to the mobile communication method 4241, and the base station 4230 transmits the data about the sensing value to the network 4220. May be delivered to device 4210 via.
  • the terminal 4100 may transmit data on the sensed value to the network 4220 through such wireless network communication, and the network 4220 may re-install the data. Can be sent to 4210.
  • the device 4210 may also send data to the terminal 4100 in the reverse path of the above-described path.
  • the device 4210 may use a near field communication scheme 4240 to deliver data that it wants to send to the terminal 4100, and the device 4210 may also transmit data that it wants to send to the network 4220 and the network ( The 4210 may transfer such data to the terminal 4100 via the base station 4230 to the mobile communication method 4241 or the network 4210 may transfer the data to the terminal 4100 through wireless network communication.
  • the data is not unilaterally transmitted to the device 4210 by the terminal 4100, but the device 4210 may transmit data to the terminal 4100 as described above. If the 4200 includes a haptic game, the device 4210 will try to increase the game sensation by making the user feel vibration in a specific situation during the game. In this case, the device 4210 may transmit the vibration signal data to the terminal 4100, and the terminal 4100 may receive the vibration signal data and control the terminal 4100 to vibrate so that the user can feel the vibration during the game. have.
  • the above-described device 4210 may include a general PC such as a general desktop or a notebook, and may include a mobile terminal such as a smart phone, a tablet PC, a personal digital assistant (PDA), a mobile communication terminal, and the like. Rather, it should be broadly interpreted as any electronic device capable of communicating with the terminal 4100 while being separated from the terminal 4100.
  • a general PC such as a general desktop or a notebook
  • a mobile terminal such as a smart phone, a tablet PC, a personal digital assistant (PDA), a mobile communication terminal, and the like.
  • PDA personal digital assistant
  • the network 4220 is a network connecting the device 4210 and another device (base station, terminal 4100, etc.), and a closed network such as a local area network (LAN) and a wide area network (WAN). It may be, but may be an open network such as the Internet (Internet).
  • the Internet includes various services existing in the TCP / IP protocol and its upper layers such as HTTP (HyperText Transfer Protocol), Telnet, File Transfer Protocol (FTP), Domain Name System (DNS), Simple Mail Transfer Protocol (SMTP), The global open computer network architecture that provides Simple Network Management Protocol (SNMP), Network File Service (NFS), and Network Information Service (NIS).
  • 34 is an internal block diagram of an apparatus 4210 according to the fourth embodiment of the present invention.
  • the apparatus 4210 may include a display position sensing value receiver 4310 which receives a plurality of indication position sensing values of the terminal 4100 indicating the display 4340 and each of a plurality of reference points on the display. ), A scale adjustment ratio determiner 4320 that determines a scale adjustment ratio by using a difference in coordinate values between a plurality of reference points and a difference in position sensing values between a plurality of indicated position sensing values, and at least one pointing position received from the terminal.
  • a display position sensing value receiver 4310 which receives a plurality of indication position sensing values of the terminal 4100 indicating the display 4340 and each of a plurality of reference points on the display.
  • a scale adjustment ratio determiner 4320 that determines a scale adjustment ratio by using a difference in coordinate values between a plurality of reference points and a difference in position sensing values between a plurality of indicated position sensing values, and at least one pointing position received from the terminal.
  • FIG. 35 is a diagram for describing a positional relationship when the terminals 4100a, 4100b, 4100c, and 4100d point to a reference point on the display 4340.
  • Terminals corresponding to reference numerals 4100a, 4100b, 4100c, and 4100d are terminals having the same configuration as the terminal 4100 according to the fourth embodiment of the present invention. Some reference numbers are used differently.
  • the reference point refers to a point for the device 4210 to match the indication position sensing value of the terminal 4100 while knowing its coordinate value.
  • a representative example of the reference point is the corner point of the display 4340. Since the device 4210 knows the size or resolution of the display 4340, the coordinate values for the corner points of the display 4340 may be known to the device 4210. It may be the easiest embodiment to match the indication position sensing value of the terminal 4100 with this corner point as a reference point.
  • the device 4210 may predetermine a point corresponding to an arbitrary coordinate value and use the point as a reference point. Unlike the corner point, the determined reference point may be unknown to the user who operates the terminal 4100, and thus, the reference point is preferably displayed on the display 4340.
  • a figure including a plurality of reference points may be displayed on the display 4340, and some of the points may be used as reference points.
  • corner points 4401, 4402, 4403, and 4404 on the display 4340 are reference points.
  • the terminal 4100 senses the position of the terminal 4100 while indicating each of the plurality of reference points, and transmits the sensed indication position sensing value to the device 4210.
  • the terminal 4100a corresponding to the reference number 4100a points to the upper left point 4401 on the display 4340.
  • the terminal 4100a senses the position of the terminal 4100a by using at least one built-in sensor, and thus indicates the indicated position sensing value reference point of the sensed terminal 4100a.
  • the indication of the position sensing value is transmitted to the device 4210.
  • the user can additionally perform a particular user operation when the terminal 4100 is in this position to transmit an indication position sensing value to the device 4210 with the terminal 4100 pointing to a particular reference point on the display 4340.
  • the position sensing value sensed in the state is transmitted to the device 4210.
  • the terminal 4100 sequentially transmits an indication position sensing value of the terminal 4100 corresponding to each reference point to the device 4210 while sequentially pointing each of the plurality of reference points on the display 4340. 4100 first transmits an indication position sensing value to device 4210 with reference 4401, next with 4402, then 4403 and finally 4404. In the state indicated by, respectively, the indication position sensing value of the terminal 4100 is transmitted to the device 4210.
  • the user presses an input button of the terminal 4100 at each position while pointing four corners of the display 4340 to the terminal 4100 to display the instruction position sensing value of the terminal 4100 in the device 4210. To send).
  • the scale adjustment ratio is determined using the plurality of indication position sensing values.
  • the scale adjustment is attempted based on the indication position sensing value of the terminal 4100 and the reference point on the display 4340 for the following reasons.
  • a user who wants to operate the device 4210 using the sensor of the terminal 4100 in a haptic manner would like to present a game or a PowerPoint presentation while instructing the display 4340 directly to the terminal 4100.
  • the device 4210 further includes a shooting game and allows the shooting game to be manipulated with the sensing value of the terminal 4100, when the user plays such a shooting game, the terminal 4100 is as if it is a gun. As shown in the drawing, the terminal 4100 will be aimed at the display 4340 to play a shooting game.
  • the terminal 4100 when the terminal 4100 is at the reference number 4100a and at the reference number 4100c, the terminal 4100 indicates the same reference point 4401 but the indication position sensing value of the terminal 4100 is different. Even when the amount of change in the indication position sensing value is changed, the amount of change in the indication position sensing value is different when the terminal moves from the reference number 4100a to the reference number 4100b and when the terminal moves from the reference number 4100c to the reference number 4100d. Specifically, when the angle of the yaw direction of the terminal 4100 described with reference to FIG. 32 is used as a reference, the change amount of the indicated position sensing value when the reference number 4100a changes to the reference number 4100b may change from the reference number 4100c to the reference number 4100d.
  • the scale adjustment ratio is determined using the difference in coordinate values between the plurality of reference points and the difference in position sensing values between the plurality of indicated position sensing values.
  • the indication position sensing value of the terminal 4100 may be an angle sensing value of the terminal 4100.
  • the coordinate value 4401 is (0, 0) at a resolution of 1024 X 768, and the coordinate value of 4402 is (1024, 0).
  • the coordinate difference between the two reference points is 1024 on the X axis. If the indicated position sensing value of the yaw direction angle of the terminal 4100 at reference number 4100a is 0 degrees, and the indicated position sensing value of the yaw direction angle of the terminal 4100 at reference number 4100b is 30 degrees, the two reference points The difference in position sensing value between two corresponding position sensing values is 30 degrees. Determining these values as the scaling factor
  • Position sensing value 1024: 30 degrees
  • the coordinate value of reference number 4401 is (0, 0) at a resolution of 1024 X 768, and the coordinate value of 4402 is (1024, 0), the difference between the coordinates of the two reference points is 1024 on the X axis. If the indicated position sensing value of the yaw direction angle of the terminal 4100 at reference number 4100c is 0 degrees, and the indicated position sensing value of the yaw direction angle of the terminal 4100 at reference number 4100d is 60 degrees, the above two reference points The difference in position sensing value between two corresponding position sensing values is 60 degrees. Determining these values as the scaling factor
  • Position sensing value 1024: 60 degrees
  • the pointing coordinate position calculator 4330 is pointing in the sense that at least one pointing position sensing value position sensing value received from the terminal 4100 is used to calculate the coordinate position of the pointer in the device 4210.
  • the pointing coordinate position on the display 4340 is calculated by applying a scale adjustment ratio to the pointing position correction sensing value which is referred to as a position sensing value or an error corrected pointing position sensing value with respect to at least one pointing position sensing value.
  • the pointing coordinate position calculator 4330 may calculate the pointing coordinate position using the pointing position sensing value received from the terminal 4100 as it is, but the value sensed by the terminal 4100 may be a noise, a measurement error, and communication in communication. Errors, etc. (hereafter data error) are included, so the quality may be very low. Therefore, it is desirable to calculate the pointing coordinate position by using the pointing position correction sensing value which reduced the data error.
  • the data post-processing unit 4350 may perform an error correction process by generating a data post-processing process for attenuating a data error with respect to the pointing position sensing value, and generate at least one pointing position correction sensing value.
  • the data post-processing process in the data post-processing unit 4320 may include a filtering sub-process for filtering the pointing position sensing value.
  • the filtering sub process may perform low pass filtering on the sensing value to remove noise.
  • a high frequency noise is likely stuck in the sensed value.
  • the subprocess filtering to remove such high frequency noise may perform low pass filtering.
  • the filtering sub process may pass the sensing value high to remove the gravity acceleration component from the sensing value measured by the acceleration sensor. Pass) filtering can be performed. Gravity acceleration is nearly constant at similar altitudes, which corresponds to very low frequencies. In order to remove the gravitational acceleration component from the sensing value measured from the acceleration sensor, it is preferable to perform a high pass filtering process that can pass only the value of the high frequency component.
  • both the sensing value measured by the gyro sensor and the sensing value measured by the geomagnetic sensor are represented by the same indicator that the angle of the terminal 4100.
  • the other sensing value may be corrected based on one sensing value.
  • the device 4210 receives both the first position sensing value measured from the first sensor 4101 of the terminal 4100 and the second position sensing value measured from the second sensor 4102.
  • the data post processor 4350 determines the difference between the first position sensing value and the second position sensing value as a sensing value error, and recognizes some or all of the sensing value errors as a data error with respect to the first position sensing value. A data post-processing process can be performed to reduce the error. Logically, since the second position sensing value is more accurate, the data error occurs at the first position sensing value and this data error is the difference between the first position sensing value and the second position sensing value. However, when the second position sensing value cannot be determined to be completely accurate (it can be quantified by the reliability value of the second position sensing value, etc.), the data post processor 4350 may use the first position sensing value and the second position sensing value. A part of the sensing value error, which is a difference between the position sensing values, is recognized as a data error with respect to the first position sensing value.
  • the first sensor having a low accuracy may be a gyro sensor
  • the second sensor having a relatively high accuracy may be an acceleration sensor or a geomagnetic sensor.
  • a gyro sensor a relative value obtained by accumulating coordinate increments and a reference coordinate value is measured. In this case, when the reference coordinate value is wrong, an error may occur in the sensing value. Even if there is an error in the coordinate increment, an error occurs in the sensed value.In this case, the relative value is more lethal so the error continues to accumulate. Can be.
  • geomagnetic sensors are more accurate because they provide absolute values by sensing absolute coordinates relative to the North Pole, such as a compass. Accelerometer can measure the relative value when measuring the degree of movement, but the accuracy may be low. However, when measuring the angle such as the gyro sensor, the acceleration sensor can measure the absolute value and the accuracy is high.
  • the question of why not use the high-accuracy sensed value can be questioned.
  • the sensing dynamics are usually fast, allowing for the rapid production of sensing values.
  • a highly accurate sensing value can often measure its value only when the dynamics are slow and the terminal 4100 is in a stable state to some extent. For this reason, the device 4210 using the sensing value of the terminal 4100 or the terminal 4100 uses a first position sensing value with low accuracy but high dynamics, and corrects it to a second position sensing value with high accuracy. do.
  • the data post-processing process generates a pointing position correction sensing value by adding or subtracting a part of a sensing value error that is a difference between the first position sensing value and the second position sensing value to the first position sensing value, or points to a previous pointing position.
  • the apparatus may further include a correction subprocess configured to generate a pointing position correction sensing value by adding or subtracting a part of the sensing value error to the position correction sensing value.
  • the data post-processing unit 4350 basically processes the data recursively. First, a part of the sensing value error is added to or subtracted from the previous pointing position correction sensing value, and then the pointing position correction sensing value is generated. At this time, a part of the sensing value error is added to or subtracted from the pointing position correction sensing value to generate the next pointing position correction sensing value. Initially, the first position sensing value is used because there is no pointing position correction sensing value.
  • adding the sensing value error to the previous pointing position correction sensing value is vice versa.
  • the sensing value error is subtracted from the previous pointing position correction sensing value.
  • the above-described correction subprocess may use the error division value obtained by dividing the sensing value error by the number of error division corrections as a part of the sensing value error.
  • the data post-processing process may repeat the correction subprocess by the number of error division corrections according to a predetermined subprocess execution period, thereby generating the pointing position correction sensing value for each subprocess execution. have.
  • A The yaw direction angle sensing value obtained through the first sensor
  • B the yaw direction angle sensing value obtained through the second sensor
  • the data post processor 4350 divides and corrects the BA value for a predetermined time.
  • the BA value is 100
  • calibrating 10 times by 10 through a high-resolution timer that is called periodically eliminates the unnaturalness that a user can feel.
  • the aforementioned error division correction number is 10.
  • the data postprocessor 4350 may control the aforementioned subprocess execution period to be shorter than a period for receiving the pointing position sensing value. This is to perform as much correction as possible before the next pointing position sensing value is received.
  • the data post processor 4350 may adjust the ratio of the sensing value error that is added or subtracted according to the size of the motion sensing value in the above-described correction subprocess. Can be adjusted.
  • the motion sensor may be an acceleration sensor.
  • the data post-processing unit 4350 may include a roll direction component and a pitch component of the sensing value error when the first sensor is a gyro sensor and the second sensor is an acceleration sensor.
  • the yaw direction component is sensed as the first position.
  • the data post-processing process may be performed to reduce the data error by recognizing the yaw direction data error with respect to the sensing value.
  • the geomagnetic sensor is an accurate value for yaw direction
  • the yaw direction component is corrected by using the sensing value of the geomagnetic sensor, and the yaw direction component is corrected using the gyro sensor. Is a calibration using an acceleration sensor.
  • the data error with respect to the position sensing value may include noise, measurement error, communication error, and the like.
  • the configuration for reducing the noise and measurement error of the data error has been described.
  • the terminal 4100 may receive a position sensing value of 50 or more times per second.
  • the communication state should be good.
  • the terminal 4100 since the terminal 4100 has a different purpose, such a high speed data communication may not be performed by another communication request. In other words, the frequency of receiving the position sensing value may be reduced due to a poor communication state, and some data may be lost. In this case, a user who uses a haptic game or the like may have an unnatural feeling as if the input is cut off.
  • the data post-processing process in the data post-processor 4350 is the previous position sensing value and the current position sensing Values may be interpolated to generate a plurality of interpolation correction values, and each interpolation correction value may be generated as a pointing position correction sensing value at an interpolation time interval.
  • 36 is a view illustrating coordinates of sensing values indicating interpolation of sensing values.
  • a sensing value corresponding to reference numeral 4501 was first identified through a pointing position sensing value. The next pointing position sensing value was then received over a certain time interval. This late received position sensing value is the value corresponding to 4505. The distance between the reference numbers 4501 and 4505 is too long so that the user may feel as if the coordinates have jumped.
  • the data post-processor 4350 generates a plurality of interpolation correction values 4502, 4503, and 4504 by interpolating the previous pointing position sensing value 4501 and the current pointing position sensing value 4505, and interpolating each interpolation.
  • Correction values 4502, 4503, and 4504 are generated as pointing position correction sensing values at intervals of interpolation.
  • the pointing position correction sensing values are generated at interpolation time intervals. This interpolation time interval should be shorter than the interval at which the device 4210 receives the pointing position sensing value.
  • FIG. 37 is a conceptual diagram illustrating that the device 4210 according to the fourth embodiment of the present invention communicates with an application.
  • the device 4210 may provide the application 4610 with the pointing position sensing value received from the terminal 4100 as it is or after processing.
  • the device 4210 may provide a method of providing a pointing position sensing value as it is or post-processing the application 4610, but a message transmission or a memory sharing method may be used.
  • the application 4610 may recognize the pointing position sensing value or the pointing position correction sensing value provided from the device 4210 as if it is a user manipulation signal input through a mouse or a keyboard so that the application 4610 may be controlled. .
  • 38 is a diagram illustrating that a pointing coordinate position on the display 4340 moves according to a movement manipulation of the terminal 4100.
  • the user wants to move the pointer 4701 used in the application 4610 as an arrow 4703 from the left to the right on the display 4340.
  • the user manipulates the terminal 4100 as shown in FIG. 38 (b), and the terminal transmits the pointing position sensing value of the terminal 4100 to the device 4210 according to the operation content, and the device 4210 points to the pointing position.
  • the coordinate coordinate position is calculated by applying the scaling factor.
  • the device 4210 provides a value corresponding to the calculated pointing coordinate position to the application 4610, and the application 4610 controls the pointer 4701 according to the value to display as shown in FIG. 38 (a).
  • the pointer 4701 is moved and displayed on the 4340.
  • the terminal sensor utilization apparatus 4210 according to the fourth embodiment of the present invention has been described.
  • the method using the terminal sensor according to the fourth embodiment of the present invention to be described later may be performed by the apparatus 4210 according to the embodiment of the present invention shown in FIG. 34.
  • 39 is a flowchart illustrating a method of using a terminal sensor according to a fourth embodiment of the present invention.
  • the apparatus 4210 receives a plurality of indication position sensing values of the terminal 4100 indicating each of a plurality of reference points on the display from the terminal 4100 (S4800, receiving an indication position sensing value).
  • the plurality of reference points on the display may be corner points of the display, and the indication position sensing value may be an angle sensing value of the terminal 4100.
  • the apparatus 4210 may further include controlling (not shown) displaying a figure including a plurality of reference points on the display.
  • the apparatus 4210 may determine the scale adjustment ratio using the difference in coordinate values between the plurality of reference points and the difference in position sensing values between the plurality of indicated position sensing values (S4802, determining the scale adjustment ratio).
  • the device 4210 may perform a data post-processing process for attenuating data errors with respect to a pointing position sensing value received from the terminal 4100 to perform error correction processing and to generate at least one pointing position correction sensing value ( S4804, data post-processing step).
  • the data post-processing process may include a filtering subprocess for filtering the pointing position sensing value.
  • the apparatus 4210 recognizes some or all of the sensing value error, which is a difference between the first position sensing value and the second position sensing value, as a data error with respect to the first position sensing value to reduce the data error. Can be done.
  • the data post-processing process adds or subtracts a portion of the sensing value error to the first position sensing value to generate a pointing position correction sensing value or a portion of the sensing value error to the previous pointing position correction sensing value.
  • the method may further include a correction subprocess configured to add and subtract to generate a pointing position correction sensing value.
  • the apparatus 4210 may adjust the roll direction component and the pitch component of the sensing value error in the first position.
  • the data post-processing process is performed to reduce the data error by recognizing the roll direction and the pitch direction data error with respect to the sensing value, and the first sensor is a gyro sensor and the second sensor is a geomagnetic sensor, the data post-processing step (S4804).
  • the apparatus 4210 may perform a data post-processing process to reduce the data error by recognizing the yaw direction component as the yaw direction data error with respect to the first position sensing value.
  • the data post-processing process interpolates the previous pointing position sensing value and the current pointing position sensing value to generate a plurality of interpolation correction values, and interpolates each interpolation correction value at an interpolation time interval. It can be generated as a pointing position correction sensing value.
  • the data post-processing step S4804 described above is not an essential step and can be omitted.
  • the apparatus 4210 may adjust the scale adjustment ratio with respect to the pointing position correction sensing value error-corrected with respect to the at least one pointing position sensing value or the at least one pointing position sensing value received from the terminal. Apply to calculate the pointing coordinate position on the display (S4806, pointing coordinate position calculation step) and the calculated pointing coordinate position value is provided to at least one other device or application.
  • FIG 40 is an internal block diagram of the terminal 4100 according to the fourth embodiment of the present invention.
  • the terminal 4100 transmits a plurality of indication position sensing values of the terminal 4100 indicating each of a plurality of reference points on the display of the external device to the external device 4210. Measuring, by using at least one sensor, a pointing position sensing value for manipulating the pointing coordinate position of the external device 4210, which has been determined using the plurality of indication position sensing values, and transmitting the measured position to the external device 4210.
  • a pointing position sensing value transmitter 4920, a gyro sensor 4101, an acceleration sensor 4102, an earth magnetic field sensor 4103, and the like may be included.
  • the gyro sensor 4101, the acceleration sensor 4102, and the geomagnetic field sensor 4103 are examples of sensors that the terminal 4100 may include, and the fourth embodiment of the present invention is not limited thereto.
  • the 4100 may include only one sensor of the gyro sensor 4101, the acceleration sensor 4102, and the geomagnetic sensor 4103, and may also include other types of sensors such as a proximity sensor (not shown). There may be.
  • 41 is a flowchart illustrating a sensing value providing method according to a fourth embodiment of the present invention.
  • the terminal 4100 including at least one sensor transmits a plurality of indication position sensing values of the terminal 4100 indicating each of a plurality of reference points on the display of the external device 4210 to the external device 4210.
  • At least one pointing position sensing value for manipulating a pointing coordinate position of the external device 4210 which has performed the transmitting of the indication position sensing value transmitting step (S41000) and has determined a scale adjustment ratio using a plurality of indication position sensing values.
  • a pointing position sensing value transmission step (S41002) measured by using a sensor and transmitted to the external device 4210 may be performed.
  • the terminal 4100 transmits a sensing value of an embedded sensor to the device 4210, and the device 4210 receives the sensing value to calculate a pointing coordinate position.
  • the terminal 4100 may be understood to operate as a device corresponding to device 4210 in such system 4200.
  • the terminal 4100 is not limited to the apparatus 4210 according to the fourth embodiment of the present invention described with reference to FIGS.
  • a pointing position sensing value transmitter 4920 and a device including at least one sensor should all be interpreted as a terminal 4100 according to an embodiment of the present invention.
  • the method of using a terminal sensor and a method of providing a sensing value according to the above-described embodiments of the present invention include an application basically installed in the device 4210 and the terminal 4100 (which is included in a platform that is basically installed in a terminal or an operating system). May be a program included in the back or the like).
  • the operating system of the device 4210 and / or the terminal 4100 may be an operating system such as a window or a Macintosh installed in a general PC such as a desktop, or a mobile terminal such as a smartphone or a tablet PC. It may also be a mobile-only operating system such as iOS and Android installed.
  • the method of using the terminal sensor according to the above-described embodiment of the present invention is an application (ie, a program) that is basically installed in the device 4210 and the sensing value providing method is installed in the terminal 4100 or directly by a user. It may be implemented in a computer-readable recording medium, such as device 4210 / terminal 4100.
  • a program implementing a method of using a terminal sensor by an apparatus including a display may include an instruction position sensing value receiving function for receiving a plurality of instruction position sensing values of a terminal pointing to each of a plurality of reference points on the display from the terminal. At least one pointing position sensing value or at least one pointing position sensing value received from a terminal and a scale adjustment ratio determining function for determining a scale adjustment ratio using a difference in coordinate values between a plurality of reference points and a position sensing value difference between the plurality of indicated position sensing values.
  • a pointing coordinate position calculation function for calculating a pointing coordinate position on a display by applying a scale adjustment ratio to the pointing position correction sensing value that has been error-corrected with respect to one pointing position sensing value is executed.
  • all functions corresponding to the terminal sensor utilization method according to the embodiment of the present invention described above with reference to FIGS. 32 to 39 may be executed.
  • the program in which the terminal 4100 including the at least one sensor according to the embodiment of the present invention implements the sensing value providing method includes a plurality of indication position sensing values of the terminal pointing to each of a plurality of reference points on the display of the external device.
  • a pointing position sensing value transmission function for transmitting to an external device all functions corresponding to the method for providing a sensing value according to the embodiment of the present invention described above with reference to FIGS. 40 to 41 may be executed.
  • Such a program is recorded on a recording medium readable by a computer and executed by a computer so that the above functions can be executed.
  • the above-described program includes C, C ++, which can be read by a computer processor (CPU).
  • Code may be coded in a computer language such as JAVA or machine language.
  • Such code may include a function code associated with a function or the like that defines the above-described functions, and may include execution procedure-related control code necessary for a processor of the computer to execute the above-described functions according to a predetermined procedure.
  • the code may further include memory reference-related code for additional information or media required for a processor of the computer to execute the above-described functions at which location (address address) of the computer's internal or external memory. .
  • the code indicates that the processor of the computer is a communication module of the computer (eg, a wired and / or wireless communication module).
  • the communication code may further include communication related codes such as how to communicate with any other computer or server in the remote, and what information or media should be transmitted and received during communication.
  • codes and code segments associated therewith may be used in consideration of a system environment of a computer that reads a recording medium and executes the program. It may be easily inferred or changed by.
  • a computer-readable recording medium having recorded a program as described above may be distributed to computer systems connected through a network so that computer-readable codes may be stored and executed in a distributed manner.
  • any one or more of the plurality of distributed computers may execute some of the functions presented above, and transmit the results to one or more of the other distributed computers, and receive the results.
  • the computer may also execute some of the functions presented above, and provide the results to other distributed computers as well.
  • the computer-readable recording medium recording a program for executing the terminal sensor utilization method and the sensing value providing method according to an embodiment of the present invention, for example, ROM, RAM, CDROM, magnetic tape , Floppy disks, optical media storage.
  • a computer-readable recording medium recording an application which is a program for executing the method of using a terminal sensor and a method of providing a sensing value, according to an embodiment of the present invention, may include an application store server, an application, or a corresponding service.
  • the storage medium e.g., hard disk, etc. included in the Application Provider Server, including the associated Web Server, etc., or the application providing server itself, or another computer on which the program is recorded or the storage thereof. It may be a medium.
  • a computer capable of reading a recording medium recording an application which is a program for executing a terminal sensor utilizing method and a sensing value providing method according to a fourth embodiment of the present invention, is not only a general PC such as a general desktop or a notebook computer, but also a smart phone. It may include a mobile terminal, such as a tablet PC, personal digital assistants (PDAs), and mobile communication terminals, as well as to be interpreted as any computing device.
  • PDAs personal digital assistants
  • a computer capable of reading a recording medium recording an application which is a program for executing a terminal sensor utilizing method and a sensing value providing method
  • a smart phone which is a program for executing a terminal sensor utilizing method and a sensing value providing method
  • a tablet PC a personal digital assistant (PDA)
  • PDA personal digital assistant
  • the mobile terminal may download and install the corresponding application from an application providing server including an application store server and a web server, and in some cases, the mobile terminal may be downloaded from the application providing server to a general PC. Thereafter, it may be installed in the mobile terminal through a synchronization program.
  • the fifth embodiment of the present invention relates to a game performance technique, and more particularly, to receive sensing data from a mobile terminal that senses a user's motion, to perform a game operation by a game client, and to provide feedback according to the game operation.
  • the game user operates the game using the motion sensor included in the mobile terminal and allows the mobile terminal to perform feedback according to the game operation, so that the game user is an additional device.
  • the present invention relates to a game play method and a game play server for performing the same, so that the user can enjoy a realistic game through a mobile terminal without purchasing.
  • the mobile terminal which can be utilized only as a conventional means of communication, has been utilized as a portable computing device capable of performing various functions such as the Internet, music, movies, SNS (Social Network Service) due to the appearance of smart phones.
  • SNS Social Network Service
  • a user motion detection sensor for example, a gyro sensor
  • a technology in which the user's motion is utilized as an input means of the mobile terminal has emerged.
  • a game device eg, Nintendo Wii
  • Korean Patent Publication No. 1020120070638 allows a user to operate a game output through a smartphone and a screen output device by moving the smartphone equipped with a gyroscope sensor and a gravity sensor in a free direction, rotation, and speed including left, right, up, down, front and rear.
  • the present invention relates to a smart phone application service system of a motion control method and a game method provided by the system, comprising: a moving game service server that registers and services a plurality of moving games available to a user who has made an online connection; By inputting a web address on the screen output device according to the user's operation, the receiver program is downloaded and saved from the web site of the head office.If a receiver signal is received from the outside, the receiver program interprets it through the receiver program and displays the IP address on the screen.
  • a screen output device configured to perform a game output on the screen in response to a game operation signal input from the outside; And after making an online connection to the app store, downloading and storing a receiver application, transmitting a receiver signal to the screen output device, and inputting an IP address displayed on the screen of the screen output device to the screen output device. Attempts online access, and when the online connection with the screen output device is made, consisting of a smart terminal for outputting a game operation signal for selecting a desired moving game of the moving game stored in the screen output device to proceed with the game Smartphone Application Service It's about technology.
  • the prior art provides a technology that allows a user to manipulate a game played on a PC using a gyroscope sensor and a gravity sensor of a mobile terminal.
  • a gyroscope sensor and a gravity sensor of a mobile terminal.
  • Such prior art merely provides a technique for utilizing a mobile terminal as a PC game manipulation means.
  • Korean Patent No. 10050114 when an expansion unit is connected to a controller main body provided with an analog direction key, a digital direction key, an instruction button, an instruction lever, and the like, and an expansion unit having a light emitting unit is connected, the controller can be wirelessized,
  • the present invention relates to a game device that can play a shooting game for shooting an enemy on the monitor screen.
  • the above-mentioned patent discloses a vibration type controller that can realize a shooting game with a sense of reality by applying vibration to the controller main body when the expansion unit having a vibration unit is connected to the controller main body.
  • the prior art provides a shooting game device that allows the user to feel a sense of reality by applying a vibration to the game operation device.
  • this prior art merely stops performing feedback that applies vibration to the game controller.
  • these prior arts do not provide a technique for allowing the mobile terminal to perform various feedbacks on game events occurring in the process of using the mobile terminal as a game manipulation device.
  • these prior arts are delayed according to complex data processing occurring in the process of recognizing a user's motion, and due to this delay, the mobile terminal cannot immediately provide feedback on game events occurring in the game process. It does not provide a solution to the problem.
  • the fifth embodiment of the present invention receives the sensing data from the mobile terminal for sensing the user's motion to perform a game operation by the game client, and receives the feedback according to the game operation from the game client to the sensory action by the mobile terminal
  • the game user By operating the game by using the motion sensor included in the mobile terminal, and the mobile terminal to perform the feedback according to the game operation, the game user to play the realistic game through the mobile terminal without purchasing a separate additional device
  • the present invention provides a game play method that can be enjoyed and a game play server that performs the same.
  • the fifth embodiment of the present invention receives the sensing value from at least two sensors for sensing the user's motion from the mobile terminal and processes the sensing value based on the operating speed and the sensing accuracy of each sensor to perform the operation by the game client.
  • various game events generated during a game process are generated by transmitting an action command that can be performed by the sensory action means in the mobile terminal to the mobile terminal in response to the feedback received from the game client.
  • the present invention provides a game playing method and a game playing server for performing the same, which can be performed as a realistic action through various output devices in a terminal so that the user can feel immersion in the game.
  • a game play method is performed in a game play server that can be connected to a mobile terminal that senses user motion.
  • the game performing method may further include: performing game operation by a game client through the received sensing data when sensing data associated with the sensed user motion is received; and receiving feedback on the game operation from the game client. And performing the sensory action by the mobile terminal through the received feedback.
  • a game performance server may be connected to a mobile terminal that senses user motion.
  • the game performing server may perform game operation by a game client through the received sensing data when sensing data related to the sensed user motion is received, and when feedback about the game operation is received from the game client. It includes a sensory action performing unit for performing the sensory action by the mobile terminal through the received feedback.
  • a recording medium that records a computer program related to a game playing method performed in a game playing server that may be connected to a mobile terminal that senses user motion is received when sensing data associated with the sensed user motion is received. Performing a game operation by a game client through the received sensing data; and when a feedback about the game operation is received from the game client, performing a sensory action by the mobile terminal through the received feedback. Record a computer program relating to a method of playing a game.
  • Game performance method and related technologies receives the sensing data from the mobile terminal for sensing the user's motion to perform the game operation by the game client, feedback from the game operation from the game client
  • the game is operated by the motion sensor included in the mobile terminal and the mobile terminal performs feedback according to the game operation, so that the game user does not purchase an additional device. It is possible to enjoy the realistic game through the mobile terminal without.
  • the game playing method and related technologies according to the fifth embodiment of the present invention receive a sensing value from at least two sensors for sensing a user's motion from a mobile terminal and based on the operating speed and sensing accuracy of each sensor
  • a sensing value from at least two sensors for sensing a user's motion from a mobile terminal and based on the operating speed and sensing accuracy of each sensor
  • the game performance method and related technologies according to the fifth embodiment of the present invention generate an action command that can be performed by the sensory action means in the mobile terminal with respect to the feedback received from the game client, thereby transmitting the game to the mobile terminal.
  • Various game events occurring in the process may be performed as tangible actions through various output devices in the mobile terminal so that the user may feel immersion in the game.
  • FIG. 42 is a diagram for explaining a game performance system according to a fifth embodiment of the present invention.
  • the game performance system 5100 includes a mobile terminal 5110, a game execution server 5120, and a game client 5130.
  • the mobile terminal 5110 may correspond to a portable computing device that senses a user's motion. More specifically, the mobile terminal 5110 may correspond to a portable device including a motion sensor that senses a user's motion. In a fifth embodiment, the mobile terminal 5110 may correspond to a smart phone or a tablet personal computer.
  • the motion sensor may include at least one of an acceleration sensor, an angular velocity sensor, and a geomagnetic field sensor.
  • the acceleration sensor corresponds to an apparatus capable of measuring static and dynamic accelerations on the X, Y, and Z axes to generate sensing values as data.
  • the angular velocity sensor may correspond to a device capable of generating a sensing value as data by measuring rotational angular velocity about the X, Y, and Z axes, and for example, may correspond to a gyroscope sensor.
  • the geomagnetic field sensor corresponds to a device capable of generating absolute orientation information as data.
  • the mobile terminal 5110 may be connected to the game execution server 5120 through a network.
  • the mobile terminal 5110 may be connected to the game playing server 5120 through a wired or wireless network.
  • the mobile terminal 5110 when the mobile terminal 5110 is connected to the game play server 5120 through a wireless network, one of 3G network, WiFi, blue tooth, and infrared communication network (IrDA) may be used. Can be connected via.
  • the mobile terminal 5110 will be described with reference to FIG. 43.
  • the game execution server 5120 may correspond to a computing device that may be connected to each of the mobile terminal 5110 and the game client through a network.
  • the game playing server 5120 may be included in a personal computer. That is, the game execution server 5120 may be implemented by being included in a PC.
  • the game execution server 5120 will be described with reference to FIG. 44.
  • the game client 5130 is a game providing means capable of driving a realistic action game in a game performance device, manipulating the game through a signal input by the user, and providing the operation result to the user through an output means.
  • the game client 5130 may include realistic action game software.
  • the game client 5130 may load at least a part of the game engine for driving the game. For example, at least some of the predetermined operations required to drive the realistic action game may be performed in the game client 5130.
  • the game client 5130 may be connected to the game execution server 5120 through a network.
  • the game client 5130 may be implemented in one computing device with the game performance server 5120.
  • the game client 5130 may be implemented in a storage device of the personal computer. That is, a user may experience a realistic action game according to the game playing method of the present invention through a personal computer including a game playing server 5120 and a game client 5130 and a mobile terminal 5110.
  • FIG. 43 is a block diagram illustrating a mobile terminal in FIG. 42.
  • the mobile terminal 5110 includes a sensor unit 5210, a communication unit 5220, a sensory action means 5230, and a controller 5240.
  • the sensor unit 5210 senses a user's motion. More specifically, the sensor unit 5210 may be included or attached to the mobile terminal 5110 to generate a sensing value corresponding to the motion of the user. In this case, the sensing value may include roll, pitch, and yaw data regarding the user motion.
  • the sensor unit 5210 may generate respective sensing values corresponding to a user's motion by using at least two sensors.
  • the sensor unit 5210 may include at least two of an acceleration sensor, an angular velocity sensor, and a geomagnetic field sensor.
  • the sensor unit 5210 may include a first sensor 5211 and at least one second sensor 5212, 5213,...
  • the first sensor 5211 and the at least one second sensor 5212, 5213,... May correspond to those designed to be inversely proportional to each other in terms of operating speed and sensing accuracy.
  • the first sensor 5211 may correspond to a motion sensor designed for a faster operating speed than the second sensors 5212, 5213,..., And the second sensors 5212, 5213,... ) May correspond to a motion sensor designed with a higher sensing accuracy than the first sensor 5211.
  • the operation speed may mean a time for generating a sensing value by recognizing the motion of the user
  • the sensing accuracy may mean an error range or a noise level of the sensing value that can recognize the motion of the user. That is, the first sensor 5211 corresponds to a motion sensor having the fastest operation speed among the motion sensors included in the sensor unit 5210, and the second sensors 5212 and 5213 are connected to the sensor unit 5210. It may correspond to a motion sensor having a higher sensing accuracy than the first sensor 5211 among the included motion sensors.
  • the first sensor 5211 may correspond to a gyroscope sensor
  • the second sensors 5212 and 5213 may correspond to an acceleration sensor and a geomagnetic field sensor. That is, the gyroscope sensor having the highest operating speed corresponds to the first sensor 5211, and the acceleration sensor and the geomagnetic field sensor having a lower operating speed than the first sensor but having high sensing accuracy are the second sensor 5212. , 5213).
  • the communicator 5220 may transmit the sensing value generated by the sensor unit 5210 to the game play server 5120, and receive feedback from the game play server 5120. Related contents will be described in more detail with reference to FIG. 44.
  • the sensory action means 5230 corresponds to a means for providing sensory action to a user by performing feedback received from the game play server 5120.
  • the tangible action means 5230 may include at least one of a display, a vibration sensor, a camera, and a speaker. That is, the sensory action means 5230 is a device capable of performing feedback on a specific event occurring in the course of the game, and may correspond to at least one of a screen, a vibration device, a camera, and a speaker of the mobile terminal 5110. have. Related contents will be described in more detail with reference to FIG. 44.
  • the controller 5240 controls the operation and data flow of the sensor unit 5210, the communication unit 5220, and the sensory action means 5230.
  • FIG. 44 is a block diagram illustrating a game performing server in FIG. 42.
  • the game execution server 5120 may include a game operation unit 5310, a realistic action performing unit 5320, a social network service (SNS) action performing unit 5330, and a controller 5340.
  • a game operation unit 5310 a realistic action performing unit 5320
  • a social network service (SNS) action performing unit 5330 a controller 5340.
  • SNS social network service
  • the game manipulation unit 5310 receives sensing data associated with a user motion from the mobile terminal 5110.
  • the game operation unit 5310 receives sensing data including the sensing value generated by the sensor unit 5210 of the mobile terminal 5110 from the communication unit 5220.
  • the sensing data may include roll, pitch, and yaw data representing a user's motion.
  • the game operation unit 5310 may receive a sensing value from each of at least two sensors in the mobile terminal 5110. More specifically, when the mobile terminal 5110 includes at least two motion sensors, the game operation unit 5310 is a sensing generated by each of the at least two motion sensors through the communication unit 5220 of the mobile terminal 5110 Can receive a value.
  • the mobile terminal 5110 includes a first sensor 5211 and at least one second sensor 5212, 5213, ... designed to be inversely proportional to operating speed and sensing accuracy, respectively.
  • the game manipulation unit 5310 may receive the first sensing value through the first sensor 5211 and correct the first sensing value through the at least one second sensor.
  • the first sensor 5211 included in the mobile terminal 5110 corresponds to a gyroscope sensor
  • the second sensors 5212 and 5213 may describe the game playing process according to the fifth embodiment of the present invention.
  • An example corresponding to the acceleration sensor and the geomagnetic field sensor will be described as an example. On the other hand, this description is not intended to limit the scope of the invention.
  • the game manipulation unit 5310 receives a first sensing value generated by a gyroscope sensor which is the first sensor 5211.
  • the game manipulation unit 5310 may receive the first sensing value first.
  • the game operation unit 5310 may determine roll, pitch, and yaw data included in the first sensing value.
  • the game manipulation unit 5310 may receive a second sensing value generated from an acceleration sensor and an earth magnetic field sensor corresponding to the second sensors 5212 and 5213.
  • the acceleration sensor is slower than the gyroscope sensor but is designed to have higher accuracy for roll and pitch. Therefore, the roll sensor and the pitch data are extracted from the first sensing value. It may be corrected to a sensing value included in the second sensing data generated by.
  • the geomagnetic sensor is designed with high accuracy for yaw, the yaw data may be corrected from the first sensing value to the sensing value included in the second sensing data generated by the geomagnetic sensor. have.
  • the game operation unit 5310 collects the sensing values through at least two motion sensors to accurately recognize the user's motion, and then, based on the sensing values of the motion sensor with the high speed of motion, the game operation unit 5310 is applied to another motion sensor with high accuracy. Can be corrected by the sensing value.
  • the battery efficiency of the mobile terminal 5110 can be increased, and the delay that can occur in the data processing process can be minimized to improve the game performance processing speed. You can.
  • the game operation unit 5310 performs a game operation by the game client 5130 through the sensing data received from the mobile terminal 5110. That is, the game manipulation unit 5310 converts the sensing data associated with the motion of the user into a game manipulation signal and transmits the same to the game client 5130, thereby allowing the game client 5130 to perform the game manipulation.
  • the game operation unit 5310 may receive at least two sensing values from the mobile terminal 5110 to determine sensing data, and convert the sensing data into a command for the game operation.
  • the game manipulation unit 5310 corrects at least a part of the first sensing value received through the first sensor 5211 to the second sensing value received through the second sensors 5212 and 5213, and thus the roll ( Sensing data including roll, pitch, and yaw data may be determined.
  • the game operation unit 5310 may convert the sensing data into a command that the game client 5130 may recognize as a game operation signal.
  • the sensing data representing the motion of the user may be converted into a command such as ⁇ move left ⁇ , ⁇ right move ⁇ , ⁇ fire ⁇ , ⁇ defense ⁇ , etc. that the game client 5130 may recognize as a game manipulation signal. have.
  • the game operation unit 5310 may transmit a command for game operation to the game client 5130 to allow the game client to play the game according to the user's motion.
  • the realistic action performer 5320 receives a feedback according to a game operation from the game client 5130.
  • the feedback may correspond to a game manipulation result according to a game manipulation generated by the game client 5130 in a game execution process.
  • the feedback may correspond to specific event data predefined in order to perform a specific sensory action through the mobile terminal 5110 among game data generated in the game process.
  • the game operation unit 5310 performs a game operation by the game client 5130 through the sensing data, and the realistic action performing unit 5320 generates specific event data generated in the game process from the game client 5130. Can be received as feedback.
  • the game operation unit 5310 converts the sensing data according to the user's motion into a command for game operation and transmits it to the game client 5130, and the game client In operation 5130, game data corresponding to ⁇ vehicle crash ⁇ generated by collision with another vehicle may be transmitted to the realistic action performing unit 5320 as feedback on the game operation. .
  • the game client 5130 may generate game data corresponding to ⁇ victory ⁇ and transmit it to the realistic action performer 5320. have.
  • the sensory action performer 5320 may perform the sensory action by the mobile terminal 5110 through the feedback received from the game client 5130.
  • the sensory action performing unit 5320 transmits the feedback received as a result of the game operation by the sensing data from the game client 5130 to the communication unit 5220 of the mobile terminal 5110 to realize the sensory action means 5230. ) Can perform the realistic action.
  • the sensory action refers to a change that allows the user to recognize a situation occurring in the game through at least one of the senses of sight, hearing, and touch.
  • the sensory action means 5230 is a device included in the mobile terminal 5110 and capable of performing the sensory action, for example, on at least one of a screen, a vibration device, a camera, and a speaker of the mobile terminal 5110. This may be the case.
  • the sensory action performer 5320 may use the sensory action means of the mobile terminal 5110. 5230, the sensory action may be performed through the screen, the vibration device, and the speaker.
  • the tactile action performing unit 5320 displays text corresponding to ⁇ collision ⁇ on the screen of the mobile terminal 5110, causes the vibration sensor to perform an action corresponding to ⁇ 2 second vibration ⁇ , and then operates the speaker. This allows you to play a sound equivalent to ⁇ broken glass ⁇ .
  • the sensory action performer 5320 may display the screen through the screen of the mobile terminal 5110. You can provide hints about game missions.
  • the sensory action performer 5320 may use the screen of the mobile terminal 5110. Text corresponding to ⁇ celebration ⁇ can be output, and sound corresponding to ⁇ celebration music ⁇ can be played through the speaker.
  • the sensory action performer 5320 may generate the sensory action based on a game operation result received from the game client 5130.
  • the tangible action may correspond to a command for causing the tangible action means 5230 of the mobile terminal 5110 to execute a specific event.
  • the realistic action performing unit 5320 realizes a command corresponding to [ ⁇ vibrator, 2sec ⁇ , ⁇ speaker, sound1 ⁇ , ⁇ text, and collision ⁇ ]. Can be created as a type action.
  • the sensory action performing unit 5320 may generate the sensory action command by searching for the sensory action store stored in association with the plurality of game operation results and the sensory action command.
  • the sensory action performing unit 5320 may extract the action descriptor from the game operation result to generate the realistic action command.
  • the action descriptor is included in the game operation result and corresponds to text associated with the sensory action, and serves as an identifier indicating a specific situation occurring in the game progression.
  • the realistic action performing unit 5320 may operate the game.
  • data corresponding to ⁇ victory ⁇ associated with the game user user1 can be extracted as an action descriptor.
  • the sensory action performing unit 5320 generates a sensory action command corresponding to the extracted action descriptor, and the mobile terminal 5110 outputs text corresponding to ⁇ celebration ⁇ to the screen, and the ⁇ win music to the speaker ⁇ And let the camera execute the ⁇ Front Camera Shooting ⁇ event to take a picture of the user.
  • the sensory action performer 5320 may generate an action command according to at least one sensory action means in the mobile terminal 5110.
  • the realistic action performing unit 5320 may search for the realistic action means 5230 included in the mobile terminal 5110. Can be.
  • the sensory action performing unit 5320 may display, a vibration sensor, a camera, and a speaker included in the mobile terminal 5110 when the mobile terminal 5110 is connected to the game execution server 5120 via wifi. At least one of the can be searched.
  • the sensory action performer 5320 checks the setting of the mobile terminal 5110, and when the display device is set to the power saving mode or the battery saving mode, the sensory action performer 5320 may display, the camera and Except for the speaker, the vibration sensor may be determined as the tangible action performing means 5230.
  • the SNS action performer 5330 generates social content by selecting feedback received from the game client 5130 and transmits the social content to the SNS server.
  • the SNS action performing unit 5330 may extract a predefined social descriptor from the feedback received from the game client 5130. For example, when the feedback received from the game client 5130 is data corresponding to ⁇ victory_user1, defeat_user2, gametime_300sec ⁇ , the SNS action performing unit 5330 may be [ ⁇ victory ⁇ , ⁇ user1 ⁇ as a predefined social descriptor. ], [ ⁇ defeat ⁇ , ⁇ user2 ⁇ ] data can be extracted.
  • the SNS action execution unit 5330 may generate data corresponding to [ ⁇ user1, jackpot win ⁇ , ⁇ user2, defeat defeat ⁇ ] as social content based on the extracted social descriptor and transmit the data to the SNS server.
  • the SNS server is a computing device that provides SNS, and may be associated with, for example, one of Twitter, Facebook, Cyworld, and KakaoTalk.
  • the SNS action performing unit 5330 may generate feedback of the realistic action game as social content that can be recognized by other users (eg, followers) associated with the user and provide the feedback as SNS.
  • the controller 5340 controls the operation and data flow of the game manipulation unit 5310, the realistic action performing unit 5320, and the SNS action performing unit 5330.
  • 45 is a flowchart illustrating a game playing process according to the present invention.
  • the game operation unit 5310 receives sensing data associated with the user motion from the mobile terminal 5110 (step S5410).
  • the game operation unit 5310 receives sensing data including the sensing value generated by the sensor unit 5210 of the mobile terminal 5110 from the communication unit 5220.
  • the sensing data may include roll, pitch, and yaw data representing a user's motion.
  • the game operation unit 5310 performs a game operation by the game client 5130 through the sensing data received from the mobile terminal 5110 (step S5420). That is, the game manipulation unit 5310 converts the sensing data associated with the motion of the user into a game manipulation signal and transmits the same to the game client 5130, thereby allowing the game client 5130 to perform the game manipulation. In the fifth embodiment, the game operation unit 5310 may transmit a command for game operation to the game client 5130 to allow the game client to play the game according to the user's motion.
  • the sensory action performing unit 5320 receives the feedback according to the game operation from the game client 5130 (step S5430).
  • the feedback may correspond to a game manipulation result according to a game manipulation generated by the game client 5130 in a game execution process.
  • the feedback may correspond to specific event data predefined in order to perform a specific sensory action through the mobile terminal 5110 among game data generated in the game process.
  • the game operation unit 5310 performs a game operation by the game client 5130 through the sensing data, and the realistic action performing unit 5320 generates specific event data generated in the game process from the game client 5130. Can be received as feedback.
  • the game operation unit 5310 converts the sensing data according to the user's motion into a command for game operation and transmits it to the game client 5130, and the game client In operation 5130, game data corresponding to ⁇ vehicle crash ⁇ generated by collision with another vehicle may be transmitted to the realistic action performing unit 5320 as feedback on the game operation. .
  • the game client 5130 may generate game data corresponding to ⁇ victory ⁇ and transmit it to the realistic action performer 5320. have.
  • the sensory action performer 5320 may perform the sensory action by the mobile terminal 5110 through the feedback received from the game client 5130 (step S5440).
  • the sensory action performing unit 5320 transmits the feedback received as a result of the game operation by the sensing data from the game client 5130 to the communication unit 5220 of the mobile terminal 5110 to realize the sensory action means 5230. ) Can perform the realistic action.
  • the sensory action refers to a change that allows the user to recognize a situation occurring in the game through at least one of the senses of sight, hearing, and touch.
  • the sensory action means 5230 is a device included in the mobile terminal 5110 and capable of performing the sensory action, for example, on at least one of a screen, a vibration device, a camera, and a speaker of the mobile terminal 5110. This may be the case.
  • the sensory action performer 5320 may use the sensory action means of the mobile terminal 5110. 5230, the sensory action may be performed through the screen, the vibration device, and the speaker.
  • the tactile action performing unit 5320 displays text corresponding to ⁇ collision ⁇ on the screen of the mobile terminal 5110, causes the vibration sensor to perform an action corresponding to ⁇ 2 second vibration ⁇ , and then operates the speaker. This allows you to play a sound equivalent to ⁇ broken glass ⁇ .
  • 46 is a flowchart illustrating a fifth embodiment of performing a game operation by a game client through sensing data in a game playing process of the present invention.
  • the game operation unit 5310 may receive a sensing value from each of at least two sensors in the mobile terminal 5110. More specifically, when the mobile terminal 5110 includes at least two motion sensors, the game operation unit 5310 is a sensing generated by each of the at least two motion sensors through the communication unit 5220 of the mobile terminal 5110 Can receive a value.
  • the mobile terminal 5110 includes a first sensor 5211 and at least one second sensor 5212, 5213, ... designed to be inversely proportional to operating speed and sensing accuracy, respectively.
  • the game manipulation unit 5310 may receive the first sensing value through the first sensor 5211 and correct the first sensing value through the at least one second sensor.
  • the game operation unit 5310 receives the first sensing value generated by the gyroscope sensor which is the first sensor 5211 (step S5510).
  • the game manipulation unit 5310 may receive the first sensing value first.
  • the game operation unit 5310 may determine roll, pitch, and yaw data included in the first sensing value (step S5520).
  • the game operation unit 5310 may receive a second sensing value from the acceleration sensor corresponding to the second sensor 5212 (step S5530).
  • Accelerometers have slower operating speeds than gyroscope sensors, but are designed with higher accuracy for roll and pitch, so the roll and pitch data is generated by the accelerometer at the first sensing value. It may be corrected to the sensing value included in the second sensed data (step S5540).
  • the game operation unit 5310 may receive a second sensing value from the geomagnetic field sensor corresponding to the other second sensor 5213 (step S5550). Since the geomagnetic sensor is designed with high accuracy for yaw, the yaw data may be corrected to a sensing value included in the second sensing data generated by the geomagnetic sensor in the first sensing value ( Step S500).
  • the game operation unit 5310 collects the sensing values through at least two motion sensors to accurately recognize the user's motion, and then, based on the sensing values of the motion sensor with the high speed of motion, the game operation unit 5310 is applied to another motion sensor with high accuracy. Can be corrected by the sensing value.
  • the battery efficiency of the mobile terminal 5110 can be increased, and the delay that can occur in the data processing process can be minimized to improve the game performance processing speed. You can.
  • the game operation unit 5310 performs a game operation by the game client 5130 through the sensing data received from the mobile terminal 5110. That is, the game manipulation unit 5310 converts the sensing data associated with the motion of the user into a game manipulation signal and transmits the same to the game client 5130, thereby allowing the game client 5130 to perform the game manipulation.
  • 47 is a flowchart illustrating a fifth embodiment of performing a sensory action by a mobile terminal through feedback in a game playing process of the present invention.
  • the game operation unit 5310 receives sensing data including the sensing value generated by the sensor unit 5210 of the mobile terminal 5110 from the communication unit 5220 (step S5610).
  • the game operation unit 5310 may receive at least two sensing values from the mobile terminal 5110 to determine sensing data (step S5620).
  • the game operation unit 5310 may convert the sensing data into a command for game operation (step S5630).
  • the game manipulation unit 5310 corrects at least a part of the first sensing value received through the first sensor 5211 to the second sensing value received through the second sensors 5212 and 5213, and thus the roll ( Sensing data including roll, pitch, and yaw data may be determined.
  • the game operation unit 5310 may convert the sensing data into a command that the game client 5130 may recognize as a game operation signal.
  • the sensing data representing the motion of the user may be converted into a command such as ⁇ move left ⁇ , ⁇ right move ⁇ , ⁇ fire ⁇ , ⁇ defense ⁇ , etc. that the game client 5130 may recognize as a game manipulation signal. have.
  • the game operation unit 5310 may transmit a command for game operation to the game client 5130 (step S5640).
  • the game client 5130 may perform a game according to a user's motion through a command for game operation.
  • the sensory action performing unit 5320 receives the game operation result according to the game operation from the game client 5130 as feedback (step S5650).
  • the feedback may correspond to a game manipulation result according to a game manipulation generated by the game client 5130 in a game execution process.
  • the feedback may correspond to specific event data predefined in order to perform a specific sensory action through the mobile terminal 5110 among game data generated in the game process.
  • the realistic action performing unit 5320 may extract the action descriptor from the game operation result (step S5660).
  • the action descriptor is included in the game operation result and corresponds to text associated with the sensory action, and serves as an identifier indicating a specific situation occurring in the game progression.
  • the sensory action performing unit 5320 may generate a sensory action command based on the extracted action descriptor (step S5670).
  • the sensory action performer 5320 may transmit the generated sensory action command to the mobile terminal 5110 to perform the sensory action through the sensory action means 5230.
  • a sixth embodiment of the present invention relates to a game performance technique, and more particularly, receiving sensing data associated with a shock by a user from a mobile terminal, and corresponding to shock data associated with a game operation in the received sensing data.
  • the present invention relates to a game play method and game play server capable of manipulating a game through an impact directly or indirectly applied to a mobile terminal by determining a manipulation data to operate a game.
  • the mobile terminal which can be utilized only as a conventional means of communication, has been utilized as a portable computing device capable of performing various functions such as the Internet, music, movies, SNS (Social Network Service) due to the appearance of smart phones.
  • SNS Social Network Service
  • a user motion detection sensor for example, a gyro sensor
  • a technology in which the user's motion is utilized as an input means of the mobile terminal has emerged.
  • a game device eg, Nintendo Wii
  • Korean Patent Publication No. 1020120070638 allows a user to operate a game output through a smartphone and a screen output device by moving the smartphone equipped with a gyroscope sensor and a gravity sensor in a free direction, rotation, and speed including left, right, up, down, front and rear.
  • the present invention relates to a smart phone application service system of a motion control method and a game method provided by the system, comprising: a moving game service server that registers and services a plurality of moving games available to a user who has made an online connection; By inputting a web address on the screen output device according to the user's operation, the receiver program is downloaded and saved from the web site of the head office.If a receiver signal is received from the outside, the receiver program interprets it through the receiver program and displays the IP address on the screen.
  • a screen output device configured to perform a game output on the screen in response to a game operation signal input from the outside; And after making an online connection to the app store, downloading and storing a receiver application, transmitting a receiver signal to the screen output device, and inputting an IP address displayed on the screen of the screen output device to the screen output device. Attempts online access, and when the online connection with the screen output device is made, consisting of a smart terminal for outputting a game operation signal for selecting a desired moving game of the moving game stored in the screen output device to proceed with the game Smartphone Application Service It's about technology.
  • the prior art provides a technology that allows a user to manipulate a game played on a PC using a gyroscope sensor and a gravity sensor of a mobile terminal.
  • a gyroscope sensor and a gravity sensor of a mobile terminal.
  • Such prior art merely provides a technique for utilizing a mobile terminal as a PC game manipulation means.
  • Korean Patent Laid-Open Publication No. 1020120017333 relates to a mobile terminal capable of accurately recognizing a user's motion when stopped or moved, and more particularly, to a method of recognizing and storing an initial reference point; Recognizing a motion input by a user according to an initial reference point and executing a predetermined application; Compensating the initial reference point by calculating the displacement of the motion relative to the initial reference point when a specific motion having a direction change is input during execution of the application, and automatically changes the amount of change in the reference position (or direction) at the time of motion input.
  • User's motion can be accurately recognized by checking.
  • geomagnetic sensor geomagnetic sensor
  • acceleration sensor during movement, it automatically recognizes vector displacement with respect to initial reference value to control various functions of mobile terminal without additional user's setting. It can work.
  • the prior art provides a mobile terminal capable of accurately recognizing a user's motion.
  • the prior art does not provide a game performance technology that recognizes a user's motion and utilizes the same, but merely provides a correction technology for an initial reference value by calculating a displacement of a specific motion by the user.
  • the sixth embodiment of the present invention receives the sensing data associated with the impact by the user from the mobile terminal, and determines the operation data that can be processed by the game client from the received sensing data to operate the game, so that the user
  • the present invention provides a game execution method and a game execution server capable of manipulating a game through an impact applied directly or indirectly.
  • the sensing associated with the game operation except for the sensing value irrelevant to the game operation It is intended to provide a game execution method and a game execution server that performs the same, by extracting a value and preventing a malfunction by a user.
  • the sixth embodiment of the present invention receives a motion sensing value from each of at least two motion sensors in the mobile terminal and processes the sensing value based on the motion speed and the sensing accuracy of each motion sensor to perform game operation by the game client.
  • a game playing method is performed in a game playing server that can be connected with a mobile terminal.
  • the game performing method may further include receiving sensing data associated with a shock by a user from the mobile terminal, determining manipulation data corresponding to shock data associated with a game manipulation from the received sensing data, and determining the manipulation data through the determined manipulation data. Performing a game operation by the game client.
  • the game performance server may be connected with a mobile terminal.
  • the game performing server may include: a sensing data receiver configured to receive sensing data associated with a shock by a user from the mobile terminal; a manipulation data determiner configured to determine manipulation data corresponding to shock data associated with a game manipulation from the received sensing data; And a game operation unit that performs a game operation by the game client through the determined operation data.
  • a recording medium recording a computer program relating to a game playing method performed in a game playing server that can be connected to a mobile terminal, receives sensing data associated with an impact by a user from the mobile terminal, Determining operation data corresponding to impact data associated with a game operation from the received sensing data; and performing a game operation by a game client through the determined operation data.
  • the game performance method and related technologies according to the sixth embodiment of the present invention receive sensing data associated with an impact by a user from a mobile terminal, and determine manipulation data that can be processed by the game client from the received sensing data. By manipulating the game, it is possible to allow the user to manipulate the game through an impact that is directly or indirectly applied to the mobile terminal.
  • the game performance method and related technologies according to the sixth embodiment of the present invention determine the operation data corresponding to the impact data associated with the game operation from the sensing data received from the mobile terminal to operate the game, thereby sensing the irrelevant to the game operation Except for the value, the sensing value associated with the game operation may be extracted to prevent malfunction by the user.
  • the game playing method and related technologies according to the sixth embodiment of the present invention receive a motion sensing value from each of at least two motion sensors in the mobile terminal and adjust the sensing value based on the motion speed and the sensing accuracy of each motion sensor.
  • FIG. 48 is a diagram illustrating a game performance system according to a sixth embodiment of the present invention.
  • the game performance system 6100 includes a mobile terminal 6110, a game execution server 6120, and a game client 6130.
  • the mobile terminal 6110 may correspond to a portable computing device capable of sensing a shock by a user.
  • the mobile terminal 6110 may include at least one sensor capable of sensing a physical phenomenon that may be caused by the shock. This may be the case.
  • the impact directly applied by the user to the mobile terminal 6110 may correspond to the impact through direct contact with the mobile terminal 6110 by the user with a finger, palm, fist, or stick.
  • an impact applied indirectly by the user to the mobile terminal 6110 may cause the user to lower the mobile terminal 6110 on the floor, desk, or the like, and the user may hit the floor, desk, etc. with a finger, palm, fist, or stick.
  • the mobile terminal 6110 may correspond to a secondary shock applied to the mobile terminal 6110 through a shock transmission medium (here, a floor, a desk, etc.).
  • the physical phenomenon that may occur due to the shock may correspond to at least one of the motion (movement) of the mobile terminal 6110 and the sound generated by the shock.
  • the mobile terminal 6110 may correspond to a smart phone or a tablet personal computer.
  • the mobile terminal 6110 may include at least one of a motion sensor and a sound sensor.
  • the mobile terminal 6110 may detect the motion of the mobile terminal 6110 for the shock through a motion sensor (eg, a gyroscope sensor). And sense a sound for the shock through a sound sensor (eg, a microphone).
  • a motion sensor eg, a gyroscope sensor
  • a sound sensor eg, a microphone
  • the mobile terminal 6110 may be a motion sensor. Through sensing the motion (for example, up and down vibration) of the mobile terminal 6110 for the shock, and through the sound sensor can sense the sound for the shock.
  • the motion sensor may include at least one of an acceleration sensor, an angular velocity sensor, and a geomagnetic field sensor.
  • the acceleration sensor corresponds to an apparatus capable of measuring static and dynamic accelerations on the X, Y, and Z axes to generate sensing values as data.
  • the angular velocity sensor may correspond to a device capable of generating a sensing value as data by measuring rotational angular velocity about the X, Y, and Z axes, and for example, may correspond to a gyroscope sensor.
  • the geomagnetic field sensor corresponds to a device capable of generating absolute orientation information as data.
  • the Mossen sensor may generate a motion sensing value for the movement of the mobile terminal 6110 when a direct or indirect shock is applied to the mobile terminal 6110.
  • the sound sensor may correspond to a microphone.
  • the sound sensor may generate a sound sensing value for sound generated near the mobile terminal 6110.
  • the mobile terminal 6110 may be connected to the game performance server 6120 through a network. In one embodiment, the mobile terminal 6110 may be connected to the game play server 6120 through a wired or wireless network. In one embodiment, when the mobile terminal 6110 is connected to the game performance server 6120 through a wireless network, through one of the 3G network, WiFi, Bluetooth (blue tooth) and infrared communication network (IrDA) Can be connected.
  • 3G network WiFi, Bluetooth (blue tooth) and infrared communication network (IrDA)can be connected.
  • the mobile terminal 6110 will be described with reference to FIG. 49.
  • the game execution server 6120 may correspond to a computing device that may be connected to each of the mobile terminal 6110 and the game client through a network.
  • the game performance server 6120 may be included in a personal computer or a mobile terminal 6110.
  • the game performance server 6120 may be implemented in a PC or smart phone.
  • the game play server 6120 when the game play server 6120 is included and implemented in a PC, the game play server 6120 is connected to the mobile terminal 6110 through a wireless network, and a game client (eg, installed in the PC) For example, the coin handing game program) can be connected via a network. That is, the user may manipulate the PC game by directly or indirectly impacting the mobile terminal 6110.
  • a game client eg, installed in the PC
  • the coin handing game program can be connected via a network. That is, the user may manipulate the PC game by directly or indirectly impacting the mobile terminal 6110.
  • the mobile terminal 6110 may be configured to each of the game execution server 6120 described below with reference to FIG. 50.
  • Components, and can run a preinstalled game client eg, a coin flip game program. That is, the user may directly or indirectly impact the mobile terminal 6110 to manipulate a game application installed in the mobile terminal 6110.
  • the game execution server 6120 will be described with reference to FIG. 50.
  • the game client 6130 is a game providing means capable of driving a game in a game performance device, manipulating the game through a signal input by the user, and providing the operation result to the user through an output means.
  • game client 6130 may correspond to game software.
  • the game client 6130 (for example, a coin flip game program) manipulates the game through the sensing data received from the mobile terminal 6110, and the operation result is displayed. It can be output through the monitor which is an output means.
  • the game client 6130 may load at least a portion of the game engine for driving the game. For example, at least some of the predetermined operations required to run the game may be performed in the game client 6130.
  • the game client 6130 may be connected to the game execution server 6120 through a network.
  • game client 6130 may be implemented within one computing device with game performance server 6120.
  • the game client 6130 may be implemented in the storage device of the PC.
  • FIG. 49 is a block diagram illustrating a mobile terminal in FIG. 48.
  • the mobile terminal 6110 may include a sensor unit 6210, a communication unit 6220, a sensory action means 6230, and a controller 6240.
  • the sensor part 6210 senses a shock by a user. More specifically, the sensor unit 6210 may be included or attached to the mobile terminal 6110 to generate a sensing value corresponding to a shock by the user. Here, the sensor unit 6210 may correspond to at least one of a motion (movement) of the mobile terminal 6110 and a sound generated due to the impact on the impact applied directly or indirectly to the mobile terminal 6110. .
  • the sensor unit 6210 may include at least one of a motion sensor 6211 and a sound sensor 6212.
  • the motion sensor 6211 may generate a motion sensing value corresponding to an impact applied directly or indirectly to the mobile terminal 6110. For example, when the user directly impacts the mobile terminal 6110, the motion sensor 6211 may use roll, pitch, and yaw data corresponding to the movement of the mobile terminal 6110. Or vector data including a size and a direction corresponding to the movement of the mobile terminal 6110.
  • the motion sensor 6251 may include at least one of an acceleration sensor, an angular velocity sensor, and a geomagnetic field sensor.
  • motion sensor 6251 may include at least two motion sensors.
  • the motion sensor 6211 may include at least two of an acceleration sensor, an angular velocity sensor, and a geomagnetic field sensor.
  • the motion sensor 6251 may include a first motion sensor and at least one second motion sensor.
  • the first motion sensor and the at least one second motion sensor may correspond to ones designed to be inversely proportional to each other in terms of operating speed and sensing accuracy.
  • the first motion sensor may correspond to a motion sensor designed to have a faster operating speed than the second motion sensor
  • the second motion sensor corresponds to a motion sensor designed for higher sensing accuracy than the first motion sensor.
  • the operation speed refers to a time for generating a motion sensing value by recognizing the motion of the mobile terminal 6110
  • the sensing accuracy refers to an error range or a noise of a motion sensing value that can recognize the motion of the mobile terminal 6110.
  • the first motion sensor may correspond to a gyroscope sensor and the second sensor may correspond to an acceleration sensor and a geomagnetic sensor. That is, the gyroscope sensor having the highest operating speed corresponds to the first motion sensor, and the acceleration sensor and the geomagnetic field sensor corresponding to the lower motion speed than the first motion sensor but having high sensing accuracy correspond to the second motion sensor. can do.
  • the sound sensor 6212 may generate a sound sensing value corresponding to an impact applied directly or indirectly to the mobile terminal 6110.
  • the sound sensor 6212 may correspond to a microphone included in the mobile terminal 6110.
  • the sound sensor 6212 may generate a sound sensing value corresponding to a sound generated in the vicinity of the mobile terminal 6110. For example, if the user indirectly impacts the mobile terminal 6110 by placing the mobile terminal 6110 on the desk and lowering the desk with the palm of the hand, the sound sensor 6212 may cause a collision between the user's palm and the desk. You can sense the sound caused by.
  • the sound sensor 6212 may generate a sound sensing value including at least one of a magnitude and a frequency of the sound due to the shock.
  • the communication unit 6220 may transmit the sensing value generated by the sensor unit 6210 to the game performance server 6120, and receive feedback about a game operation from the game performance server 6120. Related contents will be described in more detail with reference to FIG. 50.
  • the sensory action means 6230 corresponds to a means for providing a sensory action to a user by performing feedback on a game operation received from the game play server 6120.
  • tangible action means 6230 may include at least one of a display, a vibration sensor, a camera, and a speaker. That is, the sensory action means 6230 is a device capable of performing feedback on a specific event occurring in the course of the game, and may correspond to at least one of a screen, a vibration device, a camera, and a speaker of the mobile terminal 6110. have. Related contents will be described in more detail with reference to FIG. 50.
  • the controller 6240 controls the operation and data flow of the sensor unit 6210, the communication unit 6220, and the sensory action means 6230.
  • FIG. 50 is a block diagram illustrating a game performing server in FIG. 48.
  • the game execution server 6120 may include a sensing data receiver 6310, a manipulation data determiner 6320, a game manipulation unit 6330, a realistic action performer 6340, and a controller 6350. .
  • the sensing data receiver 6310 receives sensing data associated with an impact by the user from the mobile terminal 6110.
  • the sensing data receiver 6310 receives sensing data including the sensing value generated by the sensing unit 6210 of the mobile terminal 6110 from the communication unit 6220.
  • the sensing data may include a sensing value for an impact applied directly or indirectly to the mobile terminal 6110 by the user.
  • the sensing data receiver 6310 may receive a sensing value for the direct or indirect shock sensed through at least one sensor in the mobile terminal 6110.
  • the mobile terminal 6110 may include at least one of a motion sensor 6211 and a sound sensor 6212.
  • the sensing data receiver 6310 may receive at least one of a motion sensing value sensed by the motion sensor 6211 and a sound sensing value sensed by the sound sensor 6212 in the mobile terminal 6110. Can be.
  • the motion sensor 6121 of the mobile terminal 6110 may use the mobile terminal (
  • the motion sensing value may be generated by sensing the movement in the vertical direction of 6110.
  • the sound sensor 6212 may generate a sound sensing value by sensing a sound due to a collision between the desk and the palm of the user.
  • the sensing data receiver 6310 may receive sensing data including at least one of a motion sensing value and a sound sensing value through the communication unit 6220 of the mobile terminal 6110.
  • the sensing data receiver 6310 may receive a motion sensing value generated from each of at least two motion sensors 6211 in the mobile terminal 6110.
  • the motion sensor 6211 may include at least two of an acceleration sensor, an angular velocity sensor, and a geomagnetic field sensor.
  • the sensing data receiver 6310 may include a first motion sensor.
  • the first sensing value may be received through the motion sensor and the second motion sensing value may be received through the at least one second motion sensor to correct the first motion sensing value.
  • the first motion sensor included in the mobile terminal 6110 corresponds to a gyroscope sensor
  • the second motion sensor corresponds to an acceleration sensor and a geomagnetic field sensor for explaining a game playing process according to the sixth embodiment of the present invention. Will be described as an example. On the other hand, this description is not intended to limit the scope of the invention.
  • the sensing data receiver 6310 receives a first motion sensing value generated by a gyroscope sensor which is a first motion sensor.
  • the sensing data receiver 6310 may receive the first motion sensing value first.
  • the sensing data receiver 6310 may receive roll, pitch, and yaw data included in the first motion sensing value.
  • the sensing data receiver 6310 may receive a second motion sensing value generated from an acceleration sensor and a geomagnetic sensor corresponding to the second motion sensor.
  • the acceleration sensor is slower than the gyroscope sensor, but the accuracy of the roll and the pitch is designed to be higher, so that the roll and pitch data is accelerated from the first motion sensing value.
  • the roll and pitch data included in the second motion sensing data generated by the sensor may be corrected.
  • the geomagnetic sensor is designed with high accuracy for yaw, the yaw data is included in the second motion sensing value generated by the geomagnetic sensor in the first motion sensing value. You can correct it with data.
  • the sensing data receiver 6310 collects motion sensing values through at least two motion sensors 6211 so as to accurately recognize the impact on the mobile terminal 6110, and senses the motion by the fast motion sensor. Based on the value, it may be corrected by a motion sensing value by another motion sensor with high accuracy.
  • the manipulation data determiner 6320 determines manipulation data corresponding to the shock data from the sensing data received from the mobile terminal 6110.
  • the shock data may correspond to data including a predetermined specific condition for extracting a sensing value associated with a game operation from the sensing data.
  • the manipulation data may correspond to data that can be recognized by the game client to manipulate a specific object on the game.
  • the manipulation data determination unit 6320 may have a sinusoidal waveform in the vertical direction (z-axis) that decreases exponentially from the mobile terminal 6110. It may receive a motion sensing value corresponding to. That is, the manipulation data determiner 6320 may receive a motion sensing value corresponding to the movement of the mobile terminal 6110 with respect to the up and down vibration movement.
  • the manipulation data determiner 6320 may determine, as manipulation data, a motion sensing value corresponding to preset shock data in order to extract only manipulation required to flip coins in a coin flip game. That is, since only the vibration in the first substantial direction among the up and down vibration motions of the mobile terminal 6110 is a motion associated with the flipping operation, the motion sensing value in the upper direction of the initial maximum value is set in advance as the shock data, and the operation The data determiner 6320 may determine, as manipulation data, a sensing value corresponding to shock data in the received sensing data.
  • the impact data can be variously set for precisely manipulating (inverting) a specific object (coin) on the game.
  • the shock data may not be detected depending on the performance of the motion sensor 6211, so that the shock data is a motion sensing value of the vertical upper direction and a sound sensing value of a specific frequency.
  • a general frequency band due to a collision of a desk and a palm For example, a general frequency band due to a collision of a desk and a palm.
  • the game execution server 6120 performs a game of passing a ticket
  • the manipulation data determining unit 6320 may determine a sound sensing value for the corresponding sound from the mobile terminal 6110. Can be received.
  • the manipulation data determiner 6320 may determine, as manipulation data, a motion sensing value corresponding to the preset shock data in order to extract only the manipulation required to pass the ticket in the game. That is, the sound sensing value corresponding to the maximum loudness sound is previously set as the shock data, and the manipulation data determiner 6320 may determine the sensing value corresponding to the impact data from the received sensing data as the manipulation data.
  • the impact data can be set in various ways to precisely manipulate (turn over) a specific object (crust) on the game.
  • the shock data may be set as a frequency range corresponding to the sound volume of a specific range and the burst sound during human development.
  • the manipulation data determiner 6320 may extract a sensing value corresponding to the shock data from the sensing data received from the mobile terminal 6110, and determine the extracted sensing value as manipulation data for game manipulation.
  • the shock data may include at least one of a vector pattern and a sound pattern.
  • the vector pattern may include a specific magnitude and direction for the motion sensing value
  • the sound pattern may include a specific magnitude and frequency for the sound sensing value.
  • the impact data may be implemented as data of [0,0,3] corresponding to a motion sensing value of size 3 or more in the vertical upper direction (z axis) in a three-dimensional space (x, y, z axis).
  • the shock data may be implemented as data of [100hz, 3db] corresponding to a frequency corresponding to a rupture sound and a size of a sound corresponding to 3db during human development.
  • the vector pattern and the sound pattern correspond to a pattern in which the sound caused by the motion and the impact of the mobile terminal 6110 associated with the game operation is preset in the impact applied to the mobile terminal 6110 to manipulate a specific object in the game.
  • Means data
  • the vector pattern may be defined as a vector pattern for roll, pitch, and yaw data. That is, the vector pattern can be set as a specific range for each rotational angular velocity of the x, y and z axes as well as the vector for the three-dimensional space.
  • the vector pattern is associated with a motion sensing value and may include at least one of a motion range and a motion direction in a preset range.
  • the vector pattern is data of [0,0,3_5] corresponding to a motion sensing value of size 3 or more and 5 or less in a vertical upper direction (z-axis) in a three-dimensional space (x, y, z axis). Can be implemented.
  • the sound pattern is associated with a sound sensing value and may include at least one of a sound size and a frequency in a preset range.
  • the sound pattern may be implemented as data of [100_150hz, 3_5db] corresponding to the frequency domain range corresponding to the rupture sound during human development and the size of the sound corresponding to 3 to 5 db.
  • the manipulation data determiner 6320 may extract sensing values corresponding to at least one of the vector pattern and the sound pattern included in the shock data from the sensing data and determine the manipulation data for the manipulation of the game.
  • the manipulation data determiner 6320 may correct at least one of a preset vector pattern and a sound pattern based on the sensing data. This process is a sophisticated game operation before performing the game because the motion of the mobile terminal 6110 corresponding to the impact on the mobile terminal 6110 and the sound due to the impact may change depending on the surrounding environment at the time of game execution. This is to reset the shock data.
  • the manipulation data determiner 6320 may include a specific range included in the vector pattern. At least one of a sound range and a frequency of a specific range included in the motion size, the motion direction, and the sound pattern may be changed.
  • the manipulation data determiner 6320 may extract a sensing value corresponding to the impact data from the sensing data, and generate a game manipulation instruction that may be processed by the game client based on the extracted sensing value.
  • the game manipulation instruction may be associated with a game manipulation vector capable of manipulating a specific object in the game.
  • the manipulation data determiner 6320 may generate a game manipulation instruction corresponding to [up, 5], which is recognized by the game client and is associated with a game manipulation vector corresponding to size 5 of the vertical top direction in the game.
  • the game client may flip the coin by applying a size 5 force to the coin in the upper direction through the game operation command.
  • the vector pattern and the game manipulation vector may be variously set according to the game.
  • the vector pattern and the game manipulation vector may be x, Various combinations may be set for the y and z axes.
  • the game operation unit 6330 performs a game operation by the game client 6130 through the operation data determined by the operation data determination unit 6320.
  • the manipulation data determiner 6320 determines manipulation data corresponding to impact data associated with the game manipulation from the sensing data.
  • the operation data corresponds to a command that can be recognized by the game client 6130 and can manipulate a specific object on the game.
  • the game operation unit 6330 may transmit operation data to the game client 6130 to allow the game client 6130 to manipulate a specific object.
  • the game may be manipulated through the sensing value for the shock.
  • the sensory action performing unit 6340 receives the specific event data generated in the game process from the game client 6130 as feedback, and realizes through sensory action means 6230 included in the mobile terminal 6110 through the feedback. Type actions can be performed. That is, the sensory action performing unit 6340 may use the mobile terminal 6110 as a means for game manipulation and a feedback device for game manipulation.
  • the realistic action performing unit 6320 is performed.
  • the realistic action performing unit 6320 May receive event data corresponding to [coin flip] from the game client 6130 as feedback.
  • the sensory action performing unit 6340 generates data corresponding to ⁇ vibration, 3 seconds ⁇ which can cause the [vibration device] that is the sensory action means 6230 to vibrate and transmits the data to the mobile terminal 6110. can do. That is, the sensory action performing unit 6340 may allow the mobile terminal 6110 to perform a specific operation with respect to a specific event occurring in the game progression, so that the user may feel as if the user flips the coin.
  • the realistic action performing unit 6340 may receive event data corresponding to the [best point] as feedback.
  • the sensory action performing unit 6340 may output text corresponding to ⁇ celebration ⁇ through the display device of the mobile terminal 6110 and may play sound corresponding to ⁇ celebration music ⁇ through the speaker.
  • the sensory action performer 6340 may transmit the user's score to a friend (eg, a follower) of the user through an SNS application installed in the mobile terminal 6110.
  • the controller controls an operation and a flow of data of the sensing data receiver 6310, the manipulation data determiner 6320, the game manipulation unit 6330, and the personalization setting profile transmitter 250.
  • 51 is a flowchart illustrating a game execution process according to the present invention.
  • the sensing data receiver 6310 receives sensing data associated with an impact by the user from the mobile terminal 6110 (step S6410).
  • the sensing data receiver 6310 receives sensing data including the sensing value generated by the sensing unit 6210 of the mobile terminal 6110 from the communication unit 6220.
  • the sensing data may include a sensing value for an impact applied directly or indirectly to the mobile terminal 6110 by the user.
  • the sensing data receiver 6310 may receive a sensing value for the direct or indirect shock sensed through at least one sensor in the mobile terminal 6110.
  • the mobile terminal 6110 may include at least one of a motion sensor 6211 and a sound sensor 6212.
  • the sensing data receiver 6310 may receive at least one of a motion sensing value sensed by the motion sensor 6211 and a sound sensing value sensed by the sound sensor 6212 in the mobile terminal 6110. Can be.
  • the sensing data receiver 6310 may receive a motion sensing value generated from each of at least two motion sensors 6211 in the mobile terminal 6110.
  • the motion sensor 6211 may include at least two of an acceleration sensor, an angular velocity sensor, and a geomagnetic field sensor.
  • the sensing data receiver 6310 may include a first motion sensor.
  • the first sensing value may be received through the motion sensor and the second motion sensing value may be received through the at least one second motion sensor to correct the first motion sensing value.
  • the manipulation data determination unit 6320 determines manipulation data corresponding to the shock data from the sensing data received from the mobile terminal 6110 (step S6420).
  • the shock data may correspond to data including a predetermined specific condition for extracting a sensing value associated with a game operation from the sensing data.
  • the manipulation data may correspond to data that can be recognized by the game client to manipulate a specific object on the game.
  • the manipulation data determination unit 6320 may have a sinusoidal waveform in the vertical direction (z-axis) that decreases exponentially from the mobile terminal 6110. It may receive a motion sensing value corresponding to. That is, the manipulation data determiner 6320 may receive a motion sensing value corresponding to the movement of the mobile terminal 6110 with respect to the up and down vibration movement.
  • the manipulation data determiner 6320 may determine, as manipulation data, a motion sensing value corresponding to preset shock data in order to extract only manipulation required to flip coins in a coin flip game. That is, since only the vibration in the first substantial direction among the up and down vibration motions of the mobile terminal 6110 is a motion associated with the flip operation, the motion sensing value in the upper direction of the initial maximum value is set in advance as the shock data, and the operation is performed.
  • the data determiner 6320 may determine, as manipulation data, a sensing value corresponding to shock data in the received sensing data.
  • the manipulation data determiner 6320 may extract a sensing value corresponding to the shock data from the sensing data received from the mobile terminal 6110, and determine the extracted sensing value as manipulation data for game manipulation.
  • the manipulation data determiner 6320 may extract a sensing value corresponding to the impact data from the sensing data, and generate a game manipulation instruction that may be processed by the game client based on the extracted sensing value.
  • the game manipulation instruction may be associated with a game manipulation vector capable of manipulating a specific object in the game.
  • the manipulation data determiner 6320 may generate a game manipulation instruction corresponding to [up, 5], which is recognized by the game client and is associated with a game manipulation vector corresponding to size 5 of the vertical top direction in the game.
  • the game client may flip the coin by applying a size 5 force to the coin in the upper direction through the game operation command.
  • the game operation unit 6330 performs a game operation by the game client 6130 through the operation data determined by the operation data determination unit 6320 (step S6430).
  • the manipulation data determiner 6320 determines manipulation data corresponding to impact data associated with the game manipulation from the sensing data.
  • the operation data corresponds to a command that can be recognized by the game client 6130 and can manipulate a specific object on the game.
  • the game operation unit 6330 may transmit operation data to the game client 6130 to allow the game client 6130 to manipulate a specific object.
  • the game may be manipulated through the sensing value for the shock.
  • FIG. 52 is a flowchart illustrating a game playing process according to an embodiment of the present invention.
  • the sensing data receiver 6310 may receive at least one of a motion sensing value and a sound sensing value associated with an impact by the user from the mobile terminal 6110 (step S6510).
  • the motion sensor 6211 of the mobile terminal 6110 may generate a motion sensing value by sensing a movement in the vertical direction of the mobile terminal 6110 according to the corresponding impact.
  • the sound sensor 6212 may generate a sound sensing value by sensing a sound due to a collision between the desk and the palm of the user.
  • the sensing data receiver 6310 may receive sensing data including at least one of a motion sensing value and a sound sensing value through the communication unit 6220 of the mobile terminal 6110.
  • the manipulation data determiner 6320 may extract a sensing value corresponding to at least one of the vector pattern and the sound pattern included in the shock data from the sensing data (step S6520).
  • the shock data may include at least one of a vector pattern and a sound pattern.
  • the vector pattern may include a specific magnitude and direction for the motion sensing value
  • the sound pattern may include a specific magnitude and frequency for the sound sensing value.
  • the impact data may be implemented as data of [0,0,3] corresponding to a motion sensing value of size 3 or more in the vertical upper direction (z axis) in a three-dimensional space (x, y, z axis).
  • the shock data may be implemented as data of [100hz, 3db] corresponding to a frequency corresponding to a rupture sound and a size of a sound corresponding to 3db during human development.
  • the vector pattern may be defined as a vector pattern for roll, pitch, and yaw data. That is, the vector pattern can be set as a specific range for each rotational angular velocity of the x, y and z axes as well as the vector for the three-dimensional space.
  • the vector pattern is associated with a motion sensing value and may include at least one of a motion range and a motion direction in a preset range.
  • the vector pattern is data of [0,0,3_5] corresponding to a motion sensing value of size 3 or more and 5 or less in a vertical upper direction (z-axis) in a three-dimensional space (x, y, z axis). Can be implemented.
  • the sound pattern is associated with a sound sensing value and may include at least one of a sound size and a frequency in a preset range.
  • the sound pattern may be implemented as data of [100_150hz, 3_5db] corresponding to the frequency domain range corresponding to the rupture sound during human development and the size of the sound corresponding to 3 to 5 db.
  • the manipulation data determiner 6320 may extract sensing values corresponding to at least one of the vector pattern and the sound pattern included in the shock data from the sensing data to determine the manipulation data for game manipulation (step S6530).
  • the manipulation data determiner 6320 may extract a sensing value corresponding to the impact data from the sensing data, and generate a game manipulation instruction that may be processed by the game client based on the extracted sensing value (step S6540).
  • the game manipulation instruction may be associated with a game manipulation vector capable of manipulating a specific object in the game.
  • the manipulation data determiner 6320 may generate a game manipulation instruction corresponding to [up, 5], which is recognized by the game client and is associated with a game manipulation vector corresponding to size 5 of the vertical top direction in the game.
  • the game client may flip the coin by applying a size 5 force to the coin in the upper direction through the game operation command.
  • the game operation unit 6330 performs a game operation by the game client 6130 through the operation data determined by the operation data determination unit 6320 (step S6550).
  • the manipulation data determiner 6320 determines manipulation data corresponding to impact data associated with the game manipulation from the sensing data.
  • the operation data corresponds to a command that can be recognized by the game client 6130 and can manipulate a specific object on the game.
  • the game operation unit 6330 may transmit operation data to the game client 6130 to allow the game client 6130 to manipulate a specific object.
  • the game may be manipulated through the sensing value for the shock.
  • the sensory action performing unit 6340 may receive, as feedback, specific event data generated in the game process from the game client 6130 (step S6560).
  • the sensory action performing unit 6340 may perform the sensory action through the sensory action means 6230 included in the mobile terminal 6110 through the received feedback (step S6570). That is, the sensory action performing unit 6340 may use the mobile terminal 6110 as a means for game manipulation and a feedback device for game manipulation.
  • the realistic action performing unit 6320 is performed.
  • the realistic action performing unit 6320 May receive event data corresponding to [coin flip] from the game client 6130 as feedback.
  • the sensory action performing unit 6340 generates data corresponding to ⁇ vibration, 3 seconds ⁇ which can cause the [vibration device] that is the sensory action means 6230 to vibrate and transmits the data to the mobile terminal 6110. can do. That is, the sensory action performing unit 6340 may allow the mobile terminal 6110 to perform a specific operation with respect to a specific event occurring in the game progression, so that the user may feel as if the user flips the coin.
  • the realistic action performing unit 6340 may receive event data corresponding to the [best point] as feedback.
  • the sensory action performing unit 6340 may output text corresponding to ⁇ celebration ⁇ through the display device of the mobile terminal 6110 and may play sound corresponding to ⁇ celebration music ⁇ through the speaker.
  • the sensory action performer 6340 may transmit the user's score to a friend (eg, a follower) of the user through an SNS application installed in the mobile terminal 6110.
  • 53 is a diagram illustrating an example of a game performance system according to a sixth embodiment of the present invention.
  • the game performance system 6100 may be implemented by including a game performance server 6120 and a game client 6130 in a personal computer (PC).
  • the mobile terminal 6110 may be connected to a PC through a wireless network and connected to the game play server 6120, and the game client 6130 may be connected to a game play server 6120 through a wired network inside the PC. . That is, the user may play a game installed in the PC and manipulate the game by directly or indirectly impacting the mobile terminal 6110.
  • 54, 55, and 56 are views illustrating an example of a game screen for explaining a game playing process according to the sixth embodiment of the present invention.
  • 54, 55, and 56 show a screen on which a game that can be performed according to the sixth embodiment of the present invention is performed, and are not intended to limit the scope of the present invention.
  • the game execution server 6120 may be connected to a game client 6130 corresponding to a coin flip game program to execute a coin flip game.
  • the sensing data receiver 6310 may receive sensing data corresponding to an impact applied directly or indirectly to the mobile terminal 6110 by the user.
  • the sensing data may include a motion sensing value corresponding to a vertical vibration movement of the mobile terminal 6110 and a sound sensing value corresponding to a sound due to an impact.
  • the manipulation data determiner 6320 may extract a sensing value associated with a manipulation of flipping a coin in a game and determine the manipulation data as manipulation data.
  • the manipulation data determiner 6320 may determine, as manipulation data, a motion sensing value having a maximum magnitude value or a sound sensing value corresponding to a preset specific frequency range among vertical vibration movements of the mobile terminal 6110.
  • the game operation unit 6330 may generate a game operation command that the game client can recognize the determined operation data to hand over the coin in the game.
  • the game execution server 6120 may be connected to a game client 6130 corresponding to a game game to play a ticket game.
  • the sensing data receiver 6310 may receive sensing data corresponding to an impact applied indirectly to the mobile terminal 6110 by the user. That is, when a user calls "wave" as if passing a real ticket near the microphone of the mobile terminal 6110, the sound sensor 6212 of the mobile terminal 6110 senses sound by sensing at least one of a magnitude and a frequency for the corresponding sound. A sensing value can be generated.
  • the sensing data receiver 6310 may receive sensing data including a sound sensing value from the copying terminal 6110.
  • the manipulation data determiner 6320 may extract a sensing value associated with a manipulation for handing a ticket over the game and determine the manipulation data as manipulation data.
  • the manipulation data determiner 6320 may determine, as manipulation data, a sound sensing value corresponding to a range of a predetermined frequency among sound sensing values.
  • the game operation unit 6330 may generate a game operation command that the game client can recognize the determined operation data to pass a ticket on the game.
  • the game execution server 6120 may be connected to a game client 6130 corresponding to a rhythm game program to execute a rhythm game.
  • the game performance system 6100 may include a plurality of mobile terminals 6110.
  • FIG. 56 it is assumed that the game execution server 6120 is connected to five mobile terminals 6110.
  • the sensing data receiver 6310 may receive sensing data corresponding to an impact applied indirectly to each of the plurality of mobile terminals 6110 by the user.
  • each of the five mobile terminals 6110 when a user places five mobile terminals 6110 in a row on a desk and places a finger on the desk once, each of the five mobile terminals 6110 generates a motion sensing value corresponding to the shock. can do.
  • the sensing data receiver 6310 may receive a motion sensing value from each of the five mobile terminals 6110.
  • the manipulation data determiner 6320 may determine the mobile terminal 6110 having the maximum motion sensing value from the received sensing data. That is, the manipulation data determiner 6320 determines the specific mobile terminal 6110 that has transmitted the maximum motion sensing value from the five motion sensing values, so that the user can select the closest place among the five mobile terminals 6110.
  • the shocked mobile terminal 6110 may be determined.
  • the operation data determination unit 6320 may assign identification numbers for five mobile terminals 6110.
  • the manipulation data determination unit 6320 may assign 1 to 5 times from the leftmost mobile terminal. This process may be set when connecting to each mobile terminal 6110 through game environment setting in the pre-game execution stage.
  • the manipulation data determination unit 6320 ignores the motion sensing values of the mobile terminals 6110 1, 3 to 5 times. In this case, only the motion sensing value transmitted from the second mobile terminal 6110 may be extracted and determined as manipulation data.
  • the game operation unit 6330 may generate a game operation command that can be recognized by the game client by using the determined operation data, and may recognize the game operation command as a hit for line 2 in the game.
  • the user can manipulate the game by arranging a plurality of mobile terminals 6110 in order and applying an indirect impact to the second mobile terminal 6110 closest to the second mobile terminal 6110 when the rhythm bar of line 2 descends on the game. have.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명은 게임 제공 방법, 단말, 서버 및 기록매체에 관한 것으로, 게임 사용자의 요구, 게임 유형, 단말 및 그 주변 장치, 그리고 게임 플레이 환경의 다양한 변화에 따라 게임 사용자가 실감나는 게임을 즐길 수 있도록 해주는 다양한 게임 제공 방법, 단말, 서버 및 기록매체에 관한 것이다.

Description

게임 제공 방법, 단말, 서버 및 기록매체
본 발명의 게임 제공 방법, 단말, 서버 및 기록매체에 관한 것이다.
종래의 게임은 사용자의 단말이 서버에 접속하여 서버에서 제공하거나 단말에 설치된 게임 프로그램을 이용하는 방식으로 이루어지는 것이 일반적이다.
요즈음, 게임 사용자들은 게임에 대한 다양하고 새로운 요구를 가지게 되어, 새롭고 다양한 게임 기능이 제공될 필요가 있다.
또한, 게임이 플레이되는 단말의 성능이 높아지고, 그 유형 또한 다양해지며, 입력 장치 또한, 전통적인 키보드, 마우스 등에서 탈피하여 다양한 유형으로 입력이 가능한 다양한 형태의 입력장치, 다양한 정보를 센싱하고 그 센싱 방식도 다양한 각종 센서, 터치스크린 등을 이용하게 되었으며, 이로 인한 게임 플레이 환경도 급변하고 있는 추세이다.
이러한 변화에 따른 단말과 서버, 또는 단말과 그 주변 장치 간의 통신, 접속 방식도 더욱 효율적으로 이루어질 필요가 있게 되었다.
하지만, 현재, 게임 제공을 위한 게임 프로그램, 단말, 서버 등은, 여러 변화에 맞게 개발되지 못하여, 게임 사용자에게 실감나는 게임을 제공해주지 못하는 한계가 있다.
본 발명은 게임 사용자가 실감나는 게임을 즐길 수 있도록 해주는 다양한 게임 제공 방법, 단말, 서버 및 기록매체를 제공하는 데 있다.
본 발명의 제1 실시예는, 장치가 단말기 센서를 활용하는 방법에 있어서, 상기 단말기의 적어도 하나의 센서로부터 측정된 적어도 하나의 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 상기 단말기로부터 수신하는 데이터 수신 단계; 상기 센싱 데이터에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 적어도 하나의 보정 데이터를 생성하는 데이터 후처리 단계; 및 상기 보정 데이터를 적어도 하나의 다른 장치 혹은 적어도 하나의 어플리케이션이 사용할 수 있는 적어도 하나의 신호 데이터로 변환하여 제공하는 데이터 제공 단계를 포함하는 단말기 센서 활용 방법을 제공한다.
본 발명의 제2 실시예는, 휴대 단말이, 사용자 단말의 IP 주소를 전송받아 저장한 주소 서버 또는 상기 사용자 단말의 IP 주소를 전송받은 무선 공유기를 통해 상기 사용자 단말의 IP 주소를 수신하는 단계; 및 수신한 상기 IP 주소를 이용하여 상기 사용자 단말로 접속하는 단계를 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 방법을 제공한다.
본 발명의 제3 실시예는, 이동통신단말을 통해 외부단말에서 실행되는 게임을 컨트롤할 수 있는 서비스를 제공하는 장치가, 상기 외부단말에서의 게임 컨텐츠의 실행과 상기 장치와 상기 이동통신단말의 네트워크 연결을 감지하는 단계; 상기 이동통신단말에 저장된 어플리케이션의 실행에 따라서 제공되는 인터페이스이고, 적어도 하나의 입력 신호가 사용자의 입력에 의해 생성되는 인터페이스인 컨트롤 인터페이스로부터 상기 사용자의 입력에 의해 생성되는 상기 적어도 하나의 입력 신호를 수신하는 단계; 기저장된 명령 테이블로부터, 실행되고 있는 상기 게임 컨텐츠에서의 게임 플레이를 위해 상기 명령 테이블에 저장된 적어도 하나의 제어명령 중 상기 수신한 적어도 하나의 입력 신호에 대응하는 제어명령을 선택하는 단계; 및 상기 선택된 제어명령에 따라서 상기 게임 플레이에 대한 제어를 수행하도록 상기 선택된 제어명령을 상기 게임 컨텐츠에 전송하는 단계;를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 방법을 제공한다.
본 발명의 제4 실시예는, 디스플레이를 포함하는 장치가 단말기 센서를 활용하는 방법에 있어서, 상기 디스플레이 상의 복수의 기준점 각각을 가리키는 상기 단말기의 복수의 지시 위치 센싱 값을 상기 단말기로부터 수신하는 지시 위치 센싱 값 수신 단계; 상기 복수의 기준점 사이의 좌표값 차이와 상기 복수의 지시 위치 센싱 값 사이의 위치 센싱 값 차이를 이용하여 스케일 조정 비율을 결정하는 스케일 조정 비율 결정 단계; 및 상기 단말기로부터 수신되는 적어도 하나의 포인팅 위치 센싱 값 혹은 상기 적어도 하나의 포인팅 위치 센싱 값에 대하여 에러 보정 처리한 포인팅 위치 보정 센싱 값에 대하여 상기 스케일 조정 비율을 적용하여 상기 디스플레이 상의 포인팅 좌표 위치를 계산하는 포인팅 좌표 위치 계산 단계를 포함하는 단말기 센서 활용 방법을 제공한다.
본 발명의 제5 실시예는, 사용자 모션을 센싱하는 모바일 단말과 연결될 수 있는 게임 수행 서버에서 수행되는 게임 수행 방법에 있어서, 상기 센싱된 사용자 모션과 연관된 센싱 데이터가 수신되면 상기 수신된 센싱 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계; 및 상기 게임 클라이언트로부터 상기 게임 조작에 대한 피드백이 수신되면 상기 수신된 피드백을 통해 상기 모바일 단말에 의한 실감형 액션을 수행하는 단계를 포함하는 게임 수행 방법을 제공한다.
본 발명의 제6 실시예는, 모바일 단말과 연결될 수 있는 게임 수행 서버에서 수행되는 게임 수행 방법에 있어서, 상기 모바일 단말로부터 사용자에 의한 충격과 연관된 센싱 데이터를 수신하는 단계; 상기 수신된 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정하는 단계; 및 상기 결정된 조작 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계를 포함하는 게임 수행 방법을 제공한다.
본 발명은 게임 사용자가 실감나는 게임을 즐길 수 있도록 해주는 다양한 게임 제공 방법, 단말, 서버 및 기록매체를 제공하는 효과가 있다.
도 1은 본 발명의 제1 실시예에 따른 단말기에 포함되어 있는 센서의 종류에 대해 설명하기 위한 도면이다.
도 2는 본 발명의 제1 실시예에 따른 장치와 단말기를 포함하는 시스템의 통신 연결 구성도이다.
도 3은 본 발명의 제1 실시예에 따른 장치의 내부 블록도이다.
도 4는 본 발명의 제1 실시예에 따른 센싱 값을 인터폴에이션 처리한 것을 나타내는 센싱 값의 좌표 표시도이다.
도 5는 본 발명의 제1 실시예에 따른 장치가 어플리케이션과 신호를 주고 받는 것을 나타내는 개념도이다.
도 6은 본 발명의 제1 실시예에 따른 체감형 게임에서 단말기를 이용하여 야구 배트를 조작하는 것을 나타내는 도면이다.
도 7은 본 발명의 제1 실시예에 따른 단말기 센서 활용 방법에 대한 흐름도이다.
도 8은 본 발명의 제1 실시예에 따른 단말기의 내부 블록도이다.
도 9는 본 발명의 제1 실시예에 따른 센싱 데이터 제공 방법에 대한 흐름도이다.
도 10은 본 발명의 제2 실시예에 따른 접속 시스템을 개략적으로 나타내는 도면이다.
도 11은 본 발명의 제2 실시예에 따른 접속 시스템을 개략적으로 다르게 나타내는 도면이다.
도 12는 본 발명의 제2 실시예에 따른 도 10 및 도 11에 도시된 사용자 단말을 보다 구체적으로 설명하기 위한 도면이다.
도 13는 본 발명의 제2 실시예에 따른 도 12의 모션 서버를 보다 구체적으로 설명하기 위한 도면이다.
도 14는 도 10 및 도 11에 도시된 휴대 단말을 보다 구체적으로 설명하기 위한 도면이다.
도 15은 본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법을 나타내기 위한 흐름도이다.
도 16은 본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법을 나타내기 위한 흐름도이다.
도 17은 본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법을 나타내기 위한 흐름도이다.
도 18은 본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법이 적용되어 게임이 진행되는 것을 나타내기 위한 흐름도이다.
도 19는 본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법의 플로우차트이다.
도 20는 본 발명의 제3 실시예의 구현을 위해 입력 신호를 수신하는 구체적인 흐름의 일 예를 도시한 것이다.
도 21은 본 발명의 제3 실시예의 구현에 따라 입력 신호를 수신하는 흐름의 다른 예를 도시한 것이다.
도 22는 본 발명의 제3 실시예의 다른 구현에 따른 이동통신단말을 통한 게임 컨트롤 방법의 플로우차트이다.
도 23는 본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 장치의 블록도이다.
도 24 내지 30은 본 발명의 제3 실시예의 각각의 구현에 따라 이동통신단말 또는 외부단말에 제공되는 서비스의 예를 도시한 것이다.
도 31은 본 발명의 제3 실시예의 각각의 구현에 따라 기저장될 수 있는 데이터 테이블의 예를 도시한 것이다.
도 32은 본 발명의 제4 실시예에 따른 단말기에 포함되어 있는 센서의 종류에 대해 설명하기 위한 도면이다.
도 33는 본 발명의 제4 실시예에 따른 장치와 단말기를 포함하는 시스템의 통신 연결 구성도이다.
도 34은 본 발명의 제4 실시예에 따른 장치의 내부 블록도이다.
도 35는 본 발명의 제4 실시예에 따른단말기가 디스플레이 상의 기준점을 가르킬 때의 위치 관계를 설명하기 위한 도면이다.
도 36는 본 발명의 제4 실시예에 따른 센싱값을 인터폴레이션 처리한 것을 나타내는 셍싱값의 좌표 표시도이다.
도 37은 본 발명의 제4 실시예에 따른 장치가 어플리케이션과 신호를 주고 받는 것을 나타내는 개념도이다.
도 38은 본 발명의 제4 실시예에 따른 단말기의 움직임 조작에 따라 디스플레이 상의 포인팅 좌표 위치가 이동하는 것을 나타내는 도면이다.
도 39은 본 발명의 제4 실시예에 따른 단말기 센서 활용 방법에 대한 흐름도이다.
도 40는 본 발명의 제4 실시예에 따른 단말기의 내부 블록도이다.
도 41은 본 발명의 제4 실시예에 따른 센싱값 제공 방법에 대한 흐름도이다.
도 42는 본 발명의 제5 실시예에 따른 게임 수행 시스템을 설명하는 도면이다.
도 43는 도 42에 있는 모바일 단말을 설명하는 블록도이다.
도 44은 도 42에 있는 게임 수행 서버를 설명하는 블록도이다.
도 45는 본 발명에 따른 게임 수행 과정을 설명하는 흐름도이다.
도 46는 본 발명의 게임 수행 과정 중에서 센싱 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계의 일 실시예를 설명하는 흐름도이다.
도 47은 본 발명의 게임 수행 과정 중에서 피드백을 통해 모바일 단말에 의한 실감형 액션을 수행하는 단계의 일 실시예를 설명하는 흐름도이다.
도 48은 본 발명의 제6 실시예에 따른 게임 수행 시스템을 설명하는 도면이다.
도 49는 도 48에 있는 모바일 단말을 설명하는 블록도이다.
도 50은 도 48에 있는 게임 수행 서버를 설명하는 블록도이다.
도 51는 본 발명에 따른 게임 수행 과정을 설명하는 흐름도이다.
도 52는 본 발명의 일 실시에에 따른 게임 수행 과정을 설명하는 흐름도이다.
도 53은 본 발명의 제6 실시예에 따른 게임 수행 시스템의 예시를 나타내는 도면이다.
도 54, 55, 56은 본 발명의 제6 실시예에 따른 게임 수행 과정을 설명하기 위한 게임 화면의 예시를 나타내는 도면이다.
[제1 실시예]
본 발명의 제1 실시예는 단말기 센서를 외부 장치에서 활용하는 기술에 관한 것이다.
이와 관련하여, 체감형 게임이란 몸소 체험하며 즐길 수 있는 게임을 의미한다. 이러한 체감형 게임을 통해 탁구, 테니스, 복싱, 야구 등의 스포츠를 직접 하는 것 처럼 즐길 수 있다. 때로는 게임을 하는 재미뿐만 아니라 운동 효과 등의 기능성까지 가미되는 경우도 있다.
이러한 체감형 게임을 하기 위해서는 두 가지 장치들이 필요한데, 하나는 게임을 구동시킬 수 있는 전용 게임기이고 다른 하나는 사용자의 움직임 등을 사용자 조작으로 인식하여 게임기로 전달하는 전용 주변 장치들이다.
그런데, 이러한 전용 게임기와 전용 주변 장치로 구성된 체감형 게임 시스템에는 몇 가지 문제가 있다.
하나는 전용 게임기를 통해서만 새로운 게임이 구동될 수 있기 때문에 게임 개발자 혹은 게임 개발 업체가 전용 게임기의 생산 업체에 종속되게 되어 새로운 게임을 신속하게 제공하지 못하거나 공짜 게임과 같은 사용자의 욕구를 충족시켜줄 수 있는 다양한 방식의 게임을 제공하지 못한다는 것이다.
다른 하나는 사용자 조작을 인식하기 위한 전용 주변 장치의 가격이 비싸다는 것이다. 사용자 조작을 인식하기 위해서는 동작을 센싱하는 자이로 센서, 가속도 센서 혹은 지자계 센서 같은 것이 필요한데, 이러한 센서들은 가격이 싸지 않고 또한 체감형 게임이 아직 보편화되어 있지 않아 전용 주변 장치 또한 대량 생산의 이점을 얻지 못하고 가격이 고가로 유지되고 있다.
전술한 두 가지 문제를 해결하기 위해서는 먼저 전용 게임기가 아닌 플랫폼이 오픈되어 있는 PC 또는 스마트TV와 같은 장치에서 체감형 게임이 구현되도록 해야 한다. 그리고, 또한, 별도의 전용 주변 장치를 이용하여 사용자 조작을 인식하는 것이 아닌 대중적으로 보편화되어 있으면서도 각종 움직임 센서를 구비하고 있는 스마트폰과 같은 단말기를 사용자 조작의 입력 장치로 사용할 수 있게 해야 한다.
이러한 취지에서, 본 발명의 목적은, 장치가 단말기 센서의 센싱 값을 활용할 수 있는 기술을 제공하는 것이다.
그런데, 스마트폰과 같은 단말기는 사용자 조작의 입력 장치로 작동하는 것을 목적으로 제작된 것이 아니기 때문에 단말기 센서의 센싱 값에 각종 오차가 있을 수 있다. 이러한 취지에서, 본 발명의 다른 목적은, 단말기 센서의 센싱 값을 후처리하여 센싱 값의 오차를 감쇄시키는 기술을 제공하는 것이다.
전술한 목적을 달성하기 위하여, 일 측면에서, 본 발명은, 장치가 단말기 센서를 활용하는 방법에 있어서, 상기 단말기의 적어도 하나의 센서로부터 측정된 적어도 하나의 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 상기 단말기에 내장된 적어도 하나의 통신부로부터 수신하는 데이터 수신 단계; 상기 센싱 데이터에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 적어도 하나의 보정 데이터를 생성하는 데이터 후처리 단계; 및 상기 보정 데이터를 적어도 하나의 다른 장치 혹은 적어도 하나의 어플리케이션이 사용할 수 있는 적어도 하나의 신호 데이터로 변환하여 제공하는 데이터 제공 단계를 포함하는 단말기 센서 활용 방법을 제공한다.
다른 측면에서, 본 발명은, 단말기의 적어도 하나의 센서로부터 측정된 적어도 하나의 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 상기 단말기에 내장된 적어도 하나의 통신부로부터 수신하는 데이터 수신부; 상기 센싱 데이터에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 적어도 하나의 보정 데이터를 생성하는 데이터 후처리부; 및 상기 보정 데이터를 적어도 하나의 다른 장치 혹은 적어도 하나의 어플리케이션이 사용할 수 있는 적어도 하나의 신호 데이터로 변환하여 제공하는 데이터 제공부를 포함하는 단말기 센서 활용 장치를 제공한다.
또 다른 측면에서, 본 발명은, 단말기 센서를 활용하는 방법을 실행시키기 위한 프로그램을 기록한 기록매체에 있어서,
상기 단말기의 적어도 하나의 센서로부터 측정된 적어도 하나의 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 상기 단말기에 내장된 적어도 하나의 통신부로부터 수신하는 데이터 수신 기능; 상기 센싱 데이터에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 적어도 하나의 보정 데이터를 생성하는 데이터 후처리 기능; 및 상기 보정 데이터를 적어도 하나의 다른 장치 혹은 적어도 하나의 어플리케이션이 사용할 수 있는 적어도 하나의 신호 데이터로 변환하여 제공하는 데이터 제공 기능을 구현하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
또 다른 측면에서, 본 발명은, 적어도 하나의 센서를 포함하는 단말기가 센싱 데이터를 제공하는 방법에 있어서, 상기 적어도 하나의 센서를 이용하여 적어도 하나의 센싱 값을 측정하는 센싱 값 측정 단계 및 상기 적어도 하나의 센싱 값을 포함하는 센싱 데이터에 대하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 적어도 하나의 장치로 상기 센싱 데이터를 송신하는 센싱 값 송신 단계를 포함하는 센싱 데이터 제공 방법을 제공한다.
또 다른 측면에서, 본 발명은, 적어도 하나의 센서를 포함하는 단말기에 있어서, 상기 적어도 하나의 센서를 이용하여 적어도 하나의 센싱 값을 측정하는 센싱 값 측정부 및 상기 적어도 하나의 센싱 값을 포함하는 센싱 데이터에 대하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 적어도 하나의 장치로 상기 센싱 데이터를 송신하는 센싱 값 송신부를 포함하는 센싱 데이터 제공 단말기를 제공한다.
또 다른 측면에서, 본 발명은, 적어도 하나의 센서를 포함하는 단말기가 센싱 데이터를 제공하는 방법을 실행시키기 위한 프로그램을 기록한 기록매체에 있어서, 상기 적어도 하나의 센서를 이용하여 적어도 하나의 센싱 값을 측정하는 센싱 값 측정 기능 및 상기 적어도 하나의 센싱 값을 포함하는 센싱 데이터에 대하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 적어도 하나의 장치로 상기 센싱 데이터를 송신하는 센싱 값 송신 기능을 구현하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
이상에서 설명한 바와 같이 본 발명에 의하면, 장치가 단말기 센서의 센싱 값을 활용할 수 있는 효과가 있다. 또한 단말기 센서의 센싱 값 오차가 감쇄되는 효과가 있다.
이하, 본 발명의 제1 실시예를 예시적인 도면을 통해 상세하게 설명한다.
도 1은 단말기(1100)에 포함되어 있는 센서의 종류에 대해 설명하기 위한 도면이다.
도 1에서 단말기(1100)는 스마트폰과 같은 이동 통신 단말기일 수 있다. 하지만 이로 제한되는 것은 아니며, 태블릿 PC 및 PDA(Personal Digital Assistants) 등의 다른 종류의 단말기일 수 있다.
도 1을 참조하면, 단말기(1100)는 제1 센서(1101), 제2 센서(1102), 제3 센서(1103)을 포함하고 있다. 단말기(1100)가 스마트폰인 경우, 단말기(1100)는 통상적으로 지자계 센서, 가속도 센서, 자이로 센서, 카메라 센서 및 근접 센서를 기본적으로 구비하고 있는 것으로 알려져 있다. 전술한 제1 센서(1101), 제2 센서(1102) 및 제3 센서(1103) 각각은 이러한 지자계 센서, 가속도 센서, 자이로 센서, 카메라 센서 및 근접 센서 중 어느 하나의 센서일 수 있다.
제1 센서(1101)가 자이로 센서이고, 제2 센서(1102)가 가속도 센서이고, 제3 센서(1103)가 지자계 센서일 때 각각이 센싱하는 내용은 각각 도 1의 (b), (c) 및 (d)에 대응된다.
이해의 편의를 위해 도 1의 (c)를 먼저 설명하면, 도 1의 (c)는 가속도 센서의 센싱 내용을 나타낸다. 도 1의 (c)를 참조하면 가속도 센서는 X축(1112), Y축(1113), Z축(1111)의 세 개의 축에 대하여 각각 가속도 값을 측정한다.
도 1의 (b)는 자이로 센서의 센싱 내용을 나타낸다. 도 1의 (b)를 참조하면 자이로 센서는 X축(1112)를 감싸고 도는 요(Yaw) 방향(1122), Y축(1113)을 감싸고 도는 피치(Pitch) 방향 및 Z축(1111)을 감싸고 도는 롤(Roll) 방향의 세 개의 방향에 대하여 각각 각도 값을 측정한다.
도 1의 (d)는 지자계 센서의 센싱 내용을 나타낸다. 도 1의 (d)를 참조하면, 지자계 센서는 나침반(1131)과 같이 방위각을 측정한다.
단말기(1100)는 이러한 여러 가지 센서를 구비하면서 그 센싱된 값을 통해 단말기(1100)의 움직임 방향, 움직임 정도 등을 쉽고 비교적 정확하게 파악할 수 있게 된다. 예를 들어, 자이로 센서로 센싱되는 3축의 각도 정보를 통해 단말기(1100)가 기울어져 있는 정도를 파악할 수 있다. 이렇게 파악된 정보는 단말기(1100)내에서 구동되고 있는 어플리케이션들에 의해 사용되는데, 예를 들어, 단말기(1100) 내의 특정 어플리케이션은 자이로 센서를 통해 센싱한 각도 정보를 이용하여 단말기에 표시되어 있는 화면의 방향을 바꾸어 주는 등의 제어를 실시한다.
도 1을 통해 설명한 바와 같이 여러 가지 센서를 구비한 단말기(1100)는 각종 사용자 조작을 인식할 수 있다. 구체적으로 단말기(1100)가 자이로 센서와 같은 움직임 센서를 구비하고 있으면 단말기(1100)는 사용자의 움직임 조작을 인식할 수 있다. 또한, 사용자의 움직임 조작을 인식하는 것 뿐만 아니라 이러한 사용자의 움직임 조작을 인식할 수 있는 움직인 센싱 값을 보유하게 단말기(1100)는 보유하게 된다.
본 발명의 제1 실시예는 전술한 바와 같은 단말기(1100)의 센싱 값을 외부의 장치로 전달하여 외부의 장치가 단말기(1100)의 센싱 값을 사용자 조작 입력으로 사용하는 기술을 제공한다.
도 2는 본 발명의 제1 실시예에 따른 장치(1210)와 단말기(1100)를 포함하는 시스템(1200)의 통신 연결 구성도이다.
도 2를 참조하면, 시스템(1200)은 센서를 포함하고 있으면서 센서의 센싱 값을 장치(1210)로 제공하는 단말기(1100)와 단말기(1100)로부터 전달되는 센싱 값을 활용하는 장치(1210)를 기본적으로 포함하고 있다. 이외에 시스템(1200)은 네트워크(1220) 및 이동 통신 시스템(1230) 등을 더 포함할 수 있다.
단말기(1100)는 내부의 센서를 통해 센싱한 값을 장치(1210)로 전달하게 되는데, 도 2와 같이 다양한 경로를 통해 이러한 센싱 값을 전달할 수 있다.
먼저, 단말기(1100)는 다른 통신망을 거치지 않고 직접적으로 장치(1210)로 센싱 값을 전달할 수 있다. 단말기(1100)가 스마트폰인 경우, 단말기(1100)는 와이파이, 블루투스, 적외선 통신과 같은 근거리 통신 방식(1240)을 사용할 수 있는데, 이러한 근거리 통신 방식(1240)을 이용하여 단말기(1100)는 센싱 값을 장치(1210)로 전달할 수 있다.
다른 방법으로 단말기(1100)가 이동 통신 단말기인 경우 단말기(1100)는 이동 통신 방식(1241)에 따라 기지국(1230)으로 센싱 값에 대한 데이터를 전송하고 기지국(1230)은 이러한 데이터를 네트워크(1220)를 통해 장치(1210)로 전달할 수도 있다.
또 다른 방법으로 단말기(1100)가 무선 네트워크 통신이 가능한 경우 단말기(1100)는 이러한 무선 네트워크 통신을 통해 네트워크(1220)로 센싱 값에 대한 데이터를 전송할 수 있고 네트워크(1220)는 이러한 데이터를 다시 장치(1210)로 전송할 수 있다.
반대로, 장치(1210)도 단말기(1100)로 보내고 싶은 데이터를 전술한 경로의 역경로로 보낼 수 있다. 예를 들어, 장치(1210)는 근거리 통신 방식(1240)을 사용하여 단말기(1100)로 보내고 싶은 데이터를 전달할 수도 있고, 또한 장치(1210)는 네트워크(1220)로 보내고 싶은 데이터를 전송하고 네트워크(1210)가 이러한 데이터를 기지국(1230)을 통해 이동 통신 방식(1241)으로 단말기(1100)로 전달하거나 네트워크(1210)가 무선 네트워크 통신을 통해 단말기(1100)로 이러한 데이터를 전달할 수도 있다.
시스템(1200)에서 데이터는 단말기(1100)가 장치(1210)로 일방적으로 전송되는 것은 아니고 전술한 바와 같이 장치(1210)가 단말기(1100)로 데이터를 전송하는 경우도 있는데, 예를 들어, 시스템(1200)이 체감형 게임을 포함하고 있다면 장치(1210)는 게임 중 특정 상황에서 사용자가 진동을 느끼게 하여 게임 체감도를 높이고자 할 것이다. 이 경우 장치(1210)는 진동 신호 데이터를 단말기(1100)로 전달하고 단말기(1100)는 이러한 진동 신호 데이터를 수신하여 단말기(1100)가 진동하도록 제어하여 사용자가 게임 중 진동을 느낄 수 있도록 할 수 있다.
전술한 장치(1210)는, 일반적인 데스크 탑이나 노트북 등의 일반 PC를 포함하고, 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기 등을 포함할 수 있으며, 이에 제한되지 않고, 단말기(1100)와 분리되어 있으면서 단말기(1100)와 통신할 수 있는 어떠한 전자 기기로 폭넓게 해석되어야 할 것이다.
한편, 네트워크(1220)는 장치(1210)와 다른 장치(기지국, 단말기(1100) 등)을 연결해주는 망(Network)으로서, LAN(Local Area Network), WAN(Wide Area Network)등의 폐쇄형 네트워크일 수도 있으나, 인터넷(Internet)과 같은 개방형 네트워크일 수도 있다. 여기서, 인터넷은 TCP/IP 프로토콜 및 그 상위계층에 존재하는 여러 서비스, 즉 HTTP(HyperText Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service), NIS(Network Information Service)를 제공하는 전 세계적인 개방형 컴퓨터 네트워크 구조를 의미한다.
도 3은 본 발명의 제1 실시예에 따른 장치(1210)의 내부 블록도이다.
도 3을 참조하면, 장치(1210)는 단말기(1100)의 적어도 하나의 센서로부터 측정된 적어도 하나의 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 단말기(1100)로부터 수신하는 데이터 수신부(1310), 센싱 데이터에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 적어도 하나의 보정 데이터를 생성하는 데이터 후처리부(1320) 및 보정 데이터를 적어도 하나의 다른 장치 혹은 적어도 하나의 어플리케이션이 사용할 수 있는 적어도 하나의 신호 데이터로 변환하여 제공하는 데이터 제공부(1330) 등을 포함할 수 있다.
단말기(1100)는 하나의 센서로 하나의 센싱 값을 측정하여 하나의 센싱 데이터로 구성한 후 장치(1210)로 전송할 수 있다. 데이터 수신부(1310)는 이에 대응하여 하나의 센싱 값을 포함하는 하나의 센싱 데이터를 수신할 수 있다.
그런데, 단말기(1100)는 하나의 센싱 값을 복수의 센서를 이용하여 측정할 수도 있다. 예를 들어, 가속도 센서는 움직의 정도를 측정하기도 하지만 단말기(1100)의 롤 방향 및 피치 방향에 대한 각도를 측정하기도 한다. 따라서, 가속도 센서와 자이로 센서를 모두 이용하여 롤 방향 및 피치 방향에 대한 각도를 하나의 센싱 값으로 측정할 수도 있다.
또한, 하나의 센싱 데이터는 하나의 센싱 값을 포함하고 있을 수 있으나 하나의 센싱 데이터가 복수의 센싱 값을 포함할 수도 있다. 예를 들어, 단말기(1100)는 가속도 센서의 센싱 값과 자이로 센서의 센싱 값을 하나의 센싱 데이터로 결합시킨 후에 전송할 수 있다. 이와 반대로, 복수의 센싱 값을 복수의 센싱 데이터에 각각 나누어서 단말기(1100)는 전송하고 데이터 수신부(1310)는 이를 나누어서 수신할 수도 있다.
데이터 후처리부(1320)는 이렇게 수신된 센싱 데이터에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행한다. 단말기(1100)의 센서가 측정한 센싱 값에는 각종 노이즈가 포함되어 있다. 그리고, 단말기(1100)의 센서는 종래의 체감형 게임기에 사용되었던 전용 주변 장치처럼 사용자의 움직임 등을 측정하고자 하는 특수한 목적이 있는 것이 아니기 때문에 정확도가 떨어지고 측정의 오차가 발생할 수 있다. 장치(1210)가 체감형 게임과 같은 정교한 사용자 조작이 필요한 어플리케이션을 구동하기 위해서는 이러한 단말기(1100)에서 생산된 노이즈나 측정 오차가 포함되어 있는 원초적인 센싱 값을 그대로 사용하면 안 된다. 데이터 후처리부(1320)가 수행하는 것이 이러한 노이즈 혹은 측정 오차를 감쇄시키는 것이다.
데이터 수신부(1310)가 수신한 센싱 데이터는 전술한 바와 같은 노이즈 혹은 측정상의 오차를 포함할 수 있지만 이 뿐만 아니라 센싱 데이터를 단말기(1100)로부터 수신하는 과정 상에서도 여러 가지 오차를 추가적으로 더 포함할 수 있다. 예를 들어, 시변(timevariable) 센싱 값의 경우 센싱 값의 측정 시간과 데이터 수신부(1310)의 센싱 데이터 수신 시간 사이의 간격이 일정하거나 혹은 그 간격이 매우 짧아야하는데, 데이터 수신부(1310)가 단말기(1100)로부터 센싱 데이터를 수신하는 과정에서 데이터 누락 혹은 데이터 지연이 발생하면 이 또한 센싱 데이터의 데이터 오차로 인식될 수 있다. 이러한 오차를 통신 오차라고 할 수 있다.
결국 데이터 수신부(1310)가 수신한 센싱 데이터는 노이즈, 측정 오차 및 통신 오차 등 다양한 오차를 포함하는 데이터 오차를 수반하게 되고, 데이터 후처리부(1320)에서 이러한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행해야 한다.
데이터 후처리부(1320)에서 데이터 후처리 프로세스는 센싱 데이터에 포함된 센싱 값을 필터링 처리하는 서브 프로세스를 포함할 수 있다.
필터링 처리하는 서브 프로세스는 노이즈를 제거하기 위해 센싱 값을 로우 패스(Low Pass) 필터링 처리할 수 있다. 단말기(1100)와 같이 고주파 클럭에 맞추어 시스템이 작동하는 기기에 있어서는 센싱 값에 고주파 노이즈가 끼어 있을 가능성이 높다. 이러한 고주파 노이즈를 제거하기 위해 필터링 처리하는 서브 프로세스는 로우 패스 필터링 처리를 할 수 있다.
이와 반대로 데이터 수신부(1310)가 단말기(1100)의 가속도 센서로부터 측정된 센싱 값을 포함하는 센싱 데이터를 수신할 때, 필터링 처리하는 서브 프로세스는 이러한 가속도 센서로부터 측정된 센싱 값에서 중력 가속도 성분을 제거하기 위해 이러한 센싱 값을 하이 패스(High Pass) 필터링 처리할 수 있다. 중력 가속도는 비슷한 고도에서 거의 일정한 값을 유지함으로 주파수 상으로 보면 굉장히 낮은 주파수의 값에 해당된다. 가속도 센서로부터 측정된 센싱 값에서 이러한 중력 가속도 성분을 제거하기 위해서는 높은 주파수 성분의 값만 통과할 수 있는 하이 패스 필터링 처리를 하는 것이 바람직하다.
데이터 수신부(1310)가 동일한 지표를 나타내는 두 개의 센싱 값을 수신한 경우에 있어서 센싱 값을 보정하는 것에 대해 살펴본다. 동일한 지표를 나타낸다는 것은 예를 들어, 자이로 센서로 측정한 센싱 값과 지자계 센서로 측정한 센싱 값이 모두 단말기(1100)의 각도라는 동일한 지표에 나타낸다는 것이다. 이 경우, 두 개의 센싱 값 중 어느 한 센싱 값이 다른 한 센싱 값보다 정확한 값이라면 어느 한 센싱 값을 기준으로 다른 한 센싱 값을 보정할 수 있게 된다.
아래에서는 데이터 수신부(1310)에서 단말기(1100)의 제1 센서(1101)로부터 측정된 제1 센싱 값과 제2 센서(1102)로부터 측정된 제2 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 수신한 경우를 상정하여 설명한다.
데이터 후처리부(1320)는 제1 센싱 값과 제2 센싱 값의 차이를 센싱 값 오차로 결정하고 이러한 센싱 값 오차 중 일부 혹은 전부를 제1 센싱 값에 대한 데이터 오차로 인식하여 이러한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행할 수 있다. 논리상으로 보면, 제2 센싱 값이 보다 정확한 값이기 때문에 데이터 오차는 제1 센싱 값에서 발생하는 것이고 이러한 데이터 오차는 제1 센싱 값과 제2 센싱 값의 차이라는 것이다. 그런데, 제2 센싱 값이 완전히 정확한 값이라고 단정지을 수 없는 경우(제2 센싱 값에 대한 신뢰도 값 등으로 수치화할 수 있음), 데이터 후처리부(1320)는 제1 센싱 값과 제2 센싱 값의 차이인 센싱 값 오차 중 일부를 제1 센싱 값에 대한 데이터 오차로 인식하는 것이다.
정확도가 낮은 제1 센서는 자이로 센서일 수 있고, 정확도가 상대적으로 높은 제2 센서는 가속도 센서 혹은 지자계 센서일 수 있다. 자이로 센서의 경우, 기준 좌표 값에 좌표 증감분을 누적하여 획득되는 상대 값을 측정한다. 이 경우, 기준 좌표 값이 잘못된 경우 센싱 값에 오차가 발생할 수 있다. 좌표 증감분에 오차가 있는 경우에도 센싱 값에 오차가 발생하는데, 이 경우 더 치명적이어서 상대 값은 이러한 오차가 계속해서 누적되기 때문에 좌표 증감분에 있는 오차가 작더라도 시간이 흐르면 측정 오차는 계속해서 증가할 수 있다.
자이로 센서와 반대로 지자계 센서는 나침반과 같이 북극을 기준으로 절대 좌표 값을 센싱하여 절대 값을 제공하기 때문에 정확도가 높다고 할 수도 있다. 가속도 센서는 움직임 정도를 측정할 때는 상대 값을 측정하는 것으로서 정확도가 낮을 수 있으나 자이로 센서와 같은 각도를 측정할 때는 절대 값을 측정하여 정확도고 높을 수 있다.
그러면, 정확도가 높은 센싱 값을 그냥 사용하지 왜 정확도가 낮은 센싱 값을 보정하여 사용하는지 의문이 들 수 있다. 정확도가 낮은 센싱 값의 경우 보통 센싱 다이나믹이 빠르기 때문에 센싱 데이터를 신속하게 생산할 수 있다. 이에 반해 정확도가 높은 센싱 값은 다이나믹이 느리고 어느 정도 단말기(1100)가 스테이블(stable)한 상태가 되어야 제값을 측정할 수 있는 경우가 많다. 이러한 이유로 단말기(1100) 혹은 단말기(1100)의 센싱 값을 활용하는 장치(1210)는 정확도가 낮으나 다이나믹이 빠른 제1 센싱 값을 사용하면서 이를 정확도가 높은 제2 센싱 값으로 보정하여 사용하게 된다.
데이터 후처리부(1320)에서 데이터 후처리 프로세스는 제1 센싱 값에 제1 센싱 값과 제2 센싱 값의 차이인 센싱 값 오차의 일부를 가감하여 제1 센서 보정 값을 생성하거나 이전 제1 센서 보정 값에 이러한 센싱 값 오차의 일부를 가감하여 제1 센서 보정 값을 생성하는 보정 서브 프로세스를 더 포함하고 보정 데이터는 제1 센서 보정 값을 토대로 생성될 수 있다. 이런 경우는 기본적으로 데이터 후처리부(1320)가 리커시브(recursive)하게 데이터를 처리하는 구조인데, 먼저 이전 제1 센서 보정 값에 센싱 값 오차의 일부를 가감하여 제1 센서 보정 값을 생성하고 다음 번에 제1 센서 보정 값에 센싱 값 오차의 일부를 가감하여 다음 제1 센서 보정 값을 생성하는 식이다. 처음에는 제1 센서 보정 값이 존재하지 않기 때문에 제1 센싱 값을 사용한다.
센싱 값을 가감하는 것에 있어서 제2 센싱 값에서 제1 센싱 값을 빼서 전술한 센싱 값 오차를 계산하는 경우 이전 제1 센서 보정 값에 센싱 값 오차를 더해주는 것이도 그 반대로 제1 센싱 값에서 제2 센싱 값을 빼서 전술한 센싱 값 오차를 계산하는 경우 이전 제1 센서 보정 값에 센싱 값 오차를 빼주는 것이다.
데이터 후처리부(1320)에서 센싱 값 오차가 일정 오차 범위보다 큰 경우 전술한 보정 서브 프로세스는 센싱 값 오차를 오차 분할 보정 횟수로 나눈 오차 분할 값을 센싱 값 오차의 일부로서 사용하여 제1 센싱 값 혹은 이전 제1 센서 보정 값에 가감하고,
상기 데이터 후처리 프로세스는 상기 보정 서브 프로세스를 미리 정해진 서브 프로세스 수행 주기에 따라 오차 분할 보정 횟수 만큼 반복 수행하여 각 서브 프로세스 수행마다 상기 보정 데이터를 생성할 수 있다.
자이로 센서인 제1 센서를 통해 얻은 요 방향 각도 센싱 값을 A라하고, 지자게 센서인 제2 센서를 통해 얻은 요 방향 각도 센싱 값을 B라 하자. A라는 값을 더 정확한 B로 대체해야 하는데, 이 때 A와 B의 값 차가 크면 사용자 입장(예를 들어, 장치(1210)로부터 신호를 받는 체감형 게임을 사용하는 사용자 입장)에서 갑작스런 값 변화로 부자연스러움을 느낄 수 있다. 그래서 데이터 후처리부(1320)는 BA 값을 일정 시간 동안 나누어서 보정해 주는 기능을 수행한다. 예를 들어, BA 값이 100이라고 한다면 한번에 100만큼 보정하는 것이 아니라 주기적으로 호출되는 고해상도 타이머를 통해 10만큼 10번 보정해 줌으로서 사용자가 느낄 수 있는 부자연스러움을 없애주는 것이다. 본 예에 따르면 전술한 오차 분할 보정 횟수는 10이 된다.
데이터 후처리부(1320)는 전술한 서브 프로세스 수행 주기가 데이터 수신부(1310)가 센싱 데이터를 수신하는 주기보다 짧도록 제어할 수 있다. 다음 센싱 데이터가 수신되기 전에 최대한 많은 보정을 실시하기 위한 것이다.
데이터 수신부(1310)가 단말기(1100)의 움직임 센서로부터 측정된 움직임 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 수신하는 경우, 데이터 후처리부(1320)는 전술한 보정 서브 프로세스에서 움직임 센싱 값의 크기에 따라 가감되는 센싱 값 오차의 비율을 조절할 수 있다.
사용자의 움직이는 정도에 따라 한번에 보정해 주는 값을 변화시켜주는 기능이다. 사용자의 움직임이 클 때는 보정해 주는 값을 크게 해주고 반대로 움직임이 별로 없을 때는 보정해 주는 값을 작게 해 줌으로서 사용자가 느낄 수 있는 부자연스러움을 없애준다. 여기에서 움직임 센서는 가속도 센서일 수 있다.
데이터 후처리부(1320)는 제1 센서가 자이로 센서이고 제2 센서가 가속도 센서일 때 센싱 값 오차 중 롤(Roll) 방향 성분 및 피치(Pitch) 성분을 제1 센싱 값에 대한 롤 방향 및 피치 방향 데이터 오차로 인식하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하고 제1 센서는 자이로 센서이고 제2 센서는 지자계 센서일 때, 센싱 값 오차 중 요(Yaw) 방향 성분을 제1 센싱 값에 대한 요 방향 데이터 오차로 인식하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행할 수 있다. 도 1을 참조하여 설명한 바와 같이 지자계 센서는 요 방향에 대해 정확한 값이므로 자이로 센서로 측정한 센싱 값에 대해 요 방향 성분은 지자계 센서의 센싱 값을 이용하여 보정하는 것이고 롤 방향 및 피치 방향 성분은 가속도 센서를 이용하여 보정하는 것이다.
데이터 후처리부(1320)에서 데이터 후처리 프로세스는 스테이블(stable) 상태 판단 서브 프로세스를 더 포함하고 제2 센싱 값에 대한 스테이블 상태 판단 서브 프로세스를 통해 제2 센서가 스테이블 상태에 있는 것으로 판단되는 경우에만 제1 센싱 값과 제2 센싱 값의 차이인 센싱 값 오차 중 일부 혹은 전부를 제1 센싱 값에 대한 데이터 오차로 인식할 수 있다. 전술한 바와 같이 제2 센싱 값이 상대적으로 더 정확하기는 하나 다이나믹이 느려 제1 센싱 값을 사용한다고 설명하였다. 결국 제2 센싱 값은 스테이블한 상태에서 더 정확한 것이지 그렇지 않은 상태에서는 제1 센싱 값보다 정확도가 낮을 수도 있다. 따라서 제2 센싱 값이 스테이블한 상태에 있는 경우에만 제2 센싱 값을 이용하여 제1 센싱 값을 보정할 수도 있다.
스테이블 상태라는 것은 일정한 범위에 있는 값이 지속적으로 유지되거나 일정한 범위의 변화율이 지속적으로 유지되는 경우를 의미한다. 따라서, 스테이블 상태 판단 서브 프로세스는 제2 센싱 값의 이력 정보를 토대로 제2 센싱 값이 일정 시간 동안 일정한 범위 안에서 값이 유지되었는지 혹은 일정 시간 동안 일정한 범위의 변화율이 지속되었는지 판단하여 제2 센서가 스테이블 상태에 있는지 판단할 수 있다.
데이터 수신부(1310)가 두 개의 센싱 값을 수신하는 경우로서 제1 센싱 값과 제2 센싱 값의 차이인 센싱 값 오차를 이용하여 데이터 후처리부(1320)가 데이터 후처리 프로세스를 수행하는 것에 대해 전술하였다. 아래에서는 위와 같이 데이터 수신부(1310)가 두 개의 센싱 값을 수신하는 경우이나 제1 센서 보정 값과 제2 센싱 값의 차이인 보정 값 오차를 이용하여 데이터 후처리부(1320)가 데이터 후처리 프로세스를 수행하는 것에 대해 후술하겠다.
데이터 후처리부(1320)는 데이터 후처리 프로세스를 통해 제1 센서 보정 값을 포함하는 보정 데이터를 생성하되, 데이터 후처리 프로세스는 이전 제1 센서 보정 값과 상기 제2 센싱 값의 차이인 보정 값 오차 중 일부 혹은 전부를 제1 센서 보정 값에 대한 데이터 오차로 인식하여 데이터 오차를 감쇄시키도록 제어될 수 있다. 데이터 후처리 프로세스를 통해 제1 센서 보정 값을 생성하고 그 다음 번 데이터 후처리 프로세스를 수행하는 단계에서 이전에 생성한 제1 센서 보정 값과 그 단계에서 수신한 제2 센싱 값의 차이를 보정 값 오차로 결정하고 이러한 보정 값 오차 중 일부 혹은 전부를 제1 센서 보정 값에 대한 데이터 오차로 인식하는 것이다. 여기에서 제1 센서 보정 값은 이전 제1 센서 보정 값에 전술한 보정 값 오차의 일정 비율을 가감하여 생성할 수 있다.
앞서 센싱 데이터에 대한 데이터 오차는 노이즈, 측정 오차 및 통신 오차 등을 포함할 수 있다고 설명하였고, 앞선 설명들에서 데이터 오차의 노이즈 및 측정 오차를 감쇄시키는 구성에 대해 설명하였다. 아래에서는 데이터 오차 중 통신 오차 부분에 대해 설명한다.
원활한 사용자 조작 인식을 위해 단말기(1100)로부터 초당 50회 이상의 센싱 데이터를 수신할 수 있다. 그런데, 이렇게 고속으로 데이터를 수신하기 위해서는 통신 상태가 좋아야하는데, 단말기(1100)가 다른 용도를 겸하고 있기 때문에 다른 통신 요청에 의해 이러한 고속 데이터 통신이 수행되지 못하는 경우도 발생한다. 다시 말해 통신 상태 불량으로 인해 센싱 데이터 수신 횟수가 줄어들 수도 있고 일부 데이터는 손실될 수도 있다. 이런 경우, 체감형 게임 등을 사용하는 사용자는 입력이 끊겨서 들어오는 것과 같은 부자연스러운 느낌을 받을 수 있다.
이러한 문제를 해결하기 위해, 센싱 데이터가 이전에 수신한 이전 센싱 데이터로부터 일정 시간 간격을 초과하여 수신된 경우, 데이터 후처리부(1320)에서 데이터 후처리 프로세스는 이전 센싱 데이터에 포함된 이전 센싱 값과 센싱 데이터에 포함된 센싱 값을 인터폴레이션(interpolation) 처리하여 복수의 인터폴레이션 보정 값을 생성하고 각각의 인터폴레이션 보정 값을 포함하는 보정 데이터를 보간 시간 간격으로 생성할 수 있다.
도 4는 센싱 값을 인터폴에이션 처리한 것은 나타내는 센싱 값의 좌표 표시도이다.
도 4를 참조하면, 센싱 데이터를 통해 참조번호 1401에 해당하는 센싱 값이 먼저 확인되었다. 그후 일정 시간 간격을 초과하여 다음 센싱 데이터가 수신되었다. 이렇게 늦게 수신된 다음 센싱 데이터에 포함된 센싱 값이 참조번호 1405에 해당되는 값이다. 참조번호 1401과 1405의 거리가 너무 멀어 사용자는 좌표가 점프한 것과 같은 느낌을 받을 수 있다. 이때 데이터 후처리부(1320)는 이전 센싱 데이터에 포함된 이전 센싱 값(1401)과 센싱 데이터에 포함된 센싱 값(1405)을 인터폴레이션(interpolation) 처리하여 복수의 인터폴레이션 보정 값(1402, 1403, 1404)을 생성하고 각각의 인터폴레이션 보정 값(1402, 1403, 1404)을 포함하는 보정 데이터를 보간 시간 간격으로 생성한다. 인터폴레이션 보정 값을 순차적으로 전달하기 위해 보정 데이터를 보간 시간 간격으로 생성하는 것이다. 이러한 보간 시간 간격은 데이터 수신부(1310)가 센싱 데이터를 수신하는 간격보다는 짧아야한다.
데이터 후처리부(1320)에 의해 생성된 보정 데이터는 데이터 제공부(1330)에 의해 적어도 하나의 신호 데이터로 변환되어 적어도 하나의 다른 장치 혹은 적어도 하나의 어플리케이션으로 제공된다. 여기서는 데이터 제공부(1330)가 어느 한 어플리케이션으로 전술한 신호 데이터를 제공하는 것에 대해 설명한다.
도 5는 본 발명의 제1 실시예에 따른 장치(1210)가 어플리케이션과 신호를 주고 받는 것을 나타내는 개념도이다.
도 5를 참조하면, 장치(1210)는 모션 서버(1210)로 명명되어 있고, 어플리케이션은 체감형 게임(1510)으로 명명되어 있다. 모션 서버(1210)와 체감형 게임(1510)은 외관상 모두 일종의 프로그램으로 인식되어 하나의 하드웨어에 탑재되어 있는 것으로 보일 수 있다.
모션 서버(1210)는 앞서 설명한 바와 같이 단말기(1100)로부터 수신한 센싱 값을 후처리하여 정확하고 안정된 값으로 보정 데이터를 생성하여 체감형 게임(1510)으로 제공할 수 있다. 모션 서버(1210)가 체감형 게임(1510)으로 보정 데이터를 제공하는 방법은 여러 방법이 있을 수 있으나 메세지 전송 혹은 메모리 공유 방식이 사용될 수 있다.
체감형 게임(1510)은 모션 서버(1210)로부터 제공되는 보정 데이터를 마치 마우스나 키보드를 통해 입력되는 사용자 조작 신호와 같이 인식하여 게임이 제어될 수 있도록 할 수 있다.
위와 같은 모션 서버(1210)와 체감형 게임(1510)을 이용하는 실시예를 살펴 본다.
도 6은 체감형 게임(1510)에서 단말기(1100)를 이용하여 야구 배트를 조작하는 것을 나타내는 도면이다.
도 6의 (a)를 참조하면 타자는 배트를 화살표(1601)과 같이 스윙하고자 한다. 도 6의 (b)를 참조하면, 사용자는 단말기(1100)를 마치 체감형 게임(1510)의 화면에서의 타자의 배트 스윙 방향(화살표, 1601)과 같은 모양(1602)으로 조작한다. 이때, 단말기(1100)는 사용자 조작에 의한 움직임 센싱 값을 센싱 데이터로 모션 서버(1210)로 전송하게 되고 모션 서버(1210)는 데이터 수신부(1310), 데이터 후처리부(1320) 및 데이터 제공부(1330)를 거쳐 체감형 게임(1510)로 전달하게 되고 체감형 게임(1510)은 이러한 사용자 조작을 인식하여 게임에서 타자가 화살표(1601)와 같이 스윙하도록 제어하게 된다.
다시 도 5를 참조하면, 체감형 게임(1510)은 모션 서버(1210)로 소정의 데이터를 전송할 수 있다. 그리고 모션 서버(1210)는 이렇게 수신된 소정의 데이터를 단말기(1100)로 전달할 수 있다. 일 실시예로서 모션 서버(1210)는 체감형 게임(1510)으로부터 진동 신호 데이터를 제공받아 단말기(1100)로 전달하여 단말기(1100)가 진동 작동하도록 제어하는 진동 신호 전달부(미도시)를 더 포함할 수 있다.
모션 서버(1210)는 장치(1210)의 다른 이름임으로 장치(1210)는 보정 데이터를 신호 데이터로 변환하여 제공하는 다른 장치 혹은 어플리케이션으로부터 진동 신호 데이터를 제공받아 단말기(1100)로 전달하여 단말기(1100)가 진동 작동하도록 제어하는 진동 신호 전달부(미도시)를 더 포함할 수 있는 것이다.
이상에서는, 본 발명의 제1 실시예에 따른 단말기 센서 활용 장치(1210)에 대하여 설명하였으며, 이하에서는, 본 발명의 제1 실시예에 따른 장치(1210)가 단말기 센서를 활용하는 방법에 대하여 설명한다. 후술하게 될 본 발명의 제1 실시예에 따른 단말기 센서를 활용하는 방법은, 도 3에 도시된 본 발명의 실시예에 따른 장치(1210)에 의해 모두 수행될 수 있다.
도 7은 본 발명의 제1 실시예에 따른 단말기 센서 활용 방법에 대한 흐름도이다.
도 7을 참조하면, 장치(1210)는 단말기(1100)의 적어도 하나의 센서로부터 측정된 적어도 하나의 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 단말기(1100)로부터 수신한다(S1700, 데이터 수신 단계).
장치(1210)는 센싱 데이터에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 적어도 하나의 보정 데이터를 생성한다(S1702, 데이터 후처리 단계).
데이터 후처리 단계(S1702)에서 데이터 후처리 프로세스는 센싱 데이터에 포함된 센싱 값을 필터링 처리하는 서브 프로세스를 포함할 수 있다. 이러한 필터링 처리하는 서브 프로세스는 노이즈를 제거하기 위해 상기 센싱 값을 로우 패스(Low Pass) 필터링 처리할 수 있고, 데이터 수신 단계(S1700)에서 단말기(1100)의 가속도 센서로부터 측정된 상기 센싱 값을 포함하는 센싱 데이터를 수신한 경우, 이러한 필터링 처리하는 서브 프로세스는 센싱 값에서 중력 가속도 성분을 제거하기 위해 센싱 값을 하이 패스(High Pass) 필터링 처리할 수 있다.
데이터 수신 단계(S1700)에서 단말기(1100)의 제1 센서로부터 측정된 제1 센싱 값과 제2 센서로부터 측정된 제2 센싱 값을 포함하는 적어도 하나의 상기 센싱 데이터를 수신하고, 데이터 후처리 단계(S1702)에서 제1 센싱 값과 상기 제2 센싱 값의 차이인 센싱 값 오차 중 일부 혹은 전부를 제1 센싱 값에 대한 데이터 오차로 인식하여 이러한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행할 수 있다.
이러한 경우, 데이터 후처리 프로세스는 제1 센싱 값에 센싱 값 오차의 일부를 가감하여 제1 센서 보정 값을 생성하거나 이전 제1 센서 보정 값에 센싱 값 오차의 일부를 가감하여 제1 센서 보정 값을 생성하는 보정 서브 프로세스를 더 포함하고 보정 데이터는 제1 센서 보정 값을 토대로 생성될 수 있다. 또한, 데이터 후처리 단계(S1702)에서 센싱 값 오차가 일정 오차 범위보다 큰 경우 보정 서브 프로세스는 센싱 값 오차를 오차 분할 보정 횟수로 나눈 오차 분할 값을 센싱 값 오차의 일부로서 사용하고, 데이터 후처리 프로세스는 보정 서브 프로세스를 미리 정해진 서브 프로세스 수행 주기에 따라 오차 분할 보정 횟수 만큼 반복 수행하여 각 서브 프로세스 수행마다 보정 데이터를 생성할 수도 있다.
데이터 수신 단계(S1700)에서 단말기(1100)의 움직임 센서로부터 측정된 움직임 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 수신하고, 데이터 후처리 단계(S1702)에서 보정 서브 프로세스는 움직임 센싱 값의 크기에 따라 가감되는 센싱 값 오차의 비율을 조절할 수도 있다.
제1 센서는 자이로 센서이고 제2 센서는 가속도 센서일 때, 데이터 후처리 단계(S1702)에서 센싱 값 오차 중 롤(Roll) 방향 성분 및 피치(Pitch) 성분을 제1 센싱 값에 대한 롤 방향 및 피치 방향 데이터 오차로 인식하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하고 제1 센서는 자이로 센서이고 상기 제2 센서는 지자계 센서일 때, 데이터 후처리 단계(S1702)에서 센싱 값 오차 중 요(Yaw) 방향 성분을 제1 센싱 값에 대한 요 방향 데이터 오차로 인식하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행할 수도 있다.
데이터 후처리 단계(S1702)에서 데이터 후처리 프로세스는 스테이블(stable) 상태 판단 서브 프로세스를 더 포함하고 제2 센싱 값에 대한 스테이블 상태 판단 서브 프로세스를 통해 제2 센서가 스테이블 상태에 있는 것으로 판단되는 경우에만 제1 센싱 값과 제2 센싱 값의 차이인 센싱 값 오차 중 일부 혹은 전부를 제1 센싱 값에 대한 데이터 오차로 인식할 수 있다.
데이터 수신 단계(S1700)에서 단말기(1100)의 제1 센서로부터 측정된 제1 센싱 값과 제2 센서로부터 측정된 제2 센싱 값을 포함하는 적어도 하나의 상기 센싱 데이터를 수신하고, 데이터 후처리 단계(S1702)에서 데이터 후처리 프로세스를 통해 제1 센서 보정 값을 포함하는 보정 데이터를 생성하되, 데이터 후처리 프로세스는 이전 제1 센서 보정 값과 제2 센싱 값의 차이인 보정 값 오차 중 일부 혹은 전부를 제1 센서 보정 값에 대한 데이터 오차로 인식하여 데이터 오차를 감쇄시키도록 제어될 수 있다.
데이터 후처리 단계(S1702)에서 데이터 후처리 프로세스는 이전 제1 센서 보정 값에 보정 값 오차의 일정 비율을 가감하여 제1 센서 보정 값을 생성할 수 있다.
센싱 데이터가 이전에 수신한 이전 센싱 데이터로부터 일정 시간 간격을 초과하여 수신된 경우, 데이터 후처리 단계(S1702)에서 데이터 후처리 프로세스는 이전 센싱 데이터에 포함된 센싱 값과 센싱 데이터에 포함된 센싱 값을 인터폴레이션(interpolation) 처리하여 복수의 인터폴레이션 보정 값을 생성하고 각각의 인터폴레이션 보정 값을 포함하는 보정 데이터를 보간 시간 간격으로 생성할 수 있다.
장치(1210)는 보정 데이터를 적어도 하나의 다른 장치 혹은 적어도 하나의 어플리케이션이 사용할 수 있는 적어도 하나의 신호 데이터로 변환하여 제공한다(S1704, 데이터 제공 단계).
그리고,장치(1210)는 보정 데이터를 신호 데이터로 변환하여 제공하는 다른 장치 혹은 어플리케이션으로부터 진동 신호 데이터를 제공받아 단말기(1100)로 전달하여 단말기(1100)가 진동 작동하도록 제어하는 진동 신호 전달 단계(미도시)를 더 포함할 수 있다.
이상에서는 본 발명의 실시예에 따른 단말기 센서 활용 방법이 도 7에서와 같은 절차로 수행되는 것으로 설명되었으나, 이는 설명의 편의를 위한 것일 뿐, 본 발명의 본질적인 개념을 벗어나지 않는 범위 내에서, 구현 방식에 따라 각 단계의 수행 절차가 바뀌거나 둘 이상의 단계가 통합되거나 하나의 단계가 둘 이상의 단계로 분리되어 수행될 수도 있다.
위에서는 단말기(1100) 센서를 활용하는 방법 및 장치(1210)에 대해 설명하였다. 아래에서는 센싱 데이터를 제공하는 방법 및 단말기(1100)에 대해 설명한다.
도 8은 본 발명의 제1 실시예에 따른 단말기(1100)의 내부 블록도이다.
도 8을 참조하면, 단말기(1100)는 적어도 하나의 센서를 이용하여 적어도 하나의 센싱 값을 측정하는 센싱 값 측정부(1810), 적어도 하나의 센싱 값을 포함하는 센싱 데이터에 대하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 적어도 하나의 장치로 이러한 센싱 데이터를 송신하는 센싱 값 송신부(820), 자이로 센서(1101), 가속도 센서(1102) 및 지자계 센서(1103) 등을 포함할 수 있다. 여기서 자이로 센서(1101), 가속도 센서(1102) 및 지자계 센서(1103)는 단말기(1100)가 포함할 수 있는 센서의 예시로서 본 발명의 제1 실시예는 이러한 실시예로 제한되는 것은 아니며 단말기(1100)는 자이로 센서(1101), 가속도 센서(1102) 및 지자계 센서(1103) 중 하나의 센서만 포함하고 있을 수도 있으며, 또한, 근접 센서(미도시)와 같은 다른 종류의 센서를 포함하고 있을 수도 있다.
도 9는 본 발명의 제1 실시예에 따른 센싱 데이터 제공 방법에 대한 흐름도이다.
도 9를 참조하면, 단말기(1100)는 적어도 하나의 센서를 이용하여 적어도 하나의 센싱 값을 측정하는 센싱 값 측정 단계(S1900)를 수행하고, 적어도 하나의 센싱 값을 포함하는 센싱 데이터에 대하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 적어도 하나의 장치로 센싱 데이터를 송신하는 센싱 값 송신 단계(S1902)를 수행할 수 있다.
도 8을 참조하여 설명한 단말기(1100)와 도 9를 참조하여 설명한 센싱 데이터 제공 방법의 좀더 자세한 실시예는 도 1 내지 도 7을 참조하여 설명한 장치(1210) 및 단말기 센서 활용 방법에서 설명한 내용을 참고할 수 있다. 도 2를 참조하여 설명한 것과 같이 시스템(1200)에서 단말기(1100)는 내장된 센서의 센싱 값을 장치(1210)로 송신하고 장치(1210)는 이러한 센싱 값을 수신하여 데이터 후처리 프로세스를 수행한 후 다른 장치 혹은 어플리케이션으로 제공하게 된다. 단말기(1100)의 일 실시예는 이러한 시스템(1200)에서 장치(1210)에 대응되는 기기로서 작동하는 것으로 이해할 수 있다. 하지만 단말기(1100)는 이렇게 도 1 내지 도 7을 참조하여 설명한 본 발명의 제1 실시예에 따른 장치(1210)에 대응되는 것으로 제한되는 것은 아니며 도 8을 참조하여 설명한 센싱 값 측정부(1810), 센싱 값 송신부(1820) 적어도 하나의 센서를 포함하는 기기는 모두 본 발명의 실시예에 따른 단말기(1100)로 해석해야할 것이다.
이상에서 전술한 본 발명의 실시예에 따른 단말기 센서 활용 방법 및 센싱 데이터 제공 방법은, 각각 장치(1210) 및 단말기(1100)에 기본적으로 설치된 애플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼에 포함되거나 운영체제 등에 포함되거나 호환되는 프로그램일 수 있음)에 의해 실행될 수 있다. 여기서, 장치(1210) 및/또는 단말기(1100)의 운영체제는, 데스크 탑 등의 일반 PC에 설치되는 윈도우(Window), 매킨토시(Macintosh) 등의 운영체제이거나, 스마트폰, 태블릿 PC 등의 모바일 단말기에 설치되는 iOS, 안드로이드(Android) 등의 모바일 전용 운영체제 등일 수도 있다.
이러한 의미에서, 전술한 본 발명의 실시예에 따른 단말기 센서 활용 방법은 장치(1210)에, 그리고 센싱 데이터 제공 방법은 단말기(1100)에 기본적으로 설치되거나 사용자에 의해 직접 설치된 애플리케이션(즉, 프로그램)으로 구현되고, 장치(1210)/단말기(1100) 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.
본 발명의 실시예에 따른 단말기 센서 활용 방법을 구현한 프로그램은, 단말기의 적어도 하나의 센서로부터 측정된 적어도 하나의 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 단말기로부터 수신하는 데이터 수신 기능, 센싱 데이터에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 적어도 하나의 보정 데이터를 생성하는 데이터 후처리 기능 및 보정 데이터를 적어도 하나의 다른 장치 혹은 적어도 하나의 어플리케이션이 사용할 수 있는 적어도 하나의 신호 데이터로 변환하여 제공하는 데이터 제공 기능 등을 실행한다. 이뿐만 아니라, 도 1 내지 도 7 을 참조하여 전술한 본 발명의 실시예에 따른 단말기 센서 활용 방법에 대응되는 모든 기능을 실행할 수 있다.
또한, 본 발명의 실시예에 따른 적어도 하나의 센서를 포함하는 단말기(1100)가 센싱 데이터 제공 방법을 구현한 프로그램은, 적어도 하나의 센서를 이용하여 적어도 하나의 센싱 값을 측정하는 센싱 값 측정 기능 및 적어도 하나의 센싱 값을 포함하는 센싱 데이터에 대하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 적어도 하나의 장치로 센싱 데이터를 송신하는 센싱 값 송신 기능 등을 실행한다. 이뿐만 아니라, 도 8 내지 도 9를 참조하여 전술한 본 발명의 실시예에 따른 센싱 데이터를 제공하는 방법에 대응되는 모든 기능을 실행할 수 있다.
이러한 프로그램은 컴퓨터에 의해 읽힐 수 있는 기록매체에 기록되고 컴퓨터에 의해 실행됨으로써 전술한 기능들이 실행될 수 있다.
이와 같이, 컴퓨터가 기록매체에 기록된 프로그램을 읽어 들여 프로그램으로 구현된 단말기 센서 활용 방법 및 센싱 데이터 제공 방법을 실행시키기 위하여, 전술한 프로그램은 컴퓨터의 프로세서(CPU)가 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다.
이러한 코드는 전술한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Function Code)를 포함할 수 있고, 전술한 기능들을 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수도 있다.
또한, 이러한 코드는 전술한 기능들을 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조 되어야 하는지에 대한 메모리 참조 관련 코드를 더 포함할 수 있다.
또한, 컴퓨터의 프로세서가 전술한 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 컴퓨터의 프로세서가 컴퓨터의 통신 모듈(예: 유선 및/또는 무선 통신 모듈)을 이용하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야만 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수도 있다.
그리고, 본 발명을 구현하기 위한 기능적인(Functional) 프로그램과 이와 관련된 코드 및 코드 세그먼트 등은, 기록매체를 읽어서 프로그램을 실행시키는 컴퓨터의 시스템 환경 등을 고려하여, 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론되거나 변경될 수도 있다.
또한 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는 네트워크로 커넥션된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 이 경우, 다수의 분산된 컴퓨터 중 어느 하나 이상의 컴퓨터는 상기에 제시된 기능들 중 일부를 실행하고, 그 결과를 다른 분산된 컴퓨터들 중 하나 이상에 그 실행 결과를 전송할 수 있으며, 그 결과를 전송받은 컴퓨터 역시 상기에 제시된 기능들 중 일부를 실행하여, 그 결과를 역시 다른 분산된 컴퓨터들에 제공할 수 있다.
이상에서 전술한 바와 같은, 본 발명의 실시예에 따른 단말기 센서 활용 방법 및 센싱 데이터 제공 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는, 일 예로, ROM, RAM, CDROM, 자기 테이프, 플로피디스크, 광 미디어 저장장치 등이 있다.
또한, 본 발명의 실시예에 따른 단말기 센서 활용 방법 및 센싱 데이터 제공 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 컴퓨터로 읽을 수 있는 기록매체는, 애플리케이션 스토어 서버(Application Store Server), 애플리케이션 또는 해당 서비스와 관련된 웹 서버(Web Server) 등을 포함하는 애플리케이션 제공 서버(Application Provider Server)에 포함된 저장매체(예: 하드디스크 등)이거나, 애플리케이션 제공 서버 그 자체일 수도 있으며, 프로그램을 기록한 다른 컴퓨터 또는 그 저장매체일 수도 있다.
본 발명의 제1 실시예에 따른 단말기 센서 활용 방법 및 센싱 데이터 제공 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터는, 일반적인 데스크 탑이나 노트북 등의 일반 PC 뿐만 아니라, 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기를 포함할 수 있으며, 이뿐만 아니라, 컴퓨팅(Computing) 가능한 모든 기기로 해석되어야 할 것이다.
만약, 본 발명의 제1 실시예에 따른 데이터 제공 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터가 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기인 경우, 모바일 단말기는 애플리케이션 스토어 서버, 웹 서버 등을 포함하는 애플리케이션 제공 서버로부터 해당 애플리케이션을 다운로드 받아 설치할 수 있고, 경우에 따라서는, 애플리케이션 제공 서버에서 일반 PC로 다운로드 된 이후, 동기화 프로그램을 통해 모바일 단말기에 설치될 수도 있다.
[제2 실시예]
본 발명의 제2 실시예는 사용자 단말과 휴대 단말의 접속 방법, 이를 구현하기 위한 시스템 및 기록 매체에 관한 것으로, 보다 구체적으로는, IP 주소를 입력하지 않는 사용자 단말과 휴대 단말의 접속 방법, 이를 구현하기 위한 시스템 및 기록 매체에 관한 것이다.
이와 관련하여, 체감형 게임은 사람이 직접 몸소 체험하며 즐길 수 있는 게임으로, 예컨대 탁구, 테니스, 복싱, 야구 등의 스포츠를 직접 하는 것처럼 즐길 수 있는 게임을 말한다.
체감형 게임은 사용자와 게임이 상호작용할 수 있는 기술이 발전됨으로써 대중화되기 시작하였다.
일반적으로 체감형 게임을 즐기기 위해서는 게임기와 그에 부가되는 주변기기가 필요하여, 상기 체감형 게임을 컴퓨터에서 즐기기 위해서는 그에 부가되는 주변기기(예컨대, 자동차 핸들, 조이스틱 등), 즉 종속적 인터페이스 장비가 필요하다.
본 발명에서는 이러한 종속적 인터페이스 장비로서 스마트 폰과 같은 휴대 단말과 컴퓨터를 연결하여 체감형 게임을 즐길 수 있는 방법을 제안하고자 한다.
다만, 이때 인터넷 환경에서 IP 주소는 주기적으로 변경되기 때문에 상기 체감형 게임을 즐기기 위해 컴퓨터와 접속시에 매번 사용자가 변경된 IP 주소를 입력해야 하는 번거로움이 있으므로, 본 발명이 해결하고자 하는 과제는 휴대 단말에서 사용자 단말의 IP 주소를 직접 알지 못하더라도 서로 접속할 수 있게 하는 사용자 단말과 휴대 단말의 접속 방법, 이를 구현하기 위한 시스템 및 기록 매체를 제공하려는 것이다.
본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법은 휴대 단말이, 사용자 단말의 IP 주소를 전송받아 저장한 주소 서버 또는 상기 사용자 단말의 IP 주소를 전송받은 무선 공유기를 통해 상기 사용자 단말의 IP 주소를 수신하는 단계; 및 수신한 상기 IP 주소를 이용하여 상기 사용자 단말로 접속하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법은 사용자 단말이, 상기 사용자 단말의 IP 주소를 주소 서버에 전송하는 단계; 및 상기 주소 서버로부터 상기 IP 주소를 수신한 휴대 단말로부터 접속신호를 수신하면, 상기 휴대 단말과 접속하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법은 사용자 단말이, 일정 주기로 상기 사용자 단말의 IP 주소 및 사용자 ID를 무선 공유기에 접속된 적어도 하나의 휴대 단말에 브로드캐스팅하는 단계; 및 상기 적어도 하나의 휴대 단말이, 수신한 사용자 ID와 상기 적어도 하나의 휴대 단말에 입력되는 사용자 ID가 일치하는 것으로 판단하여 수신한 상기 IP 주소로 접속 요청을 한 경우, 상기 적어도 하나의 휴대 단말과 접속하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 시스템은 게임을 제공하는 사용자 단말; 상기 사용자 단말로부터 IP 주소를 수신하여 이를 저장하는 주소 서버; 및 어플리케이션을 실행 후에 상기 주소 서버에 접속하여 상기 IP 주소를 수신하고 이후 상기 주소 서버와의 접속을 종료하고 상기 IP 주소를 이용하여 상기 사용자 단말로 접속을 요청하는 휴대 단말을 포함하는 것을 특징으로 한다.
본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 시스템은 게임을 제공하는 사용자 단말; 상기 사용자 단말로부터 IP 주소 및 사용자 ID를 수신하여 이를 연결된 적어도 하나의 휴대 단말에 브로드캐스팅 하는 무선 공유기; 및 상기 무선 공유기와 연결되어 상기 IP 주소 및 사용자 ID를 수신받아 저장하고, 상기 IP 주소를 이용해 상기 사용자 단말에 접속 요청을 하는 적어도 하나의 휴대 단말을 포함하는 것을 특징으로 한다.
본 발명의 제2 실시예에 따른 기록매체는 휴대 단말이, 사용자 단말의 IP 주소를 전송받아 저장한 주소 서버 또는 상기 사용자 단말의 IP 주소를 전송받은 무선 공유기를 통해 상기 사용자 단말의 IP 주소를 수신하는 단계; 및 수신한 상기 IP 주소를 이용하여 상기 사용자 단말로 접속하는 단계를 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 방법을 구현하기 위한 프로그램을 기록한다.
본 발명의 제2 실시예에 따른 기록매체는 사용자 단말이, 상기 사용자 단말의 IP 주소를 주소 서버에 전송하는 단계; 및 상기 주소 서버로부터 상기 IP 주소를 수신한 휴대 단말로부터 접속신호를 수신하면, 상기 휴대 단말과 접속하는 단계를 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 방법을 구현하기 위한 프로그램을 기록한다.
본 발명의 제2 실시예에 따른 기록매체는 사용자 단말이, 일정 주기로 상기 사용자 단말의 IP 주소 및 사용자 ID를 무선 공유기에 접속된 적어도 하나의 휴대 단말에 브로드캐스팅하는 단계; 및 상기 적어도 하나의 휴대 단말이, 수신한 사용자 ID와 상기 적어도 하나의 휴대 단말에 입력되는 사용자 ID가 일치하는 것으로 판단하여 수신한 상기 IP 주소로 접속 요청을 한 경우, 상기 적어도 하나의 휴대 단말과 접속하는 단계를 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 방법을 구현하기 위한 프로그램을 기록한다.
본 발명에 따른 사용자 단말과 휴대 단말의 접속 방법, 이를 구현하기 위한 시스템 및 기록 매체에 따르면, 휴대 단말에서 사용자 단말의 IP 주소를 직접 알지 못하더라도 접속할 수 있는 효과를 가진다.
이하, 첨부된 도면을 참조하여, 본 발명의 제2 실시예에 대하여 보다 구체적으로 설명하기로 한다.
본 발명의 제2 실시예에서 '통신', '통신망' 및 '네트워크'는 동일한 의미로 사용될 수 있다. 상기 세 용어들은, 파일을 사용자 단말, 다른 사용자들의 단말 및 다운로드 서버 사이에서 송수신할 수 있는 유무선의 근거리 및 광역 데이터 송수신망을 의미한다.
도 10은 본 발명의 제2 실시예에 따른 접속 시스템을 개략적으로 나타내는 도면이다. 상기 접속 시스템(210)은 사용자 단말(2100), 주소 서버(2200) 및 휴대 단말(2300)을 포함한다.
여기서 상기 사용자 단말(2100)은 컴퓨터, 테블릿 컴퓨터, 서버 등의 게임을 제공할 수 있는 장치인 것을 모두 포함하고, 휴대 단말(2300)은 휴대용 무선 통신이 가능하며 게임을 즐길 수 있는 모든 기기(예컨대, 스마트폰, 테블릿 컴퓨터 등)를 포함한다.
도 10에서는 도시 하지 않았으나 상기 사용자 단말(2100), 주소 서버(2200) 및 휴대 단말(2300)은 서로 네트워크로 연결되어 있을 수 있다.
도 10을 참고하면, 사용자 단말(2100)은 IP 주소를 주소 서버(2200)에 전송하고, 상기 주소 서버(2200)는 이를 수신하여 저장한다. 이후, 휴대 단말(2300)의 어플리케이션이 실행되고 상기 휴대 단말(2300)이 상기 어플리케이션을 통해 상기 주소 서버(2200)에 접속하면 상기 주소 서버(2200)는 상기 IP 주소를 상기 휴대 단말(2300)에 전송할 수 있다.
휴대 단말(2300)은 상기 IP 주소를 수신하면 상기 주소 서버(2200)와의 접속을 종료하고 이를 이용해 사용자 단말(2100)에 접속할 수 있다. 이에 대한 보다 구체적인 설명은 추후에 설명하기로 한다.
도 11는 본 발명의 제2 실시예에 따른 접속 시스템을 개략적으로 나타내는 도면이다. 상기 접속 시스템(210')은 사용자 단말(2100), 무선 공유기(2200') 및 복수의 휴대 단말들(2300')을 포함한다.
또한, 상기 복수의 휴대 단말들(2300')은 제1 휴대 단말(2310) 내지 제n 휴대 단말(23n0)을 포함한다.
여기서 상기 사용자 단말(2100)은 컴퓨터, 테블릿 컴퓨터, 서버 등의 게임을 제공할 수 있는 장치인 것을 모두 포함하고, 복수의 휴대 단말(2300')은 휴대용 무선 통신이 가능하며 게임을 즐길 수 있는 모든 기기(예컨대, 스마트폰, 테블릿 컴퓨터 등)가 하나 이상으로 구성된 그룹을 의미한다.
예컨대, 상기 제1 휴대 단말(2310)이 스마트 폰, 제2 휴대 단말(2320)이 테블릿 컴퓨터에 해당할 수 있고, 상기 제1 휴대 단말(2310)이 스마트 폰, 제2 휴대 단말(2320)이 스마트 폰에 해당할 수 있다.
도 11를 참고하면, 사용자 단말(2100)은 일정 주기로 IP 주소 및 사용자 ID를 무선 공유기(2200')를 통해 상기 무선 공유기(2200')에 접속한 복수의 휴대 단말들(2300')에 브로드캐스팅한다.
상기 복수의 휴대 단말들(2300')은 상기 IP 주소 및 사용자 ID를 수신하여 저장한다.
상기 복수의 휴대 단말들(2300')은 어플리케이션을 통해 수신하여 저장한 사용자 ID 정보와 상기 복수의 휴대 단말들(2300') 각각에 입력된 ID가 일치하는지를 확인하고 일치하는 경우 상기 복수의 휴대 단말들(2300') 각각에 입력되는 접속 신호에 기초하여 전송받은 IP 주소, 사용자 단말(2100)로 접속할 수 있다. 이에 대한 보다 구체적인 설명은 추후에 설명하기로 한다.
도 12은 도 10 및 도 11에 도시된 사용자 단말을 보다 구체적으로 설명하기 위한 도면이다. 상기 사용자 단말(2100)은 게임 관리 모듈(2110), 모션 서버(2120) 및 데이터 베이스(2130)를 포함한다.
도 12을 참고하면, 상기 게임 관리 모듈(2110)은 상기 사용자 단말(2100)이 제공하는 모든 종류의 게임을 관리하는 역할을 수행하며, 상기 모션 서버(2120)로부터 제공받는 정보를 반영하여 게임을 진행하도록 한다.
또한, 상기 게임 관리 모듈(2110)은 제공하는 게임의 데이터를 상기 데이터 베이스(2130)에 저장하도록 할 수 있다.
상기 모션 서버(2120)는 상기 휴대 단말(2300 또는 2300')과 통신을 수행하며, 상기 휴대 단말(2300 또는 2300')로부터 상기 휴대 단말(2300 또는 2300')이 센싱한 정보를 수신한다.
또한, 상기 모션 서버(2120)는 상기 휴대 단말(2300 또는 2300')이 센싱한 정보를 상기 모션 서버(2120)에서 보정, 가공한 가공 정보를 상기 휴대 단말(2300 또는 2300')에 제공할 수도 있다.
또한, 상기 모션 서버(2120)는 상기 휴대 단말(2300 또는 2300')로부터 수신한 센싱 정보 및 상기 가공 정보를 상기 데이터 베이스(2130)에 저장하도록 할 수 있다.
도 13는 도 12의 모션 서버를 보다 구체적으로 설명하기 위한 도면이다. 상기 모션 서버(2120)는 통신 모듈(2122), 보정 모듈(2124) 및 연산 모듈(2126)을 포함한다.
도 13를 참고하면, 상기 통신 모듈(2122)은 상기 휴대 단말(2300 또는 2300')과 데이터를 주고 받는 기능을 수행한다.
상기 보정 모듈(2124)은 상기 휴대 단말(2300 또는 2300')로부터 센싱 정보를 수신하면 상기 센싱 정보를 보정(또는 필터링)하여 도 12에 도시된 게임 관리 모듈(2110)에 제공하는 기능을 수행한다.
또한 상기 연산 모듈(2126)은 상기 휴대 단말(2300 또는 2300')로부터 수신한 센싱 정보를 가공하는 기능을 수행한다. 예컨대, 상기 센싱 정보가 상기 휴대 단말(2300 또는 2300')의 정적 가속도(예컨대, 휴대 단말(2300 또는 2300')이 정지해 있을 때 받는 중력 가속도), 동적 가속도(예컨대, 휴대 단말(2300 또는 2300')이 움직일 때의 속도 변화량), 회전 각속도 및 방위 정보를 포함할 때 이 정보들을 결합(fusion)하여 가공하는 기능을 수행한다.
도 14는 도 10 및 도 11에 도시된 휴대 단말을 보다 구체적으로 설명하기 위한 도면이다. 상기 휴대 단말(2300)은 가속도 센서(2312), 자이로 센서(2314), 지자계 센서(2316) 및 송수신 모듈(2318)을 포함한다.
도 14를 참고하면, 가속도 센서(2312)는 휴대 단말(2300)이 정지해 있을 때 받는 중력 가속도에 해당하는 정적 가속도 및 휴대 단말(2300)이 움직일 때의 속도 변화량인 동적 가속도를 측정하는 기능을 수행한다.
자이로 센서(2314)는 휴대 단말(2300)의 회전 각속도를 측정하는 기능을 수행하고, 지자계 센서(2316)는 나침반과 같이 절대적 방위 정보를 얻는 기능을 수행한다.
상기 송수신 모듈(2318)은 도 12의 사용자 단말(2100)과의 통신을 위해 데이터를 주고받는 기능을 수행하며, 더 구체적으로 상기 사용자 단말(2100)의 모션 서버(2120) 내부의 통신 모듈(2122)과 데이터를 주고받는 기능을 수행한다.
상기 송수신 모듈(2318)은 상기 가속도 센서(2312)가 측정한 동적 가속도 및 정적 가속도, 상기 자이로 센서(2314)가 측정한 회전 각속도 및 상기 지자계 센서(2316)가 측정한 방위 정보를 상기 사용자 단말(2100)로 전송한다.
도 15은 본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법을 나타내기 위한 흐름도이다. 상기 사용자 단말과 휴대 단말의 접속 방법은 도 10 또는 도 11에 도시된 접속 시스템(210 또는 210')에 의해 수행될 수 있다.
도 15을 참고하면, 적어도 하나의 휴대 단말이 주소 서버 또는 무선 공유기를 통해 사용자 단말의 IP 주소를 전송받는다(S210). 이때, 상기 주소 서버는 사용자 단말의 IP 주소를 전송받아 저장한다. 또한, 사용자 단말은 상기 무선 공유기를 통해 상기 무선 공유기에 접속된 휴대 단말에 IP 주소를 브로드캐스팅한다.
휴대 단말이 상기 전송받은 IP 주소를 이용하여 사용자 단말로 접속한다(S220).
도 16은 본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법을 나타내기 위한 흐름도이다. 상기 사용자 단말과 휴대 단말의 접속 방법은 도 10에 도시된 접속 시스템(210)에 의해 수행될 수 있다.
도 16에 도시되는 사용자 단말과 휴대 단말의 접속 방법은 도 15의 사용자 단말과 휴대 단말의 접속 방법의 일 실시예에 해당한다.
도 16을 참고하면, 사용자 단말(2100)은 주소 서버(2200)에 IP 주소를 전송한다(S2110).
휴대 단말(2300)의 어플리케이션이 실행되고 상기 어플리케이션을 통해 상기 휴대 단말(2300)은 상기 주소 서버(2200)에 접속한다(S2120). 이때, 상기 어플리케이션은 상기 주소 서버(2200) 및 상기 사용자 단말(2100)과 연결하고 데이터를 주고 받도록 하는 어플리케이션을 포함한다.
주소 서버(2200)는 전송받은 IP 주소를 휴대 단말(2300)로 전송한다(S2130).
이후, 휴대 단말(2300)은 IP 주소를 전송받으면 상기 주소 서버(2200)와의 접속을 종료하고(S2140), 전송받은 상기 IP 주소를 이용하여 사용자 단말(2100)로 접속한다(S2150).
도 17은 본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법을 나타내기 위한 흐름도이다. 상기 사용자 단말과 휴대 단말의 접속 방법은 도 11에 도시된 접속 시스템(210')에 의해 수행될 수 있다.
도 16에 도시되는 사용자 단말과 휴대 단말의 접속 방법은 도 15의 사용자 단말과 휴대 단말의 접속 방법의 일 실시예에 해당한다.
도 17을 참고하면, 사용자 단말(2100)이 일정 주기로 상기 사용자 단말(2100)의 IP 주소 및 사용자 ID 정보를 무선 공유기(2200')를 통해 상기 무선 공유기(2200')에 접속한 모든 휴대 단말들(2300')에게 전송한다(S2210).
이후, 상기 휴대 단말들(2300')은 수신한 IP 주소 및 사용자 ID 정보를 저장한다(S2220).
휴대 단말들(2300')은 어플리케이션을 통해, 상기 휴대 단말들(2300')은 전송받은 사용자 ID 정보와 휴대 단말들(2300') 각각에 입력되는 ID가 서로 일치하는지를 확인한다(S2230).
확인 결과, 상기 휴대 단말들(2300')은 전송받은 사용자 ID 정보와 휴대 단말들(2300') 각각에 입력되는 ID가 서로 일치하는 경우에는 상기 휴대 단말(2300')에 입력되는 접속 요청 신호에 따라 상기 IP 주소로 접속한다(S2240).
도 18는 본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법이 적용되어 게임이 진행되는 것을 나타내기 위한 흐름도이다.
도 18를 참고하면, 도 10 또는 도 11의 휴대 단말(2300 또는 2300')은 상술한 방법으로 수신한 IP 주소를 이용하여 사용자 단말(2100)에 접속할 수 있고, 접속이 이루어지면, 상기 휴대 단말(2300 또는 2300')은 센싱 정보를 상기 사용자 단말(2100)에 제공할 수 있다(S2310).
사용자 단말(2100)은 제공받은 센싱 정보를 가공 및 보정하여 게임에 반영한다(S2320). 이때, 가공 및 보정은 도 13에서 설명되는 상기 사용자 단말(2100) 내부의 모션 서버(2120)의 보정 모듈(2124) 및 연산 모듈(2126)에 의해 수행될 수 있으며, 이에 대해서는 상술한 바 있다.
이로써, 본 발명의 제2 실시예에 따른 사용자 단말과 휴대 단말의 접속 방법에 의하면, 휴대 단말에서 사용자 단말의 IP 주소를 직접 알지 못하더라도 접속할 수 있는 효과를 가진다.
이상에서 전술한 본 발명의 제2 실시예에 따른 방법은, 단말기에 기본적으로 설치된 애플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼이나 운영체제 등에 포함된 프로그램을 포함할 수 있음)에 의해 실행될 수 있고, 사용자가 애플리케이션 스토어 서버, 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버를 통해 단말기에 직접 설치한 애플리케이션(즉, 프로그램)에 의해 실행될 수도 있다.
이러한 의미에서, 전술한 본 발명의 제2 실시예에 따른 방법은 단말기에 기본적으로 설치되거나 사용자에 의해 직접 설치된 애플리케이션(즉, 프로그램)으로 구현되고 단말기 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.
이러한 프로그램은 컴퓨터에 의해 읽힐 수 있는 기록매체에 기록되고 컴퓨터에 의해 실행됨으로써 전술한 기능들이 실행될 수 있다.
이와 같이, 본 발명의 각 실시예에 따른 방법을 실행시키기 위하여, 전술한 프로그램은 컴퓨터의 프로세서(CPU)가 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다.
이러한 코드는 전술한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Function Code)를 포함할 수 있고, 전술한 기능들을 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수도 있다.
또한, 이러한 코드는 전술한 기능들을 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조 되어야 하는지에 대한 메모리 참조 관련 코드를 더 포함할 수 있다.
또한, 컴퓨터의 프로세서가 전술한 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 컴퓨터의 프로세서가 컴퓨터의 통신 모듈(예: 유선 및/또는 무선 통신 모듈)을 이용하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야만 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수도 있다.
그리고, 본 발명을 구현하기 위한 기능적인(Functional) 프로그램과 이와 관련된 코드 및 코드 세그먼트 등은, 기록매체를 읽어서 프로그램을 실행시키는 컴퓨터의 시스템 환경 등을 고려하여, 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론되거나 변경될 수도 있다.
이상에서 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는, 일 예로, ROM, RAM, CDROM, 자기 테이프, 플로피디스크, 광 미디어 저장장치 등이 있다.
또한 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는 네트워크로 커넥션된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 이 경우, 다수의 분산된 컴퓨터 중 어느 적어도 하나의 컴퓨터는 상기에 제시된 기능들 중 일부를 실행하고, 그 결과를 다른 분산된 컴퓨터들 중 적어도 하나에 그 실행 결과를 전송할 수 있으며, 그 결과를 전송받은 컴퓨터 역시 상기에 제시된 기능들 중 일부를 실행하여, 그 결과를 역시 다른 분산된 컴퓨터들에 제공할 수 있다.
특히, 본 발명의 각 실시예에 따른 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 컴퓨터로 읽을 수 있는 기록매체는, 애플리케이션 스토어 서버(Application Store Server), 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버(Application Provider Server)에 포함된 저장매체(예: 하드디스크 등)이거나, 애플리케이션 제공 서버 그 자체일 수도 있다.
본 발명의 각 실시예에 따른 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터는, 일반적인 데스크 탑이나 노트북 등의 일반 PC 뿐만 아니라, 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기를 포함할 수 있으며, 이뿐만 아니라, 컴퓨팅(Computing) 가능한 모든 기기로 해석되어야 할 것이다.
또한, 본 발명의 제2 실시예에 따른 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터가 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기인 경우, 애플리케이션은 애플리케이션 제공 서버에서 일반 PC로 다운로드 되어 동기화 프로그램을 통해 모바일 단말기에 설치될 수도 있다.
[제3 실시예]
본 발명의 제3 실시예는, 휴대용 전화기, 스마트폰, 스마트패드 등 이동통신 기능을 포함하는 단말을 이용하여, PC 등의 외부전자기기에서 실행되는 게임을 플레이 할 수 있는 기술에 관한 것으로, 구체적으로는 단말에 표시되는 가상의 컨트롤러를 이용하여 외부전자기기에서 실행되는 게임을 조작할 수 있도록 하기 위한 기술이다.
이와 관련하여, 최근 하드웨어의 발달과 게임 컨텐츠 기술의 발달에 의해, 게임을 이용하는 사용자의 수는 남녀노소를 불문하고 증가하고 있다. 세밀한 그래픽 및 사용자 친화적 인터페이스를 통해, 사용자들은 재미있는 게임을 즐기면서 여가 생활을 즐길 수 있으며, 게임 컨텐츠의 다양화로 인해 사회 전반적으로 게임에 대한 관심이 높아지고 있다.
이에 따라서 게임 컨텐츠 간의 경쟁 역시 더욱 치열해지고 있으며, 사용자들을 게임에 안착시키고 이로 인한 수익을 증대하기 위한 게임 개발사 및 퍼블리셔들의 기술 개발에 대한 관심이 높아지고 있다.
기본적으로 게임은 컨트롤러를 통해 게임 상의 캐릭터를 조작하거나, 게임에서 이용할 수 있는 인터페이스를 조작하는 것을 통해 플레이를 진행하게 된다.
이때 사용자들은 일정한 컨트롤러를 통해 게임을 조작하게 되는데 예를 들어 PC의 키보드, 마우스 등이 일반적인 컨트롤러로 인식되고 있다. 그러나 체감형 게임 등 새로운 컨트롤 인터페이스가 필요한 게임 등에서는, 일반적인 컨트롤러는 사용자들에게 제한된 컨트롤 방식을 제공하고 있어, 새로운 방식의 컨트롤 인터페이스에 대한 기술의 필요성이 증가하고 있다.
이에 본 발명은, 사용자들이 일반적으로 보유하고 있는 이동통신단말을 이용하여 게임을 컨트롤할 수 있는 새로운 컨트롤 인터페이스를 제공하고 이에 따라서 사용자들이 이동통신단말을 통해 외부의 PC에서 실행되고 있는 게임을 플레이 할 수 있도록 하여, 새로운 재미를 선사하고, 이에 따라서 사용자들의 게임 이용률을 높이는 데 그 목적이 있다.
상기 목적을 달성하기 위해, 본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법은, 이동통신단말을 통해 외부단말에서 실행되는 게임을 컨트롤할 수 있는 서비스를 제공하는 장치가, 상기 외부단말에서의 게임 컨텐츠의 실행과 상기 장치와 상기 이동통신단말의 네트워크 연결을 감지하는 단계; 상기 이동통신단말에 저장된 어플리케이션의 실행에 따라서 제공되는 인터페이스이고, 적어도 하나의 입력 신호가 사용자의 입력에 의해 생성되는 인터페이스인 컨트롤 인터페이스로부터 상기 사용자의 입력에 의해 생성되는 상기 적어도 하나의 입력 신호를 수신하는 단계; 기저장된 명령 테이블로부터, 실행되고 있는 상기 게임 컨텐츠에서의 게임 플레이를 위해 상기 명령 테이블에 저장된 적어도 하나의 제어명령 중 상기 수신한 적어도 하나의 입력 신호에 대응하는 제어명령을 선택하는 단계; 및 상기 선택된 제어명령에 따라서 상기 게임 플레이에 대한 제어를 수행하도록 상기 선택된 제어명령을 상기 게임 컨텐츠에 전송하는 단계;를 포함하는 것을 특징으로 한다.
본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법은, 이동통신단말을 통해 외부단말에서 실행되는 게임을 컨트롤할 수 있는 서비스를 제공하는 장치가, 상기 외부단말에서의 게임 컨텐츠의 실행과 상기 장치와 상기 이동통신단말의 네트워크 연결을 감지하는 단계; 상기 이동통신단말로부터 입력되는 입력 신호에 따라서 상기 실행되고 있는 게임 컨텐츠의 게임 플레이를 제어하는 단계; 상기 게임 플레이 도중 기설정된 적어도 하나의 이벤트 중 어느 한 이벤트가 발생했음을 감지하는 단계; 기저장된 이벤트 효과 테이블에 저장된 효과 컨텐츠 중, 발생한 것으로 감지된 이벤트에 매칭되는 효과 컨텐츠를 선택하는 단계; 및 상기 선택된 효과 컨텐츠가 상기 이동통신단말에서 실행되도록 상기 선택된 효과 컨텐츠를 상기 이동통신단말에 전송하는 단계;를 포함하는 것을 특징으로 한다.
본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 장치는, 외부단말에서의 게임 컨텐츠의 실행과 상기 이동통신단말과의 네트워크 연결을 감지하고, 상기 이동통신단말에 저장된 어플리케이션의 실행에 따라서 제공되는 인터페이스이고, 적어도 하나의 입력 신호가 사용자의 입력에 의해 생성되는 인터페이스인 컨트롤 인터페이스로부터 상기 사용자의 입력에 의해 생성되는 상기 적어도 하나의 입력 신호를 수신하는 입력 신호 수신부; 기저장된 명령 테이블로부터, 실행되고 있는 상기 게임 컨텐츠에서의 게임 플레이를 위해 상기 명령 테이블에 저장된 적어도 하나의 제어명령 중 상기 수신한 적어도 하나의 입력 신호에 대응하는 제어명령을 선택하는 제어명령 선택부; 및 상기 선택된 제어명령에 따라서 상기 게임 플레이에 대한 제어를 수행하도록 상기 선택된 제어명령을 상기 게임 컨텐츠에 전송하는 제어명령 송신부;를 포함하는 것을 특징으로 한다.
본 발명에 의하면, 이동통신단말에서 실행되는 컨트롤 인터페이스를 통해, 사용자는 이동통신단말을 게임 컨트롤러, 예를 들어 조이패드로 알려진 컨트롤러로서 사용할 수 있거나, 단말의 움직임을 통해 게임을 플레이 할 수 있다. 또한, 다양한 게임마다 다른 조작 패턴 및 조작 입력을, 명령 테이블의 선택을 통해 하나의 이동통신단말에서 실행되는 컨트롤 인터페이스를 통해 입력할 수 있기 때문에, 다양한 게임의 통합 컨트롤러로서 사용할 수 있다.
이에 따라서, 사용자들은 게임 플레이의 새로운 재미를 느낄 수 있고, 특히 사용자들 대부분이 소유하고 있는 이동통신단말을 통해 체감형 게임 등에 적합한 컨트롤러로서 사용할 수 있기 때문에, 게임에 대한 이용률을 높일 수 있는 효과가 있다.
이하, 첨부된 도면을 참조하여 본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법 및 장치에 대하여 설명하기로 한다.
본 발명의 제3 실시예에서 “통신”, “통신망” 및 “네트워크”는 동일한 의미로 사용될 수 있다. 상기 세 용어들은, 파일을 사용자 단말, 다른 사용자들의 단말 및 다운로드 서버 사이에서 송수신할 수 있는 유무선의 근거리 및 광역 데이터 송수신망을 의미한다.
본 발명에서 이동통신단말은, 기본적으로 터치 스크린을 구비하고 있으며, 유무선, 원거리 또는 근거리 통신이 가능한 단말을 예로 들어 설명한다. 터치 스크린은 이미지 또는 영상이 표시되는 스크린에 감압 방식 또는 정전 방식의 터치 감응 센서를 포함하여, 사용자가 스크린을 터치 시 그 위치에서의 입력이 되는 모듈 전체를 의미한다. 따라서, 이하의 설명에서 터치 스크린이라 함은, 이미지와 영상 컨텐츠가 표시되는 디스플레이 모듈과, 디스플레이 모듈의 상부 또는 하부에 설치되어 사용자의 터치를 인식하고, 터치 여부와 함께 터치 위치를 인식한 데이터를 생성하는 터치 반응 모듈을 포함하는 터치 스크린 모듈을 의미한다.
또한 이동통신단말에는 스크린 등 영상 표시 장치 이외에, 스피커를 통해 음성이 출력될 수 있으며, 진동 모터가 내장되어 진동 효과가 출력될 수 있을 것이다.
본 발명에서 외부 단말은 본 발명에서의 게임 컨텐츠가 실행될 수 있는 모든 단말을 의미한다. 또한 외부 단말은 이동통신단말과 유무선 네트워크를 통해 연결될 수 있도록, 통신 수단을 포함할 수 있다. 외부 단말에는 게임 컨텐츠가 실행되면서, 게임의 플레이 영상이 표시되거나, 플레이 음성이 출력될 수 있다. 또한 입력 수단이 설치되어 일반적으로 게임을 실시할 때 조작 입력을 수행할 수도 있다.
본 발명에서의 게임 컨텐츠는, 입력 수단을 통해 캐릭터를 조작하거나 게임 상의 오브젝트를 조작할 수 있는 모든 컨텐츠를 의미한다. 일반적으로 게임이라고 지칭되는 모든 실행 가능한 클라이언트 컨텐츠가 포함될 수 있다. 예를 들어 웹 보드 게임, 체감형 게임, 롤플레잉 게임, 슈팅 게임, 어드벤처 게임, 일인칭 슈팅 게임 등 현재 외부 단말에서 실행 가능한 모든 게임 컨텐츠가 포함될 수 있다.
도 19은 본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법의 플로우차트이다.
도 19을 참조하면, 본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법에 있어서, 외부단말에서 실행되는 게임을 이동통신단말을 통해 컨트롤 가능하도록 하는 서비스를 제공하는 장치는, 외부단말에 설치되어 있는 하드웨어 내지 소프트웨어가 될 수 있다. 또는 별도의 단말로서 존재할 수도 있다.
장치는, 먼저 외부단말에서 게임 컨텐츠가 실행되는지 여부와 이동통신단말과 네트워크를 통해 외부 단말 또는 해당 장치가 연결되었는지 여부를 감지하는 단계(S310, S320)를 수행한다.
장치가 외부단말에 내장되어 있을 때는, 외부단말의 프로세서를 통해 게임 컨텐츠가 실행되는지 여부를 감지할 수 있다. 이동통신단말과 네트워크를 통해 연결되었는지에 대해서는 외부단말 또는 장치의 통신 모듈에 이동통신단말이 연결을 시도하고, 적법한 사용자로 인증되는 순간 연결을 감지할 수 있다.
네트워크를 통해 장치와 이동통신단말이 연결되기 위해서, 이동통신단말에는 본 발명의 제3 실시예를 이용하기 위한 어플리케이션이 설치되어 있어야 한다.
어플리케이션은 어플리케이션 스토어 등에서 구입하여 설치할 수 있으며, 어플리케이션 실행 시 자동으로 이동통신단말과 장치가 연결되거나, 연결 메뉴를 선택 시 연결될 수 있다.
어플리케이션은 이동통신단말의 통신사 및 종류에 따라서 적어도 한 종류의 어플리케이션이 제공될 수 있다. 장치는 어플리케이션에 따라서 서로 같거나 다른 인터페이스가 제공될 수 있기 때문에, 어플리케이션의 식별 정보와, 어플리케이션에 따라 다르게 표시될 수 있는 인터페이스에 대한 정보를 포함할 수 있다. 이때 인터페이스에 대한 정보는, 이하 설명하는 바와 같이 이동통신단말에 사용자가 선택 입력할 수 있도록 표시되는 버튼의 조합 및 구성에 관한 정보를 포함할 수 있다.
S310 및 S320 단계가 수행되면, 장치는 이동통신단말에 저장된 상기 언급한 어플리케이션의 실행에 따라서 제공 및 표시되는 인터페이스로서, 적어도 하나의 입력 신호가 사용자의 입력에 의해 생성되는 인터페이스인 컨트롤 인터페이스로부터, 사용자의 입력에 의해 생성되는 적어도 하나의 입력 신호를 수신하는 단계(S330)를 수행한다.
상기 언급한 어플리케이션을 실행하게 되면, 장치와 이동통신장치가 네트워크를 통해 연결되는 동시에, 이동통신단말의 표시부(예를 들어 터치스크린)에는 컨트롤 인터페이스가 표시될 수 있다. 컨트롤 인터페이스는 예를 들어 조이패드와 같이, 방향키와 액션 입력키 등의 적어도 하나의 버튼이 표시될 수 있다.
이때 사용자가 적어도 하나의 버튼 중 하나 이상을 터치하는 선택 입력을 수행하게 되면, 해당 버튼에 대응하는 입력 신호가 생성된다. 입력 신호는 표시되는 버튼의 식별 정보를 포함할 수 있으며, 장치는 어떤 버튼들이 선택 입력되었는지에 대하여 수신하게 된다.
S330 단계가 수행되면, 장치는 장치에 기저장된 명령 테이블로부터, 실행되고 있는 게임 컨텐츠에서의 게임 플레이를 위한 제어명령으로서, 명령 테이블에 저장되어 있는 적어도 하나의 제어명령 중 수신한 적어도 하나의 입력 신호에 대응하는 제어명령을 선택하는 단계(S340)를 수행한다.
본 발명에서 제어명령은 게임 플레이를 위한 명령으로서, 캐릭터를 조작하거나, 게임 화면에서 표시되어 조작 가능한 것으로 설정된 가상의 오브젝트를 조작하는 모든 명령을 의미한다.
예를 들어 캐릭터를 이동하거나, 캐릭터가 액션을 취하도록 하거나, 인벤토리 창을 열거나, 아이템을 사용하는 등의 모든 행위에 대한 명령이 제어명령에 포함될 수 있다.
게임 컨텐츠는 해당 컨텐츠가 실행되고 있는 외부단말의 입력수단을 통해 조작 가능한 것이 일반적이며, 입력수단에 의해 입력된 입력신호에 대응하는 제어명령이 설정될 수 있다.
이와 유사하게, 이동통신단말에서 표시되는 컨트롤 인터페이스를 통해 입력된 입력 신호마다, 하나 이상의 제어명령이 매칭될 수 있다. 본 발명에서 명령 테이블은, 이동통신단말에 표시되는 컨트롤 인터페이스를 통해 생성될 수 있는 적어도 하나의 입력 신호마다 매칭되는 적어도 하나의 제어명령이 저장된 데이터테이블을 의미한다.
명령 테이블은 장치 또는 외부단말에 저장될 수 있으며, 별도의 메모리에 저장될 수 있다. 장치는 장치 자체 또는 외부에 저장된 명령 테이블을 게임의 실행을 감지 시 미리 로드하여 임시 저장공간에 저장하면서 실시간으로 입력 신호를 수신 시마다 입력 신호에 매칭되는 제어명령을 선택할 수 있다.
상기 언급한 바와 같이 컨트롤 인터페이스는 이동통신단말의 종류에 따라서 다르게 설치되는 어플리케이션 또는 같은 어플리케이션이라도 이동통신단말에 대한 설정에 따라서 서로 같거나 다른 인터페이스가 될 수 있다. 따라서, 입력 신호는 이동통신단말에 표시되는 컨트롤 인터페이스에 따라서 서로 같거나 다를 수 있기 때문에, 입력 신호에 따라서 매칭되는 제어명령 역시 컨트롤 인터페이스에 따라서 다를 수 있다.
따라서 이하 도 20에서 설명하는 바와 같이 명령 테이블은 컨트롤 인터페이스의 종류에 따라서 다른 테이블이 각각 저장될 수 있다.
또한, 본 발명에서는 외부단말에서 실행되는 게임이 적어도 한 게임일 수 있다. 각 게임마다 서로 다른 제어명령이 존재할 수 있으며, 서로 다른 입력 신호가 필요로 될 수 있다.
따라서 본 발명에서는, 게임 컨텐츠가 실행되고 이동통신단말과의 연결이 감지된 후 제어 명령을 선택 시, 장치는 각 게임 컨텐츠들마다 생성된 제어명령 테이블을 로드할 수 있다. 즉, 명령 테이블은 게임 컨텐츠들마다 각각 생성되어 저장될 수 있는 것이다.
이때 명령 테이블에 저장된 제어명령은 상기 언급한 바와 같이 입력 신호에 대응하는 제어명령이 서로 같거나 다르도록 설정 및 저장될 수 있다.
물론, 상기 언급한 바와 같이 명령 테이블은 게임마다 존재하는 동시에, 컨트롤 인터페이스에 따라서 존재할 수 있다. 명령 테이블은 선택하는 것은 제어 명령을 선택 시마다 선택할 수도 있으나, 게임 컨텐츠가 실행됨을 감지할 때 선택하여 임시 저장 공간에 저장함으로써 시스템 상의 로드를 줄일 수도 있을 것이다.
즉, 컨트롤 인터페이스 및 실행되는 게임 컨텐츠에 매칭되는 명령 테이블이 저장될 것이며, 장치는 명령 테이블로부터 입력 신호에 대응하는 제어명령을 선택한다.
S340 단계가 수행되면, 서버는 선택된 제어명령을 게임 컨텐츠에 전송하여 게임 플레이를 조작하도록 하는 단계(S350)를 수행한다. S350 단계가 수행되면, 사용자는 외부단말에 표시되는 게임 화면에서, 자신이 이동통신단말의 컨트롤 인터페이스를 통해 입력한 신호에 따라서 게임이 조작되는 것을 확인할 수 있다.
이와 같이, 본 발명의 제3 실시예에 따르면, 이동통신단말에서 어플리케이션의 실행을 통해 외부단말에서 실행되는 게임을 플레이하는 것을 조작할 수 있으며, 하나의 이동통신단말을 통해 다양한 게임을 효율적으로 조작할 수 있어, 일종의 게임 컨트롤러로서 이동통신단말을 사용할 수 있는 효과가 있다.
도 20는 본 발명의 제3 실시예의 구현을 위해 입력 신호를 수신하는 구체적인 흐름의 일 예를 도시한 것이다.
도 20를 참조하면, 먼저 게임 컨텐츠가 실행되고 이동통신단말과 장치가 서로 네트워크를 통해 연결됨을 감지하는 단계(S310, S320)를 수행한 뒤, 이동통신단말에서 컨트롤 인터페이스가 실행 및 표시됨을 감지하는 단계(S331)를 수행한다.
상기 언급한 바와 같이 네트워크를 통해 이동통신단말과 장치가 연결되는 것은 컨트롤 인터페이스를 이용하기 위한 어플리케이션이 실행될 때 자동으로 감지하거나, 컨트롤 인터페이스를 이용하기 위한 어플리케이션 상의 메뉴를 선택 시 감지하고 있다.
이후 어플리케이션의 실행 시 표시되는 메뉴 중 컨트롤 인터페이스를 표시하도록 하는 메뉴가 존재하거나, 어플리케이션 실행 시 바로 컨트롤 인터페이스가 표시될 수 있다. 즉, S331 단계는 S320 단계와 동시에 수행되거나, 어플리케이션 상의 메뉴를 선택 시 수행될 수 있다.
S331 단계가 수행되면, 장치는 상기 도 19에 대한 설명에서 언급한 바와 같이 기저장된 적어도 하나의 컨트롤 인터페이스에 관한 정보 중, 이동통신단말에서 실행되고 있는 어플리케이션에 대응하는 컨트롤 인터페이스에 관한 정보를 로드하는 단계(32)를 수행한다.
이때 상기 언급한 바와 같이, 컨트롤 인터페이스에 관한 정보는, 컨트롤 인터페이스로부터 입력 가능한 입력 신호에 대한 식별 정보를 포함할 수 있다. 또는 컨트롤 인터페이스에 대한 일종의 식별 번호를 포함하여, 이후 명령 테이블 선택 시 활용할 수 있도록 한다.
명령 테이블은 상기 언급한 바와 같이 컨트롤 인터페이스마다 서로 같거나 다른 명령 테이블이 저장될 수 있다. 따라서 컨트롤 인터페이스에 관한 식별 번호를 통해, 컨트롤 인터페이스에 매칭되는 명령 테이블을 선택할 수 있다.
즉, S332 단계가 수행된 후, 장치는 로드된 컨트롤 인터페이스에 관한 정보에 매칭되는 명령 테이블을 로드하는 단계(S333)를 수행한다.
S333 단계를 통해 명령 테이블이 로드되면, 제어명령을 선택하여 게임 플레이를 제어할 수 있는 준비가 된 상태로 인식되며, 이후 장치는 컨트롤 인터페이스를 통해 입력 신호를 수신하는 단계(S334)를 수행하여, 이후의 단계를 수행하게 된다.
도 20의 실시예에 의하면, 도 19에서 언급한 바와 같이 다양한 게임을 하나의 컨트롤 인터페이스를 통해 조작할 수 있는 효과와 유사한 효과, 즉 컨트롤 인터페이스가 다양한 종류로 존재하더라도 이를 이용하여 게임 플레이가 가능하도록 할 수 있다.
예를 들어 애플 OS와 안드로이드 OS에 따라서 서로 다르게 제공될 수 있는 어플리케이션에서는, 컨트롤 인터페이스 역시 다르게 제공될 수 있다. 또한 터치스크린만을 이용하는 이동통신단말과, 터치스크린과 버튼 식 입력 수단을 선택적으로 이용할 수 있는 이동통신단말에서는 제공되는 컨트롤 인터페이스가 서로 다를 수 있다.
이러한 경우, 컨트롤 인터페이스를 통해 사용자가 입력할 수 있는 입력 메뉴는 서로 다르게 표시될 수도 있으며, 이에 따라서 생성되는 입력신호 역시 서로 다를 수 있다.
도 20의 실시예는 이러한 문제점을 해결하도록 명령 테이블을 컨트롤 인터페이스에 따라서 로드하고 있다. 따라서, 다양한 이동통신장치에서 하나의 외부단말에 접속하여 게임을 플레이 할 수 있는 효과를 기대할 수 있다.
도 21은 본 발명의 제3 실시예의 구현에 따라 입력 신호를 수신하는 흐름의 다른 예를 도시한 것이다.
도 21을 참조하면, 장치는 컨트롤 인터페이스에 포함된 버튼에 대한 선택 입력과, 이동통신단말에 내장된 센서를 통한 센서 입력 중 적어도 하나를 포함하는 입력 신호를 수신하는 단계(S335)를 수행한다.
컨트롤 인터페이스에 포함된 버튼에 대한 선택 입력은, 상기 도 19 및 2에 대한 설명에서 언급한 바와 같이, 터치 스크린 등에 의해 표시되는 조이패드 등의 형식의 컨트롤 인터페이스에 표시될 수 있는 적어도 하나의 버튼 메뉴에 대한 사용자의 선택 입력을 의미한다.
예를 들어 터치스크린 상에 조이패드 형식의 이미지가 표시될 수 있다. 사용자는 이동통신단말을 파지하고, 조이패드를 이용하는 것과 동일한 방식으로, 터치스크린 상에 표시되는 버튼 메뉴를 터치하게 된다. 이때 각 터치되는 버튼 메뉴에 대응하도록 입력 신호가 생성된다.
한편, 센서 입력은 이동통신단말마다 내장될 수 있는 센서에 의한 출력값을 의미한다. 즉 센서가 센서의 종류에 따라서 이동통신단말 자체에서 감지하는 모든 센싱 결과가 센서 입력이 될 수 있다.
예를 들어, 자이로 센서, 지자계 센서, 가속도 센서, 중력 센서 등 이동통신단말의 충격, 위치 이동, 상하 회전, 흔들기 등의 모션을 인식하는 센서들의 출력값이 센서 입력에 포함될 수 있다.
이때 센서 입력은 자이로 센서, 지자계 센서, 가속도 센서, 중력 센서 등 센서의 종류에 따라서 출력되는 방위각, 각속도, 가속도, 중력값 등의 아날로그 값이거나, 컨버터에 의해 전환된 디지털 신호가 될 수 있다.
이후 장치는 입력 신호에 대응하는 제어명령을 선택하는 단계(S340)를 수행하게 된다. 이때 사익 언급한 바와 같이 게임 컨텐츠에 따라서 서로 다른 명령 테이블이 존재할 수 있음을 언급한 바 있다.
게임 컨텐츠에 따라서 서로 다른 입력 방식이 사용될 수 있다. 예를 들어 제1 게임에서는 버튼 입력만을 사용할 수 있도록 설정될 수 있으나, 제2 게임에서는 이동통신단말의 회전 또는 움직임을 감지하여 게임을 이용할 수 있도록 설정될 수 있다.
이 경우 제1 게임과 제2 게임에 매칭되는 명령 테이블에는, 각 입력 신호마다 제어명령이 저장될 때, 서로 다른 입력 신호가 제어명령에 매칭될 수 있다.
예를 들어 제1 게임에 매칭되는 명령 테이블에는, 버튼 메뉴에 대응하는 입력 신호에 매칭되는 제어명령만이 저장될 수 있다. 한편 제2 게임에 매칭되는 명령 테이블에는 버튼 메뉴 이외에, 이동통신단말의 움직임을 감지하는 센서 입력에 매칭되는 제어명령이 저장될 수 있다.
이를 통해, 게임 컨텐츠마다 서로 같거나 다르게 필요로 하는 입력 신호에 따라서 유연한 제어가 가능하며, 이동통신단말을 외부단말에서 실행되는 게임 컨텐츠에 대한 컨트롤러로서 사용 가능한 범위를 넓힐 수 있는 효과가 있다.
도 22는 본 발명의 다른 실시예의 구현에 따른 이동통신단말을 통한 게임 컨트롤 방법의 플로우차트이다. 이하의 설명에서 도 19 내지 21에 대한 설명과 중복되는 부분은 이를 생략하기로 한다.
도 22를 참조하면, 먼저 장치는 외부단말에서 게임 컨텐츠가 실행됨을 감지하고, 장치와 이동통신단말의 네트워크 연결을 감지한 후, 이동통신단말로부터 상기의 실시예에 따라서 입력되는 입력 신호에 따라서 실행되고 있는 게임 컨텐츠의 게임 플레이를 제어하게 된다. 게임 플레이를 제어하는 것은, 상기 도 19 내지 21에 대한 설명에서 언급한 바와 같이 컨트롤 인터페이스에 포함된 버튼에 대한 선택 입력 또는 센서 입력 중 적어도 하나를 포함하는 입력 신호 및 이에 매칭되는 제어명령을 통해 게임을 조작하는 것을 의미한다.
이러한 게임 플레이 도중, 장치는 기설정된 적어도 하나의 이벤트 중 어느 한 이벤트가 게임 플레이에 따라서 발생했음을 감지하는 단계(S360)를 수행한다.
본 발명의 각 실시예에서 이벤트는, 게임 플레이 도중 중요한 상황이 되거나, 게임 플레이 시 일정한 효과가 발생할 수 있도록 관리자 단말 또는 개발자 단말의 입력에 따라서 설정된 모든 상황을 의미한다.
예를 들어, 축구 게임에서는 골을 넣거나 태클을 당하는 상황, 롤플레잉 게임에서는 캐릭터의 레벨이 상승하거나 캐릭터가 죽는 상황, 퍼즐 게임에서는 퍼즐이 완성되어 해당 퍼즐이 사라지는 등의 모든 상황이 이벤트에 포함될 수 있다.
이러한 이벤트에는 게임 데이터에 따라서 이벤트 효과가 각각 매칭될 수 있다. 장치는 장치 또는 게임 컨텐츠 데이터에 기저장된 이벤트 효과 테이블에 저장된 효과 컨텐츠 중, 발생한 것으로 S360 단계에서 감지된 이벤트에 매칭되는 효과 컨텐츠를 선택하는 단계(S370)를 수행한다.
효과 컨텐츠는 각 이벤트마다 적어도 하나 이상이 매칭될 수 있다. 예를 들어 캐릭터가 죽는 이벤트에서는 영상, 진동 및 음성 효과가 동시에 발생하거나, 이중 적어도 하나가 선택되어 발생될 수 있다.
S370 단계에 의해 효과 컨텐츠가 선택되면, 장치는 선택된 효과 컨텐츠가 이동통신단말에서 실행되도록 선택된 효과 컨텐츠를 이동통신단말에 전송하는 단계(S380)를 수행한다.
S380 단계가 수행됨에 따라서 효과 컨텐츠는 이동통신단말에서 일련의 프로세스를 거쳐 수행된다. 이때 어플리케이션 상의 효과 컨텐츠 실행 모듈이 효과 컨텐츠의 실행을 수행할 수 있다. 즉 효과 컨텐츠는 이동통신단말에 전달되며, 이를 수신한 어플리케이션 실행 모듈이 효과 컨텐츠를 실질적으로 실행할 수 있다.
도 22의 실시예의 수행 결과, 사용자는 이동통신단말에서 외부단말에서 실행되는 게임에서 발생하는 이벤트에 대한 효과컨텐츠를 확인할 수 있다.
예를 들어 자신의 캐릭터가 죽는 이벤트가 발생하는 경우, 영상, 음성 및 진동 컨텐츠가 이동통신단말에서 실행되어, 사용자는 자신이 파지하고 있는 이동통신단말의 표시부에서 컨트롤 인터페이스가 깜박인다거나, 음성 효과가 재생되고, 이동통신단말이 기설정된 기간 동안 진동하는 것을 체감할 수 있다.
즉 본 발명에서 효과 컨텐츠는, 이동통신단말의 진동 모터를 작동하여 진동시키는 효과, 표시부 등 이동통신단말의 디스플레이 모듈을 통해 출력되는 영상 효과 및 이동통신단말의 스피커 등 음성출력모듈을 이용하여 출력되는 음성 효과 등에 대한 컨텐츠를 포함할 수 있다.
이를 통해, 체감형 게임 등 이동통신단말을 통한 효과 컨텐츠의 재생이 필수적인 게임에 있어서 사용자는 이동통신단말을 외부단말에서 실행되는 게임 컨텐츠의 컨트롤러로 활용하는 동시에, 이동통신단말을 통해 자신이 직접 게임 상에서 활동하는 것과 같은 체감을 느낄 수 있어, 게임 이용률의 향상 효과를 극대화할 수 있다.
도 23는 본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 장치의 블록도이다. 이하의 설명에서 도 19 내지 22에 대한 설명과 중복되는 부분은 이를 생략할 수 있음은 당연할 것이다.
도 23를 참조하면, 본 발명의 제3 실시예에 따른 이동통신단말(320)을 통한 게임 컨트롤 장치(310)(이하 장치라 한다.)는, 입력신호 수신부(311), 제어명령 선택부(312) 및 제어명령 송신부(313)를 포함하며, 도 22의 실시예에 대응하여 효과 제공부(314)를 추가적으로 포함할 수 있다. 물론, 이동통신단말(320) 및 게임 컨텐츠가 실행되는 프로세서로서 게임 컨텐츠 실행 모듈(330)과의 데이터 송수신을 위한 네트워크 연결을 담당하는 통신 수단은 당연히 포함될 것이다.
입력신호 수신부(311)는, 상기 언급한 바와 같이 게임 컨텐츠의 실행 및 이동통신단말(320)과의 네트워크 연결을 감지하는 동시에, 컨트롤 인터페이스로부터 사용자의 입력에 의해 생성되는 적어도 하나의 입력 신호를 수신하는 기능을 수행한다.
입력신호 수신부(311)는 상기 도 19 및 2에 대한 설명에서 언급한 바와 같이 게임 컨텐츠 실행 모듈(330) 및 이동통신단말(320)로부터, 게임 컨텐츠에 대한 식별 정보 및 컨트롤 인터페이스에 대한 식별 번호 등을 함께 수신하여, 명령 테이블의 선택에 활용할 수 있도록 할 수 있다.
제어명령 선택부(312)는 기저장된 명령 테이블로부터, 명령 테이블에 저장된 적어도 하나의 제어명령들 중, 입력신호 수신부(311)가 수신한 입력 신호에 대응하는 제어명령을 선택하는 기능을 수행한다. 이때 제어명령 선택부(312)에는 게임 컨텐츠 및 컨트롤 인터페이스에 따라서 복수의 명령 테이블이 저장될 수 있다. 제어명령 선택부(312)는 입력신호 수신부(311)로부터 게임 컨텐츠에 대한 식별 정보 및 컨트롤 인터페이스에 대한 식별 번호를 이용하여 이에 매칭되는 명령 테이블을 로드하여 임시 저장 공간에 저장한 뒤, 입력 신호에 매칭되는 제어명령을 선택할 수 있다.
제어명령 송신부(313)는, 제어명령 선택부(312)에 의해 선택된 제어명령을 게임 컨텐츠 실행 모듈(330)에 전달하여, 게임 플레이에 대한 제어를 수행하도록 한다. 즉 게임 컨텐츠 내에 제어명령를 전송하도록 함으로써 사용자가 이동통신단말(320)을 통해 실행되는 어플리케이션에 따라서 표시되는 컨트롤 인터페이스를 이용하여 외부단말의 게임을 조작할 수 있도록 한다.
물론 상기 언급한 바와 같이 이동통신단말(320)을 통해 입력할 수 있는 입력 신호에는 컨트롤 인터페이스에 따라서 표시되는 적어도 하나의 버튼에 대한 선택 입력과, 이동통신단말(320)에 내장된 상기 언급한 센서들 중 적어도 하나의 센서가 감지하는 센서 입력 중 적어도 하나가 포함될 수 있다.
효과 제공부(314)는, 게임 플레이 도중, 기설정된 적어도 하나의 이벤트 중 어느 한 이벤트가 발생했음을 감지하는 경우, 효과 제공부(314) 등에 기저장된 이벤트 효과 테이블에 저장된 효과 컨텐츠 중 이벤트에 매칭되는 효과 컨텐츠를 선택하여 이동통신단말(320)에 전송하는 기능을 수행한다.
물론, 효과 컨텐츠 역시 게임 컨텐츠에 따라서 서로 같거나 다르게 설정될 수 있으며, 이에 따라서 게임 컨텐츠에 따라 적어도 하나의 이벤트 효과 테이블이 각각 저장될 수 있다. 효과 제공부(314)는 입력 신호 수신부(311)로부터 게임 컨텐츠에 대한 식별 정보를 수신하여 이에 매칭되는 이벤트 효과 테이블을 선택할 수 있다.
효과 제공부(314)는 통해 이동통신단말(320)에는 이동통신단말(320)을 진동시키는 효과, 이동통신단말(320)이 디스플레이 모듈을 통해 출력되는 영상 효과 및 이동통신단말(320)의 음성출력모듈을 이용해 출력되는 음성 효과 중 적어도 하나에 관한 컨텐츠가 전달될 것이다.
도 24 내지 30는 본 발명의 각 실시예의 구현에 따라 이동통신단말 또는 외부단말에 제공되는 서비스의 예를 도시한 것이다.
먼저 도 24에는 상기 언급한 게임 컨트롤을 위해 이동통신단말에 설치될 수 있는 어플리케이션의 실행 화면(3100)의 예가 도시되어 있다. 실행 화면(3100)에서 사용자는 실행 메뉴(3101)를 터치하여, 어플리케이션을 실행할 수 있다. 실행 메뉴(3101)가 터치됨을 감지하면, 어플리케이션을 통해 이동통신단말은 외부단말에 설치되거나 별도의 단말로 존재하는 이동통신단말을 통한 게임 컨트롤 장치에 네트워크 연결을 시도하게 된다.
도 25은 상기의 네트워크 연결 시도가 성공될 때의 화면(3110)의 예가 도시되어 있다. 도 25의 화면(3110)에는 외부단말에 저장된 장치, 즉 PC와의 연결이 성공되었음을 알리는 정보가 표시됨과 동시에, 컨트롤 인터페이스를 출력하도록 하는 컨트롤러 실행 메뉴(3111)가 표시될 수 있다. 사용자는 컨트롤러 실행 메뉴(3111)를 터치하여 컨트롤 인터페이스가 표시되도록 할 수 있다.
도 26에는 컨트롤 인터페이스(3120)의 예가 도시되어 있다. 도 26의 컨트롤 인터페이스(3120)에는 조이패드 형식의 화면이 표시된다. 즉, 방향 버튼(3121)과 액션 버튼(3122)이 표시되며, 사용자는 이동통신단말을 파지하고, 각 버튼(3121, 3122)를 터치함으로써, 마치 이동통신단말을 조이패드와 같이 사용할 수 있게 된다.
도 27에는 센서 입력이 되는 예를 도시하고 있다. 사용자는 조이패드 형식의 컨트롤 인터페이스가 출력되는 이동통신단말을 좌우로 흔드는 모션(3130)을 취할 수 있으며, 게임에 따라서 모션(3130)의 입력이 가능한 게임의 경우, 모션(3130)에 대한 가속도 센서 및 자이로 센서 등이 감지한 센서 입력을 수신하여 게임 플레이를 제어하게 된다.
도 28에는 이벤트 효과가 이동통신단말을 통해 출력되는 예가 도시되어 있다. 도 28을 참조하면, 외부 단말(3200)의 표시부(3201)에는 사용자의 캐릭터가 죽었음을 알리는 내용이 표시되고 있다. 이때 장치는 이동통신단말에 이동통신단말을 진동시키는 효과(3140)에 대응하는 효과 컨텐츠를 전송하게 되며, 효과 컨텐츠를 수신한 이동통신단말은 자신의 진동 모터를 작동하여 이동통신단말을 진동시키는 효과(3140)를 출력한다. 사용자는 자신이 파지한 이동통신단말이 진동하는 것을 느낄 수 있다.
도 29 및 30에는 컨트롤 안내 화면(3210, 3220)의 예들이 도시되어 있다. 먼저 도 29의 컨트롤 안내 화면(3210)을 참조하면, 이동통신단말에 표시되는 컨트롤 인터페이스를 통해 입력되는 입력 신호에 대응하는 제어명령에 대한 정보가 표시된다. 이를 확인하여 사용자는 이동통신단말에 표시되는 컨트롤 인터페이스를 조작하여 게임을 컨트롤하는 방법을 쉽게 확인할 수 있다.
도 30의 컨트롤 안내 화면(3220)에는 이동통신단말을 움직이는 것을 통해 입력 신호를 생성할 수 있으며, 이에 대응하는 제어명령을 확인할 수 있는 정보가 표시된다. 사용자는 이동통신단말을 좌우로 회전하여 캐릭터가 이동하는 방향을 컨트롤할 수 있으며, 상하로 흔들어서 캐릭터가 점프하는 액션을 구현하도록 할 수 있다.
도 31은 본 발명의 각 실시예의 구현에 따라 기저장될 수 있는 데이터 테이블의 예를 도시한 것이다.
도 31을 참조하면, 게임 정보에 따라서 게임 A에 대응하는 명령 테이블(3310)을 확인할 수 있다.
명령 테이블(3310)에는, 입력신호(3311)와 입력신호(3311) 각각에 대응되는 제어명령(3312)에 관한 정보를 확인할 수 있다. 명령 테이블(3310)이 로딩되면, 장치는 명령 테이블(3310)을 참조하여 수신한 입력 신호(3311)에 매칭되는 제어명령(3312)을 선택하여 외부단말의 게임 컨텐츠 실행 모듈에 전달하게 된다.
이상에서 전술한 본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법은, 단말기에 기본적으로 설치된 애플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼이나 운영체제 등에 포함된 프로그램을 포함할 수 있음)에 의해 실행될 수 있고, 사용자가 애플리케이션 스토어 서버, 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버를 통해 단말기에 직접 설치한 애플리케이션(즉, 프로그램)에 의해 실행될 수도 있다. 이러한 의미에서, 전술한 본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법은 단말기에 기본적으로 설치되거나 사용자에 의해 직접 설치된 애플리케이션(즉, 프로그램)으로 구현되고 단말기 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.
이러한 프로그램은 컴퓨터에 의해 읽힐 수 있는 기록매체에 기록되고 컴퓨터에 의해 실행됨으로써 전술한 기능들이 실행될 수 있다.
이와 같이, 본 발명의 각 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법을 실행시키기 위하여, 전술한 프로그램은 컴퓨터의 프로세서(CPU)가 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다.
이러한 코드는 전술한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Function Code)를 포함할 수 있고, 전술한 기능들을 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수도 있다.
또한, 이러한 코드는 전술한 기능들을 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조 되어야 하는지에 대한 메모리 참조 관련 코드를 더 포함할 수 있다.
또한, 컴퓨터의 프로세서가 전술한 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 컴퓨터의 프로세서가 컴퓨터의 통신 모듈(예: 유선 및/또는 무선 통신 모듈)을 이용하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야만 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수도 있다.
그리고, 본 발명을 구현하기 위한 기능적인(Functional) 프로그램과 이와 관련된 코드 및 코드 세그먼트 등은, 기록매체를 읽어서 프로그램을 실행시키는 컴퓨터의 시스템 환경 등을 고려하여, 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론되거나 변경될 수도 있다.
이상에서 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는, 일 예로, ROM, RAM, CDROM, 자기 테이프, 플로피디스크, 광 미디어 저장장치 등이 있다.
또한 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는 네트워크로 커넥션된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 이 경우, 다수의 분산된 컴퓨터 중 어느 적어도 하나의 컴퓨터는 상기에 제시된 기능들 중 일부를 실행하고, 그 결과를 다른 분산된 컴퓨터들 중 적어도 하나에 그 실행 결과를 전송할 수 있으며, 그 결과를 전송받은 컴퓨터 역시 상기에 제시된 기능들 중 일부를 실행하여, 그 결과를 역시 다른 분산된 컴퓨터들에 제공할 수 있다.
특히, 본 발명의 각 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 컴퓨터로 읽을 수 있는 기록매체는, 애플리케이션 스토어 서버(Application Store Server), 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버(Application Provider Server)에 포함된 저장매체(예: 하드디스크 등)이거나, 애플리케이션 제공 서버 그 자체일 수도 있다.
본 발명의 각 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터는, 일반적인 데스크 탑이나 노트북 등의 일반 PC 뿐만 아니라, 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기를 포함할 수 있으며, 이뿐만 아니라, 컴퓨팅(Computing) 가능한 모든 기기로 해석되어야 할 것이다.
또한, 본 발명의 제3 실시예에 따른 이동통신단말을 통한 게임 컨트롤 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터가 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기인 경우, 애플리케이션은 애플리케이션 제공 서버에서 일반 PC로 다운로드 되어 동기화 프로그램을 통해 모바일 단말기에 설치될 수도 있다.
[제4 실시예]
본 발명의 제4 실시예는, 단말기 센서를 외부 장치에서 활용하는 기술에 관한 것이다.
이와 관련하여, 체감형 게임이란 몸소 체험하며 즐길 수 있는 게임을 의미한다. 이러한 체감형 게임을 통해 탁구, 테니스, 복싱, 야구 등의 스포츠를 직접 하는 것 처럼 즐길 수 있다. 때로는 게임을 하는 재미뿐만 아니라 운동 효과 등의 기능성까지 가미되는 경우도 있다.
이러한 체감형 게임을 하기 위해서는 두 가지 장치들이 필요한데, 하나는 게임을 구동시킬 수 있는 전용 게임기이고 다른 하나는 사용자의 움직임 등을 사용자 조작으로 인식하여 게임기로 전달하는 전용 주변 장치들이다.
그런데, 이러한 전용 게임기와 전용 주변 장치로 구성된 체감형 게임 시스템에는 몇 가지 문제가 있다.
하나는 전용 게임기를 통해서만 새로운 게임이 구동될 수 있기 때문에 게임 개발자 혹은 게임 개발 업체가 전용 게임기의 생산 업체에 종속되게 되어 새로운 게임을 신속하게 제공하지 못하거나 공짜 게임과 같은 사용자의 욕구를 충족시켜줄 수 있는 다양한 방식의 게임을 제공하지 못한다는 것이다.
다른 하나는 사용자 조작을 인식하기 위한 전용 주변 장치의 가격이 비싸다는 것이다. 사용자 조작을 인식하기 위해서는 동작을 센싱하는 자이로 센서, 가속도 센서 혹은 지자계 센서 같은 것이 필요한데, 이러한 센서들은 가격이 싸지 않고 또한 체감형 게임이 아직 보편화되어 있지 않아 전용 주변 장치 또한 대량 생산의 이점을 얻지 못하고 가격이 고가로 유지되고 있다.
전술한 두 가지 문제를 해결하기 위해서는 먼저 전용 게임기가 아닌 플랫폼이 오픈되어 있는 PC 또는 스마트TV와 같은 장치에서 체감형 게임이 구현되도록 해야 한다. 그리고, 또한, 별도의 전용 주변 장치를 이용하여 사용자 조작을 인식하는 것이 아닌 대중적으로 보편화되어 있으면서도 각종 움직임 센서를 구비하고 있는 스마트폰과 같은 단말기를 사용자 조작의 입력 장치로 사용할 수 있게 해야 한다.
이러한 취지에서, 본 발명의 목적은, 장치가 단말기 센서의 센싱 값을 활용할 수 있는 기술을 제공하는 것이다.
그런데, 단말기는 PC와 같은 장치와 특정한 규약을 맺고 작동하는 기기가 아니기 때문에 단말기를 통해 사용자가 의도한 사용자 조작의 크기와 PC 등의 장치에서 인식하는 사용자 조작의 크기가 다를 수 있다. 이러한 취지에서, 본 발명의 다른 목적은, 단말기를 통한 사용자 조작의 크기와 장치에서 인식하는 사용자 조작의 크기를 매칭시켜 장치가 단말기 센서의 센싱 값을 효율적으로 활용할 수 있는 기술을 제공하는 것이다.
전술한 목적을 달성하기 위하여, 일 측면에서, 본 발명은, 디스플레이를 포함하는 장치가 단말기 센서를 활용하는 방법에 있어서, 상기 디스플레이 상의 복수의 기준점 각각을 가리키는 상기 단말기의 복수의 지시 위치 센싱 값을 상기 단말기로부터 수신하는 지시 위치 센싱 값 수신 단계; 상기 복수의 기준점 사이의 좌표값 차이와 상기 복수의 지시 위치 센싱 값 사이의 위치 센싱 값 차이를 이용하여 스케일 조정 비율을 결정하는 스케일 조정 비율 결정 단계; 및 상기 단말기로부터 수신되는 적어도 하나의 포인팅 위치 센싱 값 혹은 상기 적어도 하나의 포인팅 위치 센싱 값에 대하여 에러 보정 처리한 포인팅 위치 보정 센싱 값에 대하여 상기 스케일 조정 비율을 적용하여 상기 디스플레이 상의 포인팅 좌표 위치를 계산하는 포인팅 좌표 위치 계산 단계를 포함하는 단말기 센서 활용 방법을 제공한다.
다른 측면에서, 본 발명은, 디스플레이를 포함하는 장치에 있어서, 상기 디스플레이 상의 복수의 기준점 각각을 가리키는 단말기의 복수의 지시 위치 센싱 값을 상기 단말기로부터 수신하는 지시 위치 센싱 값 수신부; 상기 복수의 기준점 사이의 좌표값 차이와 상기 복수의 지시 위치 센싱 값 사이의 위치 센싱 값 차이를 이용하여 스케일 조정 비율을 결정하는 스케일 조정 비율 결정부; 및 상기 단말기로부터 수신되는 적어도 하나의 포인팅 위치 센싱 값 혹은 상기 적어도 하나의 포인팅 위치 센싱 값에 대하여 에러 보정 처리한 포인팅 위치 보정 센싱 값에 대하여 상기 스케일 조정 비율을 적용하여 상기 디스플레이 상의 포인팅 좌표 위치를 계산하는 포인팅 좌표 위치 계산부를 포함하는 단말기 센서 활용 장치를 제공한다.
또 다른 측면에서, 본 발명은, 디스플레이를 포함하는 장치가 단말기 센서를 활용하는 방법을 실행시키기 위한 프로그램을 기록한 기록매체에 있어서, 상기 디스플레이 상의 복수의 기준점 각각을 가리키는 상기 단말기의 복수의 지시 위치 센싱 값을 상기 단말기로부터 수신하는 지시 위치 센싱 값 수신 기능; 상기 복수의 기준점 사이의 좌표값 차이와 상기 복수의 지시 위치 센싱 값 사이의 위치 센싱 값 차이를 이용하여 스케일 조정 비율을 결정하는 스케일 조정 비율 결정 기능; 및 상기 단말기로부터 수신되는 적어도 하나의 포인팅 위치 센싱 값 혹은 상기 적어도 하나의 포인팅 위치 센싱 값에 대하여 에러 보정 처리한 포인팅 위치 보정 센싱 값에 대하여 상기 스케일 조정 비율을 적용하여 상기 디스플레이 상의 포인팅 좌표 위치를 계산하는 포인팅 좌표 위치 계산 기능을 구현하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
또 다른 측면에서, 본 발명은, 적어도 하나의 센서를 포함하는 단말기가 센싱 값을 제공하는 방법에 있어서, 외부 장치의 디스플레이 상의 복수의 기준점 각각을 가리키는 상기 단말기의 복수의 지시 위치 센싱 값을 상기 외부 장치로 송신하는 지시 위치 센싱 값 송신 단계; 및 상기 복수의 지시 위치 센싱 값을 이용하여 스케일 조정 비율을 결정한 상기 외부 장치의 포인팅 좌표 위치를 조작하기 위한 포인팅 위치 센싱 값을 상기 적어도 하나의 센서를 이용하여 측정하고 상기 외부 장치로 송신하는 포인팅 위치 센싱 값 송신 단계를 포함하는 센싱 값 제공 방법을 제공한다.
또 다른 측면에서, 본 발명은, 적어도 하나의 센서를 포함하는 단말기에 있어서, 외부 장치의 디스플레이 상의 복수의 기준점 각각을 가리키는 상기 단말기의 복수의 지시 위치 센싱 값을 상기 외부 장치로 송신하는 지시 위치 센싱 값 송신부; 및 상기 복수의 지시 위치 센싱 값을 이용하여 스케일 조정 비율을 결정한 상기 외부 장치의 포인팅 좌표 위치를 조작하기 위한 포인팅 위치 센싱 값을 상기 적어도 하나의 센서를 이용하여 측정하고 상기 외부 장치로 송신하는 포인팅 위치 센싱 값 송신부를 포함하는 센싱 값 제공 단말기를 제공한다.
또 다른 측면에서, 본 발명은, 적어도 하나의 센서를 포함하는 단말기가 센싱 값을 제공하는 방법을 실행시키기 위한 프로그램을 기록한 기록매체에 있어서, 외부 장치의 디스플레이 상의 복수의 기준점 각각을 가리키는 상기 단말기의 복수의 지시 위치 센싱 값을 상기 외부 장치로 송신하는 지시 위치 센싱 값 송신 기능; 및 상기 복수의 지시 위치 센싱 값을 이용하여 스케일 조정 비율을 결정한 상기 외부 장치의 포인팅 좌표 위치를 조작하기 위한 포인팅 위치 센싱 값을 상기 적어도 하나의 센서를 이용하여 측정하고 상기 외부 장치로 송신하는 포인팅 위치 센싱 값 송신 기능을 구현하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
이상에서 설명한 바와 같이 본 발명에 의하면, 장치가 단말기 센서의 센싱 값을 활용할 수 있는 효과가 있다. 또한, 단말기를 통한 사용자 조작의 크기와 장치에서 인식하는 사용자 조작의 크기가 매칭되어 장치가 단말기 센서의 센싱값을 효율적으로 활용할 수 있게 한다.
이하, 본 발명의 제4 실시예들을 예시적인 도면을 통해 상세하게 설명한다.
도 32은 단말기(4100)에 포함되어 있는 센서의 종류에 대해 설명하기 위한 도면이다.
도 32에서 단말기(4100)는 스마트폰과 같은 이동 통신 단말기일 수 있다. 하지만 이로 제한되는 것은 아니며, 태블릿 PC 및 PDA(Personal Digital Assistants) 등의 다른 종류의 단말기일 수 있다.
도 32을 참조하면, 단말기(4100)는 제1 센서(4101), 제2 센서(4102), 제3 센서(4103)을 포함하고 있다. 단말기(4100)가 스마트폰인 경우, 단말기(4100)는 통상적으로 지자계 센서, 가속도 센서, 자이로 센서, 카메라 센서 및 근접 센서를 기본적으로 구비하고 있는 것으로 알려져 있다. 전술한 제1 센서(4101), 제2 센서(4102) 및 제3 센서(4103) 각각은 이러한 지자계 센서, 가속도 센서, 자이로 센서, 카메라 센서 및 근접 센서 중 어느 하나의 센서일 수 있다.
제1 센서(4101)가 자이로 센서이고, 제2 센서(4102)가 가속도 센서이고, 제3 센서(4103)가 지자계 센서일 때 각각이 센싱하는 내용은 각각 도 32의 (b), (c) 및 (d)에 대응된다.
이해의 편의를 위해 도 32의 (c)를 먼저 설명하면, 도 32의 (c)는 가속도 센서의 센싱 내용을 나타낸다. 도 32의 (c)를 참조하면 가속도 센서는 X축(4112), Y축(4113), Z축(4111)의 세 개의 축에 대하여 각각 가속도 값을 측정한다.
도 32의 (b)는 자이로 센서의 센싱 내용을 나타낸다. 도 32의 (b)를 참조하면 자이로 센서는 X축(4112)를 감싸고 도는 요(Yaw) 방향(4122), Y축(4113)을 감싸고 도는 피치(Pitch) 방향 및 Z축(4111)을 감싸고 도는 롤(Roll) 방향의 세 개의 방향에 대하여 각각 각도 값을 측정한다.
도 32의 (d)는 지자계 센서의 센싱 내용을 나타낸다. 도 32의 (d)를 참조하면, 지자계 센서는 나침반(4131)과 같이 방위각을 측정한다.
단말기(4100)는 이러한 여러 가지 센서를 구비하면서 그 센싱된 값을 통해 단말기(4100)의 움직임 방향, 움직임 정도 등을 쉽고 비교적 정확하게 파악할 수 있게 된다. 예를 들어, 자이로 센서로 센싱되는 3축의 각도 정보를 통해 단말기(4100)가 기울어져 있는 정도를 파악할 수 있다. 이렇게 파악된 정보는 단말기(4100)내에서 구동되고 있는 어플리케이션들에 의해 사용되는데, 예를 들어, 단말기(4100) 내의 특정 어플리케이션은 자이로 센서를 통해 센싱한 각도 정보를 이용하여 단말기에 표시되어 있는 화면의 방향을 바꾸어 주는 등의 제어를 실시한다.
도 32을 통해 설명한 바와 같이 여러 가지 센서를 구비한 단말기(4100)는 각종 사용자 조작을 인식할 수 있다. 구체적으로 단말기(4100)가 자이로 센서와 같은 움직임 센서를 구비하고 있으면 단말기(4100)는 사용자의 움직임 조작을 인식할 수 있다. 또한, 사용자의 움직임 조작을 인식하는 것 뿐만 아니라 이러한 사용자의 움직임 조작을 인식할 수 있는 움직인 센싱 값을 보유하게 단말기(4100)는 보유하게 된다.
본 발명의 제4 실시예는 전술한 바와 같은 단말기(4100)의 센싱 값을 외부의 장치로 전달하여 외부의 장치가 단말기(4100)의 센싱 값을 사용자 조작 입력으로 사용하는 기술을 제공한다.
도 33는 본 발명의 제4 실시예에 따른 장치(4210)와 단말기(4100)를 포함하는 시스템(4200)의 통신 연결 구성도이다.
도 33를 참조하면, 시스템(4200)은 센서를 포함하고 있으면서 센서의 센싱 값을 장치(4210)로 제공하는 단말기(4100)와 단말기(4100)로부터 전달되는 센싱 값을 활용하는 장치(4210)를 기본적으로 포함하고 있다. 이외에 시스템(4200)은 네트워크(4220) 및 이동 통신 시스템(4230) 등을 더 포함할 수 있다.
단말기(4100)는 내부의 센서를 통해 센싱한 값을 장치(4210)로 전달하게 되는데, 도 33와 같이 다양한 경로를 통해 이러한 센싱 값을 전달할 수 있다.
먼저, 단말기(4100)는 다른 통신망을 거치지 않고 직접적으로 장치(4210)로 센싱 값을 전달할 수 있다. 단말기(4100)가 스마트폰인 경우, 단말기(4100)는 와이파이, 블루투스, 적외선 통신과 같은 근거리 통신 방식(4240)을 사용할 수 있는데, 이러한 근거리 통신 방식(4240)을 이용하여 단말기(4100)는 센싱 값을 장치(4210)로 전달할 수 있다.
다른 방법으로 단말기(4100)가 이동 통신 단말기인 경우 단말기(4100)는 이동 통신 방식(4241)에 따라 기지국(4230)으로 센싱 값에 대한 데이터를 전송하고 기지국(4230)은 이러한 데이터를 네트워크(4220)를 통해 장치(4210)로 전달할 수도 있다.
또 다른 방법으로 단말기(4100)가 무선 네트워크 통신이 가능한 경우 단말기(4100)는 이러한 무선 네트워크 통신을 통해 네트워크(4220)로 센싱 값에 대한 데이터를 전송할 수 있고 네트워크(4220)는 이러한 데이터를 다시 장치(4210)로 전송할 수 있다.
반대로, 장치(4210)도 단말기(4100)로 보내고 싶은 데이터를 전술한 경로의 역경로로 보낼 수 있다. 예를 들어, 장치(4210)는 근거리 통신 방식(4240)을 사용하여 단말기(4100)로 보내고 싶은 데이터를 전달할 수도 있고, 또한 장치(4210)는 네트워크(4220)로 보내고 싶은 데이터를 전송하고 네트워크(4210)가 이러한 데이터를 기지국(4230)을 통해 이동 통신 방식(4241)으로 단말기(4100)로 전달하거나 네트워크(4210)가 무선 네트워크 통신을 통해 단말기(4100)로 이러한 데이터를 전달할 수도 있다.
시스템(4200)에서 데이터는 단말기(4100)가 장치(4210)로 일방적으로 전송되는 것은 아니고 전술한 바와 같이 장치(4210)가 단말기(4100)로 데이터를 전송하는 경우도 있는데, 예를 들어, 시스템(4200)이 체감형 게임을 포함하고 있다면 장치(4210)는 게임 중 특정 상황에서 사용자가 진동을 느끼게 하여 게임 체감도를 높이고자 할 것이다. 이 경우 장치(4210)는 진동 신호 데이터를 단말기(4100)로 전달하고 단말기(4100)는 이러한 진동 신호 데이터를 수신하여 단말기(4100)가 진동하도록 제어하여 사용자가 게임 중 진동을 느낄 수 있도록 할 수 있다.
전술한 장치(4210)는, 일반적인 데스크 탑이나 노트북 등의 일반 PC를 포함하고, 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기 등을 포함할 수 있으며, 이에 제한되지 않고, 단말기(4100)와 분리되어 있으면서 단말기(4100)와 통신할 수 있는 어떠한 전자 기기로 폭넓게 해석되어야 할 것이다.
한편, 네트워크(4220)는 장치(4210)와 다른 장치(기지국, 단말기(4100) 등)을 연결해주는 망(Network)으로서, LAN(Local Area Network), WAN(Wide Area Network)등의 폐쇄형 네트워크일 수도 있으나, 인터넷(Internet)과 같은 개방형 네트워크일 수도 있다. 여기서, 인터넷은 TCP/IP 프로토콜 및 그 상위계층에 존재하는 여러 서비스, 즉 HTTP(HyperText Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service), NIS(Network Information Service)를 제공하는 전 세계적인 개방형 컴퓨터 네트워크 구조를 의미한다.
도 34은 본 발명의 제4 실시예에 따른 장치(4210)의 내부 블록도이다.
도 34을 참조하면, 장치(4210)는 디스플레이(4340), 디스플레이 상의 복수의 기준점 각각을 가리키는 단말기(4100)의 복수의 지시 위치 센싱 값을 단말기(4100)로부터 수신하는 지시 위치 센싱 값 수신부(4310), 복수의 기준점 사이의 좌표값 차이와 복수의 지시 위치 센싱 값 사이의 위치 센싱 값 차이를 이용하여 스케일 조정 비율을 결정하는 스케일 조정 비율 결정부(4320), 단말기로부터 수신되는 적어도 하나의 포인팅 위치 센싱 값 혹은 적어도 하나의 포인팅 위치 센싱 값에 대하여 에러 보정 처리한 포인팅 위치 보정 센싱 값에 대하여 스케일 조정 비율을 적용하여 디스플레이 상의 포인팅 좌표 위치를 계산하는 포인팅 좌표 위치 계산부(4330) 및 데이터 후처리부(4350) 등을 포함할 수 있다.
도 35는 단말기(4100a, 4100b, 4100c, 4100d)가 디스플레이(4340) 상의 기준점을 가르킬 때의 위치 관계를 설명하기 위한 도면이다.
참조번호 4100a, 4100b, 4100c 및 4100d에 해당되는 단말기는 모두 본 발명의 제4 실시예에 따른 단말기(4100)와 동일한 구성을 가진 단말기로 도 35에서 단말기(4100)의 위치에 따른 설명을 하기 위해 참조번호를 일부 다르게 표기한 것이다.
기준점이란 장치(4210)가 그 좌표 값을 알고 있으면서 단말기(4100)의 지시 위치 센싱 값과 매칭시키기 위한 지점을 의미한다. 기준점의 대표적인 예는 디스플레이(4340)의 모서리 지점이다. 장치(4210)는 디스플레이(4340)의 크기 혹은 해상도 등을 알고 있기 때문에 디스플레이(4340)의 모서리 지점에 대한 좌표 값은 장치(4210)에게 알려져 있다고 할 수 있다. 이러한 모서리 지점을 기준점으로 하여 단말기(4100)의 지시 위치 센싱 값과 매칭시키는 것이 가장 쉬운 실시예가 될 수 있다.
이외에도 장치(4210)는 임의의 좌표 값에 해당되는 점을 미리 지정하고 이 점을 기준점으로 삼을 수도 있다. 모서리 지점과 달리 이렇게 결정된 기준점은 단말기(4100)를 조작하는 사용자가 알지 못할 수 있으므로 디스플레이(4340) 상에 이 기준점을 표시해 주는 것이 바람직하다.
어느 한 점만을 지정하는 것이 아닌 복수의 기준점을 포함하는 도형을 디스플레이(4340) 상에 표시하고 이중 일부의 점을 기준점으로 삼을 수도 있다.
도 35를 참조하면, 디스플레이(4340) 상의 네 모서리 지점(4401, 4402, 4403, 4404)이 기준점이 되고 있다.
단말기(4100)는 복수의 기준점 각각을 가리키는 상태에서 단말기(4100)의 위치를 센싱하고 이렇게 센싱된 지시 위치 센싱 값을 장치(4210)로 송신하게 된다.
도 35를 참조하면, 참조번호 4100a에 해당되는 단말기(4100a)는 디스플레이(4340) 상의 좌상단 점(4401)을 가르키고 있다. 이러한 단말기(4100a)의 위치에서 단말기(4100a)는 내장되어 있는 적어도 하나의 센서를 이용하여 단말기(4100a)의 위치를 센싱하고 이렇게 해서 센싱된 단말기(4100a)의 지시 위치 센싱값기준점을 지시하고 있는 상태에서 센싱된 값이라는 의미에서 지시 위치 센싱값이라 명명함을 장치(4210)로 송신하게 된다. 단말기(4100)가 디스플레이(4340) 상의 특정한 기준점을 가르키고 있는 상태에서 지시 위치 센싱값을 장치(4210)로 송신하기 위해 사용자는 단말기(4100)가 이러한 위치에 있을 때, 특정한 사용자 조작을 추가적으로 할 수 있게 한다. 예를 들어, 단말기(4100)에 입력 버튼이 활성화되고 이러한 입력 버튼을 누르면 그 상태에서 센싱한 위치 센싱값이 장치(4210)로 송신되는 것이다.
단말기(4100)는 디스플레이(4340) 상의 복수의 기준점 각각을 순차적으로 가르키면서 각각의 기준점에 대응되는 단말기(4100)의 지시 위치 센싱값을 장치(4210)로 송신하게 되는데, 예를 들어, 단말기(4100)는 먼저 참조번호 4401을 가리키는 상태에서 지시 위치 센싱값을 장치(4210)로 송신하고, 다음으로 참조번호 4402를 가리키는 상태에서, 그 다음으로 참조번호 4403을 가리키는 상태에서, 마지막으로 참조번호 4404를 가리키는 상태에서 각각 단말기(4100)의 지시 위치 센싱값을 장치(4210)로 송신한다.
이것을 사용자 조작의 관점으로 보면 사용자는 디스플레이(4340)의 네 모서리를 단말기(4100)로 가르키면서 각각의 위치에서 단말기(4100)의 입력 버튼을 눌러 단말기(4100)의 지시 위치 센싱값을 장치(4210)로 송신하는 것이다.
위와 같은 과정을 거쳐 장치(4210)가 복수의 기준점에 대응하는 복수의 지시 위치 센싱값을 수신하게 되면 이러한 복수의 지시 위치 센싱값을 이용하여 스케일 조정 비율을 결정하게 된다.
이렇게 단말기(4100)의 지시 위치 센싱값과 디스플레이(4340) 상의 기준점으로 스케일 조절을 시도하는 것은 다음과 같은 이유 때문이다.
체감형으로 단말기(4100)의 센서를 이용하여 장치(4210)를 조작하고자 하는 사용자는 단말기(4100)로 직접 디스플레이(4340)를 지시하면서 게임 혹은 파워포인트 발표 등을 하고자 한다. 예를 들어, 장치(4210)가 슈팅 게임을 더 포함하고 있으면서 이러한 슈팅 게임이 단말기(4100)의 센싱값으로 조작될 수 있도록 하고 있다면 사용자는 이러한 슈팅 게임을 할 때, 단말기(4100)가 마치 총인 것처럼 단말기(4100)를 들고 디스플레이(4340)를 조준(지시)하면서 슈팅 게임을 하고자 할 것이다.
그런데, 단말기(4100)가 참조번호 4100a에 있을 때와 참조번호 4100c에 있을 때를 보면 동일한 기준점(4401)을 가르키고 있지만 단말기(4100)의 지시 위치 센싱 값은 다르다. 지시 위치 센싱 값의 변화량을 보더라도 단말기가 참조번호 4100a에서 참조번호 4100b로 이동할 때와 단말기가 참조번호 4100c에서 참조번호 4100d로 이동할 때, 지시 위치 센싱 값의 변화량은 다르다. 구체적으로 도 32을 참조하여 설명한 단말기(4100)의 요 방향의 각도를 기준으로 볼 때, 참조번호 4100a에 참조번호 4100b로 변할 때의 지시 위치 센싱 값의 변화량이 참조번호 4100c에서 참조번호 4100d로 변할 때의 지시 위치 센싱 값의 변화량 보다 작다. 이는 결국 사용자는 단말기(4100)로 동일한 지점을 가르키고 있는데, 단말기(4100)의 위치 센싱 값은 다를 수 있다는 것이다. 장치(4210)가 이렇게 다를 수 있는 위치 센싱 값을 그대로 사용한다면 사용자는 단말기(4100)를 이용하여 정확한 장치(4210)에 대한 조작 입력을 할 수 없게 된다.
위와 같은 이유가 단말기(4100)의 지시 위치 센싱값과 디스플레이(4340) 상의 기준점으로 스케일 조절을 해야하는 이유이다.
스케일 조절 비율은 복수의 기준점 사이의 좌표값 차이와 복수의 지시 위치 센싱 값 사이의 위치 센싱 값 차이를 이용하여 결정된다. 단말기(4100)의 지시 위치 센싱 값은 단말기(4100)의 각도 센싱 값일 수 있는데, 이런 경우를 기준으로 예를 들면 다음과 같다.
도 35를 참조할 때, 참조번호 4401의 좌표값은 1024 X 768의 해상도에서 (0, 0)이고, 참조번호 4402의 좌표값은 (1024, 0)이다. 두 기준점의 좌표값 차이는 X 축으로 1024이다. 참조번호 4100a에 있는 단말기(4100)의 요 방향 각도의 지시 위치 센싱값이 0도 이고, 참조번호 4100b에 있는 단말기(4100)의 요 방향 각도의 지시 위치 센싱값이 30도라고 하면, 위 두 기준점에 대응되는 두 지시 위치 센싱 값 사이의 위치 센싱 값 차이는 30도가 된다. 이러한 값들을 스케일 조정 비율로 결정하면
좌표값 : 위치 센싱 값 = 1024 : 30도
의 관계가 된다. 위와 같은 스케일 조정 비율이 결정되면 임의의 위치 센싱 값에 대해 이에 대응되는 좌표값을 쉽게 구할 수 있게 된다.
도 35의 참조번호 4100c와 4100d에 대해서도 위와 같은 스케일 조정 비율을 구하는 과정을 반복해 보면, 참조번호 4401의 좌표값은 1024 X 768의 해상도에서 (0, 0)이고, 참조번호 4402의 좌표값은 (1024, 0)이므로 두 기준점의 좌표값 차이는 X 축으로 1024이다. 참조번호 4100c에 있는 단말기(4100)의 요 방향 각도의 지시 위치 센싱값이 0도 이고, 참조번호 4100d에 있는 단말기(4100)의 요 방향 각도의 지시 위치 센싱값이 60도라고 하면, 위 두 기준점에 대응되는 두 지시 위치 센싱 값 사이의 위치 센싱 값 차이는 60도가 된다. 이러한 값들을 스케일 조정 비율로 결정하면
좌표값 : 위치 센싱 값 = 1024 : 60도
의 관계가 된다.
스케일 조정 비율이 결정되면, 포인팅 좌표 위치 계산부(4330)는 단말기(4100)로부터 수신되는 적어도 하나의 포인팅 위치 센싱 값위치 센싱 값이 장치(4210)에서 포인터의 좌표 위치 계산에 사용된다는 의미에서 포인팅 위치 센싱 값이라 명명함 혹은 적어도 하나의 포인팅 위치 센싱 값에 대하여 에러 보정 처리한 포인팅 위치 보정 센싱 값에 대하여 스케일 조정 비율을 적용하여 디스플레이(4340) 상의 포인팅 좌표 위치를 계산하게 된다.
포인팅 좌표 위치 계산부(4330)는 단말기(4100)로부터 수신되는 포인팅 위치 센싱 값을 그대로 사용하여 포인팅 좌표 위치를 계산할 수도 있으나, 단말기(4100)에서 센싱된 값은 노이즈, 측정 오차 및 통신 상에서의 통신 오차 등(이하 데이터 오차)이 포함되어 있어 품질이 매우 낮을 수 있다. 따라서, 이러한 데이터 오차를 감쇄시킨 포인팅 위치 보정 센싱 값을 이용하여 포인팅 좌표 위치를 계산하는 것이 바람직하다.
포인팅 위치 센싱 값에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 에러 보정 처리를 하고 적어도 하나의 포인팅 위치 보정 센싱 값을 생성하는 것은 데이터 후처리부(4350)에서 이루어진다.
데이터 후처리부(4320)에서 데이터 후처리 프로세스는 포인팅 위치 센싱 값을 필터링 처리하는 필터링 서브 프로세스를 포함할 수 있다.
필터링 처리하는 서브 프로세스는 노이즈를 제거하기 위해 센싱 값을 로우 패스(Low Pass) 필터링 처리할 수 있다. 단말기(4100)와 같이 고주파 클럭에 맞추어 시스템이 작동하는 기기에 있어서는 센싱 값에 고주파 노이즈가 끼어 있을 가능성이 높다. 이러한 고주파 노이즈를 제거하기 위해 필터링 처리하는 서브 프로세스는 로우 패스 필터링 처리를 할 수 있다.
이와 반대로 단말기(4100)의 가속도 센서로부터 측정된 위치 센싱 값을 수신할 때, 필터링 처리하는 서브 프로세스는 이러한 가속도 센서로부터 측정된 센싱 값에서 중력 가속도 성분을 제거하기 위해 이러한 센싱 값을 하이 패스(High Pass) 필터링 처리할 수 있다. 중력 가속도는 비슷한 고도에서 거의 일정한 값을 유지함으로 주파수 상으로 보면 굉장히 낮은 주파수의 값에 해당된다. 가속도 센서로부터 측정된 센싱 값에서 이러한 중력 가속도 성분을 제거하기 위해서는 높은 주파수 성분의 값만 통과할 수 있는 하이 패스 필터링 처리를 하는 것이 바람직하다.
장치(4210)가 동일한 지표를 나타내는 두 개의 센싱 값을 수신한 경우에 있어서 위치 센싱 값을 보정하는 것에 대해 살펴본다. 동일한 지표를 나타낸다는 것은 예를 들어, 자이로 센서로 측정한 센싱 값과 지자계 센서로 측정한 센싱 값이 모두 단말기(4100)의 각도라는 동일한 지표에 나타낸다는 것이다. 이 경우, 두 개의 센싱 값 중 어느 한 센싱 값이 다른 한 센싱 값보다 정확한 값이라면 어느 한 센싱 값을 기준으로 다른 한 센싱 값을 보정할 수 있게 된다.
장치(4210)가 단말기(4100)의 제1 센서(4101)로부터 측정된 제1 위치 센싱 값과 제2 센서(4102)로부터 측정된 제2 위치 센싱 값을 모두 수신한 경우를 상정하여 설명한다.
데이터 후처리부(4350)는 제1 위치 센싱 값과 제2 위치 센싱 값의 차이를 센싱 값 오차로 결정하고 이러한 센싱 값 오차 중 일부 혹은 전부를 제1 위치 센싱 값에 대한 데이터 오차로 인식하여 이러한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행할 수 있다. 논리상으로 보면, 제2 위치 센싱 값이 보다 정확한 값이기 때문에 데이터 오차는 제1 위치 센싱 값에서 발생하는 것이고 이러한 데이터 오차는 제1 위치 센싱 값과 제2 위치 센싱 값의 차이라는 것이다. 그런데, 제2 위치 센싱 값이 완전히 정확한 값이라고 단정지을 수 없는 경우(제2 위치 센싱 값에 대한 신뢰도 값 등으로 수치화할 수 있음), 데이터 후처리부(4350)는 제1 위치 센싱 값과 제2 위치 센싱 값의 차이인 센싱 값 오차 중 일부를 제1 위치 센싱 값에 대한 데이터 오차로 인식하는 것이다.
정확도가 낮은 제1 센서는 자이로 센서일 수 있고, 정확도가 상대적으로 높은 제2 센서는 가속도 센서 혹은 지자계 센서일 수 있다. 자이로 센서의 경우, 기준 좌표 값에 좌표 증감분을 누적하여 획득되는 상대 값을 측정한다. 이 경우, 기준 좌표 값이 잘못된 경우 센싱 값에 오차가 발생할 수 있다. 좌표 증감분에 오차가 있는 경우에도 센싱 값에 오차가 발생하는데, 이 경우 더 치명적이어서 상대 값은 이러한 오차가 계속해서 누적되기 때문에 좌표 증감분에 있는 오차가 작더라도 시간이 흐르면 측정 오차는 계속해서 증가할 수 있다.
자이로 센서와 반대로 지자계 센서는 나침반과 같이 북극을 기준으로 절대 좌표 값을 센싱하여 절대 값을 제공하기 때문에 정확도가 높다고 할 수도 있다. 가속도 센서는 움직임 정도를 측정할 때는 상대 값을 측정하는 것으로서 정확도가 낮을 수 있으나 자이로 센서와 같은 각도를 측정할 때는 절대 값을 측정하여 정확도고 높을 수 있다.
그러면, 정확도가 높은 센싱 값을 그냥 사용하지 왜 정확도가 낮은 센싱 값을 보정하여 사용하는지 의문이 들 수 있다. 정확도가 낮은 센싱 값의 경우 보통 센싱 다이나믹이 빠르기 때문에 센싱 값을 신속하게 생산할 수 있다. 이에 반해 정확도가 높은 센싱 값은 다이나믹이 느리고 어느 정도 단말기(4100)가 스테이블(stable)한 상태가 되어야 제값을 측정할 수 있는 경우가 많다. 이러한 이유로 단말기(4100) 혹은 단말기(4100)의 센싱 값을 활용하는 장치(4210)는 정확도가 낮으나 다이나믹이 빠른 제1 위치 센싱 값을 사용하면서 이를 정확도가 높은 제2 위치 센싱 값으로 보정하여 사용하게 된다.
데이터 후처리부(4350)에서 데이터 후처리 프로세스는 제1 위치 센싱 값에 제1 위치 센싱 값과 제2 위치 센싱 값의 차이인 센싱 값 오차의 일부를 가감하여 포인팅 위치 보정 센싱 값을 생성하거나 이전 포인팅 위치 보정 센싱 값에 이러한 센싱 값 오차의 일부를 가감하여 포인팅 위치 보정 센싱 값을 생성하는 보정 서브 프로세스를 더 포함할 수 있다. 이런 경우는 기본적으로 데이터 후처리부(4350)가 리커시브(recursive)하게 데이터를 처리하는 구조인데, 먼저 이전 포인팅 위치 보정 센싱 값에 센싱 값 오차의 일부를 가감하여 포인팅 위치 보정 센싱 값을 생성하고 다음 번에 포인팅 위치 보정 센싱 값에 센싱 값 오차의 일부를 가감하여 다음 포인팅 위치 보정 센싱 값을 생성하는 식이다. 처음에는 포인팅 위치 보정 센싱 값이 존재하지 않기 때문에 제1 위치 센싱 값을 사용한다.
센싱 값을 가감하는 것에 있어서 제2 위치 센싱 값에서 제1 위치 센싱 값을 빼서 전술한 센싱 값 오차를 계산하는 경우 이전 포인팅 위치 보정 센싱 값에 센싱 값 오차를 더해주는 것이도 그 반대로 제1 위치 센싱 값에서 제2 위치 센싱 값을 빼서 전술한 센싱 값 오차를 계산하는 경우 이전 포인팅 위치 보정 센싱 값에 센싱 값 오차를 빼주는 것이다.
데이터 후처리부(4350)에서 센싱 값 오차가 일정 오차 범위보다 큰 경우 전술한 보정 서브 프로세스는 센싱 값 오차를 오차 분할 보정 횟수로 나눈 오차 분할 값을 센싱 값 오차의 일부로서 사용하여 제1 위치 센싱 값 혹은 이전 포인팅 위치 보정 센싱 값에 가감하고, 데이터 후처리 프로세스는 보정 서브 프로세스를 미리 정해진 서브 프로세스 수행 주기에 따라 오차 분할 보정 횟수 만큼 반복 수행하여 각 서브 프로세스 수행마다 포인팅 위치 보정 센싱 값을 생성할 수 있다.
자이로 센서인 제1 센서를 통해 얻은 요 방향 각도 센싱 값을 A라하고, 지자게 센서인 제2 센서를 통해 얻은 요 방향 각도 센싱 값을 B라 하자. A라는 값을 더 정확한 B로 대체해야 하는데, 이 때 A와 B의 값 차가 크면 사용자 입장(예를 들어, 장치(4210)로부터 신호를 받는 체감형 게임을 사용하는 사용자 입장)에서 갑작스런 값 변화로 부자연스러움을 느낄 수 있다. 그래서 데이터 후처리부(4350)는 BA 값을 일정 시간 동안 나누어서 보정해 주는 기능을 수행한다. 예를 들어, BA 값이 100이라고 한다면 한번에 100만큼 보정하는 것이 아니라 주기적으로 호출되는 고해상도 타이머를 통해 10만큼 10번 보정해 줌으로서 사용자가 느낄 수 있는 부자연스러움을 없애주는 것이다. 본 예에 따르면 전술한 오차 분할 보정 횟수는 10이 된다.
데이터 후처리부(4350)는 전술한 서브 프로세스 수행 주기가 포인팅 위치 센싱값을 수신하는 주기보다 짧도록 제어할 수 있다. 다음 포인팅 위치 센싱값이 수신되기 전에 최대한 많은 보정을 실시하기 위한 것이다.
장치(4210)가 단말기(4100)의 움직임 센서로부터 측정된 움직임 센싱 값을 수신하는 경우, 데이터 후처리부(4350)는 전술한 보정 서브 프로세스에서 움직임 센싱 값의 크기에 따라 가감되는 센싱 값 오차의 비율을 조절할 수 있다.
사용자의 움직이는 정도에 따라 한번에 보정해 주는 값을 변화시켜주는 기능이다. 사용자의 움직임이 클 때는 보정해 주는 값을 크게 해주고 반대로 움직임이 별로 없을 때는 보정해 주는 값을 작게 해 줌으로서 사용자가 느낄 수 있는 부자연스러움을 없애준다. 여기에서 움직임 센서는 가속도 센서일 수 있다.
데이터 후처리부(4350)는 제1 센서가 자이로 센서이고 제2 센서가 가속도 센서일 때 센싱 값 오차 중 롤(Roll) 방향 성분 및 피치(Pitch) 성분을 제1 위치 센싱 값에 대한 롤 방향 및 피치 방향 데이터 오차로 인식하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하고 제1 센서는 자이로 센서이고 제2 센서는 지자계 센서일 때, 센싱 값 오차 중 요(Yaw) 방향 성분을 제1 위치 센싱 값에 대한 요 방향 데이터 오차로 인식하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행할 수 있다. 도 32을 참조하여 설명한 바와 같이 지자계 센서는 요 방향에 대해 정확한 값이므로 자이로 센서로 측정한 센싱 값에 대해 요 방향 성분은 지자계 센서의 센싱 값을 이용하여 보정하는 것이고 롤 방향 및 피치 방향 성분은 가속도 센서를 이용하여 보정하는 것이다.
앞서 위치 센싱값에 대한 데이터 오차는 노이즈, 측정 오차 및 통신 오차 등을 포함할 수 있다고 설명하였고, 앞선 설명들에서 데이터 오차의 노이즈 및 측정 오차를 감쇄시키는 구성에 대해 설명하였다. 아래에서는 데이터 오차 중 통신 오차 부분에 대해 설명한다.
원활한 사용자 조작 인식을 위해 단말기(4100)로부터 초당 50회 이상의 위치 센싱 값을 수신할 수 있다. 그런데, 이렇게 고속으로 데이터를 수신하기 위해서는 통신 상태가 좋아야하는데, 단말기(4100)가 다른 용도를 겸하고 있기 때문에 다른 통신 요청에 의해 이러한 고속 데이터 통신이 수행되지 못하는 경우도 발생한다. 다시 말해 통신 상태 불량으로 인해 위치 센싱 값 수신 횟수가 줄어들 수도 있고 일부 데이터는 손실될 수도 있다. 이런 경우, 체감형 게임 등을 사용하는 사용자는 입력이 끊겨서 들어오는 것과 같은 부자연스러운 느낌을 받을 수 있다.
이러한 문제를 해결하기 위해, 위치 센싱 값이 이전에 수신한 이전 위치 센싱 값으로부터 일정 시간 간격을 초과하여 수신된 경우, 데이터 후처리부(4350)에서 데이터 후처리 프로세스는 이전 위치 센싱 값과 현재 위치 센싱 값을 인터폴레이션(interpolation) 처리하여 복수의 인터폴레이션 보정 값을 생성하고 각각의 인터폴레이션 보정 값을 보간 시간 간격으로 포인팅 위치 보정 센싱 값으로 생성할 수 있다.
도 36는 센싱 값을 인터폴에이션 처리한 것은 나타내는 센싱 값의 좌표 표시도이다.
도 36를 참조하면, 포인팅 위치 센싱 값을 통해 참조번호 4501에 해당하는 센싱 값이 먼저 확인되었다. 그후 일정 시간 간격을 초과하여 다음 포인팅 위치 센싱 값이 수신되었다. 이렇게 늦게 수신된 다음 포인팅 위치 센싱 값이 참조번호 4505에 해당되는 값이다. 참조번호 4501과 4505의 거리가 너무 멀어 사용자는 좌표가 점프한 것과 같은 느낌을 받을 수 있다. 이때 데이터 후처리부(4350)는 이전 포인팅 위치 센싱 값(4501)과 현재 포인팅 위치 센싱 값(4505)을 인터폴레이션(interpolation) 처리하여 복수의 인터폴레이션 보정 값(4502, 4503, 4504)을 생성하고 각각의 인터폴레이션 보정 값(4502, 4503, 4504)을 보간 시간 간격으로 포인팅 위치 보정 센싱 값으로 생성한다. 인터폴레이션 보정 값을 순차적으로 전달하기 위해 포인팅 위치 보정 센싱 값을 보간 시간 간격으로 생성하는 것이다. 이러한 보간 시간 간격은 장치(4210)가 포인팅 위치 센싱 값을 수신하는 간격보다는 짧아야한다.
도 37은 본 발명의 제4 실시예에 따른 장치(4210)가 어플리케이션과 신호를 주고 받는 것을 나타내는 개념도이다.
장치(4210)는 앞서 설명한 바와 같이 단말기(4100)로부터 수신한 포인팅 위치 센싱 값을 그대로 혹은 후처리하여 어플리케이션(4610)으로 제공할 수 있다. 장치(4210)가 어플리케이션(4610)으로 포인팅 위치 센싱 값을 그대로 혹은 후처리하여 제공하는 방법은 여러 방법이 있을 수 있으나 메세지 전송 혹은 메모리 공유 방식이 사용될 수 있다.
어플리케이션(4610)은 장치(4210)로부터 제공되는 포인팅 위치 센싱 값 혹은 포인팅 위치 보정 센싱 값을 마치 마우스나 키보드를 통해 입력되는 사용자 조작 신호와 같이 인식하여 어플리케이션(4610)이 제어될 수 있도록 할 수 있다.
위와 같은 장치(4210)와 어플리케이션(4610)을 이용하는 실시예를 살펴 본다.
도 38은 단말기(4100)의 움직임 조작에 따라 디스플레이(4340) 상의 포인팅 좌표 위치가 이동하는 것을 나타내는 도면이다.
도 38의 (a)를 참조하면, 사용자는 어플리케이션(4610)에서 사용하는 포인터(4701)를 디스플레이(4340) 상의 좌측에서 우측으로 화살표(4703)와 같이 이동시키고자 한다. 이때, 사용자는 단말기(4100)를 도 38의 (b)와 같이 조작하고 단말기는 조작된 내용에 따라 단말기(4100)의 포인팅 위치 센싱 값을 장치(4210)로 송신하고 장치(4210)는 포인팅 위치 센싱 값을 수신받아 그대로 혹은 후처리한 후 스케일 조정 비율을 적용하여 포인팅 좌표 위치를 계산하게 된다. 그 후 장치(4210)는 계산된 포인팅 좌표 위치에 해당되는 값을 어플리케이션(4610)으로 제공하게 되고 어플리케이션(4610)은 이러한 값에 따라 포인터(4701)를 제어하여 도 38의 (a)와 같이 디스플레이(4340) 상에서 포인터(4701)를 이동 표시하게 된다.
이상에서는, 본 발명의 제4 실시예에 따른 단말기 센서 활용 장치(4210)에 대하여 설명하였으며, 이하에서는, 본 발명의 제4 실시예에 따른 장치(4210)가 단말기 센서를 활용하는 방법에 대하여 설명한다. 후술하게 될 본 발명의 제4 실시예에 따른 단말기 센서를 활용하는 방법은, 도 34에 도시된 본 발명의 실시예에 따른 장치(4210)에 의해 모두 수행될 수 있다.
도 39은 본 발명의 제4 실시예에 따른 단말기 센서 활용 방법에 대한 흐름도이다.
도 39을 참조하면, 장치(4210)는 디스플레이 상의 복수의 기준점 각각을 가리키는 단말기(4100)의 복수의 지시 위치 센싱 값을 단말기(4100)로부터 수신한다(S4800, 지시 위치 센싱 값 수신 단계). 디스플레이 상의 복수의 기준점은 디스플레이의 모서리 지점일 수 있고, 지시 위치 센싱 값은 단말기(4100)의 각도 센싱 값일 수 있다. 지시 위치 센싱 값 수신 단계(S4800) 이전에, 장치(4210)는 복수의 기준점을 포함하는 도형을 디스플레이 상에 표시 제어하는 단계(미도시)를 더 포함할 수도 있다.
장치(4210)는 복수의 기준점 사이의 좌표값 차이와 복수의 지시 위치 센싱 값 사이의 위치 센싱 값 차이를 이용하여 스케일 조정 비율을 결정할 수 있다(S4802, 스케일 조정 비율 결정 단계).
장치(4210)는 단말기(4100)로부터 수신되는 포인팅 위치 센싱 값에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 에러 보정 처리를 하고 적어도 하나의 포인팅 위치 보정 센싱 값을 생성할 수 있다(S4804, 데이터 후처리 단계).
데이터 후처리 단계(S4804)에서, 데이터 후처리 프로세스는 포인팅 위치 센싱 값을 필터링 처리하는 필터링 서브 프로세스를 포함할 수 있다.
전술한 적어도 하나의 포인팅 위치 센싱 값이 단말기의 제1 센서로부터 측정된 제1 위치 센싱 값과 제2 센서로부터 측정된 제2 위치 센싱 값을 모두 포함하는 경우, 데이터 후처리 단계(S4804)에서, 장치(4210)는 제1 위치 센싱 값과 제2 위치 센싱 값의 차이인 센싱 값 오차 중 일부 혹은 전부를 제1 위치 센싱 값에 대한 데이터 오차로 인식하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행할 수 있다.
이러한 데이터 후처리 단계(S4804)에서, 데이터 후처리 프로세스는 제1 위치 센싱 값에 센싱 값 오차의 일부를 가감하여 포인팅 위치 보정 센싱 값을 생성하거나 이전 포인팅 위치 보정 센싱 값에 센싱 값 오차의 일부를 가감하여 포인팅 위치 보정 센싱 값을 생성하는 보정 서브 프로세스를 더 포함할 수 있다.
제1 센서는 자이로 센서이고 제2 센서는 가속도 센서일 때, 데이터 후처리 단계(S4804)에서, 장치(4210)는 센싱 값 오차 중 롤(Roll) 방향 성분 및 피치(Pitch) 성분을 제1 위치 센싱 값에 대한 롤 방향 및 피치 방향 데이터 오차로 인식하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하고 제1 센서는 자이로 센서이고 제2 센서는 지자계 센서일 때, 데이터 후처리 단계(S4804)에서, 장치(4210)는 센싱 값 오차 중 요(Yaw) 방향 성분을 제1 위치 센싱 값에 대한 요 방향 데이터 오차로 인식하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행할 수 있다.
데이터 후처리 단계(S4804)에서, 데이터 후처리 프로세스는 이전 포인팅 위치 센싱 값과 현재 포인팅 위치 센싱 값을 인터폴레이션(interpolation) 처리하여 복수의 인터폴레이션 보정 값을 생성하고 각각의 인터폴레이션 보정 값을 보간 시간 간격으로 포인팅 위치 보정 센싱 값으로 생성할 수 있다.
전술한 데이터 후처리 단계(S4804)는 필수적인 단계는 아니어서 생략될 수 있다.
데이터 후처리 단계(S4804) 이후, 장치(4210)는 단말기로부터 수신되는 적어도 하나의 포인팅 위치 센싱 값 혹은 적어도 하나의 포인팅 위치 센싱 값에 대하여 에러 보정 처리한 포인팅 위치 보정 센싱 값에 대하여 스케일 조정 비율을 적용하여 디스플레이 상의 포인팅 좌표 위치를 계산하고(S4806, 포인팅 좌표 위치 계산 단계) 이렇게 계산된 포인팅 좌표 위치 값은 적어도 하나의 다른 장치 혹은 어플리케이션으로 제공된다.
이상에서는 본 발명의 실시예에 따른 단말기 센서 활용 방법이 도 39에서와 같은 절차로 수행되는 것으로 설명되었으나, 이는 설명의 편의를 위한 것일 뿐, 본 발명의 본질적인 개념을 벗어나지 않는 범위 내에서, 구현 방식에 따라 각 단계의 수행 절차가 바뀌거나 둘 이상의 단계가 통합되거나 하나의 단계가 둘 이상의 단계로 분리되어 수행될 수도 있다.
위에서는 단말기(4100) 센서를 활용하는 방법 및 장치(4210)에 대해 설명하였다. 아래에서는 센싱 값을 제공하는 방법 및 단말기(4100)에 대해 설명한다.
도 40는 본 발명의 제4 실시예에 따른 단말기(4100)의 내부 블록도이다.
도 40를 참조하면, 단말기(4100)는 외부 장치의 디스플레이 상의 복수의 기준점 각각을 가리키는 단말기(4100)의 복수의 지시 위치 센싱 값을 외부 장치(4210)로 송신하는 지시 위치 센싱 값 송신부(4910), 복수의 지시 위치 센싱 값을 이용하여 스케일 조정 비율을 결정한 외부 장치(4210)의 포인팅 좌표 위치를 조작하기 위한 포인팅 위치 센싱 값을 적어도 하나의 센서를 이용하여 측정하고 외부 장치(4210)로 송신하는 포인팅 위치 센싱 값 송신부(4920), 자이로 센서(4101), 가속도 센서(4102) 및 지자계 센서(4103) 등을 포함할 수 있다. 여기서 자이로 센서(4101), 가속도 센서(4102) 및 지자계 센서(4103)는 단말기(4100)가 포함할 수 있는 센서의 예시로서 본 발명의 제4 실시예는 이러한 실시예로 제한되는 것은 아니며 단말기(4100)는 자이로 센서(4101), 가속도 센서(4102) 및 지자계 센서(4103) 중 하나의 센서만 포함하고 있을 수도 있으며, 또한, 근접 센서(미도시)와 같은 다른 종류의 센서를 포함하고 있을 수도 있다.
도 41은 본 발명의 제4 실시예에 따른 센싱값 제공 방법에 대한 흐름도이다.
도 41을 참조하면, 적어도 하나의 센서를 포함하는 단말기(4100)는 외부 장치(4210)의 디스플레이 상의 복수의 기준점 각각을 가리키는 단말기(4100)의 복수의 지시 위치 센싱 값을 외부 장치(4210)로 송신하는 지시 위치 센싱 값 송신 단계(S41000)를 수행하고, 복수의 지시 위치 센싱 값을 이용하여 스케일 조정 비율을 결정한 외부 장치(4210)의 포인팅 좌표 위치를 조작하기 위한 포인팅 위치 센싱 값을 적어도 하나의 센서를 이용하여 측정하고 외부 장치(4210)로 송신하는 포인팅 위치 센싱 값 송신 단계(S41002)를 수행할 수 있다.
도 40를 참조하여 설명한 단말기(4100)와 도 41을 참조하여 설명한 센싱 값 제공 방법의 좀더 자세한 실시예는 도 32 내지 도 39을 참조하여 설명한 장치(4210) 및 단말기 센서 활용 방법에서 설명한 내용을 참고할 수 있다. 도 33를 참조하여 설명한 것과 같이 시스템(4200)에서 단말기(4100)는 내장된 센서의 센싱 값을 장치(4210)로 송신하고 장치(4210)는 이러한 센싱 값을 수신하여 포인팅 좌표 위치를 계산한 후 다른 장치 혹은 어플리케이션으로 제공하게 된다. 단말기(4100)의 일 실시예는 이러한 시스템(4200)에서 장치(4210)에 대응되는 기기로서 작동하는 것으로 이해할 수 있다. 하지만 단말기(4100)는 이렇게 도 32 내지 도 39을 참조하여 설명한 본 발명의 제4 실시예에 따른 장치(4210)에 대응되는 것으로 제한되는 것은 아니며 도 40를 참조하여 설명한 지시 위치 센싱값 송신부(4910), 포인팅 위치 센싱값 송신부(4920) 및 적어도 하나의 센서를 포함하는 기기는 모두 본 발명의 실시예에 따른 단말기(4100)로 해석해야할 것이다.
이상에서 전술한 본 발명의 실시예에 따른 단말기 센서 활용 방법 및 센싱 값 제공 방법은, 각각 장치(4210) 및 단말기(4100)에 기본적으로 설치된 애플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼에 포함되거나 운영체제 등에 포함되거나 호환되는 프로그램일 수 있음)에 의해 실행될 수 있다. 여기서, 장치(4210) 및/또는 단말기(4100)의 운영체제는, 데스크 탑 등의 일반 PC에 설치되는 윈도우(Window), 매킨토시(Macintosh) 등의 운영체제이거나, 스마트폰, 태블릿 PC 등의 모바일 단말기에 설치되는 iOS, 안드로이드(Android) 등의 모바일 전용 운영체제 등일 수도 있다.
이러한 의미에서, 전술한 본 발명의 실시예에 따른 단말기 센서 활용 방법은 장치(4210)에, 그리고 센싱 값 제공 방법은 단말기(4100)에 기본적으로 설치되거나 사용자에 의해 직접 설치된 애플리케이션(즉, 프로그램)으로 구현되고, 장치(4210)/단말기(4100) 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.
본 발명의 실시예에 따른 디스플레이를 포함하는 장치가 단말기 센서 활용 방법을 구현한 프로그램은, 디스플레이 상의 복수의 기준점 각각을 가리키는 단말기의 복수의 지시 위치 센싱 값을 단말기로부터 수신하는 지시 위치 센싱 값 수신 기능, 복수의 기준점 사이의 좌표값 차이와 복수의 지시 위치 센싱 값 사이의 위치 센싱 값 차이를 이용하여 스케일 조정 비율을 결정하는 스케일 조정 비율 결정 기능 및 단말기로부터 수신되는 적어도 하나의 포인팅 위치 센싱 값 혹은 적어도 하나의 포인팅 위치 센싱 값에 대하여 에러 보정 처리한 포인팅 위치 보정 센싱 값에 대하여 스케일 조정 비율을 적용하여 디스플레이 상의 포인팅 좌표 위치를 계산하는 포인팅 좌표 위치 계산 기능 등을 실행한다. 이뿐만 아니라, 도 32 내지 도 39 을 참조하여 전술한 본 발명의 실시예에 따른 단말기 센서 활용 방법에 대응되는 모든 기능을 실행할 수 있다.
또한, 본 발명의 실시예에 따른 적어도 하나의 센서를 포함하는 단말기(4100)가 센싱 값 제공 방법을 구현한 프로그램은, 외부 장치의 디스플레이 상의 복수의 기준점 각각을 가리키는 단말기의 복수의 지시 위치 센싱 값을 외부 장치로 송신하는 지시 위치 센싱 값 송신 기능 및 복수의 지시 위치 센싱 값을 이용하여 스케일 조정 비율을 결정한 외부 장치의 포인팅 좌표 위치를 조작하기 위한 포인팅 위치 센싱 값을 적어도 하나의 센서를 이용하여 측정하고 외부 장치로 송신하는 포인팅 위치 센싱 값 송신 기능 등을 실행한다. 이뿐만 아니라, 도 40 내지 도 41을 참조하여 전술한 본 발명의 실시예에 따른 센싱 값을 제공하는 방법에 대응되는 모든 기능을 실행할 수 있다.
이러한 프로그램은 컴퓨터에 의해 읽힐 수 있는 기록매체에 기록되고 컴퓨터에 의해 실행됨으로써 전술한 기능들이 실행될 수 있다.
이와 같이, 컴퓨터가 기록매체에 기록된 프로그램을 읽어 들여 프로그램으로 구현된 단말기 센서 활용 방법 및 센싱 값 제공 방법을 실행시키기 위하여, 전술한 프로그램은 컴퓨터의 프로세서(CPU)가 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다.
이러한 코드는 전술한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Function Code)를 포함할 수 있고, 전술한 기능들을 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수도 있다.
또한, 이러한 코드는 전술한 기능들을 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조 되어야 하는지에 대한 메모리 참조 관련 코드를 더 포함할 수 있다.
또한, 컴퓨터의 프로세서가 전술한 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 컴퓨터의 프로세서가 컴퓨터의 통신 모듈(예: 유선 및/또는 무선 통신 모듈)을 이용하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야만 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수도 있다.
그리고, 본 발명을 구현하기 위한 기능적인(Functional) 프로그램과 이와 관련된 코드 및 코드 세그먼트 등은, 기록매체를 읽어서 프로그램을 실행시키는 컴퓨터의 시스템 환경 등을 고려하여, 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론되거나 변경될 수도 있다.
또한 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는 네트워크로 커넥션된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 이 경우, 다수의 분산된 컴퓨터 중 어느 하나 이상의 컴퓨터는 상기에 제시된 기능들 중 일부를 실행하고, 그 결과를 다른 분산된 컴퓨터들 중 하나 이상에 그 실행 결과를 전송할 수 있으며, 그 결과를 전송받은 컴퓨터 역시 상기에 제시된 기능들 중 일부를 실행하여, 그 결과를 역시 다른 분산된 컴퓨터들에 제공할 수 있다.
이상에서 전술한 바와 같은, 본 발명의 실시예에 따른 단말기 센서 활용 방법 및 센싱 값 제공 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는, 일 예로, ROM, RAM, CDROM, 자기 테이프, 플로피디스크, 광 미디어 저장장치 등이 있다.
또한, 본 발명의 실시예에 따른 단말기 센서 활용 방법 및 센싱 값 제공 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 컴퓨터로 읽을 수 있는 기록매체는, 애플리케이션 스토어 서버(Application Store Server), 애플리케이션 또는 해당 서비스와 관련된 웹 서버(Web Server) 등을 포함하는 애플리케이션 제공 서버(Application Provider Server)에 포함된 저장매체(예: 하드디스크 등)이거나, 애플리케이션 제공 서버 그 자체일 수도 있으며, 프로그램을 기록한 다른 컴퓨터 또는 그 저장매체일 수도 있다.
본 발명의 제4 실시예에 따른 단말기 센서 활용 방법 및 센싱 값 제공 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터는, 일반적인 데스크 탑이나 노트북 등의 일반 PC 뿐만 아니라, 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기를 포함할 수 있으며, 이뿐만 아니라, 컴퓨팅(Computing) 가능한 모든 기기로 해석되어야 할 것이다.
만약, 본 발명의 제4 실시예에 따른 단말기 센서 활용 방법 및 센싱 값 제공 방법을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터가 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기인 경우, 모바일 단말기는 애플리케이션 스토어 서버, 웹 서버 등을 포함하는 애플리케이션 제공 서버로부터 해당 애플리케이션을 다운로드 받아 설치할 수 있고, 경우에 따라서는, 애플리케이션 제공 서버에서 일반 PC로 다운로드 된 이후, 동기화 프로그램을 통해 모바일 단말기에 설치될 수도 있다.
[제5 실시예]
본 발명의 제5 실시예는 게임 수행 기술에 관한 것으로, 보다 상세하게는, 사용자의 모션을 센싱하는 모바일 단말로부터 센싱 데이터를 수신하여 게임 클라이언트에 의한 게임 조작을 수행하고, 게임 조작에 따른 피드백을 게임 클라이언트로부터 수신하여 모바일 단말에 의해 실감형 액션을 수행함으로써, 모바일 단말에 포함된 모션 센서를 이용하여 게임을 조작하고 게임 조작에 따른 피드백을 모바일 단말이 수행하도록 하여, 게임 사용자가 별도의 부가 장치를 구입하지 않고 모바일 단말을 통해 실감형 게임을 즐기도록 할 수 있는 게임 수행 방법 및 이를 수행하는 게임 수행 서버에 관한 것이다.
이와 관련하여, 종래 통화 수단으로서만 활용될 수 있었던 모바일 단말은 스마트 폰의 등장으로 인해 인터넷, 음악, 영화, SNS(Social Network Service) 등 다양한 기능을 수행할 수 있는 휴대용 컴퓨팅 장치로서 활용되고 있다.
특히, 모바일 단말에 포함될 수 있는 사용자 모션 감지 센서(예를 들어, 자이로 센서)를 통해 사용자의 동작을 센싱함으로써, 사용자의 동작은 모바일의 단말의 입력 수단으로서 활용되는 기술이 등장하고 있다. 최근, 사용자의 동작을 기반으로 하는 게임 장치(예를 들어, 닌텐도 Wii)의 인기로 인해, 모바일 단말의 모션 감지 센서를 이용한 모바일 게임이 출시되고 있다.
모바일 단말을 게임 조작 장치로서 활용하는 게임 수행 방법에 관한 다양한 기술들이 제공되고 있다. 하기의 선행 특허들은 이와 관련된 기술을 제공한다.
한국공개특허 제1020120070638호는 스마트폰과 화면출력장치를 통해 출력되는 게임을 자이로스코프 센서 및 중력센서가 구비된 스마트폰을 좌우상하 및 전후를 포함한 자유로운 방향, 회전, 속도로 움직여 조작할 수 있도록 하는 모션컨트롤 방식의 스마트폰 어플리케이션 서비스 시스템 및 그 시스템에 의해 제공되는 게임방법에 관한 것으로, 온라인 접속을 이룬 사용자가 이용할 수 있는 무빙 게임을 복수개 등록시켜 서비스하는 무빙 게임 서비스 서버; 사용자의 조작에 따라 화면출력장치상에서 웹 어드레스를 입력하여 본사 웹사이트에서 리시버 프로그램을 다운로드 받아 저장시키고, 외부로부터 리시버 신호가 수신되는 경우 상기 리시버 프로그램을 통해 해석한 후 화면상에 IP 어드레스를 표출시키고, 외부로부터 입력되는 게임 조작신호에 응하여 화면상에 출력되는 게임이 진행되도록 하는 화면출력장치; 및 상기 앱스토어에 온라인 접속을 이룬 후 리시버 어플리케이션을 다운로드 받아 저장시킨 후 상기 화면출력장치로 리시버 신호를 송출시키고, 상기 화면출력장치의 화면상에 표출된 IP 어드레스를 입력하여 상기 화면출력장치와의 온라인 접속을 시도하며, 상기 화면출력장치와 온라인 접속이 이루어진 경우 상기 화면출력장치에 저장된 무빙 게임 중 원하는 무빙 게임을 선택하여 게임을 진행시키는 게임 조작신호를 출력하는 스마트 단말기로 이루어진 것 스마트폰 어플리케이션 서비스 기술에 관한 것이다.
상기 선행 기술은 모바일 단말의 자이로스코프 센서 및 중력 센서를 이용하여 사용자가 PC에서 수행되는 게임을 조작할 수 있는 기술을 제공하고 있다. 여기에서, 이러한 선행 기술은 모바일 단말을 단지 PC 게임 조작 수단으로서 활용하는 기술을 제공하는데 그치고 있다.
한국등록특허 제10050114호는 아날로그 방향키, 디지탈 방향키, 지시 버튼, 지시 레버 등이 설치된 컨트롤러 본체에 확장 유닛을 접속하고, 발광부를 갖는 확장 유닛을 접속하면, 컨트롤러를 무선화할 수 있으며, 광 검출부를 갖는 확장 유닛을 접속하면, 모니터 화면 중의 적을 사격하는 사격 게임을 행할 수 있는 게임 장치에 관한 것이다. 여기에서, 상기 선행 특허는 컨트롤러 본체에 진동부를 갖는 확장 유닛을 접속하면, 컨트롤러 본체에 진동을 가하여 현장감이 있는 사격 게임을 실현할 수 있는 진동형 컨트롤러를 개시하고 있다.
상기 선행 기술은 게임 조작 장치에 진동을 가함으로써 사용자로 하여금 현장감을 느낄 수 있도록 하는 사격 게임 장치를 제공하고 있다. 여기에서, 이러한 선행 기술은 단지 게임 컨트롤러에 진동을 가하는 피드백을 수행하는데 그치고 있다.
즉, 이러한 선행 기술들은 모바일 단말을 게임 조작 장치로서 활용하는 과정에서 발생하는 게임 이벤트들에 대해 모바일 단말이 다양한 피드백을 수행하도록 하는 기술을 제시하지 못하고 있다. 또한, 이러한 선행 기술들은 사용자의 모션을 인식하는 과정에서 발생하는 복잡한 데이터 처리에 따라 딜레이가 발생하고, 이러한 딜레이로 인해 게임 과정에서 발생하는 게임 이벤트에 대해 모바일 단말이 즉각적으로 피드백을 수행할 수 없는 문제점에 대한 해결책을 제시하지 못하고 있다.
본 발명의 제5 실시예는 사용자의 모션을 센싱하는 모바일 단말로부터 센싱 데이터를 수신하여 게임 클라이언트에 의한 게임 조작을 수행하고, 게임 조작에 따른 피드백을 게임 클라이언트로부터 수신하여 모바일 단말에 의해 실감형 액션을 수행함으로써, 모바일 단말에 포함된 모션 센서를 이용하여 게임을 조작하고 게임 조작에 따른 피드백을 모바일 단말이 수행하도록 하여, 게임 사용자가 별도의 부가 장치를 구입하지 않고 모바일 단말을 통해 실감형 게임을 즐기도록 할 수 있는 게임 수행 방법 및 이를 수행하는 게임 수행 서버를 제공하고자 한다.
본 발명의 제5 실시예는 모바일 단말로부터 사용자의 모션을 센싱하는 적어도 두 개의 센서들로부터 센싱 값을 수신하고 각 센서의 동작 속도 및 센싱 정확도를 기초로 센싱 값을 가공하여 게임 클라이언트에 의한 조작을 수행함으로써, 모바일 단말에 의한 데이터 처리를 최소화함으로써 딜레이를 감소시키고 모바일 단말의 배터리 효율을 향상시킬 수 있으며, 사용자의 모션을 보다 정확하게 인식하여 게임을 조작할 수 있는 게임 수행 방법 및 이를 수행하는 게임 수행 서버를 제공하고자 한다.
본 발명의 제5 실시예는 게임 클라이언트로부터 수신된 피드백에 대하여 모바일 단말에 있는 실감형 액션 수단이 수행할 수 있는 액션 명령어를 생성하여 모바일 단말에 송신함으로써, 게임 과정에서 발생하는 다양한 게임 이벤트들을 모바일 단말에 있는 다양한 출력 장치를 통해 실감형 액션으로서 수행하여 사용자가 게임에 대한 몰입도를 느끼도록 할 수 있는 게임 수행 방법 및 이를 수행하는 게임 수행 서버를 제공하고자 한다.
본 발명의 제5 실시예 중에서, 게임 수행 방법은 사용자 모션을 센싱하는 모바일 단말과 연결될 수 있는 게임 수행 서버에서 수행된다. 상기 게임 수행 방법은 상기 센싱된 사용자 모션과 연관된 센싱 데이터가 수신되면 상기 수신된 센싱 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계 및 상기 게임 클라이언트로부터 상기 게임 조작에 대한 피드백이 수신되면 상기 수신된 피드백을 통해 상기 모바일 단말에 의한 실감형 액션을 수행하는 단계를 포함한다.
본 발명의 제5 실시예는, 게임 수행 서버는 사용자 모션을 센싱하는 모바일 단말과 연결될 수 있다. 상기 게임 수행 서버는 상기 센싱된 사용자 모션과 연관된 센싱 데이터가 수신되면 상기 수신된 센싱 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 게임 조작부 및 상기 게임 클라이언트로부터 상기 게임 조작에 대한 피드백이 수신되면 상기 수신된 피드백을 통해 상기 모바일 단말에 의한 실감형 액션을 수행하는 실감형 액션 수행부를 포함한다.
본 발명의 제5 실시예는, 사용자 모션을 센싱하는 모바일 단말과 연결될 수 있는 게임 수행 서버에서 수행되는 게임 수행 방법에 관한 컴퓨터 프로그램을 기록한 기록매체는 상기 센싱된 사용자 모션과 연관된 센싱 데이터가 수신되면 상기 수신된 센싱 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계 및 상기 게임 클라이언트로부터 상기 게임 조작에 대한 피드백이 수신되면 상기 수신된 피드백을 통해 상기 모바일 단말에 의한 실감형 액션을 수행하는 단계를 포함하는 게임 수행 방법에 관한 컴퓨터 프로그램을 기록한다.
본 발명의 제5 실시예에 따른 게임 수행 방법과 이와 관련된 기술들은 사용자의 모션을 센싱하는 모바일 단말로부터 센싱 데이터를 수신하여 게임 클라이언트에 의한 게임 조작을 수행하고, 게임 조작에 따른 피드백을 게임 클라이언트로부터 수신하여 모바일 단말에 의해 실감형 액션을 수행함으로써, 모바일 단말에 포함된 모션 센서를 이용하여 게임을 조작하고 게임 조작에 따른 피드백을 모바일 단말이 수행하도록 하여, 게임 사용자가 별도의 부가 장치를 구입하지 않고 모바일 단말을 통해 실감형 게임을 즐기도록 할 수 있다.
본 발명의 제5 실시예에 따른 게임 수행 방법과 이와 관련된 기술들은 모바일 단말로부터 사용자의 모션을 센싱하는 적어도 두 개의 센서들로부터 센싱 값을 수신하고 각 센서의 동작 속도 및 센싱 정확도를 기초로 센싱 값을 가공하여 게임 클라이언트에 의한 조작을 수행함으로써, 모바일 단말에 의한 데이터 처리를 최소화함으로써 딜레이를 감소시키고 모바일 단말의 배터리 효율을 향상시킬 수 있으며, 사용자의 모션을 보다 정확하게 인식하여 게임을 조작할 수 있다.
본 발명의 제5 실시예에 따른 게임 수행 방법과 이와 관련된 기술들은 게임 클라이언트로부터 수신된 피드백에 대하여 모바일 단말에 있는 실감형 액션 수단이 수행할 수 있는 액션 명령어를 생성하여 모바일 단말에 송신함으로써, 게임 과정에서 발생하는 다양한 게임 이벤트들을 모바일 단말에 있는 다양한 출력 장치를 통해 실감형 액션으로서 수행하여 사용자가 게임에 대한 몰입도를 느끼도록 할 수 있다.
도 42은 본 발명의 제5 실시예에 따른 게임 수행 시스템을 설명하는 도면이다.
도 42을 참조하면, 게임 수행 시스템(5100)은 모바일 단말(5110), 게임 수행 서버(5120) 및 게임 클라이언트(5130)를 포함한다.
모바일 단말(5110)은 사용자의 모션을 센싱하는 휴대용 컴퓨팅 장치에 해당할 수 있다. 보다 구체적으로, 모바일 단말(5110)은 사용자의 모션을 센싱하는 모션 센서를 포함하는 휴대용 장치에 해당할 수 있다. 제5 실시예에서, 모바일 단말(5110)은 스마트 폰(Smart Phone) 또는 태블릿 PC(Tablet Personal Computer)에 해당할 수 있다.
여기에서, 모션 센서는 가속도 센서, 각속도 센서 및 지자계 센서 중 적어도 하나를 포함할 수 있다. 보다 구체적으로, 가속도 센서는 X, Y, Z축에 대한 정적 및 동적 가속도를 측정하여 센싱 값을 데이터로서 생성할 수 있는 장치에 해당한다. 또한, 각속도 센서는 X, Y, Z축에 대한 회전 각속도를 측정하여 센싱 값을 데이터로서 생성할 수 있는 장치에 해당할 수 있고, 예를 들어, 자이로스코프(Gyroscope) 센서에 해당할 수 있다. 지자계 센서는 절대적인 방위 정보를 데이터로서 생성할 수 있는 장치에 해당한다.
모바일 단말(5110)은 게임 수행 서버(5120)와 네트워크를 통해 연결될 수 있다. 제5 실시예에서, 모바일 단말(5110)은 유선 또는 무선 네트워크를 통해 게임 수행 서버(5120)와 연결될 수 있다. 제5 실시예에서, 모바일 단말(5110)이 무선 네트워크를 통해 게임 수행 서버(5120)와 연결되는 경우, 3G 망, 무선랜(wifi), 블루투스(blue tooth) 및 적외선 통신망(IrDA) 중 하나를 통해 연결될 수 있다.
모바일 단말(5110)은 도 43를 참조하여 설명한다.
게임 수행 서버(5120)는 모바일 단말(5110) 및 게임 클라이언트 각각과 네트워크를 통해 연결될 수 있는 컴퓨팅 장치에 해당한다. 제5 실시예에서, 게임 수행 서버(5120)는 개인용 컴퓨터(Personal Computer)에 포함될 수 있다. 즉, 게임 수행 서버(5120)는 PC에 포함되어 구현될 수 있다. 게임 수행 서버(5120)는 도 44을 참조하여 설명한다.
게임 클라이언트(5130)는 게임 수행 장치에서 실감형 액션 게임을 구동하며 사용자에 의해 입력된 신호를 통해 게임을 조작하며 그 조작 결과를 출력 수단을 통해 사용자에게 제공할 수 있는 게임 제공 수단이다. 제5 실시예에서, 게임 클라이언트(5130)는 실감형 액션 게임 소프트웨어를 포함할 수 있다.
제5 실시예에서, 게임 클라이언트(5130)는 게임 구동을 위한 게임 엔진의 적어도 일부를 적재할 수 있다. 예를 들어, 실감형 액션 게임을 구동하는데 필요한 소정의 연산 중 적어도 일부는 게임 클라이언트(5130)에서 수행될 수 있다.
게임 클라이언트(5130)는 게임 수행 서버(5120)와 네트워크를 통해 연결될 수 있다. 제5 실시예에서, 게임 클라이언트(5130)는 게임 수행 서버(5120)와 하나의 컴퓨팅 장치 내에서 구현될 수 있다. 예를 들어, 게임 수행 서버(5120)가 개인용 컴퓨터에 포함되어 구현되는 경우, 게임 클라이언트(5130)는 개인용 컴퓨터의 저장 장치에 포함되어 구현될 수 있다. 즉, 사용자는 게임 수행 서버(5120)와 게임 클라이언트(5130)를 포함하는 개인용 컴퓨터 및 모바일 단말(5110)을 통해 이하 본 발명의 게임 수행 방법에 따른 실감형 액션 게임을 체험할 수 있다.
도 43는 도 42에 있는 모바일 단말을 설명하는 블록도이다.
도 43를 참조하면, 모바일 단말(5110)은 센서부(5210), 통신부(5220), 실감형 액션 수단(5230) 및 제어부(5240)를 포함한다.
센서부(5210)는 사용자의 모션을 센싱한다. 보다 구체적으로, 센서부(5210)는 모바일 단말(5110)에 포함 또는 부착되어 사용자의 모션에 해당하는 센싱 값을 생성할 수 있다. 여기에서, 센싱 값은 사용자 모션에 관한 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터를 포함할 수 있다.
제5 실시예에서, 센서부(5210)는 적어도 두 개의 센서들을 이용하여 사용자의 모션에 해당하는 각각의 센싱 값을 생성할 수 있다. 여기에서, 센서부(5210)는 가속도 센서, 각속도 센서 및 지자계 센서 중 적어도 두 개를 포함할 수 있다.
제5 실시예에서, 센서부(5210)는 제1 센서(5211) 및 적어도 하나의 제2 센서(5212, 5213, ...)를 포함할 수 있다. 여기에서, 제1 센서(5211) 및 적어도 하나의 제2 센서(5212, 5213, ...)는 동작 속도와 센싱 정확도 각각의 관점에서 반비례하도록 설계된 것에 해당할 수 있다.
보다 구체적으로, 제1 센서(5211)는 제2 센서(5212, 5213, ...)와 비교하여 동작 속도가 빠르게 설계된 모션 센서에 해당할 수 있고, 제2 센서(5212, 5213, ...)는 제1 센서(5211)와 비교하여 센싱 정확도가 높게 설계된 모션 센서에 해당할 수 있다. 여기에서, 동작 속도는 사용자의 모션을 인지하여 센싱 값을 생성하는 시간을 의미하고, 센싱 정확도는 사용자의 모션을 인지할 수 있는 오차 범위 또는 센싱 값의 노이즈 크기를 의미할 수 있다. 즉, 제1 센서(5211)는 센서부(5210)에 포함된 모션 센서들 중 동작 속도가 가장 빠른 값을 가지는 모션 센서에 해당하고, 제2 센서(5212, 5213)는 센서부(5210)에 포함된 모션 센서들 중 제1 센서(5211)보다 높은 센싱 정확도를 가지는 모션 센서에 해당할 수 있다.
제5 실시예에서, 제1 센서(5211)는 자이로스코프 센서에 해당하고, 제2 센서(5212, 5213)는 가속도 센서 및 지자계 센서에 해당할 수 있다. 즉, 가장 높은 동작 속도를 가지는 자이로스코프 센서가 제1 센서(5211)에 해당하고, 제1 센서보다 낮은 동작 속도를 가지되, 높은 센싱 정확도를 가지는 가속도 센서 및 지자계 센서가 제2 센서(5212, 5213)에 해당할 수 있다.
통신부(5220)는 센서부(5210)에 의해 생성된 센싱 값을 게임 수행 서버(5120)로 송신할 수 있고, 게임 수행 서버(5120)로부터 피드백을 수신할 수 있다. 이와 관련된 내용은 도 44을 통해 보다 구체적으로 설명한다.
실감형 액션 수단(5230)은 게임 수행 서버(5120)로부터 수신된 피드백을 수행하여 사용자에게 실감형 액션을 제공하는 수단에 해당한다. 제5 실시예에서, 실감형 액션 수단(5230)은 디스플레이, 진동 센서, 카메라 및 스피커 중 적어도 하나를 포함할 수 있다. 즉, 실감형 액션 수단(5230)은 게임 진행 과정에서 발생하는 특정 이벤트에 대한 피드백을 수행할 수 있는 장치로서, 모바일 단말(5110)의 화면, 진동 장치, 카메라 및 스피커 중 적어도 하나에 해당할 수 있다. 이와 관련된 내용은 도 44을 참조하여 보다 구체적으로 설명한다.
제어부(5240)는 센서부(5210), 통신부(5220) 및 실감형 액션 수단(5230)의 동작 및 데이터의 흐름을 제어한다.
도 44은 도 42에 있는 게임 수행 서버를 설명하는 블록도이다.
도 44을 참조하면, 게임 수행 서버(5120)는 게임 조작부(5310), 실감형 액션 수행부(5320), SNS(Social Network Service) 액션 수행부(5330) 및 제어부(5340)를 포함한다.
게임 조작부(5310)는 모바일 단말(5110)로부터 사용자 모션과 연관된 센싱 데이터를 수신한다.
보다 구체적으로, 게임 조작부(5310)는 모바일 단말(5110)의 센서부(5210)에 의해 생성된 센싱 값을 포함하는 센싱 데이터를 통신부(5220)로부터 수신한다. 여기에서, 센싱 데이터는 사용자의 모션을 나타내는 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터를 포함할 수 있다.
제5 실시예에서, 게임 조작부(5310)는 모바일 단말(5110)에 있는 적어도 두 개의 센서들 각각으로부터 센싱 값을 수신할 수 있다. 보다 구체적으로, 모바일 단말(5110)이 적어도 두 개의 모션 센서들을 포함하고 있는 경우, 게임 조작부(5310)는 모바일 단말(5110)의 통신부(5220)를 통해 적어도 두 개의 모션 센서들 각각이 생성한 센싱 값을 수신할 수 있다.
제5 실시예에서, 모바일 단말(5110)이 동작 속도와 센싱 정확도 각각의 관점에서 반비례하도록 설계된 제1 센서(5211) 및 적어도 하나의 제2 센서(5212, 5213, ...)를 포함하고 있는 경우, 게임 조작부(5310)는 제1 센서(5211)을 통해 제1 센싱 값을 수신하고, 적어도 하나의 제2 센서를 통해 제1 센싱 값을 정정할 수 있다.
이하, 본 발명의 제5 실시예에 따른 게임 수행 과정에 대한 설명을 위해 모바일 단말(5110)에 포함된 제1 센서(5211)는 자이로스코프 센서에 해당하고, 제2 센서(5212, 5213)는 가속도 센서 및 지자계 센서에 해당하는 것을 예시로서 설명한다. 한편, 이러한 설명은 본 발명의 권리 범위를 한정하고자 하는 것은 아니다.
예를 들어, 게임 조작부(5310)는 제1 센서(5211)인 자이로스코프 센서에 의해 생성된 제1 센싱 값을 수신한다. 여기에서, 자이로스코프 센서는 가속도 센서 및 지자계 센서와 비교하여 동작 속도가 높게 설계되어 있으므로, 게임 조작부(5310)는 제1 센싱 값을 가장 먼저 수신할 수 있다. 게임 조작부(5310)는 제1 센싱 값에 포함된 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터를 결정할 수 있다.
여기에서, 게임 조작부(5310)는 제2 센서(5212, 5213)에 해당하는 가속도 센서 및 지자계 센서로부터 생성된 제2 센싱 값을 수신할 수 있다. 여기에서, 가속도 센서는 자이로스코프 센서보다 동작 속도는 느리지만 롤(Roll) 및 피치(Pitch)에 대한 정확도가 높게 설계되었으므로, 제1 센싱 값에서 롤(Roll) 및 피치(Pitch) 데이터를 가속도 센서에 의해 생성된 제2 센싱 데이터에 포함된 센싱 값으로 정정할 수 있다. 또한, 지자계 센서는 요(Yaw) 에 대한 정확도가 높게 설계되었으므로, 제1 센싱 값에서, 요(Yaw) 데이터를 지자계 센서에 의해 생성된 제2 센싱 데이터에 포함된 센싱 값으로 정정할 수 있다.
즉, 게임 조작부(5310)는 사용자의 모션을 정확한 인식할 수 있도록 적어도 두 개의 모션 센서를 통해 센싱 값들을 수집하고, 동작 속도가 빠른 모션 센서에 의한 센싱 값을 기준으로 정확도가 높은 다른 모션 센서에 의한 센싱 값으로 정정할 수 있다. 이러한 과정을 모바일 단말(5110)이 아닌 게임 수행 서버(5120)에서 수행함으로써, 모바일 단말(5110)의 배터리 효율을 높을 수 있고, 데이터 처리 과정에서 발생할 수 있는 딜레이를 최소화하여 게임 수행 처리 속도를 향상시킬 수 있다.
게임 조작부(5310)는 모바일 단말(5110)로부터 수신된 센싱 데이터를 통해 게임 클라이언트(5130)에 의한 게임 조작을 수행한다. 즉, 게임 조작부(5310)는 사용자의 모션과 연관된 센싱 데이터를 게임 조작 신호로 변환하여 게임 클라이언트(5130)에 송신함으로써, 게임 클라이언트(5130)가 게임 조작을 수행하도록 한다.
제5 실시예에서, 게임 조작부(5310)는 모바일 단말(5110)로부터 적어도 두 개의 센싱 값들을 수신하여 센싱 데이터를 결정하고, 센싱 데이터를 상기 게임 조작을 위한 명령어로 변환할 수 있다.
보다 구체적으로, 게임 조작부(5310)가 제1 센서(5211)를 통해 수신한 제1 센싱 값의 적어도 일부를 제2 센서(5212,5213)을 통해 수신한 제2 센싱 값으로 정정하여, 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터를 포함한 센싱 데이터를 결정할 수 있다. 여기에서, 게임 조작부(5310)는 센싱 데이터를 게임 클라이언트(5130)가 게임 조작 신호로서 인식할 수 있는 명령어로 변환할 수 있다. 예를 들어, 사용자의 모션을 나타내는 센싱 데이터를 게임 클라이언트(5130)가 게임 조작 신호로서 인식할 수 있는 {좌 이동}, {우 이동}, {발사}, {방어} 등의 명령어로 변환할 수 있다.
여기에서, 게임 조작부(5310)는 게임 조작을 위한 명령어를 게임 클라이언트(5130)로 송신하여 게임 클라이언트가 사용자의 모션에 따라 게임을 수행하도록 할 수 있다.
실감형 액션 수행부(5320)는 게임 클라이언트(5130)로부터 게임 조작에 따른 피드백을 수신한다. 여기에서, 피드백은 게임 클라이언트(5130)에 의해 게임 수행 과정에서 발생하는 게임 조작에 따른 게임 조작 결과에 해당할 수 있다. 제5 실시예에서, 피드백은 게임 과정에서 발생하는 게임 데이터 중에서 모바일 단말(5110)을 통해 특정 실감형 액션을 수행할 수 있도록 미리 정의된 특정 이벤트 데이터에 해당할 수 있다.
보다 구체적으로, 게임 조작부(5310)가 센싱 데이터를 통해 게임 클라이언트(5130)에 의한 게임 조작을 수행하고, 실감형 액션 수행부(5320)는 게임 클라이언트(5130)로부터 게임 과정에서 발생하는 특정 이벤트 데이터를 피드백으로서 수신할 수 있다.
예를 들어, 실감형 액션 게임이 자동차 레이싱 게임에 해당하는 경우, 게임 조작부(5310)는 사용자의 모션에 따른 센싱 데이터를 게임 조작을 위한 명령어로 변환하여 게임 클라이언트(5130)에 송신하고, 게임 클라이언트(5130)가 게임 조작을 수행하는 과정에서 다른 차량과의 충돌이 발생하여 생성되는 {vehicle crash}에 해당하는 게임 데이터를 게임 조작에 대한 피드백으로서 실감형 액션 수행부(5320)로 송신할 수 있다.
다른 예를 들어, 실감형 액션 게임이 대결 모드로 진행되고 사용자가 승리하는 경우, 게임 클라이언트(5130)는 {victory}에 해당하는 게임 데이터를 생성하여 실감형 액션 수행부(5320)로 송신할 수 있다.
실감형 액션 수행부(5320)는 게임 클라이언트(5130)로부터 수신된 피드백을 통해 모바일 단말(5110)에 의한 실감형 액션을 수행할 수 있다.
보다 구체적으로, 실감형 액션 수행부(5320)는 게임 클라이언트(5130)로부터 센싱 데이터에 의한 게임 조작 결과로서 수신된 피드백을 모바일 단말(5110)의 통신부(5220)로 전송하여 실감형 액션 수단(5230)이 실감형 액션을 수행하도록 할 수 있다.
여기에서, 실감형 액션은 사용자가 시각, 청각 및 촉각 중 적어도 하나의 감각을 통해 게임에서 발생하는 상황을 인지할 수 있도록 하는 변화를 의미한다. 실감형 액션 수단(5230)은 모바일 단말(5110)에 포함되고, 실감형 액션을 수행할 수 있는 장치로서, 예를 들어, 모바일 단말(5110)의 화면, 진동 장치, 카메라 및 스피커 중 적어도 하나에 해당할 수 있다.
예를 들어, 실감형 액션 수행부(5320)가 게임 클라이언트(5130)로부터 {crash}에 해당하는 피드백을 수신하면, 실감형 액션 수행부(5320)는 모바일 단말(5110)의 실감형 액션 수단(5230)인 화면, 진동 장치 및 스피커를 통해 실감형 액션을 수행할 수 있다. 여기에서, 실감형 액션 수행부(5320)는 모바일 단말(5110)의 화면에 {충돌}에 해당하는 텍스트를 표시하고, 진동 센서가 {2초 진동}에 해당하는 액션을 수행하도록 하고, 스피커를 통해 {유리 깨짐}에 해당하는 사운드를 재생시킬 수 있다.
다른 예를 들어, 실감형 액션 수행부(5320)가 게임 클라이언트(5130)로부터 {hurry up}에 해당하는 피드백을 수신하면, 실감형 액션 수행부(5320)는 모바일 단말(5110)의 화면을 통해 게임 미션에 대한 힌트를 제공할 수 있다.
또 다른 예를 들어, 실감형 액션 수행부(5320)가 게임 클라이언트(5130)로부터 {victory}에 해당하는 피드백을 수신하면, 실감형 액션 수행부(5320)는 모바일 단말(5110)의 화면을 통해 {축하}에 해당하는 텍스트를 출력하고, 스피커를 통해 {축하 음악}에 해당하는 사운드를 재생시킬 수 있다.
제5 실시예에서, 실감형 액션 수행부(5320)는 게임 클라이언트(5130)로부터 수신된 게임 조작 결과를 기초로 실감형 액션을 생성할 수 있다. 여기에서, 실감형 액션은 모바일 단말(5110)의 실감형 액션 수단(5230)이 특정 이벤트를 실행하도록 하는 명령어에 해당할 수 있다. 예를 들어, 게임 조작 결과가 {crash}에 해당하는 경우, 실감형 액션 수행부(5320)는 [{vibrator, 2sec}, {speaker, sound1}, {text, 충돌}]에 해당하는 명령어를 실감형 액션으로서 생성할 수 있다.
제5 실시예에서, 실감형 액션 수행부(5320)는 복수의 게임 조작 결과와 실감형 액션 명령어가 연관되어 저장된 실감형 액션 저장소를 검색하여 실감형 액션 명령어를 생성할 수 있다.
제5 실시예에서, 실감형 액션 수행부(5320)는 게임 조작 결과에서 액션 디스크립터를 추출하여 실감형 액션 명령어를 생성할 수 있다. 여기에서, 액션 디스크립터는 게임 조작 결과에 포함되고 실감형 액션과 연관된 텍스트에 해당하고, 게임 진행 과정에서 발생하는 특정 상황을 나타내는 식별자로서 기능한다.
예를 들어, 실감형 액션 수행부(5320)가 게임 클라이언트(5130)로부터 수신한 게임 조작 결과가 {victory_user1, defeat_user2, gametime_300sec}에 해당하는 데이터인 경우, 실감형 액션 수행부(5320)는 게임 조작 결과에서 게임 사용자인 user1과 연관된 {victory}에 해당하는 데이터를 액션 디스크립터로서 추출할 수 있다. 여기에서, 실감형 액션 수행부(5320)는 추출된 액션 디스크립터에 해당하는 실감형 액션 명령어를 생성하여 모바일 단말(5110)이 화면으로 {축하}에 해당하는 텍스트를 출력하고, 스피커로 {승리 음악}을 재생하도록 하고, 카메라가 {전면 카메라 촬영} 이벤트를 실행하도록 하여 사용자의 모습을 촬영하도록 할 수 있다.
제5 실시예에서, 실감형 액션 수행부(5320)는 모바일 단말(5110)에 있는 적어도 하나의 실감형 액션 수단에 따라 액션 명령어를 생성할 수 있다. 여기에서, 실감형 액션 수행부(5320)는 모바일 단말(5110)이 게임 수행 서버(5120)에 네트워크를 통해 연결되는 경우, 모바일 단말(5110)에 포함된 실감형 액션 수단(5230)을 검색할 수 있다.
예를 들어, 실감형 액션 수행부(5320)는 wifi를 통해 모바일 단말(5110)이 게임 수행 서버(5120)에 접속하는 경우, 모바일 단말(5110)이 포함하고 있는 디스플레이, 진동 센서, 카메라 및 스피커 중 적어도 하나를 검색할 수 있다. 여기에서, 실감형 액션 수행부(5320)는 모바일 단말(5110)의 설정을 확인하여 디스플레이 장치가 절전모드로 설정되거나 배터리 절약 모드로 설정된 경우, 실감형 액션 수행부(5320)는 디스플레이, 카메라 및 스피커를 제외하고, 진동 센서를 실감형 액션 수행 수단(5230)으로 결정할 수 있다.
SNS 액션 수행부(5330)는 게임 클라이언트(5130)로부터 수신된 피드백을 선별하여 소셜 콘텐츠를 생성하고, 소셜 콘텐츠를 SNS 서버로 송신한다.
보다 구체적으로, SNS 액션 수행부(5330)는 게임 클라이언트(5130)로부터 수신된 피드백에서 미리 정의된 소셜 디스크립터를 추출할 수 있다. 예를 들어, 게임 클라이언트(5130)로부터 수신된 피드백이 {victory_user1, defeat_user2, gametime_300sec}에 해당하는 데이터인 경우, SNS 액션 수행부(5330)는 미리 정의된 소셜 디스크립터로서 [{victory}, {user1}], [{defeat}, {user2}]에 해당하는 데이터를 추출할 수 있다.
여기에서, SNS 액션 수행부(5330)는 추출된 소셜 디스크립터를 기초로 [{user1, 대박 승리}, {user2, 무참히 패배}]에 해당하는 데이터를 소셜 콘텐츠로서 생성하여 SNS 서버에 송신할 수 있다. 여기에서, SNS 서버는 SNS를 제공하는 컴퓨팅 장치로서, 예를 들어, 트위터, 페이스북, 싸이월드 및 카카오톡 중 하나와 연관될 수 있다.
즉, SNS 액션 수행부(5330)는 실감형 액션 게임의 피드백을 사용자와 연관된 다른 사용자(예를 들어, 팔로어)가 인식할 수 있는 소셜 콘텐츠로서 생성하여 SNS로서 제공할 수 있다.
제어부(5340)는 게임 조작부(5310), 실감형 액션 수행부(5320) 및 SNS 액션 수행부(5330)의 동작 및 데이터의 흐름을 제어한다.
도 45는 본 발명에 따른 게임 수행 과정을 설명하는 흐름도이다.
게임 조작부(5310)는 모바일 단말(5110)로부터 사용자 모션과 연관된 센싱 데이터를 수신한다(단계 S5410).
보다 구체적으로, 게임 조작부(5310)는 모바일 단말(5110)의 센서부(5210)에 의해 생성된 센싱 값을 포함하는 센싱 데이터를 통신부(5220)로부터 수신한다. 여기에서, 센싱 데이터는 사용자의 모션을 나타내는 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터를 포함할 수 있다.
게임 조작부(5310)는 모바일 단말(5110)로부터 수신된 센싱 데이터를 통해 게임 클라이언트(5130)에 의한 게임 조작을 수행한다(단계 S5420). 즉, 게임 조작부(5310)는 사용자의 모션과 연관된 센싱 데이터를 게임 조작 신호로 변환하여 게임 클라이언트(5130)에 송신함으로써, 게임 클라이언트(5130)가 게임 조작을 수행하도록 한다. 제5 실시예에서, 게임 조작부(5310)는 게임 조작을 위한 명령어를 게임 클라이언트(5130)로 송신하여 게임 클라이언트가 사용자의 모션에 따라 게임을 수행하도록 할 수 있다.
실감형 액션 수행부(5320)는 게임 클라이언트(5130)로부터 게임 조작에 따른 피드백을 수신한다(단계 S5430). 여기에서, 피드백은 게임 클라이언트(5130)에 의해 게임 수행 과정에서 발생하는 게임 조작에 따른 게임 조작 결과에 해당할 수 있다.
제5 실시예에서, 피드백은 게임 과정에서 발생하는 게임 데이터 중에서 모바일 단말(5110)을 통해 특정 실감형 액션을 수행할 수 있도록 미리 정의된 특정 이벤트 데이터에 해당할 수 있다.
보다 구체적으로, 게임 조작부(5310)가 센싱 데이터를 통해 게임 클라이언트(5130)에 의한 게임 조작을 수행하고, 실감형 액션 수행부(5320)는 게임 클라이언트(5130)로부터 게임 과정에서 발생하는 특정 이벤트 데이터를 피드백으로서 수신할 수 있다.
예를 들어, 실감형 액션 게임이 자동차 레이싱 게임에 해당하는 경우, 게임 조작부(5310)는 사용자의 모션에 따른 센싱 데이터를 게임 조작을 위한 명령어로 변환하여 게임 클라이언트(5130)에 송신하고, 게임 클라이언트(5130)가 게임 조작을 수행하는 과정에서 다른 차량과의 충돌이 발생하여 생성되는 {vehicle crash}에 해당하는 게임 데이터를 게임 조작에 대한 피드백으로서 실감형 액션 수행부(5320)로 송신할 수 있다.
다른 예를 들어, 실감형 액션 게임이 대결 모드로 진행되고 사용자가 승리하는 경우, 게임 클라이언트(5130)는 {victory}에 해당하는 게임 데이터를 생성하여 실감형 액션 수행부(5320)로 송신할 수 있다.
실감형 액션 수행부(5320)는 게임 클라이언트(5130)로부터 수신된 피드백을 통해 모바일 단말(5110)에 의한 실감형 액션을 수행할 수 있다(단계 S5440).
보다 구체적으로, 실감형 액션 수행부(5320)는 게임 클라이언트(5130)로부터 센싱 데이터에 의한 게임 조작 결과로서 수신된 피드백을 모바일 단말(5110)의 통신부(5220)로 전송하여 실감형 액션 수단(5230)이 실감형 액션을 수행하도록 할 수 있다.
여기에서, 실감형 액션은 사용자가 시각, 청각 및 촉각 중 적어도 하나의 감각을 통해 게임에서 발생하는 상황을 인지할 수 있도록 하는 변화를 의미한다. 실감형 액션 수단(5230)은 모바일 단말(5110)에 포함되고, 실감형 액션을 수행할 수 있는 장치로서, 예를 들어, 모바일 단말(5110)의 화면, 진동 장치, 카메라 및 스피커 중 적어도 하나에 해당할 수 있다.
예를 들어, 실감형 액션 수행부(5320)가 게임 클라이언트(5130)로부터 {crash}에 해당하는 피드백을 수신하면, 실감형 액션 수행부(5320)는 모바일 단말(5110)의 실감형 액션 수단(5230)인 화면, 진동 장치 및 스피커를 통해 실감형 액션을 수행할 수 있다. 여기에서, 실감형 액션 수행부(5320)는 모바일 단말(5110)의 화면에 {충돌}에 해당하는 텍스트를 표시하고, 진동 센서가 {2초 진동}에 해당하는 액션을 수행하도록 하고, 스피커를 통해 {유리 깨짐}에 해당하는 사운드를 재생시킬 수 있다.
도 46는 본 발명의 게임 수행 과정 중에서 센싱 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계의 제5 실시예를 설명하는 흐름도이다.
제5 실시예에서, 게임 조작부(5310)는 모바일 단말(5110)에 있는 적어도 두 개의 센서들 각각으로부터 센싱 값을 수신할 수 있다. 보다 구체적으로, 모바일 단말(5110)이 적어도 두 개의 모션 센서들을 포함하고 있는 경우, 게임 조작부(5310)는 모바일 단말(5110)의 통신부(5220)를 통해 적어도 두 개의 모션 센서들 각각이 생성한 센싱 값을 수신할 수 있다.
제5 실시예에서, 모바일 단말(5110)이 동작 속도와 센싱 정확도 각각의 관점에서 반비례하도록 설계된 제1 센서(5211) 및 적어도 하나의 제2 센서(5212, 5213, ...)를 포함하고 있는 경우, 게임 조작부(5310)는 제1 센서(5211)을 통해 제1 센싱 값을 수신하고, 적어도 하나의 제2 센서를 통해 제1 센싱 값을 정정할 수 있다.
예를 들어, 게임 조작부(5310)는 제1 센서(5211)인 자이로스코프 센서에 의해 생성된 제1 센싱 값을 수신한다(단계 S5510). 여기에서, 자이로스코프 센서는 가속도 센서 및 지자계 센서와 비교하여 동작 속도가 높게 설계되어 있으므로, 게임 조작부(5310)는 제1 센싱 값을 가장 먼저 수신할 수 있다. 게임 조작부(5310)는 제1 센싱 값에 포함된 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터를 결정할 수 있다(단계 S5520).
여기에서, 게임 조작부(5310)는 제2 센서(5212)에 해당하는 가속도 센서로부터 제2 센싱 값을 수신할 수 있다(단계 S5530). 가속도 센서는 자이로스코프 센서보다 동작 속도는 느리지만 롤(Roll) 및 피치(Pitch)에 대한 정확도가 높게 설계되었으므로, 제1 센싱 값에서 롤(Roll) 및 피치(Pitch) 데이터를 가속도 센서에 의해 생성된 제2 센싱 데이터에 포함된 센싱 값으로 정정할 수 있다(단계 S5540).
여기에서, 게임 조작부(5310)는 다른 제2 센서(5213)에 해당하는 지자계 센서로부터 제2 센싱 값을 수신할 수 있다(단계 S5550). 지자계 센서는 요(Yaw) 에 대한 정확도가 높게 설계되었으므로, 제1 센싱 값에서, 요(Yaw) 데이터를 지자계 센서에 의해 생성된 제2 센싱 데이터에 포함된 센싱 값으로 정정할 수 있다(단계 S500).
즉, 게임 조작부(5310)는 사용자의 모션을 정확한 인식할 수 있도록 적어도 두 개의 모션 센서를 통해 센싱 값들을 수집하고, 동작 속도가 빠른 모션 센서에 의한 센싱 값을 기준으로 정확도가 높은 다른 모션 센서에 의한 센싱 값으로 정정할 수 있다. 이러한 과정을 모바일 단말(5110)이 아닌 게임 수행 서버(5120)에서 수행함으로써, 모바일 단말(5110)의 배터리 효율을 높을 수 있고, 데이터 처리 과정에서 발생할 수 있는 딜레이를 최소화하여 게임 수행 처리 속도를 향상시킬 수 있다.
게임 조작부(5310)는 모바일 단말(5110)로부터 수신된 센싱 데이터를 통해 게임 클라이언트(5130)에 의한 게임 조작을 수행한다. 즉, 게임 조작부(5310)는 사용자의 모션과 연관된 센싱 데이터를 게임 조작 신호로 변환하여 게임 클라이언트(5130)에 송신함으로써, 게임 클라이언트(5130)가 게임 조작을 수행하도록 한다.
도 47은 본 발명의 게임 수행 과정 중에서 피드백을 통해 모바일 단말에 의한 실감형 액션을 수행하는 단계의 제5 실시예를 설명하는 흐름도이다.
보다 구체적으로, 게임 조작부(5310)는 모바일 단말(5110)의 센서부(5210)에 의해 생성된 센싱 값을 포함하는 센싱 데이터를 통신부(5220)로부터 수신한다(단계 S5610).
제5 실시예에서, 게임 조작부(5310)는 모바일 단말(5110)로부터 적어도 두 개의 센싱 값들을 수신하여 센싱 데이터를 결정할 수 있다(단계 S5620).
여기에서, 게임 조작부(5310)는 센싱 데이터를 게임 조작을 위한 명령어로 변환할 수 있다(단계 S5630).
보다 구체적으로, 게임 조작부(5310)가 제1 센서(5211)를 통해 수신한 제1 센싱 값의 적어도 일부를 제2 센서(5212,5213)을 통해 수신한 제2 센싱 값으로 정정하여, 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터를 포함한 센싱 데이터를 결정할 수 있다. 여기에서, 게임 조작부(5310)는 센싱 데이터를 게임 클라이언트(5130)가 게임 조작 신호로서 인식할 수 있는 명령어로 변환할 수 있다. 예를 들어, 사용자의 모션을 나타내는 센싱 데이터를 게임 클라이언트(5130)가 게임 조작 신호로서 인식할 수 있는 {좌 이동}, {우 이동}, {발사}, {방어} 등의 명령어로 변환할 수 있다.
여기에서, 게임 조작부(5310)는 게임 조작을 위한 명령어를 게임 클라이언트(5130)로 송신할 수 있다(단계 S5640). 게임 클라이언트(5130)는 게임 조작을 위한 명령어를 통해 사용자의 모션에 따라 게임을 수행할 수 있다.
실감형 액션 수행부(5320)는 게임 클라이언트(5130)로부터 게임 조작에 따른 게임 조작 결과를 피드백으로서 수신한다(단계 S5650). 여기에서, 피드백은 게임 클라이언트(5130)에 의해 게임 수행 과정에서 발생하는 게임 조작에 따른 게임 조작 결과에 해당할 수 있다. 제5 실시예에서, 피드백은 게임 과정에서 발생하는 게임 데이터 중에서 모바일 단말(5110)을 통해 특정 실감형 액션을 수행할 수 있도록 미리 정의된 특정 이벤트 데이터에 해당할 수 있다.
제5 실시예에서, 실감형 액션 수행부(5320)는 게임 조작 결과에서 액션 디스크립터를 추출할 수 있다(단계 S5660). 여기에서, 액션 디스크립터는 게임 조작 결과에 포함되고 실감형 액션과 연관된 텍스트에 해당하고, 게임 진행 과정에서 발생하는 특정 상황을 나타내는 식별자로서 기능한다.
실감형 액션 수행부(5320)는 추출된 액션 디스크립터를 기초로 실감형 액션 명령어를 생성할 수 있다(단계 S5670).
실감형 액션 수행부(5320)는 생성된 실감형 액션 명령어를 모바일 단말(5110)로 송신하여 실감형 액션 수단(5230)을 통해 실감형 액션을 수행하도록 할 수 있다.
[제6 실시예]
본 발명의 제6 실시예는, 게임 수행 기술에 관한 것으로, 보다 상세하게는, 모바일 단말로부터 사용자에 의한 충격과 연관된 센싱 데이터를 수신하고, 수신된 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정하여 게임을 조작함으로써, 사용자가 모바일 단말에 직접적 또는 간접적으로 가하는 충격을 통해 게임을 조작하도록 할 수 있는 게임 수행 방법 및 이를 수행하는 게임 수행 서버에 관한 것이다.
이와 관련하여, 종래 통화 수단으로서만 활용될 수 있었던 모바일 단말은 스마트 폰의 등장으로 인해 인터넷, 음악, 영화, SNS(Social Network Service) 등 다양한 기능을 수행할 수 있는 휴대용 컴퓨팅 장치로서 활용되고 있다.
특히, 모바일 단말에 포함될 수 있는 사용자 모션 감지 센서(예를 들어, 자이로 센서)를 통해 사용자의 동작을 센싱함으로써, 사용자의 동작은 모바일의 단말의 입력 수단으로서 활용되는 기술이 등장하고 있다. 최근, 사용자의 동작을 기반으로 하는 게임 장치(예를 들어, 닌텐도 Wii)의 인기로 인해, 모바일 단말의 모션 감지 센서를 이용한 모바일 게임이 출시되고 있다.
모바일 단말을 게임 조작 장치로서 활용하는 게임 수행 방법에 관한 다양한 기술들이 제공되고 있다. 하기의 선행 특허들은 이와 관련된 기술을 제공한다.
한국공개특허 제1020120070638호는 스마트폰과 화면출력장치를 통해 출력되는 게임을 자이로스코프 센서 및 중력센서가 구비된 스마트폰을 좌우상하 및 전후를 포함한 자유로운 방향, 회전, 속도로 움직여 조작할 수 있도록 하는 모션컨트롤 방식의 스마트폰 어플리케이션 서비스 시스템 및 그 시스템에 의해 제공되는 게임방법에 관한 것으로, 온라인 접속을 이룬 사용자가 이용할 수 있는 무빙 게임을 복수개 등록시켜 서비스하는 무빙 게임 서비스 서버; 사용자의 조작에 따라 화면출력장치상에서 웹 어드레스를 입력하여 본사 웹사이트에서 리시버 프로그램을 다운로드 받아 저장시키고, 외부로부터 리시버 신호가 수신되는 경우 상기 리시버 프로그램을 통해 해석한 후 화면상에 IP 어드레스를 표출시키고, 외부로부터 입력되는 게임 조작신호에 응하여 화면상에 출력되는 게임이 진행되도록 하는 화면출력장치; 및 상기 앱스토어에 온라인 접속을 이룬 후 리시버 어플리케이션을 다운로드 받아 저장시킨 후 상기 화면출력장치로 리시버 신호를 송출시키고, 상기 화면출력장치의 화면상에 표출된 IP 어드레스를 입력하여 상기 화면출력장치와의 온라인 접속을 시도하며, 상기 화면출력장치와 온라인 접속이 이루어진 경우 상기 화면출력장치에 저장된 무빙 게임 중 원하는 무빙 게임을 선택하여 게임을 진행시키는 게임 조작신호를 출력하는 스마트 단말기로 이루어진 것 스마트폰 어플리케이션 서비스 기술에 관한 것이다.
상기 선행 기술은 모바일 단말의 자이로스코프 센서 및 중력 센서를 이용하여 사용자가 PC에서 수행되는 게임을 조작할 수 있는 기술을 제공하고 있다. 여기에서, 이러한 선행 기술은 모바일 단말을 단지 PC 게임 조작 수단으로서 활용하는 기술을 제공하는데 그치고 있다.
한국공개특허 제1020120017333호는 정지 또는 이동시에 사용자의 모션을 정확하게 인식할 수 있는 이동 단말기 및 그의 모션 인식 방법에 관한 것으로, 보다 구체적으로, 초기 기준점을 설정하여 저장하는 단계와; 사용자가 입력한 모션을 초기 기준점에 따라 인식하여 소정 어플리케이션을 실행하는 단계와; 상기 어플리케이션 실행 중에 방향변화를 갖는 특정 모션이 입력되면 초기 기준점에 대한 해당 모션의 변위를 계산하여 상기 초기 기준점을 보정하는 단계를 포함하여, 모션 입력시 기준위치(또는 방향)에 다른 변화량을 자동으로 체크하여 정확하게 사용자의 모션을 인식할 수 있으며, 특히 이동중에 지자기센서(자이로센서)와 가속센서를 이용하여 초기 기준값에 대한 벡터 변위를 자동으로 인식함으로써 사용자의 추가 설정없이 이동 단말기의 각종 기능을 제어할 수 있는 효과가 있다.
상기 선행 기술은 사용자의 모션을 정확하게 인식할 수 있는 이동 단말기를 제공하고 있다. 여기에서, 이러한 선행 기술은 사용자의 모션을 인식하여 이를 활용한 게임 수행 기술을 제공하고 있지 않으며, 단지 사용자에 의한 특정 모션의 변위를 계산하여 초기 기준값에 대한 보정 기술만을 제공하는데 그치고 있다.
즉, 이러한 선행 기술들은 모바일 단말을 게임 조작 장치로서 활용하는 과정에서 사용자의 모션을 이용하거나, 사용자의 모션을 정확하게 인식하는 기술을 제공하고 있다.
게임 기술 분야는 사용자에게 다양한 게임 수행 방법을 제공하여 사용자의 흥미를 유발시킴으로써, 기존 사용자에 대한 게임의 이탈을 방지하고 새로운 사용자의 유입을 이끌어 내는 것이 가장 중요한 기술적 목표이다. 현재, 모바일 단말을 통한 다양한 기술 분야가 제공되고 있지만, 모바일 단말에 직접적 또는 간접적 충격을 통하여 게임을 조작하고, 모바일 단말에 있는 센서들의 정확도 한계로 인한 오조작을 방지할 수 있는 기술이 제공되지 못하고 있는 실정이다.
본 발명의 제6 실시예는 모바일 단말로부터 사용자에 의한 충격과 연관된 센싱 데이터를 수신하고, 수신된 센싱 데이터에서 게임 클라이언트에 의해 처리될 수 있는 조작 데이터를 결정하여 게임을 조작함으로써, 사용자가 모바일 단말에 직접적 또는 간접적으로 가하는 충격을 통해 게임을 조작하도록 할 수 있는 게임 수행 방법 및 이를 수행하는 게임 수행 서버를 제공하고자 한다.
본 발명의 제6 실시예는 모바일 단말로부터 수신된 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정하여 게임을 조작함으로써, 게임 조작과 무관한 센싱 값을 제외하고 게임 조작과 연관된 센싱 값을 추출하여, 사용자에 의한 오작동을 방지할 수 있는 게임 수행 방법 및 이를 수행하는 게임 수행 서버를 제공하고자 한다.
본 발명의 제6 실시예는 모바일 단말에 있는 적어도 두 개의 모션 센서들 각각으로부터 모션 센싱 값을 수신하고 각 모션 센서의 동작 속도 및 센싱 정확도를 기초로 센싱 값을 가공하여 게임 클라이언트에 의한 게임 조작을 수행함으로써, 모바일 단말에 의한 데이터 처리를 최소화하여 게임 수행 시 발생할 수 있는 딜레이를 감소시키고, 모바일 단말에 대한 충격을 정확하게 인식하여 게임을 조작할 수 있는 게임 수행 방법 및 이를 수행하는 게임 수행 서버를 제공하고자 한다.
본 발명의 제6 실시예에서, 게임 수행 방법은 모바일 단말과 연결될 수 있는 게임 수행 서버에서 수행된다. 상기 게임 수행 방법은 상기 모바일 단말로부터 사용자에 의한 충격과 연관된 센싱 데이터를 수신하는 단계, 상기 수신된 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정하는 단계 및 상기 결정된 조작 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계를 포함한다.
본 발명의 제6 실시예 중에서, 게임 수행 서버는 모바일 단말과 연결될 수 있다. 상기 게임 수행 서버는 상기 모바일 단말로부터 사용자에 의한 충격과 연관된 센싱 데이터를 수신하는 센싱 데이터 수신부, 상기 수신된 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정하는 조작 데이터 결정부 및 상기 결정된 조작 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 게임 조작부를 포함한다.
본 발명의 제6 실시예 중에서, 모바일 단말과 연결될 수 있는 게임 수행 서버에서 수행되는 게임 수행 방법에 관한 컴퓨터 프로그램을 기록한 기록매체는 상기 모바일 단말로부터 사용자에 의한 충격과 연관된 센싱 데이터를 수신하는 단계, 상기 수신된 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정하는 단계 및 상기 결정된 조작 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계를 포함하는 게임 수행 방법에 관한 컴퓨터 프로그램을 기록한다.
본 발명의 제6 실시예에 따른 게임 수행 방법과 이와 관련된 기술들은 모바일 단말로부터 사용자에 의한 충격과 연관된 센싱 데이터를 수신하고, 수신된 센싱 데이터에서 게임 클라이언트에 의해 처리될 수 있는 조작 데이터를 결정하여 게임을 조작함으로써, 사용자가 모바일 단말에 직접적 또는 간접적으로 가하는 충격을 통해 게임을 조작하도록 할 수 있다.
본 발명의 제6 실시예에 따른 게임 수행 방법과 이와 관련된 기술들은 모바일 단말로부터 수신된 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정하여 게임을 조작함으로써, 게임 조작과 무관한 센싱 값을 제외하고 게임 조작과 연관된 센싱 값을 추출하여, 사용자에 의한 오작동을 방지할 수 있다.
본 발명의 제6 실시예에 따른 게임 수행 방법과 이와 관련된 기술들은 모바일 단말에 있는 적어도 두 개의 모션 센서들 각각으로부터 모션 센싱 값을 수신하고 각 모션 센서의 동작 속도 및 센싱 정확도를 기초로 센싱 값을 가공하여 게임 클라이언트에 의한 게임 조작을 수행함으로써, 모바일 단말에 의한 데이터 처리를 최소화하여 게임 수행 시 발생할 수 있는 딜레이를 감소시키고, 모바일 단말에 대한 충격을 정확하게 인식하여 게임을 조작할 수 있다.
도 48은 본 발명의 제6 실시예에 따른 게임 수행 시스템을 설명하는 도면이다.
도 48을 참조하면, 게임 수행 시스템(6100)은 모바일 단말(6110), 게임 수행 서버(6120) 및 게임 클라이언트(6130)를 포함한다.
모바일 단말(6110)은 사용자에 의한 충격을 센싱할 수 있는 휴대용 컴퓨팅 장치에 해당할 수 있다.
보다 구체적으로, 사용자가 모바일 단말(6110)에 직접적 또는 간접적으로 충격을 가하면, 모바일 단말(6110)은 해당 충격으로 인해 발생할 수 있는 물리적 현상을 센싱할 수 있는 적어도 하나의 센서를 포함하는 컴퓨팅 장치에 해당할 수 있다.
예를 들어, 모바일 단말(6110)에 사용자에 의해 직접적으로 가해지는 충격은 사용자가 손가락, 손바닥, 주먹, 막대기 등으로 모바일 단말(6110)에 직접적인 접촉을 통한 충격에 해당할 수 있다. 다른 예를 들어, 모바일 단말(6110)에 사용자에 의해 간접적으로 가해지는 충격은 모바일 단말(6110)을 바닥, 책상 등에 내려 놓고 사용자가 손가락, 손바닥, 주먹, 막대기 등으로 바닥, 책상 등을 내려침으로써 모바일 단말(6110)에 충격 전달 매질(여기에서는 바닥, 책상 등)을 통해 2차적으로 가해지는 충격에 해당할 수 있다.
여기에서, 충격으로 인해 발생할 수 있는 물리적 현상은 모바일 단말(6110)의 모션(움직임) 및 해당 충격으로 인해 발생된 소리 중 적어도 하나에 해당할 수 있다.
일 실시예에서, 모바일 단말(6110)은 스마트 폰(Smart Phone) 또는 태블릿 PC(Tablet Personal Computer)에 해당할 수 있다. 여기에서, 모바일 단말(6110)은 모션 센서 및 사운드 센서 중 적어도 하나를 포함할 수 있다.
예를 들어, 사용자가 모바일 단말(6110)에 직접적으로 충격을 가하는 경우, 모바일 단말(6110)은 모션 센서(예를 들어, 자이로스코프 센서)를 통해 해당 충격에 대한 모바일 단말(6110)의 모션을 센싱하고, 사운드 센서(예를 들어, 마이크)를 통해 해당 충격에 대한 사운드를 센싱할 수 있다.
다른 예를 들어, 사용자가 탁자 위에 모바일 단말(6110)을 올려놓고 모바일 단말(6110)의 인근에 간접적으로 충격(예를 들어, 손바닥으로 내려침)을 가하는 경우, 모바일 단말(6110)은 모션 센서를 통해 해당 충격에 대한 모바일 단말(6110)의 모션(예를 들어, 상하 진동)을 센싱하고, 사운드 센서를 통해 해당 충격에 대한 사운드를 센싱할 수 있다.
일 실시예에서, 모션 센서는 가속도 센서, 각속도 센서 및 지자계 센서 중 적어도 하나를 포함할 수 있다. 보다 구체적으로, 가속도 센서는 X, Y, Z축에 대한 정적 및 동적 가속도를 측정하여 센싱 값을 데이터로서 생성할 수 있는 장치에 해당한다. 또한, 각속도 센서는 X, Y, Z축에 대한 회전 각속도를 측정하여 센싱 값을 데이터로서 생성할 수 있는 장치에 해당할 수 있고, 예를 들어, 자이로스코프(Gyroscope) 센서에 해당할 수 있다. 지자계 센서는 절대적인 방위 정보를 데이터로서 생성할 수 있는 장치에 해당한다.
여기에서, 모센 센서는 모바일 단말(6110)에 직접적 또는 간접적 충격이 가해지면 모바일 단말(6110)의 움직임에 대한 모션 센싱 값을 생성할 수 있다.
일 실시예에서, 사운드 센서는 마이크에 해당할 수 있다. 여기에서, 사운드 센서는 모바일 단말(6110) 인근에서 발생하는 소리에 대한 사운드 센싱 값을 생성할 수 있다.
모바일 단말(6110)은 게임 수행 서버(6120)와 네트워크를 통해 연결될 수 있다. 일 실시예에서, 모바일 단말(6110)은 유선 또는 무선 네트워크를 통해 게임 수행 서버(6120)와 연결될 수 있다. 일 실시예에서, 모바일 단말(6110)이 무선 네트워크를 통해 게임 수행 서버(6120)와 연결되는 경우, 3G 망, 무선랜(wifi), 블루투스(blue tooth) 및 적외선 통신망(IrDA) 중 하나를 통해 연결될 수 있다.
모바일 단말(6110)은 도 49를 참조하여 설명한다.
게임 수행 서버(6120)는 모바일 단말(6110) 및 게임 클라이언트 각각과 네트워크를 통해 연결될 수 있는 컴퓨팅 장치에 해당한다. 일 실시예에서, 게임 수행 서버(6120)는 개인용 컴퓨터(Personal Computer) 또는 모바일 단말(6110)에 포함될 수 있다.
일 실시예에서, 게임 수행 서버(6120)는 PC 또는 스마트폰에 포함되어 구현될 수 있다.
예를 들어, 도 53에서, 게임 수행 서버(6120)가 PC에 포함되어 구현되는 경우, 게임 수행 서버(6120)는 모바일 단말(6110)과 무선 네트워크를 통해 연결되고, PC에 설치된 게임 클라이언트(예를 들어, 동전 넘기기 게임 프로그램)와 네트워크를 통해 연결될 수 있다. 즉, 사용자가 모바일 단말(6110)에 직접적 또는 간접적 충격을 가하여 PC 게임을 조작할 수 있다.
다른 예를 들어, 게임 수행 서버(6120) 및 게임 클라이언트(6130)가 모바일 단말(6110)에 포함되어 구현되는 경우, 모바일 단말(6110)은 이하 도 50에서 설명하는 게임 수행 서버(6120)의 각 구성요소를 포함하고, 미리 설치된 게임 클라이언트(예를 들어, 동전 넘기기 게임 프로그램)를 실행할 수 있다. 즉, 사용자가 모바일 단말(6110)에 직접적 또는 간접적 충격을 가하여 모바일 단말(6110)에 설치된 게임 어플리케이션을 조작할 수 있다.
게임 수행 서버(6120)는 도 50을 참조하여 설명한다.
게임 클라이언트(6130)는 게임 수행 장치에서 게임을 구동하고 사용자에 의해 입력된 신호를 통해 게임을 조작하며 그 조작 결과를 출력 수단을 통해 사용자에게 제공할 수 있는 게임 제공 수단이다. 일 실시예에서, 게임 클라이언트(6130)는 게임 소프트웨어에 해당할 수 있다.
여기에서, 게임 수행 장치가 PC에 해당하는 경우, 게임 클라이언트(6130)(예를 들어, 동전 뒤집기 게임 프로그램)는 모바일 단말(6110)로부터 수신된 센싱 데이터를 통해 게임을 조작하고, 그 조작 결과를 출력 수단인 모니터를 통해 출력할 수 있다.
일 실시예에서, 게임 클라이언트(6130)는 게임 구동을 위한 게임 엔진의 적어도 일부를 적재할 수 있다. 예를 들어, 게임을 구동하는데 필요한 소정의 연산 중 적어도 일부는 게임 클라이언트(6130)에서 수행될 수 있다.
게임 클라이언트(6130)는 게임 수행 서버(6120)와 네트워크를 통해 연결될 수 있다. 일 실시예에서, 게임 클라이언트(6130)는 게임 수행 서버(6120)와 하나의 컴퓨팅 장치 내에서 구현될 수 있다. 예를 들어, 게임 수행 서버(6120)가 PC에 포함되어 구현되는 경우, 게임 클라이언트(6130)는 PC의 저장 장치에 포함되어 구현될 수 있다.
도 49는 도 48에 있는 모바일 단말을 설명하는 블록도이다.
도 49를 참조하면, 모바일 단말(6110)은 센서부(6210), 통신부(6220), 실감형 액션 수단(6230) 및 제어부(6240)를 포함한다.
센서부(6210)는 사용자에 의한 충격을 센싱한다. 보다 구체적으로, 센서부(6210)는 모바일 단말(6110)에 포함 또는 부착되어 사용자에 의한 충격에 해당하는 센싱 값을 생성할 수 있다. 여기에서, 센서부(6210)는 모바일 단말(6110)에 직접적 또는 간접적으로 가해지는 충격에 대한 모바일 단말(6110)의 모션(움직임) 및 해당 충격으로 인해 발생된 소리 중 적어도 하나에 해당할 수 있다.
일 실시예에서, 센서부(6210)는 모션 센서(6211) 및 사운드 센서(6212) 중 적어도 하나를 포함할 수 있다.
우선, 모션 센서(6211)는 모바일 단말(6110)에 직접적 또는 간적접으로 가해지는 충격에 해당하는 모션 센싱 값을 생성할 수 있다. 예를 들어, 사용자가 모바일 단말(6110)에 직접적으로 충격을 가하는 경우, 모션 센서(6211)는 모바일 단말(6110)의 움직임에 해당하는 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터를 생성하거나, 모바일 단말(6110)의 움직임에 해당하는 크기 및 방향을 포함하는 백터 데이터를 생성할 수 있다.
일 실시예에서, 모션 센서(6211)는 가속도 센서, 각속도 센서 및 지자계 센서 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 모션 센서(6211)는 적어도 두 개의 모션 센서들을 포함할 수 있다. 여기에서, 모션 센서(6211)는 가속도 센서, 각속도 센서 및 지자계 센서 중 적어도 두 개를 포함할 수 있다.
일 실시예에서, 모션 센서(6211)는 제1 모션 센서 및 적어도 하나의 제2 모션 센서를 포함할 수 있다. 여기에서, 제1 모션 센서 및 적어도 하나의 제2 모션 센서는 동작 속도와 센싱 정확도 각각의 관점에서 반비례하도록 설계된 것에 해당할 수 있다.
보다 구체적으로, 제1 모션 센서는 제2 모션 센서와 비교하여 동작 속도가 빠르게 설계된 모션 센서에 해당할 수 있고, 제2 모션 센서는 제1 모션 센서와 비교하여 센싱 정확도가 높게 설계된 모션 센서에 해당할 수 있다. 여기에서, 동작 속도는 모바일 단말(6110)의 모션을 인지하여 모션 센싱 값을 생성하는 시간을 의미하고, 센싱 정확도는 모바일 단말(6110)의 모션을 인지할 수 있는 오차 범위 또는 모션 센싱 값의 노이즈 크기를 의미할 수 있다. 즉, 제1 모션 센서는 센서부(6210)에 포함된 모션 센서들 중 동작 속도가 가장 빠른 값을 가지는 모션 센서에 해당하고, 제2 모션 센서는 센서부(6210)에 포함된 모션 센서들 중 제1 모션 센서보다 높은 센싱 정확도를 가지는 모션 센서에 해당할 수 있다.
일 실시예에서, 제1 모션 센서는 자이로스코프 센서에 해당하고, 제2 센서는 가속도 센서 및 지자계 센서에 해당할 수 있다. 즉, 가장 높은 동작 속도를 가지는 자이로스코프 센서가 제1 모션 센서에 해당하고, 제1 모션 센서보다 낮은 동작 속도를 가지되, 높은 센싱 정확도를 가지는 가속도 센서 및 지자계 센서가 제2 모션 센서에 해당할 수 있다.
다음으로, 사운드 센서(6212)는 모바일 단말(6110)에 직접적 또는 간적접으로 가해지는 충격에 해당하는 사운드 센싱 값을 생성할 수 있다. 일 실시에에서, 사운드 센서(6212)는 모바일 단말(6110)에 포함된 마이크에 해당할 수 있다.
예를 들어, 사용자가 모바일 단말(6110)에 직접적으로 충격을 가하는 경우, 사운드 센서(6212)는 모바일 단말(6110)의 인근에서 발생하는 소리에 해당하는 사운드 센싱 값을 생성할 수 있다. 예를 들어, 사용자가 모바일 단말(6110)을 책상 위에 올려 놓고 손바닥으로 책상을 내려침으로써 모바일 단말(6110)에 간접적으로 충격을 가하는 경우, 사운드 센서(6212)는 사용자의 손바닥과 책상의 충돌로 인해 발생하는 소리를 센싱할 수 있다. 여기에서, 사운드 센서(6212)는 해당 충격에 의한 소리의 크기 및 주파수 중 적어도 하나를 포함하는 사운드 센싱 값을 생성할 수 있다.
통신부(6220)는 센서부(6210)에 의해 생성된 센싱 값을 게임 수행 서버(6120)로 송신할 수 있고, 게임 수행 서버(6120)로부터 게임 조작에 대한 피드백을 수신할 수 있다. 이와 관련된 내용은 도 50을 통해 보다 구체적으로 설명한다.
실감형 액션 수단(6230)은 게임 수행 서버(6120)로부터 수신된 게임 조작에 대한 피드백을 수행하여 사용자에게 실감형 액션을 제공하는 수단에 해당한다. 일 실시예에서, 실감형 액션 수단(6230)은 디스플레이, 진동 센서, 카메라 및 스피커 중 적어도 하나를 포함할 수 있다. 즉, 실감형 액션 수단(6230)은 게임 진행 과정에서 발생하는 특정 이벤트에 대한 피드백을 수행할 수 있는 장치로서, 모바일 단말(6110)의 화면, 진동 장치, 카메라 및 스피커 중 적어도 하나에 해당할 수 있다. 이와 관련된 내용은 도 50을 참조하여 보다 구체적으로 설명한다.
제어부(6240)는 센서부(6210), 통신부(6220) 및 실감형 액션 수단(6230)의 동작 및 데이터의 흐름을 제어한다.
도 50은 도 48에 있는 게임 수행 서버를 설명하는 블록도이다.
도 50을 참조하면, 게임 수행 서버(6120)는 센싱 데이터 수신부(6310), 조작 데이터 결정부(6320), 게임 조작부(6330), 실감형 액션 수행부(6340) 및 제어부(6350)를 포함한다.
센싱 데이터 수신부(6310)는 모바일 단말(6110)로부터 사용자에 의한 충격과 연관된 센싱 데이터를 수신한다.
보다 구체적으로, 센싱 데이터 수신부(6310)는 모바일 단말(6110)의 센싱부(6210)에 의해 생성된 센싱 값을 포함하는 센싱 데이터를 통신부(6220)로부터 수신한다. 여기에서, 센싱 데이터는 사용자에 의해 모바일 단말(6110)에 직접적 또는 간접적으로 가해지는 충격에 대한 센싱 값을 포함할 수 있다.
일 실시예에서, 센싱 데이터 수신부(6310)는 모바일 단말(6110)에 있는 적어도 하나의 센서를 통해 센싱된 직접적 또는 간접적 충격에 대한 센싱 값을 수신할 수 있다. 여기에서, 모바일 단말(6110)은 모션 센서(6211) 및 사운드 센서(6212) 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 센싱 데이터 수신부(6310)는 모바일 단말(6110)에 있는 모션 센서(6211)에 의해 센싱된 모션 센싱 값 및 사운드 센서(6212)에 의해 센싱된 사운드 센싱 값 중 적어도 하나를 수신할 수 있다.
본 발명에 의한 게임 수행 과정에 따라 동전 뒤집기 게임이 진행되는 경우를 예시하여 설명한다. 사용자가 모바일 단말(6110)을 책상 위에 올려놓고 책상을 손바닥으려 내려침으로써 모바일 단말(6110)에 간접적인 충격을 가하면, 모바일 단말(6110)의 모션 센서(6211)는 해당 충격에 따른 모바일 단말(6110)의 연직 방향의 움직임을 센싱하여 모션 센싱 값을 생성할 수 있다. 여기에서, 사운드 센서(6212)는 책상과 사용자의 손바닥의 충돌에 의한 소리를 센싱하여 사운드 센싱 값을 생성할 수 있다. 센싱 데이터 수신부(6310)는 모바일 단말(6110)의 통신부(6220)를 통해 모션 센싱 값 및 사운드 센싱 값 중 적어도 하나를 포함하는 센싱 데이터를 수신할 수 있다.
일 실시예에서, 센싱 데이터 수신부(6310)는 모바일 단말(6110)에 있는 적어도 두 개의 모션 센서(6211)들 각각으로부터 생성된 모션 센싱 값을 수신할 수 있다. 여기에서, 모션 센서(6211)는 가속도 센서, 각속도 센서 및 지자계 센서 중 적어도 두 개를 포함할 수 있다.
일 실시예에서, 모바일 단말(6110)이 동작 속도와 센싱 정확도 각각의 관점에서 반비례하도록 설계된 제1 모션 센서 및 적어도 하나의 제2 모션 센서를 포함하고 있는 경우, 센싱 데이터 수신부(6310)는 제1 모션 센서를 통해 제1 센싱 값을 수신하고, 적어도 하나의 제2 모션 센서를 통해 제2 모션 센싱 값을 수신하여 제1 모션 센싱 값을 정정할 수 있다.
이하, 본 발명의 제6 실시예에 따른 게임 수행 과정에 대한 설명을 위해 모바일 단말(6110)에 포함된 제1 모션 센서는 자이로스코프 센서에 해당하고, 제2 모션 센서는 가속도 센서 및 지자계 센서에 해당하는 것을 예시로서 설명한다. 한편, 이러한 설명은 본 발명의 권리 범위를 한정하고자 하는 것은 아니다.
예를 들어, 센싱 데이터 수신부(6310)는 제1 모션 센서인 자이로스코프 센서에 의해 생성된 제1 모션 센싱 값을 수신한다. 여기에서, 자이로스코프 센서는 가속도 센서 및 지자계 센서와 비교하여 동작 속도가 높게 설계되어 있으므로, 센싱 데이터 수신부(6310)는 제1 모션 센싱 값을 가장 먼저 수신할 수 있다. 센싱 데이터 수신부(6310)는 제1 모션 센싱 값에 포함된 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터를 수신할 수 있다.
여기에서, 센싱 데이터 수신부(6310)는 제2 모션 센서에 해당하는 가속도 센서 및 지자계 센서로부터 생성된 제2 모션 센싱 값을 수신할 수 있다. 여기에서, 가속도 센서는 자이로스코프 센서보다 동작 속도는 느리지만 롤(Roll) 및 피치(Pitch)에 대한 정확도가 높게 설계되었으므로, 제1 모션 센싱 값에서 롤(Roll) 및 피치(Pitch) 데이터를 가속도 센서에 의해 생성된 제2 모션 센싱 데이터에 포함된 롤(Roll) 및 피치(Pitch) 데이터로 정정할 수 있다. 또한, 지자계 센서는 요(Yaw) 에 대한 정확도가 높게 설계되었으므로, 제1 모션 센싱 값에서, 요(Yaw) 데이터를 지자계 센서에 의해 생성된 제2 모션 센싱 값에 포함된 요(Yaw) 데이터로 정정할 수 있다.
즉, 센싱 데이터 수신부(6310)는 모바일 단말(6110)에 대한 충격을 정확한 인식할 수 있도록 적어도 두 개의 모션 센서(6211)를 통해 모션 센싱 값들을 수집하고, 동작 속도가 빠른 모션 센서에 의한 모션 센싱 값을 기준으로 정확도가 높은 다른 모션 센서에 의한 모션 센싱 값으로 정정할 수 있다. 이러한 과정을 모바일 단말(6110)이 아닌 게임 수행 서버(6120)에서 수행함으로써, 모바일 단말(6110)의 배터리 효율을 높을 수 있고, 게임 수행 중 데이터 처리 과정에서 발생할 수 있는 딜레이를 최소화하여 게임 수행 처리 속도를 향상시킬 수 있다.
조작 데이터 결정부(6320)는 모바일 단말(6110)로부터 수신된 센싱 데이터에서 충격 데이터에 해당하는 조작 데이터를 결정한다. 여기에서, 충격 데이터는 센싱 데이터 중에서 게임 조작과 연관된 센싱 값을 추출하기 위한 기 설정된 특정 조건을 포함하고 있는 데이터에 해당할 수 있다. 조작 데이터는 게임 클라이언트가 인식하여 게임 상의 특정 대상을 조작할 수 있는 데이터에 해당할 수 있다.
게임 수행 서버(6120)가 동전 뒤집기 게임을 수행하는 경우를 예시로 설명한다. 사용자가 모바일 단말(6110)을 책상 위에 내려 놓고 책상을 손바닥으로 내려치는 경우, 조작 데이터 결정부(6320)는 모바일 단말(6110)로부터 지수함수적으로 감소하는 연직방향(z축)의 사인함수 파형에 해당하는 모션 센싱 값을 수신할 수 있다. 즉, 조작 데이터 결정부(6320)는 상하 진동 운동에 대한 모바일 단말(6110)의 움직임에 해당하는 모션 센싱 값을 수신할 수 있다.
여기에서, 조작 데이터 결정부(6320)는 동전 뒤집기 게임에서 동전을 뒤집기 위해 필요한 조작만을 추출하기 위하여 미리 설정된 충격 데이터에 해당하는 모션 센싱 값을 조작 데이터로서 결정할 수 있다. 즉, 모바일 단말(6110)의 상하 진동 모션 중에서 최초의 상당 방향의 진동만이 동전을 뒤집을 수 있는 조작과 연관된 모션이기 때문에, 최초 최대값의 상단 방향의 모션 센싱 값을 충격 데이터로서 미리 설정하고, 조작 데이터 결정부(6320)는 수신된 센싱 데이터에서 충격 데이터에 해당하는 센싱 값을 조작 데이터로서 결정할 수 있다.
여기에서, 충격 데이터는 게임 상에서 특정 대상(동전)을 정교하게 조작(뒤집기)하기 위하여 다양하게 설정될 수 있다. 예를 들어, 모바일 단말(6110)의 주변 환경에 따라 충격을 가하더라도 모션 센서(6211)의 성능에 따라 감지하지 못할 수 있으므로, 충격 데이터는 연직 상단 방향의 모션 센싱 값 및 특정 주파수의 사운드 센싱 값(예를 들어, 책상과 손바닥의 충돌에 의한 일반적인 주파수 대역)으로서 설정될 수 있다.
다른 예를 들어, 게임 수행 서버(6120)가 딱지 넘기기 게임을 수행하는 경우를 예시로 설명한다. 사용자가 모바일 단말(6110)을 책상 위에 놓고 사운드 센서(예를 들어, 마이크) 인근에 "파"라고 외치는 경우, 조작 데이터 결정부(6320)는 모바일 단말(6110)로부터 해당 소리에 대한 사운드 센싱 값을 수신할 수 있다.
여기에서, 조작 데이터 결정부(6320)는 딱지 넘기기 게임에서 딱지를 넘기기 위해 필요한 조작만을 추출하기 위하여 미리 설정된 충격 데이터에 해당하는 모션 센싱 값을 조작 데이터로서 결정할 수 있다. 즉, 최대 크기의 사운드에 해당하는 사운드 센싱 값을 충격 데이터로서 미리 설정하고, 조작 데이터 결정부(6320)는 수신된 센싱 데이터에서 충격 데이터에 해당하는 센싱 값을 조작 데이터로서 결정할 수 있다.
여기에서, 충격 데이터는 게임 상에서 특정 대상(딱지)을 정교하게 조작(넘기기)하기 위하여 다양하게 설정될 수 있다. 예를 들어, 게임 조작을 위한 사용자에 의한 소리를 정확하게 추출하기 위하여, 충격 데이터는 특정 범위의 사운드 크기 및 사람의 육성 중 파열음에 해당하는 주파수 영역으로서 설정될 수 있다.
즉, 조작 데이터 결정부(6320)는 모바일 단말(6110)로부터 수신된 센싱 데이터 중에서 충격 데이터에 해당하는 센싱 값을 추출하고, 추출된 센싱 값을 게임 조작을 위한 조작 데이터로서 결정할 수 있다.
일 실시예에서, 충격 데이터는 백터 패턴 및 사운드 패턴 중 적어도 하나를 포함할 수 있다. 여기에서, 백터 패턴은 모션 센싱 값에 대한 특정 크기 및 방향을 포함하고, 사운드 패턴은 사운드 센싱 값에 대한 특정 크기 및 주파수를 포함할 수 있다.
예를 들어, 충격 데이터는 3차원의 공간(x,y,z 축)에서 연직 상단 방향(z축)으로 크기 3 이상의 모션 센싱 값에 해당하는 [0,0,3]의 데이터로서 구현될 수 있다. 다른 예를 들어, 충격 데이터는 사람의 육성 중 파열음에 해당하는 주파수 및 3db에 해당하는 사운드의 크기에 해당하는 [100hz, 3db]의 데이터로서 구현될 수 있다.
즉, 백터 패턴 및 사운드 패턴은 게임 상에서 특정 대상을 조작하기 위해 모바일 단말(6110)에 가해지는 충격에서 게임 조작과 연관된 모바일 단말(6110)의 모션 및 충격에 의한 사운드를 미리 설정해 놓은 패턴에 해당하는 데이터를 의미한다.
일 실시예에서, 백터 패턴은 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터에 대한 백터 패턴으로 정의될 수 있다. 즉, 백터 패턴은 3차원 공간에 대한 백터 뿐만 아니라, x,y 및 z 축의 각 회전 각속도에 대한 특정 범위로서 설정될 수 있다.
일 실시예에서, 백터 패턴은 모션 센싱 값과 연관되고 기 설정된 범위의 모션 크기 및 모션 방향 중 적어도 하나를 포함할 수 있다. 예를 들어, 백터 패턴은 3차원의 공간(x,y,z 축)에서 연직 상단 방향(z축)으로 크기 3 이상 5 이하의 모션 센싱 값에 해당하는 [0,0,3_5]의 데이터로서 구현될 수 있다.
일 실시예에서, 사운드 패턴은 사운드 센싱 값과 연관되고 기 설정된 범위의 사운드 크기 및 주파수 중 적어도 하나를 포함할 수 있다. 예를 들어, 사운드 패턴은 사람의 육성 중 파열음에 해당하는 주파수 영역 범위 및 3~5 db에 해당하는 사운드의 크기에 해당하는 [100_150hz, 3_5db]의 데이터로서 구현될 수 있다.
즉, 조작 데이터 결정부(6320)는 센싱 데이터에서 충격 데이터에 포함된 백터 패턴 및 사운드 패턴 중 적어도 하나에 해당하는 센싱 값을 추출하여 게임 조작을 위한 조작 데이터로 결정할 수 있다.
일 실시예에서, 조작 데이터 결정부(6320)는 모바일 단말(6110)로부터 센싱 데이터를 수신하면, 센싱 데이터를 기초로 기 설정된 백터 패턴 및 사운드 패턴 중 적어도 하나를 정정할 수 있다. 이러한 과정은 게임 실행 시점의 주변 환경에 따라 모바일 단말(6110)에 대한 충격에 해당하는 모바일 단말(6110)의 모션 및 해당 충격으로 인한 소리가 변화할 수 있기 때문에, 게임을 수행하기 전에 정교한 게임 조작을 위하여 충격 데이터를 재설정하기 위함이다.
예를 들어, 사용자가 탄성이 높은 고무판에 모바일 단말(6110)을 올려놓고 게임을 수행하고자 하는 경우, 사용자가 게임 시작 전 환경 설정 단계에서 준비 단계로서 고무판을 손바닥으로 내려침으로써 모바일 단말(6110)에 간접적으로 충격을 가할 수 있다. 여기에서, 조작 데이터 결정부(6320)는 모바일 단말(6110)로부터 수신된 센싱 데이터를 기초로 미리 설정된 백터 패턴 및 사운드 패턴에 해당하는 센싱 값을 추출하지 못하는 경우, 백터 패턴에 포함된 특정 범위의 모션 크기, 모션 방향 및 사운드 패턴에 포함된 특정 범위의 사운드 크기 및 주파수 중 적어도 하나를 변경할 수 있다.
일 실시예에서, 조작 데이터 결정부(6320)는 센싱 데이터에서 충격 데이터에 해당하는 센싱 값을 추출하고, 추출된 센싱 값을 기초로 게임 클라이언트에 의해 처리될 수 있는 게임 조작 명령어를 생성할 수 있다. 여기에서, 게임 조작 명령어는 게임 상에서 특정 대상을 조작할 수 있는 게임 조작 백터와 연관될 수 있다.
예를 들어, 패턴 백터가 [0,0,3]에 해당하여 조작 데이터 결정부(6320)가 센싱 데이터 중에서 [0,0,5]에 해당하는 모션 센싱 값을 추출하는 경우, 조작 데이터 결정부(6320)는 게임 클라이언트가 인식할 수 있고 게임 상에서 연직 상단 방향의 크기 5에 해당하는 게임 조작 백터와 연관된 [up, 5]에 해당하는 게임 조작 명령어를 생성할 수 있다. 여기에서, 게임 클라이언트는 게임 조작 명령어를 통해 게임 상에서 동전을 상단 방향으로 크기 5의 힘을 가하여 동전을 뒤집을 수 있다.
여기에서, 본 발명의 이해를 돕기 위하여 3차원 공간 중 z축에 해당하는 백터 패턴 및 게임 조작 백터를 예시로 하여 설명하였으나, 본 발명의 기술분야에 속하는 통상의 기술자는 이러한 설명을 통하여 3차원 공간에서 백터 패턴 및 게임 조작 백터의 구현이 가능한 것으로 충분히 이해할 수 있을 것이다. 즉, 게임에 따라 백터 패턴 및 게임 조작 백터는 다양하게 설정될 수 있으며, 예를 들어, 게임 수행 서버(6120)가 권투 게임을 수행하는 경우, 백터 패턴 및 게임 조작 백터는 3차원 공간 중 x,y,z 축에 대하여 다양하게 조합되어 설정될 수 있다.
게임 조작부(6330)는 조작 데이터 결정부(6320)에 의해 결정된 조작 데이터를 통하여 게임 클라이언트(6130)에 의한 게임 조작을 수행한다.
보다 구체적으로, 조작 데이터 결정부(6320)가 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정한다. 여기에서, 조작 데이터는 게임 클라이언트(6130)가 인식할 수 있고 게임 상에서 특정 대상을 조작할 수 있는 명령어에 해당한다. 게임 조작부(6330)는 게임 클라이언트(6130)로 조작 데이터를 전송하여 게임 클라이언트(6130)가 특정 대상을 조작하도록 할 수 있다.
결과적으로, 사용자가 모바일 단말(6110)에 직접적 또는 간접적으로 충격을 가하면, 해당 충격에 대한 센싱 값을 통해 게임을 조작할 수 있다.
실감형 액션 수행부(6340)는 게임 클라이언트(6130)로부터 게임 과정에서 발생하는 특정 이벤트 데이터를 피드백으로서 수신하고, 피드백을 통해 모바일 단말(6110)에 포함된 실감형 액션 수단(6230)을 통해 실감형 액션을 수행할 수 있다. 즉, 실감형 액션 수행부(6340)는 모바일 단말(6110)을 게임 조작을 위한 수단 및 게임 조작에 대한 피드백 장치로서 활용할 수 있다.
예를 들어, 게임 수행 서버(6120)가 동전 뒤집기 게임에 해당하는 경우, 게임 조작부(6330)가 조작 데이터를 게임 클라이언트(6130)로 전송하여 게임 상에서 동전이 뒤집힌 경우, 실감형 액션 수행부(6340)는 게임 클라이언트(6130)로부터 [동전 뒤집힘]에 해당하는 이벤트 데이터를 피드백으로서 수신할 수 있다. 여기에서, 실감형 액션 수행부(6340)는 실감형 액션 수단(6230)인 [진동 장치]가 진동하도록 할 수 있는 {진동, 3초}에 해당하는 데이터를 생성하여 모바일 단말(6110)로 송신할 수 있다. 즉, 실감형 액션 수행부(6340)는 게임 진행 과정에서 발생하는 특정 이벤트에 대하여 모바일 단말(6110)이 특정 동작을 수행하도록 함으로써, 사용자가 실제 동전을 뒤집은 것과 같이 느끼도록 할 수 있다.
다른 예를 들어, 게임 상에서 사용자가 최고점을 획득한 경우, 실감형 액션 수행부(6340)는 [best point]에 해당하는 이벤트 데이터를 피드백으로서 수신할 수 있다. 여기에서, 실감형 액션 수행부(6340)는 모바일 단말(6110)의 디스플레이 장치를 통해 {축하}에 해당하는 텍스트를 출력하도록 하고, 스피커를 통해 {축하 음악}에 해당하는 사운드를 재생시킬 수 있다. 일 실시예에서, 실감형 액션 수행부(6340)는 모바일 단말(6110)에 설치된 SNS 어플리케이션을 통해 사용자의 친구(예를 들어, 팔로어)에게 사용자의 득점 점수를 전송할 수 있다.
제어부는 센싱 데이터 수신부(6310), 조작 데이터 결정부(6320), 게임 조작부(6330) 및 개인화 설정 프로파일 송신부(250)의 동작 및 데이터의 흐름을 제어한다.
도 51는 본 발명에 따른 게임 수행 과정을 설명하는 흐름도이다.
센싱 데이터 수신부(6310)는 모바일 단말(6110)로부터 사용자에 의한 충격과 연관된 센싱 데이터를 수신한다(단계 S6410).
보다 구체적으로, 센싱 데이터 수신부(6310)는 모바일 단말(6110)의 센싱부(6210)에 의해 생성된 센싱 값을 포함하는 센싱 데이터를 통신부(6220)로부터 수신한다. 여기에서, 센싱 데이터는 사용자에 의해 모바일 단말(6110)에 직접적 또는 간접적으로 가해지는 충격에 대한 센싱 값을 포함할 수 있다.
일 실시예에서, 센싱 데이터 수신부(6310)는 모바일 단말(6110)에 있는 적어도 하나의 센서를 통해 센싱된 직접적 또는 간접적 충격에 대한 센싱 값을 수신할 수 있다. 여기에서, 모바일 단말(6110)은 모션 센서(6211) 및 사운드 센서(6212) 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 센싱 데이터 수신부(6310)는 모바일 단말(6110)에 있는 모션 센서(6211)에 의해 센싱된 모션 센싱 값 및 사운드 센서(6212)에 의해 센싱된 사운드 센싱 값 중 적어도 하나를 수신할 수 있다.
일 실시예에서, 센싱 데이터 수신부(6310)는 모바일 단말(6110)에 있는 적어도 두 개의 모션 센서(6211)들 각각으로부터 생성된 모션 센싱 값을 수신할 수 있다. 여기에서, 모션 센서(6211)는 가속도 센서, 각속도 센서 및 지자계 센서 중 적어도 두 개를 포함할 수 있다.
일 실시예에서, 모바일 단말(6110)이 동작 속도와 센싱 정확도 각각의 관점에서 반비례하도록 설계된 제1 모션 센서 및 적어도 하나의 제2 모션 센서를 포함하고 있는 경우, 센싱 데이터 수신부(6310)는 제1 모션 센서를 통해 제1 센싱 값을 수신하고, 적어도 하나의 제2 모션 센서를 통해 제2 모션 센싱 값을 수신하여 제1 모션 센싱 값을 정정할 수 있다.
조작 데이터 결정부(6320)는 모바일 단말(6110)로부터 수신된 센싱 데이터에서 충격 데이터에 해당하는 조작 데이터를 결정한다(단계 S6420). 여기에서, 충격 데이터는 센싱 데이터 중에서 게임 조작과 연관된 센싱 값을 추출하기 위한 기 설정된 특정 조건을 포함하고 있는 데이터에 해당할 수 있다. 조작 데이터는 게임 클라이언트가 인식하여 게임 상의 특정 대상을 조작할 수 있는 데이터에 해당할 수 있다.
게임 수행 서버(6120)가 동전 뒤집기 게임을 수행하는 경우를 예시로 설명한다. 사용자가 모바일 단말(6110)을 책상 위에 내려 놓고 책상을 손바닥으로 내려치는 경우, 조작 데이터 결정부(6320)는 모바일 단말(6110)로부터 지수함수적으로 감소하는 연직방향(z축)의 사인함수 파형에 해당하는 모션 센싱 값을 수신할 수 있다. 즉, 조작 데이터 결정부(6320)는 상하 진동 운동에 대한 모바일 단말(6110)의 움직임에 해당하는 모션 센싱 값을 수신할 수 있다.
여기에서, 조작 데이터 결정부(6320)는 동전 뒤집기 게임에서 동전을 뒤집기 위해 필요한 조작만을 추출하기 위하여 미리 설정된 충격 데이터에 해당하는 모션 센싱 값을 조작 데이터로서 결정할 수 있다. 즉, 모바일 단말(6110)의 상하 진동 모션 중에서 최초의 상당 방향의 진동만이 동전을 뒤집을 수 있는 조작과 연관된 모션이기 때문에, 최초 최대값의 상단 방향의 모션 센싱 값을 충격 데이터로서 미리 설정하고, 조작 데이터 결정부(6320)는 수신된 센싱 데이터에서 충격 데이터에 해당하는 센싱 값을 조작 데이터로서 결정할 수 있다.
즉, 조작 데이터 결정부(6320)는 모바일 단말(6110)로부터 수신된 센싱 데이터 중에서 충격 데이터에 해당하는 센싱 값을 추출하고, 추출된 센싱 값을 게임 조작을 위한 조작 데이터로서 결정할 수 있다.
일 실시예에서, 조작 데이터 결정부(6320)는 센싱 데이터에서 충격 데이터에 해당하는 센싱 값을 추출하고, 추출된 센싱 값을 기초로 게임 클라이언트에 의해 처리될 수 있는 게임 조작 명령어를 생성할 수 있다. 여기에서, 게임 조작 명령어는 게임 상에서 특정 대상을 조작할 수 있는 게임 조작 백터와 연관될 수 있다.
예를 들어, 패턴 백터가 [0,0,3]에 해당하여 조작 데이터 결정부(6320)가 센싱 데이터 중에서 [0,0,5]에 해당하는 모션 센싱 값을 추출하는 경우, 조작 데이터 결정부(6320)는 게임 클라이언트가 인식할 수 있고 게임 상에서 연직 상단 방향의 크기 5에 해당하는 게임 조작 백터와 연관된 [up, 5]에 해당하는 게임 조작 명령어를 생성할 수 있다. 여기에서, 게임 클라이언트는 게임 조작 명령어를 통해 게임 상에서 동전을 상단 방향으로 크기 5의 힘을 가하여 동전을 뒤집을 수 있다.
게임 조작부(6330)는 조작 데이터 결정부(6320)에 의해 결정된 조작 데이터를 통하여 게임 클라이언트(6130)에 의한 게임 조작을 수행한다(단계 S6430).
보다 구체적으로, 조작 데이터 결정부(6320)가 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정한다. 여기에서, 조작 데이터는 게임 클라이언트(6130)가 인식할 수 있고 게임 상에서 특정 대상을 조작할 수 있는 명령어에 해당한다. 게임 조작부(6330)는 게임 클라이언트(6130)로 조작 데이터를 전송하여 게임 클라이언트(6130)가 특정 대상을 조작하도록 할 수 있다.
결과적으로, 사용자가 모바일 단말(6110)에 직접적 또는 간접적으로 충격을 가하면, 해당 충격에 대한 센싱 값을 통해 게임을 조작할 수 있다.
도 52는 본 발명의 일 실시에에 따른 게임 수행 과정을 설명하는 흐름도이다.
센싱 데이터 수신부(6310)는 모바일 단말(6110)로부터 사용자에 의한 충격과 연관된 모션 센싱 값 및 사운드 센싱 값 중 적어도 하나를 수신할 수 있다(단계 S6510).
예를 들어, 게임 수행 서버(6120)가 동전 뒤집기 게임을 진행하는 경우, 사용자가 모바일 단말(6110)을 책상 위에 올려놓고 책상을 손바닥으려 내려침으로써 모바일 단말(6110)에 간접적인 충격을 가하면, 모바일 단말(6110)의 모션 센서(6211)는 해당 충격에 따른 모바일 단말(6110)의 연직 방향의 움직임을 센싱하여 모션 센싱 값을 생성할 수 있다. 여기에서, 사운드 센서(6212)는 책상과 사용자의 손바닥의 충돌에 의한 소리를 센싱하여 사운드 센싱 값을 생성할 수 있다. 센싱 데이터 수신부(6310)는 모바일 단말(6110)의 통신부(6220)를 통해 모션 센싱 값 및 사운드 센싱 값 중 적어도 하나를 포함하는 센싱 데이터를 수신할 수 있다.
조작 데이터 결정부(6320)는 센싱 데이터에서 충격 데이터에 포함된 백터 패턴 및 사운드 패턴 중 적어도 하나에 해당하는 센싱 값을 추출할 수 있다(단계 S6520).
보다 구체적으로, 충격 데이터는 백터 패턴 및 사운드 패턴 중 적어도 하나를 포함할 수 있다. 여기에서, 백터 패턴은 모션 센싱 값에 대한 특정 크기 및 방향을 포함하고, 사운드 패턴은 사운드 센싱 값에 대한 특정 크기 및 주파수를 포함할 수 있다.
예를 들어, 충격 데이터는 3차원의 공간(x,y,z 축)에서 연직 상단 방향(z축)으로 크기 3 이상의 모션 센싱 값에 해당하는 [0,0,3]의 데이터로서 구현될 수 있다. 다른 예를 들어, 충격 데이터는 사람의 육성 중 파열음에 해당하는 주파수 및 3db에 해당하는 사운드의 크기에 해당하는 [100hz, 3db]의 데이터로서 구현될 수 있다.
일 실시예에서, 백터 패턴은 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터에 대한 백터 패턴으로 정의될 수 있다. 즉, 백터 패턴은 3차원 공간에 대한 백터 뿐만 아니라, x,y 및 z 축의 각 회전 각속도에 대한 특정 범위로서 설정될 수 있다.
일 실시예에서, 백터 패턴은 모션 센싱 값과 연관되고 기 설정된 범위의 모션 크기 및 모션 방향 중 적어도 하나를 포함할 수 있다. 예를 들어, 백터 패턴은 3차원의 공간(x,y,z 축)에서 연직 상단 방향(z축)으로 크기 3 이상 5 이하의 모션 센싱 값에 해당하는 [0,0,3_5]의 데이터로서 구현될 수 있다.
일 실시예에서, 사운드 패턴은 사운드 센싱 값과 연관되고 기 설정된 범위의 사운드 크기 및 주파수 중 적어도 하나를 포함할 수 있다. 예를 들어, 사운드 패턴은 사람의 육성 중 파열음에 해당하는 주파수 영역 범위 및 3~5 db에 해당하는 사운드의 크기에 해당하는 [100_150hz, 3_5db]의 데이터로서 구현될 수 있다.
여기에서, 조작 데이터 결정부(6320)는 센싱 데이터에서 충격 데이터에 포함된 백터 패턴 및 사운드 패턴 중 적어도 하나에 해당하는 센싱 값을 추출하여 게임 조작을 위한 조작 데이터로 결정할 수 있다(단계 S6530).
조작 데이터 결정부(6320)는 센싱 데이터에서 충격 데이터에 해당하는 센싱 값을 추출하고, 추출된 센싱 값을 기초로 게임 클라이언트에 의해 처리될 수 있는 게임 조작 명령어를 생성할 수 있다(단계 S6540). 여기에서, 게임 조작 명령어는 게임 상에서 특정 대상을 조작할 수 있는 게임 조작 백터와 연관될 수 있다.
예를 들어, 패턴 백터가 [0,0,3]에 해당하여 조작 데이터 결정부(6320)가 센싱 데이터 중에서 [0,0,5]에 해당하는 모션 센싱 값을 추출하는 경우, 조작 데이터 결정부(6320)는 게임 클라이언트가 인식할 수 있고 게임 상에서 연직 상단 방향의 크기 5에 해당하는 게임 조작 백터와 연관된 [up, 5]에 해당하는 게임 조작 명령어를 생성할 수 있다. 여기에서, 게임 클라이언트는 게임 조작 명령어를 통해 게임 상에서 동전을 상단 방향으로 크기 5의 힘을 가하여 동전을 뒤집을 수 있다.
게임 조작부(6330)는 조작 데이터 결정부(6320)에 의해 결정된 조작 데이터를 통하여 게임 클라이언트(6130)에 의한 게임 조작을 수행한다(단계 S6550).
보다 구체적으로, 조작 데이터 결정부(6320)가 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정한다. 여기에서, 조작 데이터는 게임 클라이언트(6130)가 인식할 수 있고 게임 상에서 특정 대상을 조작할 수 있는 명령어에 해당한다. 게임 조작부(6330)는 게임 클라이언트(6130)로 조작 데이터를 전송하여 게임 클라이언트(6130)가 특정 대상을 조작하도록 할 수 있다.
결과적으로, 사용자가 모바일 단말(6110)에 직접적 또는 간접적으로 충격을 가하면, 해당 충격에 대한 센싱 값을 통해 게임을 조작할 수 있다.
실감형 액션 수행부(6340)는 게임 클라이언트(6130)로부터 게임 과정에서 발생하는 특정 이벤트 데이터를 피드백으로서 수신할 수 있다(단계 S6560).
여기에서, 실감형 액션 수행부(6340)는 수신된 피드백을 통해 모바일 단말(6110)에 포함된 실감형 액션 수단(6230)을 통해 실감형 액션을 수행할 수 있다(단계 S6570). 즉, 실감형 액션 수행부(6340)는 모바일 단말(6110)을 게임 조작을 위한 수단 및 게임 조작에 대한 피드백 장치로서 활용할 수 있다.
예를 들어, 게임 수행 서버(6120)가 동전 뒤집기 게임에 해당하는 경우, 게임 조작부(6330)가 조작 데이터를 게임 클라이언트(6130)로 전송하여 게임 상에서 동전이 뒤집힌 경우, 실감형 액션 수행부(6340)는 게임 클라이언트(6130)로부터 [동전 뒤집힘]에 해당하는 이벤트 데이터를 피드백으로서 수신할 수 있다. 여기에서, 실감형 액션 수행부(6340)는 실감형 액션 수단(6230)인 [진동 장치]가 진동하도록 할 수 있는 {진동, 3초}에 해당하는 데이터를 생성하여 모바일 단말(6110)로 송신할 수 있다. 즉, 실감형 액션 수행부(6340)는 게임 진행 과정에서 발생하는 특정 이벤트에 대하여 모바일 단말(6110)이 특정 동작을 수행하도록 함으로써, 사용자가 실제 동전을 뒤집은 것과 같이 느끼도록 할 수 있다.
다른 예를 들어, 게임 상에서 사용자가 최고점을 획득한 경우, 실감형 액션 수행부(6340)는 [best point]에 해당하는 이벤트 데이터를 피드백으로서 수신할 수 있다. 여기에서, 실감형 액션 수행부(6340)는 모바일 단말(6110)의 디스플레이 장치를 통해 {축하}에 해당하는 텍스트를 출력하도록 하고, 스피커를 통해 {축하 음악}에 해당하는 사운드를 재생시킬 수 있다. 일 실시예에서, 실감형 액션 수행부(6340)는 모바일 단말(6110)에 설치된 SNS 어플리케이션을 통해 사용자의 친구(예를 들어, 팔로어)에게 사용자의 득점 점수를 전송할 수 있다.
도 53은 본 발명의 제6 실시예에 따른 게임 수행 시스템의 예시를 나타내는 도면이다.
도 53에서, 게임 수행 시스템(6100)은 게임 수행 서버(6120) 및 게임 클라이언트(6130)가 개인용 컴퓨터(PC)에 포함되어 구현될 수 있다. 여기에서, 모바일 단말(6110)은 무선 네트워크를 통해 PC와 연결되어 게임 수행 서버(6120)와 연결되고, 게임 클라이언트(6130)는 PC 내부의 유선 네트워크를 통해 게임 수행 서버(6120)와 연결될 수 있다. 즉, 사용자는 PC에 설치된 게임을 실행하고, 모바일 단말(6110)에 직접적 또는 간접적 충격을 가하여 게임을 조작할 수 있다.
도 54, 55, 56은 본 발명의 제6 실시예에 따른 게임 수행 과정을 설명하기 위한 게임 화면의 예시를 나타내는 도면이다. 도 54, 55, 56은 본 발명의 제6 실시예에 따라 수행될 수 있는 게임이 진행되는 화면을 나타내는 것으로서, 본 발명의 권리 범위를 한정하고자 하는 것은 아니다.
도 54에서, 게임 수행 서버(6120)는 동전 뒤집기 게임 프로그램에 해당하는 게임 클라인언트(6130)와 연결되어, 동전 뒤집기 게임을 실행할 수 있다.
센싱 데이터 수신부(6310)는 사용자에 의해 모바일 단말(6110)에 직접적 또는 간접적으로 가해진 충격에 해당하는 센싱 데이터를 수신할 수 있다. 여기에서, 센싱 데이터는 모바일 단말(6110)의 상하 진동 움직임에 해당하는 모션 센싱 값 및 충격에 의한 소리에 해당하는 사운드 센싱 값을 포함할 수 있다.
조작 데이터 결정부(6320)는 게임 상에서 동전을 뒤집는 조작과 연관된 센싱 값을 추출하여 조작 데이터로 결정할 수 있다. 여기에서, 조작 데이터 결정부(6320)는 모바일 단말(6110)의 상하 진동 움직임 중 최대 크기 값을 가지는 모션 센싱 값 또는 미리 설정된 특정 주파수의 범위에 해당하는 사운드 센싱 값을 조작 데이터로서 결정할 수 있다.
게임 조작부(6330)는 결정된 조작 데이터를 게임 클라이언트가 인식할 수 있는 게임 조작 명령어를 생성하여 게임 상에서 동전을 넘길 수 있다.
도 55에서, 게임 수행 서버(6120)는 딱지 넘기기 게임 프로그램에 해당하는 게임 클라인언트(6130)와 연결되어, 딱지 넘기기 게임을 실행할 수 있다.
센싱 데이터 수신부(6310)는 사용자에 의해 모바일 단말(6110)에 간접적으로 가해진 충격에 해당하는 센싱 데이터를 수신할 수 있다. 즉, 사용자가 모바일 단말(6110)의 마이크 인근에서 실제 딱지를 넘기듯 "파"를 외치면, 모바일 단말(6110)의 사운드 센서(6212)는 해당 소리에 대한 크기 및 주파수 중 적어도 하나를 센싱하여 사운드 센싱 값을 생성할 수 있다. 여기에서, 센싱 데이터 수신부(6310)는 모방리 단말(6110)로부터 사운드 센싱 값을 포함한 센싱 데이터를 수신할 수 있다.
조작 데이터 결정부(6320)는 게임 상에서 딱지를 넘기는 조작과 연관된 센싱 값을 추출하여 조작 데이터로 결정할 수 있다. 여기에서, 조작 데이터 결정부(6320)는 사운드 센싱 값 중에서 미리 설정된 특정 주파수의 범위에 해당하는 사운드 센싱 값을 조작 데이터로서 결정할 수 있다.
게임 조작부(6330)는 결정된 조작 데이터를 게임 클라이언트가 인식할 수 있는 게임 조작 명령어를 생성하여 게임 상에서 딱지를 넘길 수 있다.
도 56에서, 게임 수행 서버(6120)는 리듬 게임 프로그램에 해당하는 게임 클라인언트(6130)와 연결되어, 리듬 게임을 실행할 수 있다.
이러한 실시예를 구현하기 위하여, 게임 수행 시스템(6100)은 복수 개의 모바일 단말(6110)을 포함할 수 있다. 도 56에서, 게임 수행 서버(6120)는 5개의 모바일 단말(6110)과 연결되는 것을 가정하여 설명한다.
센싱 데이터 수신부(6310)는 사용자에 의해 복수 개의 모바일 단말(6110) 각각에 간접적으로 가해진 충격에 해당하는 센싱 데이터를 수신할 수 있다.
예를 들어, 사용자가 5개의 모바일 단말(6110)들을 책상 위에 일렬로 배치하고, 손가락을 책상에 한번 충격을 가하면, 5개의 모바일 단말(6110)들 각각은 해당 충격에 해당하는 모션 센싱 값을 생성할 수 있다. 여기에서, 센싱 데이터 수신부(6310)는 5개의 모바일 단말(6110)들 각각으로부터 모션 센싱 값을 수신할 수 있다.
조작 데이터 결정부(6320)는 수신된 센싱 데이터에서 최대 크기의 모션 센싱 값을 가지는 모바일 단말(6110)을 결정할 수 있다. 즉, 조작 데이터 결정부(6320)는 5개의 모션 센싱 값에서 최대 크기의 모션 센싱 값을 송신한 특정 모바일 단말(6110)을 결정함으로써, 사용자가 5개의 모바일 단말(6110)들 중에서 가장 가까운 곳을 충격한 모바일 단말(6110)을 결정할 수 있다.
여기에서, 조작 데이터 결정부(6320)는 5개의 모바일 단말(6110)에 대한 식별 번호를 부여할 수 있다. 예를 들어, 조작 데이터 결정부(6320)는 가장 좌측의 모바일 단말부터 1 내지 5 번을 부여할 수 있다. 이러한 과정은 게임 실행 전 단계에서 게임 환경 설정을 통해 각 모바일 단말(6110)과 연결시 설정될 수 있다.
만약, 최대 크기의 모션 센싱 값을 송신한 모바일 단말(6110)이 2번에 해당하면, 조작 데이터 결정부(6320)는 1, 3 내지 5번의 모바일 단말(6110)에 의한 모션 센싱 값을 무시하고, 2번 모바일 단말(6110)이 송신한 모션 센싱 값만을 추출하여 조작 데이터로서 결정할 수 있다.
게임 조작부(6330)는 결정된 조작 데이터를 게임 클라이언트가 인식할 수 있는 게임 조작 명령어를 생성하여 게임 상에서 2번 라인에 대한 타격으로 인식할 수 있다.
즉, 사용자는 복수 개의 모바일 단말(6110)들을 순서대로 배치하고 게임 상에서 2번 라인의 리듬 막대가 내려오면 두 번째의 모바일 단말(6110)에 가장 가까운 곳에 간접적인 충격을 가함으로써 게임을 조작할 수 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 등이 포함될 수 있다.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
CROSSREFERENCE TO RELATED APPLICATION
본 특허출원은 2012년 09월 14일 한국에 출원한 특허출원번호 제 10-2012-0102359 호 및 2012년 09월 14일 한국에 출원한 특허출원번호 제 10-2012-0102399 호 및 2012년 09월 14일 한국에 출원한 특허출원번호 제 10-2012-0102401 호 및 2012년 09월 14일 한국에 출원한 특허출원번호 제 10-2012-0102354 호 및 2012년 09월 14일 한국에 출원한 특허출원번호 제 10-2012-0102487 호 및 2012년 11월 09일 한국에 출원한 특허출원번호 제 10-2012-0126610 호에 대해 미국 특허법 119(a)조 (35 U.S.C § 119(a))에 따라 우선권을 주장하며, 그 모든 내용은 참고문헌으로 본 특허출원에 병합된다. 아울러, 본 특허출원은 미국 이외에 국가에 대해서도 위와 동일한 이유로 우선권을 주장하면 그 모든 내용은 참고문헌으로 본 특허출원에 병합된다.

Claims (76)

  1. 장치가 단말기 센서를 활용하는 방법에 있어서,
    상기 단말기의 적어도 하나의 센서로부터 측정된 적어도 하나의 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 상기 단말기로부터 수신하는 데이터 수신 단계;
    상기 센싱 데이터에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 적어도 하나의 보정 데이터를 생성하는 데이터 후처리 단계; 및
    상기 보정 데이터를 적어도 하나의 다른 장치 혹은 적어도 하나의 어플리케이션이 사용할 수 있는 적어도 하나의 신호 데이터로 변환하여 제공하는 데이터 제공 단계
    를 포함하는 단말기 센서 활용 방법.
  2. 제1항에 있어서,
    상기 데이터 후처리 단계에서,
    상기 데이터 후처리 프로세스는 상기 센싱 데이터에 포함된 상기 센싱 값을 필터링 처리하는 서브 프로세스를 포함하는 것을 특징으로 하는 단말기 센서 활용 방법.
  3. 제2항에 있어서,
    상기 필터링 처리하는 서브 프로세스는 노이즈를 제거하기 위해 상기 센싱 값을 로우 패스(Low Pass) 필터링 처리하는 것을 특징으로 하는 단말기 센서 활용 방법.
  4. 제2항에 있어서,
    상기 데이터 수신 단계에서,
    상기 단말기의 가속도 센서로부터 측정된 상기 센싱 값을 포함하는 상기 센싱 데이터를 수신하고,
    상기 데이터 후처리 단계에서,
    상기 필터링 처리하는 서브 프로세스는 상기 센싱 값에서 중력 가속도 성분을 제거하기 위해 상기 센싱 값을 하이 패스(High Pass) 필터링 처리하는 것을 특징으로 하는 단말기 센서 활용 방법.
  5. 제1항에 있어서,
    상기 데이터 수신 단계에서,
    상기 단말기의 제1 센서로부터 측정된 제1 센싱 값과 제2 센서로부터 측정된 제2 센싱 값을 포함하는 적어도 하나의 상기 센싱 데이터를 수신하고,
    상기 데이터 후처리 단계에서,
    상기 제1 센싱 값과 상기 제2 센싱 값의 차이인 센싱 값 오차 중 일부 혹은 전부를 상기 제1 센싱 값에 대한 데이터 오차로 인식하여 상기 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 것을 특징으로 하는 단말기 센서 활용 방법.
  6. 제5항에 있어서,
    상기 데이터 후처리 단계에서,
    상기 데이터 후처리 프로세스는 상기 제1 센싱 값에 상기 센싱 값 오차의 일부를 가감하여 제1 센서 보정 값을 생성하거나 이전 제1 센서 보정 값에 상기 센싱 값 오차의 일부를 가감하여 상기 제1 센서 보정 값을 생성하는 보정 서브 프로세스를 더 포함하고 상기 보정 데이터는 상기 제1 센서 보정 값을 토대로 생성되는 것을 특징으로 하는 단말기 센서 활용 방법.
  7. 제6항에 있어서,
    상기 데이터 후처리 단계에서,
    상기 센싱 값 오차가 일정 오차 범위보다 큰 경우 상기 보정 서브 프로세스는 상기 센싱 값 오차를 오차 분할 보정 횟수로 나눈 오차 분할 값을 상기 센싱 값 오차의 일부로서 사용하고,
    상기 데이터 후처리 프로세스는 상기 보정 서브 프로세스를 미리 정해진 서브 프로세스 수행 주기에 따라 오차 분할 보정 횟수 만큼 반복 수행하여 각 서브 프로세스 수행마다 상기 보정 데이터를 생성하는 것을 특징으로 하는 단말기 센서 활용 방법.
  8. 제7항에 있어서,
    상기 서브 프로세스 수행 주기는 상기 데이터 수신 단계에서 상기 적어도 하나의 센싱 데이터를 수신하는 주기보다 짧도록 제어하는 것을 특징으로 하는 단말기 센서 활용 방법.
  9. 제6항에서 있어서,
    상기 데이터 수신 단계에서,
    상기 단말기의 움직임 센서로부터 측정된 움직임 센싱 값을 포함하는 상기 적어도 하나의 센싱 데이터를 수신하고,
    상기 데이터 후처리 단계에서,
    상기 보정 서브 프로세스는 상기 움직임 센싱 값의 크기에 따라 가감되는 상기 센싱 값 오차의 비율을 조절하는 것을 특징으로 하는 단말기 센서 활용 방법.
  10. 제5항에 있어서,
    상기 제1 센서는 자이로 센서이고 상기 제2 센서는 가속도 센서일 때, 상기 데이터 후처리 단계에서,
    상기 센싱 값 오차 중 롤(Roll) 방향 성분 및 피치(Pitch) 성분을 상기 제1 센싱 값에 대한 롤 방향 및 피치 방향 데이터 오차로 인식하여 상기 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하고
    상기 제1 센서는 자이로 센서이고 상기 제2 센서는 지자계 센서일 때, 상기 데이터 후처리 단계에서,
    상기 센싱 값 오차 중 요(Yaw) 방향 성분을 상기 제1 센싱 값에 대한 요 방향 데이터 오차로 인식하여 상기 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 것을 특징으로 하는 단말기 센서 활용 방법.
  11. 제5항에 있어서,
    상기 제1 센싱 값은 기준 좌표 값에 좌표 증감분을 누적하여 획득되는 상대 값이고 상기 제2 센싱 값은 절대 좌표 값을 센싱하여 획득되는 절대 값인 것을 특징으로 하는 단말기 센서 활용 방법.
  12. 제5항에 있어서,
    상기 데이터 후처리 단계에서,
    상기 데이터 후처리 프로세스는 스테이블(stable) 상태 판단 서브 프로세스를 더 포함하고 상기 제2 센싱 값에 대한 상기 스테이블 상태 판단 서브 프로세스를 통해 상기 제2 센서가 스테이블 상태에 있는 것으로 판단되는 경우에만 상기 제1 센싱 값과 상기 제2 센싱 값의 차이인 센싱 값 오차 중 일부 혹은 전부를 상기 제1 센싱 값에 대한 데이터 오차로 인식하는 것을 특징으로 하는 단말기 센서 활용 방법.
  13. 제1항에 있어서,
    상기 데이터 수신 단계에서,
    상기 단말기의 제1 센서로부터 측정된 제1 센싱 값과 제2 센서로부터 측정된 제2 센싱 값을 포함하는 적어도 하나의 상기 센싱 데이터를 수신하고,
    상기 데이터 후처리 단계에서,
    상기 데이터 후처리 프로세스를 통해 제1 센서 보정 값을 포함하는 상기 보정 데이터를 생성하되,
    상기 데이터 후처리 프로세스는 이전 제1 센서 보정 값과 상기 제2 센싱 값의 차이인 보정 값 오차 중 일부 혹은 전부를 제1 센서 보정 값에 대한 데이터 오차로 인식하여 상기 데이터 오차를 감쇄시키도록 제어되는 것을 특징으로 하는 단말기 센서 활용 방법.
  14. 제13항에 있어서,
    상기 데이터 후처리 단계에서,
    상기 데이터 후처리 프로세스는 상기 이전 제1 센서 보정 값에 상기 보정 값 오차의 일정 비율을 가감하여 상기 제1 센서 보정 값을 생성하는 것을 특징으로 하는 단말기 센서 활용 방법.
  15. 제1항에 있어서,
    상기 센싱 데이터가 이전에 수신한 이전 센싱 데이터로부터 일정 시간 간격을 초과하여 수신된 경우,
    상기 데이터 후처리 단계에서,
    상기 데이터 후처리 프로세스는 상기 이전 센싱 데이터에 포함된 이전 센싱 값과 상기 센싱 데이터에 포함된 상기 센싱 값을 인터폴레이션(interpolation) 처리하여 복수의 인터폴레이션 보정 값을 생성하고 각각의 인터폴레이션 보정 값을 포함하는 보정 데이터를 보간 시간 간격으로 생성하는 것을 특징으로 하는 단말기 센서 활용 방법.
  16. 제1항에 있어서,
    상기 보정 데이터를 상기 신호 데이터로 변환하여 제공하는 상기 다른 장치 혹은 상기 어플리케이션으로부터 진동 신호 데이터를 제공받아 상기 단말기로 전달하여 상기 단말기가 진동 작동하도록 제어하는 진동 신호 전달 단계를 더 포함하는 것을 특징으로 하는 단말기 센서 활용 방법.
  17. 단말기의 적어도 하나의 센서로부터 측정된 적어도 하나의 센싱 값을 포함하는 적어도 하나의 센싱 데이터를 상기 단말기로부터 수신하는 데이터 수신부;
    상기 센싱 데이터에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 적어도 하나의 보정 데이터를 생성하는 데이터 후처리부; 및
    상기 보정 데이터를 적어도 하나의 다른 장치 혹은 적어도 하나의 어플리케이션이 사용할 수 있는 적어도 하나의 신호 데이터로 변환하여 제공하는 데이터 제공부
    를 포함하는 단말기 센서 활용 장치.
  18. 적어도 하나의 센서를 포함하는 단말기가 센싱 데이터를 제공하는 방법에 있어서,
    상기 적어도 하나의 센서를 이용하여 적어도 하나의 센싱 값을 측정하는 센싱 값 측정 단계; 및
    상기 적어도 하나의 센싱 값을 포함하는 센싱 데이터에 대하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 적어도 하나의 장치로 상기 센싱 데이터를 송신하는 센싱 값 송신 단계
    를 포함하는 센싱 데이터 제공 방법.
  19. 적어도 하나의 센서를 포함하는 단말기에 있어서,
    상기 적어도 하나의 센서를 이용하여 적어도 하나의 센싱 값을 측정하는 센싱 값 측정부; 및
    상기 적어도 하나의 센싱 값을 포함하는 센싱 데이터에 대하여 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 적어도 하나의 장치로 상기 센싱 데이터를 송신하는 센싱 값 송신부
    를 포함하는 센싱 데이터 제공 단말기.
  20. 휴대 단말이,
    사용자 단말의 IP 주소를 전송받아 저장한 주소 서버 또는 상기 사용자 단말의 IP 주소를 전송받은 무선 공유기를 통해 상기 사용자 단말의 IP 주소를 수신하는 단계; 및
    수신한 상기 IP 주소를 이용하여 상기 사용자 단말로 접속하는 단계를 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 방법.
  21. 제20항에 있어서,
    상기 수신하는 단계는,
    상기 휴대 단말이 상기 주소 서버와 접속하는 단계; 및
    상기 주소 서버로부터 상기 주소 서버가 상기 사용자 단말로부터 전송받은 상기 IP 주소를 수신하는 단계를 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 방법.
  22. 제21항에 있어서,
    상기 주소 서버와 접속하는 단계는,
    상기 주소 서버 및 상기 사용자 단말과 연결하고 데이터를 주고 받도록 하는 어플리케이션을 실행하는 단계; 및
    상기 어플리케이션을 통해 상기 주소 서버와 접속하는 단계를 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 방법.
  23. 제22항에 있어서,
    상기 사용자 단말로 접속하는 단계는,
    상기 주소 서버와의 접속을 종료하는 단계; 및
    상기 주소 서버로부터 전송받은 IP 주소를 통해 사용자 단말로 접속하는 단계를 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 방법.
  24. 제20항에 있어서,
    상기 수신하는 단계는,
    일정 주기로 상기 사용자 단말의 IP 주소 및 사용자 ID를 전송받은 무선 공유기를 통해 상기 사용자 단말의 IP 주소 및 사용자 ID를 수신하는 단계에 해당하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 방법.
  25. 제24항에 있어서,
    상기 수신하는 단계 이후에,
    수신한 상기 사용자 단말의 IP 주소 및 사용자 ID를 저장하는 단계; 및
    실행된 어플리케이션을 통해 수신한 상기 사용자 ID와 휴대 단말에 의해 입력된 ID가 일치하는지 확인하여 일치하는 경우, 수신한 상기 IP 주소를 이용하여 상기 사용자 단말로 접속하는 단계를 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 방법.
  26. 사용자 단말이,
    일정 주기로 상기 사용자 단말의 IP 주소 및 사용자 ID를 무선 공유기에 접속된 적어도 하나의 휴대 단말에 브로드캐스팅하는 단계; 및
    상기 적어도 하나의 휴대 단말이, 수신한 사용자 ID와 상기 적어도 하나의 휴대 단말에 입력되는 사용자 ID가 일치하는 것으로 판단하여 수신한 상기 IP 주소로 접속 요청을 한 경우, 상기 적어도 하나의 휴대 단말과 접속하는 단계를 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 방법.
  27. 게임을 제공하는 사용자 단말;
    상기 사용자 단말로부터 IP 주소를 수신하여 이를 저장하는 주소 서버; 및
    어플리케이션을 실행 후에 상기 주소 서버에 접속하여 상기 IP 주소를 수신하고 이후 상기 주소 서버와의 접속을 종료하고 상기 IP 주소를 이용하여 상기 사용자 단말로 접속을 요청하는 휴대 단말을 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 시스템.
  28. 게임을 제공하는 사용자 단말;
    상기 사용자 단말로부터 IP 주소 및 사용자 ID를 수신하여 이를 연결된 적어도 하나의 휴대 단말에 브로드캐스팅 하는 무선 공유기; 및
    상기 무선 공유기와 연결되어 상기 IP 주소 및 사용자 ID를 수신받아 저장하고, 상기 IP 주소를 이용해 상기 사용자 단말에 접속 요청을 하는 적어도 하나의 휴대 단말을 포함하는 것을 특징으로 하는 사용자 단말과 휴대 단말의 접속 시스템.
  29. 이동통신단말을 통해 외부단말에서 실행되는 게임을 컨트롤할 수 있는 서비스를 제공하는 장치가,
    상기 외부단말에서의 게임 컨텐츠의 실행과 상기 장치와 상기 이동통신단말의 네트워크 연결을 감지하는 단계;
    상기 이동통신단말에 저장된 어플리케이션의 실행에 따라서 제공되는 인터페이스이고, 적어도 하나의 입력 신호가 사용자의 입력에 의해 생성되는 인터페이스인 컨트롤 인터페이스로부터 상기 사용자의 입력에 의해 생성되는 상기 적어도 하나의 입력 신호를 수신하는 단계;
    기저장된 명령 테이블로부터, 실행되고 있는 상기 게임 컨텐츠에서의 게임 플레이를 위해 상기 명령 테이블에 저장된 적어도 하나의 제어명령 중 상기 수신한 적어도 하나의 입력 신호에 대응하는 제어명령을 선택하는 단계; 및
    상기 선택된 제어명령에 따라서 상기 게임 플레이에 대한 제어를 수행하도록 상기 선택된 제어명령을 상기 게임 컨텐츠에 전송하는 단계;를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 방법.
  30. 제29항에 있어서,
    상기 기저장된 명령 테이블은 상기 외부단말에서 실행될 수 있는 적어도 하나의 게임 컨텐츠들마다 생성되어 있고,
    상기 제어명령을 선택하는 단계는,
    상기 적어도 하나의 게임 컨텐츠들마다 생성된 상기 명령 테이블 중, 실행되고 있는 상기 게임 컨텐츠에 매칭되는 명령 테이블을 선택하는 단계; 및
    상기 선택된 명령 테이블로부터 상기 명령 테이블에 저장된 적어도 하나의 제어명령 중 상기 수신한 적어도 하나의 입력 신호에 대응하는 제어명령을 선택하는 단계;를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 방법.
  31. 제29항에 있어서,
    상기 컨트롤 인터페이스는 상기 저장된 어플리케이션의 종류에 따라서 적어도 하나의 컨트롤 인터페이스가 존재하며,
    상기 적어도 하나의 입력 신호를 수신하는 단계는,
    상기 이동통신단말에서 상기 컨트롤 인터페이스에 대응하는 상기 어플리케이션의 실행을 감지하는 단계;
    기저장된 상기 적어도 하나의 컨트롤 인터페이스에 관한 정보 중, 상기 이동통신단말에서 실행되는 상기 어플리케이션에 대응하는 컨트롤 인터페이스에 관한 정보를 로드하는 단계;
    상기 적어도 하나의 컨트롤 인터페이스마다 저장된 상기 명령 테이블 중, 상기 로드된 컨트롤 인터페이스에 관한 정보에 매칭되는 명령 테이블을 로드하는 단계; 및
    상기 컨트롤 인터페이스에 관한 정보를 이용하여 상기 적어도 하나의 입력 신호를 수신하는 단계;를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 방법.
  32. 제31항에 있어서,
    상기 적어도 하나의 입력 신호는,
    상기 컨트롤 인터페이스에 포함되어 있고, 상기 사용자가 선택 입력할 수 있도록 표시되는 적어도 하나의 버튼에 대한 선택 입력과, 상기 이동통신단말에 내장된 센서가 감지하는 센서 입력 중 적어도 하나를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 방법.
  33. 이동통신단말을 통해 외부단말에서 실행되는 게임을 컨트롤할 수 있는 서비스를 제공하는 장치가,
    상기 외부단말에서의 게임 컨텐츠의 실행과 상기 장치와 상기 이동통신단말의 네트워크 연결을 감지하는 단계;
    상기 이동통신단말로부터 입력되는 입력 신호에 따라서 상기 실행되고 있는 게임 컨텐츠의 게임 플레이를 제어하는 단계;
    상기 게임 플레이 도중 기설정된 적어도 하나의 이벤트 중 어느 한 이벤트가 발생했음을 감지하는 단계;
    기저장된 이벤트 효과 테이블에 저장된 효과 컨텐츠 중, 발생한 것으로 감지된 이벤트에 매칭되는 효과 컨텐츠를 선택하는 단계; 및
    상기 선택된 효과 컨텐츠가 상기 이동통신단말에서 실행되도록 상기 선택된 효과 컨텐츠를 상기 이동통신단말에 전송하는 단계;를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 방법.
  34. 제33항에 있어서,
    상기 효과 컨텐츠는,
    상기 이동통신단말을 진동시키는 효과, 상기 이동통신단말의 디스플레이 모듈을 통해 출력되는 영상 효과 및 상기 이동통신단말의 음성출력모듈을 이용해 출력되는 음성 효과 중 적어도 하나에 관한 컨텐츠를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 방법.
  35. 제33항에 있어서,
    상기 입력 신호는,
    상기 게임 플레이를 상기 이동통신단말을 통해 제어하기 위한 인터페이스인 컨트롤 인터페이스에 포함되어 있고, 상기 사용자가 선택 입력할 수 있도록 표시되는 적어도 하나의 버튼에 대한 선택 입력과, 상기 이동통신단말에 내장된 센서가 감지하는 센서 입력 중 적어도 하나를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 방법.
  36. 제33항에 있어서,
    상기 게임 플레이를 제어하는 단계는,
    상기 입력 신호를 이용하여, 상기 게임 컨텐츠의 종류에 따라 서로 같거나 다르게 매칭되어 있는 적어도 하나의 제어명령 중, 상기 실행되고 있는 게임 컨텐츠에 대한 적어도 하나의 제어명령을 로드하는 단계;
    상기 로드된 적어도 하나의 제어명령 중, 상기 입력 신호에 대응하는 제어명령을 선택하는 단계; 및
    상기 선택된 제어명령을 이용하여 상기 게임 플레이를 제어하는 단계;를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 방법.
  37. 외부단말에서의 게임 컨텐츠의 실행과 상기 이동통신단말과의 네트워크 연결을 감지하고, 상기 이동통신단말에 저장된 어플리케이션의 실행에 따라서 제공되는 인터페이스이고, 적어도 하나의 입력 신호가 사용자의 입력에 의해 생성되는 인터페이스인 컨트롤 인터페이스로부터 상기 사용자의 입력에 의해 생성되는 상기 적어도 하나의 입력 신호를 수신하는 입력 신호 수신부;
    기저장된 명령 테이블로부터, 실행되고 있는 상기 게임 컨텐츠에서의 게임 플레이를 위해 상기 명령 테이블에 저장된 적어도 하나의 제어명령 중 상기 수신한 적어도 하나의 입력 신호에 대응하는 제어명령을 선택하는 제어명령 선택부; 및
    상기 선택된 제어명령에 따라서 상기 게임 플레이에 대한 제어를 수행하도록 상기 선택된 제어명령을 상기 게임 컨텐츠에 전송하는 제어명령 송신부;를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 장치.
  38. 제37항에 있어서,
    상기 기저장된 명령 테이블은 상기 외부단말에서 실행될 수 있는 적어도 하나의 게임 컨텐츠들마다 생성되어 있고,
    상기 제어명령 선택부는,
    상기 적어도 하나의 게임 컨텐츠들마다 생성된 상기 명령 테이블 중, 실행되고 있는 상기 게임 컨텐츠에 매칭되는 명령 테이블을 선택하고, 상기 선택된 명령 테이블로부터 상기 명령 테이블에 저장된 적어도 하나의 제어명령 중 상기 수신한 적어도 하나의 입력 신호에 대응하는 제어명령을 선택하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 장치.
  39. 제37항에 있어서,
    상기 적어도 하나의 입력 신호는,
    상기 컨트롤 인터페이스에 포함되어 있고, 상기 사용자가 선택 입력할 수 있도록 표시되는 적어도 하나의 버튼에 대한 선택 입력과, 상기 이동통신단말에 내장된 센서가 감지하는 센서 입력 중 적어도 하나를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 장치.
  40. 제37항에 있어서,
    상기 게임 플레이 도중 기설정된 적어도 하나의 이벤트 중 어느 한 이벤트가 발생했음을 감지하는 경우, 기저장된 이벤트 효과 테이블에 저장된 효과 컨텐츠 중, 발생한 것으로 감지된 이벤트에 매칭되는 효과 컨텐츠를 선택하고, 상기 선택된 효과 컨텐츠가 상기 이동통신단말에서 실행되도록 상기 선택된 효과 컨텐츠를 상기 이동통신단말에 전송하는 효과 제공부;를 더 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 장치.
  41. 제37항에 있어서,
    상기 효과 컨텐츠는,
    상기 이동통신단말을 진동시키는 효과, 상기 이동통신단말의 디스플레이 모듈을 통해 출력되는 영상 효과 및 상기 이동통신단말의 음성출력모듈을 이용해 출력되는 음성 효과 중 적어도 하나에 관한 컨텐츠를 포함하는 것을 특징으로 하는 이동통신단말을 통한 게임 컨트롤 장치.
  42. 디스플레이를 포함하는 장치가 단말기 센서를 활용하는 방법에 있어서,
    상기 디스플레이 상의 복수의 기준점 각각을 가리키는 상기 단말기의 복수의 지시 위치 센싱 값을 상기 단말기로부터 수신하는 지시 위치 센싱 값 수신 단계;
    상기 복수의 기준점 사이의 좌표값 차이와 상기 복수의 지시 위치 센싱 값 사이의 위치 센싱 값 차이를 이용하여 스케일 조정 비율을 결정하는 스케일 조정 비율 결정 단계; 및
    상기 단말기로부터 수신되는 적어도 하나의 포인팅 위치 센싱 값 혹은 상기 적어도 하나의 포인팅 위치 센싱 값에 대하여 에러 보정 처리한 포인팅 위치 보정 센싱 값에 대하여 상기 스케일 조정 비율을 적용하여 상기 디스플레이 상의 포인팅 좌표 위치를 계산하는 포인팅 좌표 위치 계산 단계
    를 포함하는 단말기 센서 활용 방법.
  43. 제42항에 있어서,
    상기 디스플레이 상의 상기 복수의 기준점은 상기 디스플레이의 모서리 지점인 것을 특징으로 하는 단말기 센서 활용 방법.
  44. 제42항에 있어서,
    상기 지시 위치 센싱 값 수신 단계 이전에,
    상기 복수의 기준점을 포함하는 도형을 상기 디스플레이 상에 표시 제어하는 단계를 더 포함하는 것을 특징으로 하는 단말기 센서 활용 방법.
  45. 제42항에 있어서,
    상기 지시 위치 센싱 값은 상기 단말기의 각도 센싱 값인 것을 특징으로 하는 단말기 센서 활용 방법.
  46. 제42항에 있어서,
    상기 포인팅 좌표 위치 계산 단계 이전에,
    상기 포인팅 위치 센싱 값에 대한 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하여 에러 보정 처리를 하고 적어도 하나의 상기 포인팅 위치 보정 센싱 값을 생성하는 데이터 후처리 단계를 더 포함하는 것을 특징으로 하는 단말기 센서 활용 방법.
  47. 제46항에 있어서,
    상기 데이터 후처리 단계에서,
    상기 데이터 후처리 프로세스는 상기 포인팅 위치 센싱 값을 필터링 처리하는 필터링 서브 프로세스를 포함하는 것을 특징으로 하는 단말기 센서 활용 방법.
  48. 제46항에 있어서,
    상기 적어도 하나의 포인팅 위치 센싱 값은 상기 단말기의 제1 센서로부터 측정된 제1 위치 센싱 값과 제2 센서로부터 측정된 제2 위치 센싱 값을 모두 포함하고,
    상기 데이터 후처리 단계에서,
    상기 제1 위치 센싱 값과 상기 제2 위치 센싱 값의 차이인 센싱 값 오차 중 일부 혹은 전부를 상기 제1 위치 센싱 값에 대한 데이터 오차로 인식하여 상기 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 것을 특징으로 하는 단말기 센서 활용 방법.
  49. 제48항에 있어서,
    상기 데이터 후처리 단계에서,
    상기 데이터 후처리 프로세스는 상기 제1 위치 센싱 값에 상기 센싱 값 오차의 일부를 가감하여 상기 포인팅 위치 보정 센싱 값을 생성하거나 이전 포인팅 위치 보정 센싱 값에 상기 센싱 값 오차의 일부를 가감하여 상기 포인팅 위치 보정 센싱 값을 생성하는 보정 서브 프로세스를 더 포함하는 것을 특징으로 하는 단말기 센서 활용 방법.
  50. 제48항에 있어서,
    상기 제1 센서는 자이로 센서이고 상기 제2 센서는 가속도 센서일 때, 상기 데이터 후처리 단계에서,
    상기 센싱 값 오차 중 롤(Roll) 방향 성분 및 피치(Pitch) 성분을 상기 제1 위치 센싱 값에 대한 롤 방향 및 피치 방향 데이터 오차로 인식하여 상기 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하고
    상기 제1 센서는 자이로 센서이고 상기 제2 센서는 지자계 센서일 때, 상기 데이터 후처리 단계에서,
    상기 센싱 값 오차 중 요(Yaw) 방향 성분을 상기 제1 위치 센싱 값에 대한 요 방향 데이터 오차로 인식하여 상기 데이터 오차를 감쇄시키기 위한 데이터 후처리 프로세스를 수행하는 것을 특징으로 하는 단말기 센서 활용 방법.
  51. 제46항에 있어서,
    상기 데이터 후처리 단계에서,
    상기 데이터 후처리 프로세스는 상기 이전 포인팅 위치 센싱 값과 상기 포인팅 위치 센싱 값을 인터폴레이션(interpolation) 처리하여 복수의 인터폴레이션 보정 값을 생성하고 각각의 인터폴레이션 보정 값을 보간 시간 간격으로 상기 포인팅 위치 보정 센싱 값으로 생성하는 것을 특징으로 하는 단말기 센서 활용 방법.
  52. 디스플레이를 포함하는 장치에 있어서,
    상기 디스플레이 상의 복수의 기준점 각각을 가리키는 단말기의 복수의 지시 위치 센싱 값을 상기 단말기로부터 수신하는 지시 위치 센싱 값 수신부;
    상기 복수의 기준점 사이의 좌표값 차이와 상기 복수의 지시 위치 센싱 값 사이의 위치 센싱 값 차이를 이용하여 스케일 조정 비율을 결정하는 스케일 조정 비율 결정부; 및
    상기 단말기로부터 수신되는 적어도 하나의 포인팅 위치 센싱 값 혹은 상기 적어도 하나의 포인팅 위치 센싱 값에 대하여 에러 보정 처리한 포인팅 위치 보정 센싱 값에 대하여 상기 스케일 조정 비율을 적용하여 상기 디스플레이 상의 포인팅 좌표 위치를 계산하는 포인팅 좌표 위치 계산부
    를 포함하는 단말기 센서 활용 장치.
  53. 적어도 하나의 센서를 포함하는 단말기가 센싱 값을 제공하는 방법에 있어서,
    외부 장치의 디스플레이 상의 복수의 기준점 각각을 가리키는 상기 단말기의 복수의 지시 위치 센싱 값을 상기 외부 장치로 송신하는 지시 위치 센싱 값 송신 단계; 및
    상기 복수의 지시 위치 센싱 값을 이용하여 스케일 조정 비율을 결정한 상기 외부 장치의 포인팅 좌표 위치를 조작하기 위한 포인팅 위치 센싱 값을 상기 적어도 하나의 센서를 이용하여 측정하고 상기 외부 장치로 송신하는 포인팅 위치 센싱 값 송신 단계
    를 포함하는 센싱 값 제공 방법.
  54. 적어도 하나의 센서를 포함하는 단말기에 있어서,
    외부 장치의 디스플레이 상의 복수의 기준점 각각을 가리키는 상기 단말기의 복수의 지시 위치 센싱 값을 상기 외부 장치로 송신하는 지시 위치 센싱 값 송신부; 및
    상기 복수의 지시 위치 센싱 값을 이용하여 스케일 조정 비율을 결정한 상기 외부 장치의 포인팅 좌표 위치를 조작하기 위한 포인팅 위치 센싱 값을 상기 적어도 하나의 센서를 이용하여 측정하고 상기 외부 장치로 송신하는 포인팅 위치 센싱 값 송신부
    를 포함하는 센싱 값 제공 단말기.
  55. 사용자 모션을 센싱하는 모바일 단말과 연결될 수 있는 게임 수행 서버에서 수행되는 게임 수행 방법에 있어서,
    상기 센싱된 사용자 모션과 연관된 센싱 데이터가 수신되면 상기 수신된 센싱 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계; 및
    상기 게임 클라이언트로부터 상기 게임 조작에 대한 피드백이 수신되면 상기 수신된 피드백을 통해 상기 모바일 단말에 의한 실감형 액션을 수행하는 단계를 포함하는 게임 수행 방법.
  56. 제55항에 있어서, 상기 수신된 센싱 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계는
    제1 센서를 통해 제1 센싱 값을 수신하는 단계; 및
    적어도 하나의 제2 센서를 통해 상기 수신된 제1 센싱 값을 정정하는 단계를 포함하는 단계를 포함하는 것을 특징으로 하는 게임 수행 방법.
  57. 제56항에 있어서, 상기 제1 및 제2 센싱 값들 각각은
    상기 센싱된 사용자 모션에 관한 롤(Roll), 피치(Pitch) 및 요(Yaw) 데이터를 포함하는 것을 특징으로 하는 게임 수행 방법.
  58. 제56항에 있어서, 상기 제1 센서와 상기 적어도 하나의 제2 센서는
    동작 속도와 센싱 정확도 각각의 관점에서 반비례하도록 설계된 것을 특징으로 하는 게임 수행 방법.
  59. 제55항에 있어서,
    상기 수신된 센싱 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계는
    상기 모바일 단말로부터 적어도 두 개의 센싱 값들을 수신하여 상기 센싱 데이터를 결정하는 단계;
    상기 결정된 센싱 데이터를 상기 게임 조작을 위한 명령어로 변환하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  60. 제59항에 있어서,
    상기 수신된 피드백을 통해 상기 모바일 단말에 의한 실감형 액션을 수행하는 단계는
    상기 게임 클라이언트로부터 상기 게임 조작에 해당하는 게임 조작 결과를 상기 피드백으로서 수신하고, 상기 게임 조작 결과를 기초로 상기 실감형 액션을 생성하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  61. 제60항에 있어서,
    상기 게임 조작 결과를 기초로 상기 실감형 액션을 생성하는 단계는
    상기 게임 조작 결과에서 액션 디스크립터를 추출하여 실감형 액션 명령어를 생성하는 단계; 및
    상기 생성된 실감형 액션 명령어를 상기 모바일 단말에 송신하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  62. 제61항에 있어서,
    상기 실감형 액션 명령어를 생성하는 단계는
    상기 모바일 단말에 있는 적어도 하나의 실감형 액션 수단에 따라 상기 액션 명령어를 생성하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  63. 제62항에 있어서,
    상기 실감형 액션 수행 수단은
    디스플레이, 진동 센서, 카메라 및 스피커 중 적어도 하나를 포함하는 것을 특징으로 하는 게임 수행 방법.
  64. 제55항에 있어서,
    상기 수신된 피드백을 선별하여 소셜 콘텐츠를 생성하고, 상기 생성된 소셜 콘텐츠를 SNS 서버에 송신하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  65. 사용자 모션을 센싱하는 모바일 단말과 연결될 수 있는 게임 수행 서버에 있어서,
    상기 센싱된 사용자 모션과 연관된 센싱 데이터가 수신되면 상기 수신된 센싱 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 게임 조작부; 및
    상기 게임 클라이언트로부터 상기 게임 조작에 대한 피드백이 수신되면 상기 수신된 피드백을 통해 상기 모바일 단말에 의한 실감형 액션을 수행하는 실감형 액션 수행부를 포함하는 게임 수행 서버.
  66. 모바일 단말과 연결될 수 있는 게임 수행 서버에서 수행되는 게임 수행 방법에 있어서,
    상기 모바일 단말로부터 사용자에 의한 충격과 연관된 센싱 데이터를 수신하는 단계;
    상기 수신된 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정하는 단계; 및
    상기 결정된 조작 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 단계를 포함하는 게임 수행 방법.
  67. 제66항에 있어서, 상기 사용자에 의한 충격과 연관된 센싱 데이터를 수신하는 단계는
    상기 모바일 단말에 있는 적어도 하나의 센서를 통해 센싱된 직접적 또는 간접적 충격에 대한 센싱 값을 수신하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  68. 제66항에 있어서, 상기 사용자에 의한 충격과 연관된 센싱 데이터를 수신하는 단계는
    상기 모바일 단말에 있는 모션 센서에 의해 센싱된 모션 센싱 값 및 사운드 센서에 의해 센싱된 사운드 센싱 값 중 적어도 하나를 수신하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  69. 제66항에 있어서, 상기 사용자에 의한 충격과 연관된 센싱 데이터를 수신하는 단계는
    제1 모션 센서를 통해 제1 모션 센싱 값을 수신하는 단계; 및
    적어도 하나의 제2 모션 센서를 통해 제2 모션 센싱 값을 수신하여 상기 수신된 제1 모션 센싱 값을 정정하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  70. 제66항에 있어서, 상기 충격 데이터에 해당하는 조작 데이터를 결정하는 단계는
    상기 센싱 데이터에서 상기 충격 데이터에 포함된 백터 패턴 및 사운드 패턴 중 적어도 하나에 해당하는 센싱 값을 추출하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  71. 제70항에 있어서, 상기 백터 패턴은
    상기 모바일 단말에 의한 모션 센싱 값과 연관되고 기 설정된 범위의 모션 크기 및 모션 방향 중 적어도 하나를 포함하는 것을 특징으로 하는 게임 수행 방법.
  72. 제70항에 있어서, 상기 사운드 패턴은
    상기 모바일 단말에 의한 사운드 센싱 값과 연관되고 기 설정된 범위의 사운드 크기 및 주파수 중 적어도 하나를 포함하는 것을 특징으로 하는 게임 수행 방법.
  73. 제70항에 있어서, 상기 충격 데이터에 해당하는 조작 데이터를 결정하는 단계는
    상기 추출된 센싱 값을 상기 게임 조작과 연관된 게임 조작 벡터와 연관시켜 상기 게임 클라이언트에 의해 처리될 수 있는 게임 조작 명령어를 생성하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  74. 제70항에 있어서, 상기 충격 패턴에 해당하는 조작 데이터를 결정하는 단계는
    상기 수신된 센싱 데이터를 기초로 상기 백터 패턴 및 사운드 패턴 중 적어도 하나를 정정하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  75. 제66에 있어서,
    상기 게임 클라이언트로부터 상기 게임 조작에 대한 피드백을 수신하는 단계; 및
    상기 수신된 피드백을 통해 상기 모바일 단말에 의한 실감형 액션을 수행하는 단계를 더 포함하는 것을 특징으로 하는 게임 수행 방법.
  76. 모바일 단말과 연결될 수 있는 게임 수행 서버에 있어서,
    상기 모바일 단말로부터 사용자에 의한 충격과 연관된 센싱 데이터를 수신하는 센싱 데이터 수신부;
    상기 수신된 센싱 데이터에서 게임 조작과 연관된 충격 데이터에 해당하는 조작 데이터를 결정하는 조작 데이터 결정부; 및
    상기 결정된 조작 데이터를 통해 게임 클라이언트에 의한 게임 조작을 수행하는 게임 조작부를 포함하는 게임 수행 서버.
PCT/KR2013/008368 2012-09-14 2013-09-16 게임 제공 방법, 단말, 서버 및 기록매체 WO2014042484A1 (ko)

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
KR10-2012-0102354 2012-09-14
KR1020120102401A KR20140036459A (ko) 2012-09-14 2012-09-14 이동통신단말을 통한 게임 컨트롤 방법 및 장치
KR10-2012-0102359 2012-09-14
KR1020120102359A KR101443185B1 (ko) 2012-09-14 2012-09-14 단말기 센서를 활용하는 방법, 장치 및 기록매체, 그리고 센싱 데이터를 제공하는 방법, 단말기 및 기록매체
KR10-2012-0102399 2012-09-14
KR1020120102487A KR101434274B1 (ko) 2012-09-14 2012-09-14 게임 수행 방법, 이를 수행하는 게임 수행 서버 및 이를 저장한 기록매체
KR10-2012-0102401 2012-09-14
KR1020120102354A KR101415659B1 (ko) 2012-09-14 2012-09-14 단말기 센서를 활용하는 방법, 장치 및 기록매체, 그리고 센싱값을 제공하는 방법, 단말기 및 기록매체
KR10-2012-0102487 2012-09-14
KR1020120102399A KR101348139B1 (ko) 2012-09-14 2012-09-14 사용자 단말과 휴대 단말의 접속 방법, 이를 구현하기 위한 시스템 및 기록 매체
KR1020120126610A KR20140060025A (ko) 2012-11-09 2012-11-09 게임 수행 방법, 이를 수행하는 게임 수행 서버 및 이를 저장한 기록매체
KR10-2012-0126610 2012-11-09

Publications (1)

Publication Number Publication Date
WO2014042484A1 true WO2014042484A1 (ko) 2014-03-20

Family

ID=50278489

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/008368 WO2014042484A1 (ko) 2012-09-14 2013-09-16 게임 제공 방법, 단말, 서버 및 기록매체

Country Status (1)

Country Link
WO (1) WO2014042484A1 (ko)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020091002A (ko) * 2001-11-06 2002-12-05 주식회사 와이어리스리퍼블릭 가속도 가공 장치 및 방법, 및 그의 응용 및 상기 방법을실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수있는 기록매체
KR20070000113A (ko) * 2005-06-27 2007-01-02 주식회사 팬택 통신 단말기에서 가상 공간 게임을 수행하는 방법 및 상기방법이 채용된 통신 단말기
JP2008068135A (ja) * 1999-10-04 2008-03-27 Nintendo Co Ltd ゲームシステム及びそれに用いられるゲーム情報記憶媒体
KR100986619B1 (ko) * 2010-03-12 2010-10-08 이상훈 이동통신단말기를 이용한 멀티입출력장치 및 방법
KR20110109362A (ko) * 2010-03-31 2011-10-06 삼성전자주식회사 휴대용 단말기에서 가속도 센서의 오차를 수정하기 위한 장치 및 방법
KR101108137B1 (ko) * 2011-08-24 2012-01-31 주식회사알앤티에스미디어 네트워크를 이용한 무선 단말기 상호간의 데이타 전송 방법
KR20120050118A (ko) * 2010-11-10 2012-05-18 삼성전자주식회사 모바일 프로젝터를 이용한 낚시 게임 장치 및 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008068135A (ja) * 1999-10-04 2008-03-27 Nintendo Co Ltd ゲームシステム及びそれに用いられるゲーム情報記憶媒体
KR20020091002A (ko) * 2001-11-06 2002-12-05 주식회사 와이어리스리퍼블릭 가속도 가공 장치 및 방법, 및 그의 응용 및 상기 방법을실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수있는 기록매체
KR20070000113A (ko) * 2005-06-27 2007-01-02 주식회사 팬택 통신 단말기에서 가상 공간 게임을 수행하는 방법 및 상기방법이 채용된 통신 단말기
KR100986619B1 (ko) * 2010-03-12 2010-10-08 이상훈 이동통신단말기를 이용한 멀티입출력장치 및 방법
KR20110109362A (ko) * 2010-03-31 2011-10-06 삼성전자주식회사 휴대용 단말기에서 가속도 센서의 오차를 수정하기 위한 장치 및 방법
KR20120050118A (ko) * 2010-11-10 2012-05-18 삼성전자주식회사 모바일 프로젝터를 이용한 낚시 게임 장치 및 방법
KR101108137B1 (ko) * 2011-08-24 2012-01-31 주식회사알앤티에스미디어 네트워크를 이용한 무선 단말기 상호간의 데이타 전송 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Gyroscope sensor and Mobile Game of iphone 4", TISTORY, 9 June 2010 (2010-06-09) *

Similar Documents

Publication Publication Date Title
WO2015005639A1 (ko) 완구 부착형 애드온 장치를 이용한 증강현실 컨텐츠 제공 시스템
WO2017043724A1 (ko) 다트 게임 레슨 모드를 제공하는 방법, 장치 및 컴퓨터 판독 가능 매체에 저장된 컴퓨터 프로그램
AU2017237571B2 (en) Electronic device and method for providing information in electronic device
WO2016175607A1 (ko) 휴대 장치 및 휴대 장치의 콘텐트 화면 변경방법
WO2010151054A2 (ko) 가상 세계 처리 장치 및 방법
WO2016018044A1 (en) Wearable device and method of controlling the same
WO2016018029A1 (en) Mobile terminal and method of operating the same
WO2012150755A1 (ko) 터치 게임을 제공하는 방법, 장치 및 기록매체
WO2023059131A1 (ko) 테니스 자율 훈련 시스템
WO2018036016A1 (zh) 一种锻炼实现方法、客户端以及服务端
WO2017065437A1 (ko) 다트 게임에서 가상 플레이어를 제공하는 방법, 장치 및 컴퓨터 판독 가능 매체에 저장된 컴퓨터 프로그램
WO2017111248A1 (ko) 웨어러블 장치 및 웨어러블 장치와 연결 가능한 사용자 단말장치
WO2021141364A1 (ko) 격투 경기의 채점 시스템 및 방법
WO2020032649A1 (en) Electronic device and communication relaying method thereof
WO2021033808A1 (ko) 이동 단말기 및 이동 단말기를 구비한 전자장치
WO2017080403A1 (zh) 投影设备控制方法、投影设备及智能终端
WO2019066133A1 (ko) 혼합 현실에서의 가상 모바일 단말 구현 시스템 및 이의 제어 방법
WO2018093111A1 (ko) 휴대용 음향기기
WO2014042484A1 (ko) 게임 제공 방법, 단말, 서버 및 기록매체
WO2023090831A1 (ko) 사용자 입력에 기반하여 사운드를 제공하는 전자 장치 및 그 동작 방법
WO2017069307A1 (ko) 와치 타입의 이동 단말기 및 그의 동작 방법
WO2024154971A1 (ko) 전자 장치 및 이를 이용한 운동과 관련된 컨텐츠 제작 방법
WO2020166731A1 (ko) 액션 로봇용 단말기 및 그의 동작 방법
WO2021140457A1 (ko) 골프 정보 제공을 위한 시스템, 휴대형 디바이스, 설치형 디바이스 및 서버
WO2020111722A1 (ko) 운동 이력 관리 장치, 운동 이력 관리 방법 및 이를 컴퓨터에서 실행하기 위한 컴퓨터 프로그램

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13837087

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13837087

Country of ref document: EP

Kind code of ref document: A1