WO1997014115A1 - Dispositif de traitement d'une image en trois dimensions - Google Patents

Dispositif de traitement d'une image en trois dimensions Download PDF

Info

Publication number
WO1997014115A1
WO1997014115A1 PCT/JP1996/002931 JP9602931W WO9714115A1 WO 1997014115 A1 WO1997014115 A1 WO 1997014115A1 JP 9602931 W JP9602931 W JP 9602931W WO 9714115 A1 WO9714115 A1 WO 9714115A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
control circuit
controller
operation object
command
Prior art date
Application number
PCT/JP1996/002931
Other languages
English (en)
French (fr)
Inventor
Satoshi Nishiumi
Kazuo Koshima
Takumi Kawagoe
Original Assignee
Nintendo Co., Ltd.
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 to CA002205058A priority Critical patent/CA2205058C/en
Priority to BR9606670A priority patent/BR9606670A/pt
Priority to US08/836,739 priority patent/US5973704A/en
Priority to EP96933600A priority patent/EP0801363B1/en
Priority to MX9704154A priority patent/MX9704154A/es
Priority to AU72270/96A priority patent/AU724018B2/en
Priority to DE69630584T priority patent/DE69630584T2/de
Application filed by Nintendo Co., Ltd. filed Critical Nintendo Co., Ltd.
Publication of WO1997014115A1 publication Critical patent/WO1997014115A1/ja
Priority to US08/857,882 priority patent/US6155926A/en
Priority to US08/870,100 priority patent/US6139433A/en
Priority to HK98102460A priority patent/HK1003398A1/xx
Priority to US09/377,160 priority patent/US6421056B1/en
Priority to US09/422,259 priority patent/US6331146B1/en
Priority to US09/457,726 priority patent/US6139434A/en
Priority to US09/662,156 priority patent/US6267673B1/en
Priority to US09/689,729 priority patent/US6491585B1/en
Priority to US09/794,623 priority patent/US6590578B2/en
Priority to US09/912,393 priority patent/US6454652B2/en
Priority to US10/042,175 priority patent/US20020057274A1/en
Priority to US10/052,365 priority patent/US20020115486A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • 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/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5252Changing parameters of virtual cameras using two or more virtual cameras concurrently or sequentially, e.g. automatically switching between fixed virtual cameras when a character changes room or displaying a rear-mirror view in a car-driving game
    • 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/23Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
    • 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/24Constructional details thereof, e.g. game controllers with detachable joystick handles
    • 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
    • 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/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/577Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using determination of contact between game characters or objects, e.g. to avoid collision between virtual racing cars
    • 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/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
    • A63F13/95Storage media specially adapted for storing game information, e.g. video game cartridges
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05GCONTROL DEVICES OR SYSTEMS INSOFAR AS CHARACTERISED BY MECHANICAL FEATURES ONLY
    • G05G9/00Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously
    • G05G9/02Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only
    • G05G9/04Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously
    • G05G9/047Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously the controlling member being movable by hand about orthogonal axes, e.g. joysticks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • 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/016Input arrangements with force or tactile feedback as computer generated output to the user
    • 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/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • 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/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • G06F3/0383Signal control means within the pointing device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • 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/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • 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
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1018Calibration; Key and 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
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1025Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals details of the interface with the game device, e.g. USB version detection
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1037Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted for converting control signals received from the game device into a haptic signal, e.g. using force feedback
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1043Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being characterized by constructional details
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/206Game information storage, e.g. cartridges, CD ROM's, DVD's, smart cards
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/63Methods for processing data by generating or executing the game program for controlling the execution of the game in time
    • A63F2300/636Methods for processing data by generating or executing the game program for controlling the execution of the game in time involving process of starting or resuming a game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • A63F2300/643Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car by determining the impact between objects, e.g. collision detection
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6653Methods for processing data by generating or executing the game program for rendering three dimensional images for altering the visibility of an object, e.g. preventing the occlusion of an object, partially hiding an object
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6661Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6661Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera
    • A63F2300/6669Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera using a plurality of virtual cameras concurrently or sequentially, e.g. automatically switching between fixed virtual cameras when a character change rooms
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8005Athletics
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05GCONTROL DEVICES OR SYSTEMS INSOFAR AS CHARACTERISED BY MECHANICAL FEATURES ONLY
    • G05G9/00Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously
    • G05G9/02Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only
    • G05G9/04Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously
    • G05G9/047Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously the controlling member being movable by hand about orthogonal axes, e.g. joysticks
    • G05G2009/0474Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously the controlling member being movable by hand about orthogonal axes, e.g. joysticks characterised by means converting mechanical movement into electric signals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05GCONTROL DEVICES OR SYSTEMS INSOFAR AS CHARACTERISED BY MECHANICAL FEATURES ONLY
    • G05G9/00Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously
    • G05G9/02Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only
    • G05G9/04Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously
    • G05G9/047Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously the controlling member being movable by hand about orthogonal axes, e.g. joysticks
    • G05G2009/0474Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously the controlling member being movable by hand about orthogonal axes, e.g. joysticks characterised by means converting mechanical movement into electric signals
    • G05G2009/04759Light-sensitive detector, e.g. photoelectric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05GCONTROL DEVICES OR SYSTEMS INSOFAR AS CHARACTERISED BY MECHANICAL FEATURES ONLY
    • G05G9/00Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously
    • G05G9/02Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only
    • G05G9/04Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously
    • G05G9/047Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously the controlling member being movable by hand about orthogonal axes, e.g. joysticks
    • G05G2009/04777Manually-actuated control mechanisms provided with one single controlling member co-operating with two or more controlled members, e.g. selectively, simultaneously the controlling member being movable in different independent ways, movement in each individual way actuating one controlled member only in which movement in two or more ways can occur simultaneously the controlling member being movable by hand about orthogonal axes, e.g. joysticks with additional push or pull action on the handle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/013Force feedback applied to a game
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/015Force feedback applied to a joystick
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Definitions

  • the present invention relates to a three-dimensional image processing apparatus and an external storage device used for the same, and in particular, displays, for example, an image of an operation object existing in a three-dimensional space or another object from a predetermined imaging position (viewpoint) on a display.
  • the present invention relates to a three-dimensional image processing device.
  • a main object of the present invention is to provide an image processing apparatus which can always display an operation object X and therefore does not limit the arrangement of other objects.
  • the present invention relates to an image processing apparatus for displaying, on a display, an image obtained by photographing an operation object and another object existing in a three-dimensional space from a predetermined photographing position, and displays data of the operation object and other objects.
  • Predefined program External storage means for storing data, input means for inputting data for changing the position of the operation object in the three-dimensional space, and input means for inputting the data in the three-dimensional space based on the input data.
  • An operation object position data generating means for generating operation object position data so as to change the position of the operation object, based on the data stored in the external storage means and the operation object position data.
  • 3D data creation means for creating an image
  • shooting position data generating means for generating shooting position data indicating a shooting position in a 3D space for shooting an operation object
  • shooting position and operation object X position Detecting means for detecting whether or not another object exists between the camera and the shooting position when the detecting means detects the presence of another object
  • a photographing position data changing means for changing photographing position data so that no other object exists between the object and the three-dimensional data; and an operation object from a predetermined photographing position in the three-dimensional space based on the three-dimensional data and the photographing position data.
  • Display data creating means for creating display data for displaying a video image of the screen on a display, and generating an image signal for outputting an image signal to the display based on the display data created by the display data creating means.
  • An image processing apparatus comprising:
  • the detecting means determines whether there is a possibility that the operation object and the polygon plane of another object may collide with each other.
  • the shooting position data changing means changes the shooting position, that is, the position of the camera, and places another object between the operation object and the camera. Make sure there are no birds. Therefore, the operation object is photographed by the camera without being disturbed by other objects.
  • the present invention it is possible to always display the operation object on the display screen even if other objects are freely arranged. Therefore, when the present invention is applied to a game device, the operation object is always displayed on the display even in a game in which many other objects move on the display screen. Can be displayed.
  • FIG. 1 is a schematic illustration showing one embodiment of the present invention
  • FIG. 2 is a block diagram showing the image processing apparatus of FIG. 1 embodiment in detail
  • FIG. 3 is an illustrative view showing a memory map of the CPU of the embodiment of FIG. 2, showing an external memory and a W-RAM built into a cartridge;
  • FIG. 4 is a block diagram showing in detail the controller control circuit in the embodiment of FIG. 2;
  • Figure 5 is an illustrative view showing the data modulation and demodulation method
  • FIG. 6 is an illustrative view showing a memory map of the RAM of FIG. 4;
  • Figure 7 is a top perspective view of the controller of Figure 2 embodiment:
  • Figure 8 is a perspective view from below of the controller of Figure 2 embodiment:
  • FIG. 9 is a block diagram showing the controller and the expansion device in detail;
  • FIG. 10 is an illustrative view showing an analog joystick of the controller and data of each button;
  • FIG. 11 is an illustrative view showing transmission / reception data of the control circuit when a command “0” is transmitted from the controller control circuit;
  • FIG. 12 is an illustrative view showing transmission / reception data of the control circuit when the command “1” is transmitted from the controller control circuit;
  • FIG. 13 is an illustrative view showing transmission and reception data of the control circuit when a command “2” is transmitted from the controller control circuit;
  • FIG. 14 is an illustrative view showing transmission / reception data of the control circuit when the command “3” is transmitted from the controller control circuit;
  • FIG. 15 is a flowchart showing the operation of the CPU in the embodiment of FIG. 2;
  • FIG. 16 is a flowchart showing the operation of the bus control circuit of the embodiment of FIG. 2;
  • FIG. 17 is a flowchart showing the operation of the controller control circuit of the embodiment of FIG.
  • FIG. 18 is a flowchart showing the operation of the controller circuit in the embodiment of FIG. 2;
  • FIG. 19 is transmission and reception of the control circuit when a command "255" is transmitted from the controller control circuit.
  • Figure 20 is an illustrative view showing the state where a wall exists between the operation object (Mario) and the camera:
  • FIG. 21 is an illustrative view showing the state of FIG. 20 by coordinates
  • FIG. 22 is a flowchart showing an operation for the camera wraparound processing
  • FIG. 23 is a flowchart showing a collision determination routine
  • Figure 2 Schematic illustration of a four-walled borgon
  • Figure 25 is an illustrative view showing each polygon
  • Figure 26 is an illustrative view showing the projection plane
  • Figure 27 is an illustrative view showing the state projected on the YZ plane
  • FIG. 28 is an illustrative view showing a state projected on an XY plane.
  • Figure 29 is an illustrative view showing the normal vector of the surface and the line of sight vector of the camera.
  • FIG. 1 is an external view showing a system configuration of an image processing system according to an embodiment of the present invention.
  • the image processing system is, for example, a video game system, and includes an image processing device main body 10, a ROM cartridge 20 as an example of an external storage device, and a display as an example of display means connected to the image processing device main body 10. 30, a controller 40 as an example of operation means, and a RAM cartridge 50 as an example of an expansion device detachably mounted on the controller 40.
  • the external storage device not only stores image data and program data for image processing of games and the like, but also stores audio data such as music and sound effects as necessary. Alternatively, a CD-ROM or a magnetic disk may be used.
  • an input device such as a keyboard / mouse is used as the operating means.
  • FIG. 2 is a block diagram of the image processing system of this embodiment.
  • the image processing apparatus 10 includes a central processing unit (hereinafter, “CPU”) 11 and a bus control circuit 12. To the bus control circuit 12, a cartridge connector 13 for detachably mounting the ROM cartridge 20 is connected, and a working RAM 14 is connected. Also, the bus control circuit 14 is processed by the CPU 11. And an image signal generating circuit 16 for outputting an image signal, and further, operating data of one or more controllers 40 and Z or A controller control circuit 17 for serially transferring the data of the RAM cartridge 50 is connected.
  • the controller control circuit 17 is connected to a controller connector (hereinafter abbreviated as “connector”) 18 1 to 18 4 provided on the front of the image processing apparatus 10.
  • a controller connector hereinafter abbreviated as “connector”
  • the controller 40 is detachably connected to the connector 18 via a connection jack 41 and a cable 42. In this way, by connecting the controller 40 to the connectors 181-1 through 1884, the controller 40 is electrically connected to the image processing apparatus 10 and data can be transmitted and received between them. .
  • the bus control circuit 12 receives a command output as a parallel signal from the CPU 11 via the bus, converts the signal from parallel to serial, and controls the command using the serial signal.
  • the signal is output to the circuit 17 and the serial signal data input from the controller control circuit 17 is converted into a parallel signal and output to the bus.
  • the data output from the bus is processed by the CPU 11 or stored in the W-RAM 14.
  • W—RAM I 4 is a memory for temporarily storing data processed by the CPU 11, and can read and read data via the bus control circuit 12. You.
  • FIG. 3 is an illustration showing the area of each memory allocated to the memory space of the CPU 11.
  • the memory space accessible by the CPU 11 via the bus control circuit 12 includes an external memory area of the ROM cartridge 20 and a memory area of W—RAM 14.
  • the ROM cartridge 20 is configured by mounting a ROM storing data for game processing on a board and housing the board in a housing.
  • the ROM storage data is shown in an external memory area shown in FIG. . That is, in the ROM, an image data area 201 storing image data necessary for generating an image signal for a game in the image processing apparatus 10 and the CPU 11 performing a predetermined operation. And a program data area 202 storing program data required for the program.
  • the program data overnight area 202 includes an image display program for displaying an image based on the image data 201, a timekeeping program for performing a timekeeping process, and a cartridge 20.
  • a determination program for determining that a later-described expansion device 50 has a predetermined relationship is fixedly stored. The details of the timekeeping program and the judgment program will be described later.
  • the memory area of the W—RAM I4 includes an area 141 in which data indicating the operation state from the control pad is temporarily stored.
  • FIG. 4 is a detailed circuit diagram of the controller control circuit 17.
  • the controller control circuit 17 is provided for serially transmitting and receiving data between the bus control circuit 12 and the controller connectors 18 1 to 18 4.
  • the data transfer control circuit 17 1, Includes a circuit 17 2, a receiving circuit 17 3, and a RAM 17 4 for temporarily storing transmission and reception data.
  • the data transfer control circuit 171 includes a parallel-to-serial conversion circuit and a serial-to-parallel conversion circuit for converting a data format at the time of data transfer, and performs write / read control of the RAM I74.
  • the serial-parallel conversion circuit converts the serial data supplied from the bus control circuit 12 into parallel data, and supplies the parallel data to the RAM I 74 or the transmission circuit 172.
  • the parallel-to-serial conversion circuit converts the parallel data supplied from the RAMI 74 or the reception circuit 173 into serial data and supplies the serial data to the bus control circuit 12.
  • the transmission circuit 172 is provided with data for controlling the signal reading of the controller 40 supplied from the data transfer control circuit 171, and data read into the RAM memory 50 (parallel data). Is converted to serial data and transmitted from the channels CH1 to CH4 corresponding to the respective controllers 40.
  • the receiving circuit 173 converts the data indicating the operation state of each controller 40 input from the channels CH1 to CH4 corresponding to each controller 40 and the read data from the RAM memory 50 into serial data. It is received in the evening, converted to parallel data, and given to the data transfer control circuit 171.
  • the transmission circuit 172 and the reception circuit 173 employ a duty cycle modulation / demodulation method as an example of a modulation / demodulation (hereinafter referred to as “modulation / demodulation”) method.
  • the duty cycle modulation / demodulation method is a modulation / demodulation method in which "1" and "0" are represented by changing the Hi period and Lo period of a signal at fixed time intervals, as shown in Fig. 5. . If the data to be serially transmitted is logic “1 j”, a signal (tH> tL) in which the high-level period tH is longer than the low-level period tL in one cycle period T is described. The data to be transmitted and the data to be transmitted At this time, in one cycle period T, the signal is transmitted as a signal (t ⁇ tL) in which t ⁇ is shorter than tL.
  • duty-cycle modulation / demodulation method eliminates the need to transmit data in synchronization with the clock, and has the advantage that data can be transmitted and received using only one signal line.
  • other modulation / demodulation methods may be used.
  • R AMI 74 includes storage areas or storage areas 174a through 17h as shown in the memory map of FIG. More specifically, an area 174a stores a command for one channel, and an area 174b stores transmission data and reception data for one channel. Area 174c stores commands for two channels, and area 174d stores transmission data and reception data for two channels. The area 174 e stores commands for three channels, and the area 174 f stores transmission data and reception data for three channels. Area 174 g stores commands for four channels, and area 174 h stores transmission data and reception data for four channels.
  • the data transfer control circuit 17 1 transfers the data transferred from the bus control circuit 12 or the operation state data of the controller 40 received by the reception circuit 17 3 or the read data of the RAM cartridge 50 to the RAM 1. It acts to write control to the RAM 74 and read data from the RAM 174 based on an instruction from the bus control circuit 12 and transfer it to the bus control circuit 12.
  • FIG. 7 and 8 are external perspective views of the front and back surfaces of the controller 40.
  • the controller 40 has a shape that can be grasped with both hands or one hand, and a plurality of buttons that generate an electrical signal when pressed, and a vertically upright operation unit protrude outside the housing. Formed.
  • the controller 40 is And a lower housing.
  • an operation section region is formed on an upper surface having a horizontally long planar shape.
  • a cross-shaped digital direction switch (hereinafter referred to as “cross switch”) 400 is provided on the left side, and a plurality of button switches (hereinafter simply referred to as “switches”) are provided on the right side.
  • the cross switch 4003 is a directional switch that indicates the direction of movement of the hero character or the cursor, has up, down, left, and right push points, and is used to specify movement in four directions. You.
  • the switches 404A to 404F vary depending on the game software. For example, in a shutting game, a missile launch button is instructed. Used for The joystick 45 is used instead of the cross switch 400 to indicate the moving direction of the protagonist character.However, since it is possible to indicate the direction of the entire 360-degree angle range, the analog directional switch is used. Used as
  • Three grips 402L, 402C and 402R are formed on the housing of the controller 40 so as to protrude below three places in the operation section area.
  • the grips 402 L, 402 C and 402 R are rod-shaped formed by the palm and middle finger, ring finger, and little finger when gripped by hand, with a slightly thinner base and a thicker center. It becomes narrower toward the open end (the lower side in FIG. 7).
  • an insertion port 409 for detachably mounting the RAM cartridge 50 as an expansion device is formed so as to protrude from the rear surface.
  • Button switches 406 L and 406 R are provided on the left and right sides of the upper side surface of the housing at positions corresponding to positions where the player extends the left and right forefinger, respectively.
  • the back of the base of the center grip 402 is replaced with a switch that replaces switch 406 L when using joystick 45 instead of cross switch 400. 407 is provided.
  • the rear half of the lower half of the housing extends in the bottom direction, and an opening 408 is formed at the tip.
  • a connector (not shown) to which the expansion cartridge 50 is connected is provided behind the opening 408.
  • a lever 409 for ejecting the cartridge 50 is formed in the opening 408.
  • a notch 410 is formed on the opposite side of the lever 409 of the opening 408 into which the above-described expansion force cartridge 50 is inserted, and the notch 410 is provided with the lever 409. Used to form a space for drawing out the expansion cartridge 50 when the expansion cartridge 50 is taken out.
  • FIG. 9 is a detailed circuit diagram of the controller 40 and the RAM cartridge 50 as an example of the expansion device.
  • an operation is performed in order to detect the operation state of each of the switches 400 to 407 or the joystick 45 and transfer the detection data to the controller control circuit 17.
  • Electronic circuits such as the signal processing circuit 44 are included.
  • the operation signal processing circuit 44 includes a reception circuit 441, a control circuit 44, a switch signal detection circuit 44, a counter circuit 44, a transmission circuit 44, a joy port control circuit 44, and a reset circuit. Circuit 444 and NOR gate 448.
  • the reception circuit 441 converts a control signal transmitted from the controller control circuit 17 or a serial signal such as write data to the RAM cartridge 50 into a parallel signal and supplies the parallel signal to the control circuit 442. .
  • the control signal transmitted from the controller control circuit 17 is a reset signal of the X and Y coordinates of the joystick 45
  • the control circuit 4442 generates a reset signal and generates a reset signal.
  • the count value of the X-axis counter 4444 and the Y-axis counter 4444 included in the counter 444 is reset (0) via the gate 444.
  • the joystick 45 includes a photointerrupt for the X-axis and Y-axis so that the lever is disassembled in the X-axis direction and the Y-axis direction to generate a pulse number proportional to the amount of tilt.
  • the respective pulse signals are given to the counters 4 4 4 X and 4 4 4 Y.
  • the counter 444X counts the number of pulses generated according to the amount of tilt when the joystick 45 is tilted in the X-axis direction.
  • the counter 444 Y counts the number of pulses generated according to the amount of tilt when the joystick 45 is tilted in the Y-axis direction.
  • the moving direction and the coordinate position of the hero character or the cursor are determined by the combined vector of the X axis and the Y axis determined by the count value of the counter 444X and the counter 444Y.
  • the counter 4444 X and the power counter 4444 Y are provided with a reset signal supplied from the reset signal generating circuit 447 at power-on, or two switches predetermined by the player. The count value is also reset by the reset signal given from the switch signal detection circuit 443 when pressed simultaneously.
  • the switch signal detection circuit 443 responds to a switch-state output command signal given at a fixed period (for example, at a time interval of 30 seconds of the television frame period) from the control circuit 442, and generates a + switch. 403, switch 404A to 404F, 405, 406L, 406R, and a signal that changes depending on the pressed state of 407, and reads it to the control circuit 442 give.
  • the control circuit 4442 responds to the operation state data read command signal from the controller control circuit 17 by operating the operation state data of each of the switches 403 to 407 and the counter 44 4 4 X. 4 4 4
  • the count value of Y is given to the transmitting circuit 445 in a predetermined data format order.
  • the transmission circuit 445 converts these parallel signals output from the control circuit 442 to serial data, and transfers the serial data to the controller control circuit 17 via the conversion circuit 43 and the signal line 42. .
  • a boat control circuit 446 is connected to the control circuit 442 via an address bus, a data bus, and a boat connector 46.
  • the boat control circuit 446 performs data input / output control (or transmission / reception control) according to the instruction of the CPU 11.
  • the RAM cartridge 50 connects the RAM 51 and a timer chip (or calendar timer) 53 as an example of time-related information generating means to the address bus and data bus, and supplies power to the RAM 51 and the timer counter 53.
  • a decoder 54 for activating a timer counter 53 when a predetermined address is given.
  • the RAM 51 is a RAM having a capacity equal to or less than half of the maximum memory capacity that can be accessed by using the address bus, and is composed of, for example, a 256-kbit RAM. This is because when the value of the most significant bit of the address bus becomes “1”, the value of an arbitrary power counter in the timer chip 53 is read out. This is to prevent overlapping with the read address of 53.
  • the RAM 51 is for pathologically storing backup data related to the game. Even when the RAM cartridge 50 is removed from the port connector 46, the RAM 51 receives power supply from the battery 52 to store the stored data. Security To carry. Details of the type of data stored in the RAM 51, data writing, and use of the stored data will be described later.
  • FIG. 10 shows a data diagram when the image processing apparatus reads data indicating the operation states of the switches 403 to 407 and the joystick 45 from the controller 40. This is illustrated.
  • the data generated by controller 40 consists of 4 bytes of data.
  • the data of the first byte is B, A, G, START, up, down, left and right, that is, switch 4 04 B. 4 0 A, 4 0 7, 4 0 5 and cross switch 4 0 3 Indicates that each of the upper and lower left pressing points is pressed. For example, when the B button, that is, the switch 404B is pressed, the most significant bit of the first byte becomes “1”.
  • the second byte is JSR ST, 0 (not used in the embodiment), L, R, E, D, C and F, ie, switch 49.4.06 L, 406 R, 404 E, 404 D, 404 C, and 404 F are pressed.
  • the third byte indicates the binary value of the X coordinate (the count value of the X counter 444 X), which is a value corresponding to the tilt angle of the joystick 45 in the X direction.
  • the Y coordinate (the count value of the Y force counter 444 Y), which is a value corresponding to the tilt angle of the joystick 45 in the Y direction, is represented by a binary number.
  • each X and Y coordinate value is represented by an 8-bit binary number, if this is converted to a decimal number, the inclination angle of the joystick 45 can be expressed as a number from 0 to 255. it can. If the most significant bit is used for a signature indicating a negative value, the inclination angle of the joystick 45 can be represented by a numerical value from ⁇ 128 to 127.
  • FIG. 11 illustrates the format of a signal transmitted / received to / from the controller 40 in order to identify the type of the image processing apparatus 10 ⁇ .
  • the image processing device 10 transmits a type “0” type data request signal composed of one byte (8 bits) to the control circuit 442 in the controller 40 and responds to this.
  • the control circuit 44 receives the type data signal of the controller 40 of TYPE L (1 byte), TYP EH (1 byte) and status, which are 3 bytes in total.
  • TYPE L and TYPE H are This data represents the function of the device connected to the connector 46.
  • the TYPEL and TYPE H data are unique to each type of the RAM cartridge 50 stored in the RAM cartridge.
  • the image processing apparatus 10 identifies the type of the controller 40, that is, the type of the RAM power cartridge 50 connected to the controller 40, based on the data.
  • Examples of the type of the RAM cartridge 50 include a type in which only the RAM 51 is mounted, a type in which the RAM 51 and a timer chip are mounted, and a type in which the RAM 51 and a liquid crystal display are mounted. Describes in detail the type equipped with RAM51 and a timer chip.
  • the status data is data indicating whether or not an expansion device such as a RAM cartridge 50 is connected to the port, and whether or not the expansion device is connected after reset.
  • FIG. 12 illustrates the format of a signal transmitted / received to / from the controller 40 in order to identify the operation state of the image processing apparatus 10 ⁇ .
  • the image processing apparatus 10 transmits a controller data request signal of a command “1” composed of one byte (8 bits) to the control circuit 442 in the controller 40,
  • the control circuit 44 receives the operation state data signal generated by the control circuit 44 in response to the operation state. Based on these operation state data, the image processing apparatus 10 recognizes how the operator has operated the controller 40 and uses it to change the image.
  • the operation state data signal has been described in detail with reference to FIG.
  • Fig. 13 shows the format of the read data signal when reading data from the RAM 51 in the RAM cartridge 50 connected to the image processing device 10 and the controller 40. This is illustrated.
  • the image processing apparatus 10 sends a read command signal of command 2 consisting of 1 byte (8 bits) to the control circuit 442, and an address H (indicating the upper bit of the address).
  • An address CRC (5 bits) signal for checking an address data transmission error of an address L signal, an address H signal, and an address L signal representing the lower bits (3 bits) of the signal and the address.
  • the data is transmitted and the control circuit 442 generates the data stored in the RAM 51 (32 bytes) signal and the data CRC (check data transmission error). 8 bits) Receives a signal.
  • the address H signal may be simply set to a value of 80 h or more, and the address of 800 h or more may be read.
  • Figure 14 illustrates the format of the write data signal when writing data to the RAM 51 in the RAM cartridge 50 connected to the image processing device 10 controller 40. It was done.
  • the image processing apparatus 10 sends the control circuit 442 an address H (8) indicating the write command signal of command 3 consisting of 1 byte (8 bits) and the upper bit of the address. Bit) signal, an address L signal indicating the lower bits (3 bits) of the address, an address H signal, and an address CRC (5 bits) signal for checking an address data transmission error of the address L signal.
  • a 32-byte write data signal to be written to the RAM 51 is transmitted, and a data CRC (8-bit) signal for checking a data reception error generated by the control circuit 442 in response to this is transmitted.
  • the image processing apparatus 10 determines that the data has been correctly written to the RAM 51 based on receiving the data CRC signal and performing CRC checking with the input data transmitted. Note that, in order to input the time-related information into the image processing device and reset the time and the time, for example, in the timer chip, simply set the end signal H signal to a value of 80 h or more and set the signal to 800 0 What is necessary is just to write in the address of 0h or more.
  • step SI1 the CPU 11 performs initial settings based on initial values (not shown) stored in the program data area 202 in FIG.
  • step S12 the CPU 11 outputs the control pad data request command stored in the program data area 202 to the bus control circuit 12.
  • step S13 the CPU 11 performs predetermined image processing on the program stored in the program data area 202 of FIG. 5 and on the basis of the image data area 201. Further, when the CPU 11 is executing step S13, the bus control circuit 12 is executing steps S21 to S24. Then, step S At 14, CPU 11 outputs image data based on the control pad data stored in control pad data area 141 of FIG. After completing Step S14, the CPU 11 repeats and executes Step S12—Step S14.
  • step S21 the bus control circuit 12 determines whether or not the CPU 11 has output a controller data request command (a request command for switch data of the controller 40 or data of the expansion device 50). to decide. If the controller data request command has not been output, wait until it is output. If the controller data request command has been output, the process proceeds to step S22.
  • step S22 the bus control circuit 12 outputs a command for reading the data of the controller 40 to the controller control circuit 17 (command 1 or command 2 described later).
  • step S23 the bus control circuit 12 determines whether or not the controller control circuit 17 has received data from the controller 40 and has become pathological in the RAM I74.
  • step S24 the bus control circuit 12 transfers the data of the controller 40 described in the RAM 17 4 of the controller control circuit 17 to the W—RAM 14.
  • step S 21 the bus control circuit 12 returns to step S 21, and repeats the operation of step S 21 1—step S 24.
  • FIG. 17 is a flowchart for explaining the operation of the controller control circuit 17.
  • step S31 it is determined whether or not there is a write wait from the bus control circuit 12. If not, the data transfer control circuit 17 1 waits until there is a write wait from the bus control circuit 12. If writing is waiting, next step S At 32, the data transfer control circuit 1-1 stores the commands and / or data for the first to fourth channels (hereinafter abbreviated as f command Z data j) in the RAMI 74.
  • the command / data of the first channel is transmitted to the controller 40 connected to the connector 181. Control circuit
  • step S34 the data transfer control circuit 17 1
  • step S35 the command / data of the second channel is transmitted to the controller 40 in step S35 in the same manner as the operation of the first channel in steps S33 and S34.
  • the control circuit 442 performs a predetermined operation based on the command data, and outputs data to be transmitted to the image processing apparatus 10.
  • step S36 data transfer and write processing of the second channel are performed. Also step
  • the command data of the third channel is transmitted to the controller 40.
  • the control circuit 442 performs a predetermined operation based on the command data, and outputs data to be transmitted to the image processing apparatus 10.
  • step S38 data transfer and write processing of the second channel are performed.
  • step S39 the command data of the fourth channel is transmitted to the controller 40.
  • the control circuit 44 42 of the controller 40 performs a predetermined operation based on the command data, and outputs data to be transmitted to the image processing apparatus 10.
  • step S41 the data transfer control circuit 17 1 executes steps S34, S36,
  • the data received at 538 and S40 are transferred to the bus control circuit 12 at once.
  • step S51 it is determined whether or not a command has been input from the image processing apparatus 10 to the control circuit 442. If no command has been entered, wait until a command is entered.
  • step S52 it is determined in step S52 whether or not the command input to the control circuit 442 is a status request command (command "0"). If the command is “0”, the process proceeds to step S53, where status transmission processing is performed.
  • step S53 when the CPU 11 outputs the command "0", the data of the format shown in FIG. 13 is transmitted and received between the image processing apparatus 10 and the controller 40. .
  • the control circuit 442 receives the data of the command “0” composed of one byte (8 bits), the control circuit 442, TYPE L (1 byte), TYP E
  • TYP EL and TYPE H are data for identifying what functions the device connected to the joyport connector 46 has, and are unique data recorded in the RAM cartridge 50. Data.
  • the image processing apparatus 10 recognizes what kind of extension device (for example, the RAM cartridge 50 or other extension device such as a liquid crystal display) is in contact with the controller 40. It is possible to do.
  • the status is data indicating whether an expansion device such as a RAM cartridge 50 is connected to the port, and whether the expansion device has been connected after reset.
  • step S52 determines whether the command input in step S54 is a pad data request command (command "1"). You. In the case of the command “1”, the process proceeds to step S55, in which pad data transmission processing is performed. Specifically, when the CPU 11 outputs the command “1”, data in the format shown in FIG. 14 is transmitted and received between the image processing apparatus 10 and the controller 40. At this time, when the control circuit 442 receives the data of the command 1 composed of one byte (8 bits), the control circuit 442 receives B, A, G, START, upper. Lower, left, right.
  • the image processing device 10 recognizes how the operator has operated the controller 40, and the image processing device 10 responds to the operation state of the controller 40. Used to change the image.
  • step S56 the input command reads the data related to the RAM cartridge 50 connected to the expansion connector. It is determined whether the command is a request command (command No. 2). In the case of the command “2”, the process proceeds to step S57, and the extended connector writing process is performed. Specifically, when the CPU 11 outputs the command # 2J, the data of the format shown in FIG. 15 is transmitted and received between the image processing apparatus 10 and the controller 40. At this time, the control circuit 442 controls the command 2 data composed of one byte (8 bits), the address H (8 bits) indicating the upper bit of the address, and the lower bit (3 bits) of the address.
  • the data (32) stored in the RAM cartridge is based on the received address data.
  • Byte) and a CRC (8 bits) to check for data errors In this way, by connecting the RAM cartridge 50 (or another expansion device) and the image processing device 10, the image processing device 10 can store data from the RAM cartridge 50 or the like. Can be processed.
  • step S56 If it is determined in step S56 that the command is not "2”, the command input in step S58 is followed by the information of the information related to the RAM cartridge 50 connected to the expansion connector 46. It is determined whether the command is a read request command (command ⁇ 3 J). In the case of the command “3”, in step S59, the data readout processing of the RAM load cartridge 50 connected to the extension connector 46 is performed. Specifically, when the CPU 11 outputs the command “3”, the data shown in FIG. 3 is transmitted and received between the image processing apparatus 10 and the controller 40 in response to the command “3”.
  • control circuit 442 includes the data of the command 3 composed of 1 byte (8 bits), the address H (8 bits) indicating the upper bit of the address, and the lower bit (3 bits) of the address. Bit L) and the address data error of transmission / reception are checked.
  • the address CRC 5 bits
  • the data to be sent to the RAM cartridge 50 32 bytes
  • the CRC to check the received data for errors (8 bits).
  • step S58 If it is determined in step S58 that the command is not "3”, it is determined in step S60 whether or not the command is a reset command (command 255). In the case of the reset command (255), the reset processing of the counter 444 of the joystick 45 is performed in step S61.
  • the CPU 11 when the CPU 11 outputs the command 255, the data shown in FIG. 21 is transmitted and received between the image processing apparatus 10 and the controller 40. That is, when the control circuit 442 of the controller 40 receives the data of the command 255 composed of one byte (8 bits), it outputs a reset signal, and the X counter 444 X And Y counter 4 4 4 4 Reset Y and transmit TYPEL (1 byte), TYPEH (1 byte) and status as described above.
  • the camera position (shooting position) is corrected by moving the camera position so that it is parallel to this plane ⁇ .
  • the angle of the ⁇ axis parallel to the plane is calculated by the equation of the plane.
  • the next step S102 it is determined whether or not the number N of polygons to be checked is equal to the polygon number n, that is, whether collision has been determined for all polygons. If "NO" in this step S102, a collision determination is made in the next step S103.
  • FIG. 23 shows this step S103, that is, the collision determination routine in detail.
  • wall data to be subjected to a collision determination are shown in FIGS. 24 and 25.
  • the wall data is represented as a set of triangular polygons as shown in Fig. 25 as shown in Fig. 24, and each such borgon is stored in the memory as a list of wall polygons.
  • step S201 of FIG. 23 a point Q (Xg, Yg, Zg) and a radius R are input. Note that point Q is the point to check, and radius R is the distance considered to collide with the wall.
  • step S202 the wall hit flag is reset.
  • step S203 it is determined whether the wall polygon list described above is stored in the memory. If there is a wall polygon list, in the next step S204, it is determined whether or not the polygon is a polygon to be routed around the camera. If "YE S" in step S204, the process proceeds to step S205.
  • step S205 do not calculate the distance (dR) between point Q and the plane of the wall polygon according to equation (2).
  • step S206 it is determined whether or not the distance d scale calculated in step S205 is smaller than the radius R. If the distance d R is larger than the radius R, Mario does not collide with the wall, and the process returns to the previous step S 203.
  • step S206 determines whether "YE S" is determined in step S206, that is, when IdR I in step S207, the position coordinates (Xg ', Yg', 2g ') of the point Q' where the straight line drawn perpendicularly from the point Q to the wall polygon P and the wall polygon plane are Calculate according to equation (3).
  • a plane to be projected is determined according to the direction of the wall (the value of A). That is, when A 0.70 or 0.707, the projection is performed on the YZ plane shown in FIG. 26, and otherwise, it is projected on the XY plane shown in FIG. Then, when projecting onto the YZ plane, it is determined in FIG. 27 whether or not the point Q ′ is inside the polygon P1.
  • the sign of the counterclockwise outer product value is determined for the coordinates of the vertex of the point Q 'and the polygon P1 in FIG. 28.
  • C in the polygon plane equation is C ⁇ 0, if the result of the outer product is all 0 or negative, it is determined that the point Q 'is inside the polygon P1.
  • step S208 it is checked in step S208 whether or not the point Q 'is inside the polygon, and in step S209, it is determined whether or not the point Q' is inside the polygon. If “YE S” in this step S209, the flag per wall reset in the previous step S202 is set (step S210). Then, the process returns to FIG.
  • the above collision determination is an example, and it is needless to say that the collision determination can be made by other methods.
  • step S104 it is determined in step S104 whether the flag for hitting a wall is set. If "NO" in this step S104, the wraparound process is not necessary, so that the number n of the point to be checked in step S105 is incremented, and the process returns to step S102.
  • step S 104 it is determined in steps S 106 and S 107 whether or not the wall is behind. That is, the direction of the polygon is determined. Whether or not the polygon is facing the camera (viewpoint) can be determined by examining the sign of the inner product of the normal vector N and the visual vector V of the surface in Fig. 29. The conditional expression is given by equation (6).
  • V-N VxNx + VyNy + V z N z-(6)
  • step S105 the point number n is incremented in step S105, and the process returns to step S102.
  • step S107 If the surface between the camera and Mario is facing down, "YE S" is given in step S107, and a wraparound process is performed in the next steps S108 and S109.
  • step S108 the movement angle for changing the camera position (shooting position) is calculated based on the plane equation of the wall. That is, the equation of the plane by three points P 1 (XI, Y 1, Z 1), P 2 (X 2, Y 2, Z 2) and P 3 (X 3, Y 3, Z 3) on the plane is It is represented by the polynomial of equation (7).
  • the wraparound angle of the camera is either Ry + 90 ° or Ry—90 °. That is, in step S109, the camera is rotationally moved in the direction of Ry + 90 ° or Ry-90 ° around the mario, that is, the operation object. Specifically, the camera is moved to a position closer to the current camera position (C in Fig. 21).

Description

明 糸田 三次元画像処理装置 技術分野
この発明は三次元画像処理装置およびそれに用いる外部記憶装置に関し、 特に たとえば三次元空間に存在する操作ォブジェク トゃ他のオブジェク トを所定の撮 影位置 (視点) から撮影した映像をディスプレイに表示する三次元画像処理装置 に関する。 従来技術
従来のいわゆる 3 D (3-Dimens i onal) ゲ一厶においては、 三次元データで構成 された操作オブジェク 卜 (操作者によって操作され得るオブジェク 卜) を所定の 方向および距離からカメラで撮影した映像をに表示していた。
従来の 3 Dゲームでは、 操作ォブジヱク 卜とカメラとの間に背景画像または敵 キャラクタとして使用されているオブジェク 卜 (他のォブジェク ト) が存在する とき、 または、 他のォブジヱク 卜が移動して操作ォブジェク 卜とカメラの間に割 り込んできたとき、 操作オブジェク トを撮影できなかった。
したがって、 このような従来の 3 Dゲームでは、 プログラムによって、 操作ォ ブジェク 卜とカメラとの間に他のォブジヱク 卜が存在しないように他のオブジェ ク 卜の配置を制限しなければならなかった。 発明の概要
それゆえに、 この発明の主たる目的は、 常に操作ォブジ Xク トを表示すること ができ、 したがって、 他のオブジェク 卜の配置を制限することがない、 画像処理 装置を提供することである。
この発明は、 三次元空間に存在する操作オブジェク トおよび他のオブジェク 卜 を所定の撮影位置から撮影した映像をディスプレイに表示する画像処理装置であ つて、 操作ォブジヱク 卜および他のオブジェク 卜のデータおよび所定のプログラ ムを記憶している外部記億手段、 操作ォブジェク 卜の三次元空間での位置を変化 させるデータを入力するための入力手段、 入力手段によつて入力されたデータに 基づいて三次元空間での操作ォブジヱク 卜の位置を変化させるように操作ォブジ ェク 卜位置データを発生する操作ォブジェク ト位置データ発生手段、 外部記憶手 段に記憶されているデータと操作ォブジヱク ト位置データとに基づいて三次元デ 一夕を作成する三次元データ作成手段、 操作オブジェク トを撮影するための三次 元空間での撮影位置を示す撮影位置データを発生する撮影位置データ発生手段、 撮影位置と操作ォブジ Xク ト位置との間に他のォブジ ク 卜が存在するか否かを 検出する検出手段、 検出手段が他のォブジ Xク 卜の存在を検出したとき撮影位置 と操作才ブジェク ト位置との間に他のォブジェク 卜が存在しないように撮影位置 データを変更する撮影位置データ変更手段、 三次元データおよび撮影位置データ に基づいて三次元空間の所定の撮影位置から操作オブジェク トを撮影した映像を ディスブレイに表示するための表示データを作成する表示データ作成手段、 およ び表示データ作成手段によって作成された表示データに基づいてディスブレイに 画像信号を出力する画像信号発生手段を備える、 画像処理装置である。
検出手段は、 操作ォブジェク 卜と、 他のォブジ ク 卜のポリゴン平面とが衝突 する可能性があるかどうか判断する。 操作ォブジ Xク 卜と他のォブジヱク 卜との 衝突の可能性があるとき、 撮影位置データ変更手段が撮影位置すなわち、 カメラ の位置を変更して、 操作ォブジヱク 卜とカメラとの間に他のォブジヱク 卜が存在 しないようにする。 したがって、 操作ォブジヱク 卜が他のォブジェク 卜に邪魔さ れずにカメラによって写される。
この発明によれば、 他のォブジ Xク 卜を自由に配置していても、 操作オブジェ ク 卜を常にディスプレイ画面に表示させることが可能である。 したがって、 この 発明がゲーム装置に適用された場合には、 操作ォブジェク トゃ多数の他のォブジ ェク トがディスプレイ画面中を移動するようなゲームにおいても、 常に操作ォブ ジェク トをデイスブレイ上に表示することができる。
この発明の上述の目的およびその他の目旳, 特徵, 局面および利点は、 添付図 面に関連して行われる以下の実施例の詳細な説明から一層明らかとなろう。 図面の簡単な説明
図 1 はこの発明の一実施例を示す概略図解図であり ;
図 2は図 1実施例の画像処理装置を詳細に示すプロック図であり ;
図 3は図 2実施例の C P Uのメモリマップを示す図解図であり、 カートリ ッジ に内蔵されている外部メモリおよび W— R A Mを示し ;
図 4は図 2実施例におけるコントローラ制御回路を詳細に示すプロック図であ り ;
図 5はデータの変復調方法を示す図解図であり ;
図 6は図 4の R A Mのメモリマップを示す図解図であり ;
図 7は図 2実施例のコン トローラの上から見た斜視図であり :
図 8は図 2実施例のコントローラの下から見た斜視図であり :
図 9はコン卜ローラおよび拡張装置を詳細に示すブロック図であり ; 図 1 0はコントローラのアナログジョイスティ ックおよび各ボタンのデータを 示す図解図であり ;
図 1 1はコン トローラ制御回路からコマン ド" 0 " が送信されたときの制御回 路の送受信データを示す図解図であり ;
図 1 2はコン トローラ制御回路からコマン ド" 1 " が送信されたときの制御回 路の送受信データを示す図解図であり ;
図 1 3 コントローラ制御回路からコマンド" 2 " が送信されたときの制御回路 の送受信データを示す図解図であり ;
図 1 4はコン トローラ制御回路からコマン ド" 3 " が送信されたときの制御回 路の送受信データを示す図解図であり ;
図 1 5は図 2実施例の C P Uの動作を示すフローチャートであり ;
図 1 6は図 2実施例のバス制御回路の動作を示すフローチャー トであり ; 図 1 7は図 2実施例のコン トローラ制御回路の動作を示すフローチヤ一卜であ
<0 ;
図 1 8は図 2実施例のコン卜ローラ回路の動作を示すフローチヤ一 卜であり ; 図 1 9はコン卜ローラ制御回路からコマンド" 2 5 5 " が送信されたときの制 御回路の送受信データを示す図解図であり ; 図 2 0は操作ォブジ ク 卜 (マリオ) とカメラとの間に壁が存在する状態を示 す図解図であり :
図 2 1 は図 2 0の状態を座標で示す図解図であり ;
図 2 2はカメラの回り込み処理のための動作を示すフローチヤ一トであり ; 図 2 3は衝突判定ルーチンを示すフローチヤ一卜であり ;
図 2 4壁ボリゴンを示す図解図であり ;
図 2 5は各ポリゴンを示す図解図であり ;
図 2 6は投影面を示す図解図であり ;
図 2 7は YZ平面に投影した状態を示す図解図であり ;
図 2 8は XY平面に投影した状態を示す図解図であり ;そして
図 2 9は面の法線べク トルおよびカメラの視線べク トルを示す図解図である。 実施例
図 1はこの発明の一実施例の画像処理システムのシステム構成を示す外観図で ある。 画像処理システムは、 たとえばビデオゲームシステムであって、 画像処理 装置本体 1 0と、 外部記憶装置の一例の ROMカートリッジ 2 0と、 画像処理装 置本体 1 0に接続される表示手段の一例のディスプレイ 3 0と、 操作手段の一例 のコン トローラ 4 0と、 コン トローラ 4 0に着脱自在に装着される拡張装置の一 例の RAMカー卜リッジ 5 0とを含んで構成される。 なお、 外部記憶装置は、 ゲ ーム等の画像処理のための画像データやプログラムデータを記慷するとともに、 必要に応じて音楽や効果音等の音声データを記憶するものであり、 ROMカート リッジに代えて CD- ROMや磁気ディスクを用いてもよい。 操作手段は、 この 実施例の画像処理システムがパーソナルコンピュー夕に適用される場合には、 キ —ボードゃマウス等の入力装置が用いられる。
図 2はこの実施例の画像処理システムのブロック図である。 画像処理装置 1 0 には、 中央処理ュニッ ト (以下 「C PU」 ) 1 1およびバス制御回路 1 2が内蔵 される。 バス制御回路 1 2には、 ROMカー ト リ ッジ 2 0を着脱自在に装着する ためのカートリ ッジ用コネクタ 1 3が接続されるととともに、 ワーキング RAM 1 4が接続される。 また、 バス制御回路 1 4には、 C PU 1 1によって処理され た音声信号を出力するための音声信号発生回路 1 5および画像信号を出力するた めの画像信号発生回路 1 6が接続され、 さらに 1つまたは複数のコン 卜ローラ 4 0の操作データおよび Zまたは RAMカートリッジ 5 0のデータをシリアルで転 送するためのコン トローラ制御回路 1 7が接続される。 コン トローラ制御回路 1 7には、 画像処理装置 1 0の前面に設けられるコントローラ用コネクタ (以下 「 コネクタ」 と略称する) 1 8 1〜 1 8 4が接続される。 コネクタ 1 8には、 接続 用ジャック 4 1およびケーブル 4 2を介してコントローラ 4 0が着脱自在に接続 される。 このように、 コネクタ 1 8 1〜 1 8 4にコントローラ 4 0を接続するこ とにより、 コントローラ 4 0が画像処理装置 1 0と電気的に接続され、 相互間の データの送受信が可能とされる。
より具体的には、 バス制御回路 1 2は、 C PU 1 1からバスを介してパラレル 信号で出力されたコマンドを入力し、 パラ レル一シリアル変換して、 シリアル信 号でコマン ドをコントローラ制御回路 1 7に出力し、 かつコン卜ローラ制御回路 1 7から入力したシリアル信号のデータをパラ レル信号に変換し、 バスに出力す る。 バスから出力されたデータは、 C PU 1 1によって処理されたり、 W— RA M 1 4に記憶される等の処理が行われる。 換言すれば、 W— RAM I 4は、 CP U 1 1によって処理されるデータを一時記憶するためのメモリであって、 バス制 御回路 1 2を介してデータの読出 '窨込が可能とされる。
図 3は CPU 1 1のメモリ空間に割り当てられた各メモリの領域を示す図解で ある。 C PU 1 1がバス制御回路 1 2を介してアクセスできるメモリ空間には、 ROMカートリ ッジ 2 0の外部メモリ領域と、 W— R AM 1 4のメモリ領域があ る。 ROMカートリッジ 2 0は、 ゲーム処理のためのデータを記憶した ROMを 基板に実装し、 その基板をハウジングに収納して構成されるが、 ROM記憶デー タが図 3に示す外部メモリ領域に示される。 すなわち、 ROMには、 画像処理装 置 1 0にゲームのための画像信号を発生させるために必要な画像データを記憶し た画像データ領域 2 0 1 と、 CPU 1 1が所定の動作を行うために必要なプログ ラムデータを記憶したプログラムデータ領域 2 0 2とが含まれる。 プログラムデ 一夕領域 2 0 2には、 画像データ 2 0 1に基づいて画像表示を行うための画像表 示プログラムと、 計時処理を行うための計時プログラムと、 カートリ ッジ 2 0と 後述の拡張装置 5 0とが所定の関係にあることを判断するための判断プログラム とが固定的に記憶されている。 なお、 計時プログラムおよび判断プログラムの詳 細については後述する。 一方、 W— RAM I 4のメモリ領域は、 コン トロールパ ッ ドからの操作状態を示すデータを一時記愴する領域 1 4 1を含む。
図 4はコントローラ制御回路 1 7の詳細な回路図である。 コントローラ制御回 路 1 7は、 バス制御回路 1 2とコン トローラ用コネクタ 1 8 1〜 1 8 4との間で データをシリアルで送受信するために設けられ、 データ転送制御回路 1 7 1 , 送 信回路 1 7 2, 受信回路 1 7 3および送受信データを一時記憶するための RAM 1 7 4を含む。 データ転送制御回路 1 7 1は、 データ転送時にデータフォーマツ 卜を変換するためにパラレル一シリアル変換回路とシリアル一パラ レル変換回路 とを含むとともに、 RAM I 7 4の書込み読出し制御を行う。 シリアル—パラレ ル変換回路は、 バス制御回路 1 2から供給されるシリアルデータをパラレルデー 夕に変換して RAM I 7 4または送信回路 1 7 2に与える。 パラレル一シリアル 変換回路は、 RAMI 7 4, または受信回路 1 7 3から供給されるパラレルデー タをシリアルデータに変換してバス制御回路 1 2に与える。 送信回路 1 7 2は、 データ転送制御回路 1 7 1から供給されるコン卜ローラ 4 0の信号読込制御のた めのデータおよび RAM力一トリ ッジ 5 0への鲁込データ (パラレルデータ) を シリアルデータに変換して、 複数のコントローラ 4 0のそれぞれに対応するチヤ ンネル CH 1〜CH 4から送信する。 受信回路 1 7 3は、 各コン トローラ 4 0に 対応するチャンネル CH 1〜CH 4から入力される各コントローラ 4 0の操作状 態を示すデータおよび RAM力一トリッジ 5 0からの読出データをシリアルデー 夕で受信し、 パラレルデータに変換してデータ転送制御回路 1 7 1に与える。 送信回路 1 7 2および受信回路 1 7 3は、 変調 ·復調 (以下 「変復調」 という ) 方式の一例として、 デューティーサイクル変復調方式を採用している。 デュー ティーサイクル変復調方式は、 図 5に示すように、 一定時間間隔で信号の H iの 期間と L oの期間とを変化させることによって 「 1」 と 「 0」 とを表す変復調方 式である。 変調方式を具体的に説明すると、 シリアル送信すべきデータが論理 「 1 j のとき、 1サイクル期間 Tにおいてハイ レベル期間 t Hをローレベル期間 t Lより長く した信号 ( t H〉 t L) を送信し、 送信すべきデータが論理 「 0」 の とき、 1サイクル期間 Tにおいて、 t Ηを t Lより短く した信号 ( t Ηく t L ) で送信する。
—方、 復調方式は、 受信したシリアル信号 (ビッ ト伝送信号) をサンプリング し、 受信信号がハイ レベルかローレベルかを常時監視しておき、 受信信号のレべ ルがハイからローに変わるまでの時間を t L、 ハイからローに変わるまでの時間 を t Hとすれば、 1サイクルが T = t L + t Hで表される。 このとき、 t Lと t Hとの関係が t Lく t Hであるとき論理 「 1」 と認識し、 t L〉 t Hであるとき 論理 「 0」 と認識することにより、 復調する。 このようなデューティ一サイクル 変復調方式を使用すれば、 ク口ックに同期させてデータを送る必要がなくなり、 1本の信号線だけでデータを送受信できる利点がある。 なお、 2本の信号線を有 する場合は、 他の変復調方式を用いても良いことは勿論である。
R A M I 7 4は、 図 6のメモリマップに示すように記億領域または記憶エリア 1 7 4 a〜 1 7 hを含む。 具体的には、 エリア 1 7 4 aには 1 チャンネル用のコ マン ドが記憶され、 エリア 1 7 4 bには 1 チャンネル用の送信データおよび受信 データが記憶される。 エリア 1 7 4 cには 2チヤンネル用のコマン ドが記憶され 、 エリア 1 7 4 dには 2チャンネル用の送信データおよび受信データが記憶され る。 エリア 1 7 4 eには 3チヤンネル用のコマンドが記憶され、 エリア 1 7 4 f には 3チャンネル用の送信データおよび受信データが記憶される。 エリア 1 7 4 gには 4チヤンネル用のコマン ドが記憶され、 エリア 1 7 4 hには 4チヤンネル 用の送信データおよび受信データが記憶される。
従って、 データ転送制御回路 1 7 1は、 バス制御回路 1 2から転送されたデー タまたは受信回路 1 7 3で受信されたコントローラ 4 0の操作状態データや R A Mカートリッジ 5 0の読出データを R A M 1 7 4に書込み制御したり、 バス制御 回路 1 2からの命令に基づいて R AM 1 7 4のデータを読出してバス制御回路 1 2へ転送するように働く。
図 7および図 8はコン トローラ 4 0の表面と裏面の外観斜視図である。 コン ト ローラ 4 0は、 両手または片手で掌握可能な形状であり、 そのハウジングの外部 には押圧することによつて電気的信号を発生する複数のボタンと、 垂直に直立し た操作部が突出して形成される。 具体的には、 コン トローラ 4 0は、 上ハウジン グと下ハウジングから構成される。 コントローラ 4 0のハウジングには、 横長の 平面形状を有する上面に操作部領域が形成される。 コン トローラ 4 0の操作部領 域には、 左側に十字型のディジタル方向スィッチ (以下 「十字スィッチ」 という ) 4 0 3が設けられ、 右側に複数のボタンスィ ッチ (以下単に 「スィ ッチ」 と略 称する) 4 0 4 A〜 4 0 4 Fが設けられ、 横方向の略中央部にスター卜スィッチ 4 0 5が設けられ、 中央下部にアナログ入力可能なジョイスティ ック 4 5が設け られる。 十字スィツチ 4 0 3は、 主人公キャラクタまたはカーソルの移動方向を 指示する方向スィ ッチであり、 上, 下, 左, 右の押点を有し、 4方向の移動を指 定するのに使用される。 スィ ッチ 4 0 4 A〜 4 0 4 Fは、 ゲームソフ トによって 異なるが、 たとえばシユ ーティ ングゲームではミサイルの発射ボタン、 ァクショ ゲームではジャンプ, キックや物を取る等の各種の動作を指示するために使用さ れる。 ジョイスティ ック 4 5は、 十字スィツチ 4 0 3に代えて主人公キャラクタ の移動方向の指示等に用いられるが、 3 6 0度の全角度範囲の方向指示が可能で あるので、 アナログ方向指示スィッチとして利用される。
コン トローラ 4 0のハウジングには、 操作部領域の 3か所の下方に突出するよ うに、 3本のグリップ 4 0 2 L , 4 0 2 Cおよび 4 0 2 Rが形成される。 グリツ プ 4 0 2 L , 4 0 2 Cおよび 4 0 2 Rは、 手で握ったときに掌と中指, 薬指, 小 指とで形作られる棒状であって、 付け根部分が少し細く、 中央で太くなり、 解放 端 (図 7の下方側) に向かって細く形成される。 コントローラ 4 0の下ハウジン グの中央上部には、 拡張装置である R A Mカートリッジ 5 0を着脱自在に装着す るための挿入口 4 0 9が裏面より突出して形成される。 ハウジングの上辺側面の 左右には、 プレイヤが左右の人指し指を延ばした位置に対応する位置にボタンス イッチ 4 0 6 Lおよびボタン 4 0 6 Rが設けられる。 中央のグリ ッブ 4 0 2じの 付け根部分の裏面には、 十字スィツチ 4 0 3に代えてジョイスティ ック 4 5を使 用するときに、 スィッチ 4 0 6 Lに代わる機能のスィツチとしてスィツチ 4 0 7 が設けられる。
ハウジングの下ハーフの背面側は底面方向に延長され、 その先端には開口部 4 0 8が形成されている。 開口部 4 0 8の奥には拡張カートリ ッジ 5 0がそこに接 統されるコネクタ (図示せず) が設けられている。 また、 開口部 4 0 8に揷入さ れたカートリッジ 5 0を排出するためのレバー 4 0 9が開口部 4 0 8に形成され ている。 そして、 上述の拡張力一卜リッジ 5 0を挿入する開口部 4 0 8のレバ一 4 0 9の反対側には、 切欠 4 1 0が形成され、 この切欠 4 1 0はレバー 4 0 9を 用いて拡張カートリッジ 5 0を取り出すときに拡張カートリ ッジ 5 0を引き出す ためのスペースを形成する。
図 9はコン トローラ 4 0および拡張装置の一例の R A Mカートリッジ 5 0の詳 細な回路図である。 コン トローラ 4 0のハウジング内には、 各スィツチ 4 0 3〜 4 0 7またはジョイスティ ック 4 5等の操作状態を検出しかつその検出データを コントローラ制御回路 1 7へ転送するために、 操作信号処理回路 4 4等の電子回 路が内葳される。 操作信号処理回路 4 4は、 受信回路 4 4 1 , 制御回路 4 4 2 , スィツチ信号検出回路 4 4 3 , カウンタ回路 4 4 4 , 送信回路 4 4 5 , ジョイポ 一卜制御回路 4 4 6 , リセッ ト回路 4 4 7および N O Rゲート 4 4 8を含む。 受信回路 4 4 1は、 コントローラ制御回路 1 7から送信される制御信号や R A Mカー卜リ ッジ 5 0への書込データ等のシリアル信号をパラレル信号に変換して 制御回路 4 4 2に与える。 制御回路 4 4 2は、 コン卜ローラ制御回路 1 7から送 信される制御信号がジョイスティ ック 4 5の X , Y座標のリセッ 卜信号であると き、 リセソ ト信号を発生して N O Rゲ一ト 4 4 8を介してカウンタ 4 4 4に含ま れる X軸用カウンタ 4 4 4 Xと Y軸用カウンタ 4 4 4 Yの計数値をリセッ ト (0 ) させる。 ジョイスティ ック 4 5は、 レバーの傾き方向の X軸方向と Y軸方向に 分解して傾き量に比例したパルス数を発生するように、 X軸用と Y軸用のフォ 卜 ィンタラプトを含み、 それぞれのパルス信号をカウンタ 4 4 4 Xとカウンタ 4 4 4 Yに与える。 カウンタ 4 4 4 Xは、 ジョイスティ ック 4 5が X軸方向に傾けら れたとき、 その傾き量に応じて発生されるパルス数を計数する。 カウンタ 4 4 4 Yは、 ジョイスティ ック 4 5が Y軸方向に傾けられたとき、 その傾き量に応じて 発生されるパルス数を計数する。 従って、 カウンタ 4 4 4 Xとカウンタ 4 4 4 Y との計数値によって決まる X軸と Y軸の合成べク トルによって、 主人公キャラク タまたはカーソルの移動方向と座標位置が決定されることになる。 なお、 カウン タ 4 4 4 Xおよび力ゥンタ 4 4 4 Yは、 電源投入時にリセッ ト信号発生回路 4 4 7から与えられるリセッ 卜信号、 またはプレイヤが予め定める 2つのスィツチが 同時に押圧されたときにスィツチ信号検出回路 4 4 3から与えられるリセッ ト信 号によっても、 その計数値がリセッ 卜される。
スィツチ信号検出回路 4 4 3は、 制御回路 4 4 2から一定周期 (たとえば、 テ レビジョンのフレーム周期の 1ノ3 0秒間隔) で与えられるスィツチ状態の出力 指令信号に応答して、 +字スィツチ 4 0 3, スィッチ 4 0 4 A〜4 0 4 F, 4 0 5 , 4 0 6 L, 4 0 6 Rおよび 4 0 7の押圧状態によって変化する信号を読込み 、 それを制御回路 4 4 2へ与える。
制御回路 4 4 2は、 コントローラ制御回路 1 7からの操作状態データの読出指 令信号に応答して、 各スィツチ 4 0 3〜4 0 7の操作状態データおよびカウンタ 4 4 4 X. 4 4 4 Yの計数値を所定のデータフォーマツ 卜の順序で送信回路 4 4 5に与える。 送信回路 4 4 5は、 制御回路 4 4 2から出力されたこれらのパラレ ル信号をシリアルデータに変換して、 変換回路 4 3および信号線 4 2を介してコ ントローラ制御回路 1 7へ転送する。
また、 制御回路 4 4 2には、 ァドレスバスおよびデータバスならびにボートコ ネクタ 4 6を介してボー卜制御回路 4 4 6が接続される。 ボート制御回路 4 4 6 は、 拡張装置の一例の RAMカートリッジ 5 0がボー卜コネクタ 4 6に接続され ているとき、 C PU 1 1の命令に従ってデータの入出力制御 (または送受信制御 ) を行う。 RAMカートリ ッジ 5 0は、 アドレスバスおよびデータバスに RAM 5 1および時間関連情報発生手段の一例のタイマチップ (またはカレンダタイマ ) 5 3を接続し、 RAM5 1およびタイマカウンタ 5 3に電源を供給するための 電池 5 2を接続し、 さらに所定のァドレスが与えられたときタイマカウンタ 5 3 を能動化するためのデコーダ 5 4とを含んで構成される。 RAM 5 1は、 ァドレ スバスを用いてアクセス可能な最大メモリ容量の半分以下の容量の RAMであつ て、 たとえば 2 5 6 kビッ トの RAMから成る。 これは、 ア ドレスバスの最上位 ビッ ト力く 「 1」 になったときにタイマチップ 5 3内の任意の力ゥンタの値を読み 出すようにして、 RAMの書込 '読出アドレスとタイマチップ 5 3の読出ァドレ スとが重複しないようにするためである。 この RAM 5 1は、 ゲームに関連する バックァップデータを記愴するものであり、 RAMカートリ ッジ 5 0がポートコ ネクタ 4 6から抜き取られても電池 5 2からの電源供給を受けて記憶データを保 持するものである。 なお、 RAM 5 1の記憶データの種類, データの書込みおよ び記憶データの利用の詳細は、 後述する。
図 1 0は、 画像処理装置が、 コン トローラ 4 0からスィ ッチ 4 0 3〜4 0 7お よびジョイスティ ック 4 5の各操作状態を示すデータを読み出す際のデータフ才 一マツ 卜を図解したものである。 コン トローラ 4 0によって発生されるデータは 4バイ トのデータから成る。 第 1バイ ト目のデータは、 B, A, G, START , 上, 下, 左および右、 すなわちスィツチ 4 0 4 B. 4 0 4 A, 4 0 7, 4 0 5 および十字スィッチ 4 0 3の上下左 の各押点が押圧されていることを示し、 た とえば Bボタンすなわちスィツチ 4 0 4 Bが押圧されると第 1バイ ト目の最上位 ビッ トが 「 1」 となる。 同様に、 第 2バイ ト目は、 J SR ST, 0 (実施例では 使用していない) , L, R, E, D, Cおよび F、 すなわちスィ ッチ 4 0 9. 4 0 6 L, 4 0 6 R, 4 0 4 E, 4 0 4 D, 4 0 4 C, 4 0 4 Fが押圧されている ことを示す。 第 3バイ ト目は、 ジョイスティ ック 4 5の X方向の傾倒角度に応じ た値である X座標 (Xカウンタ 4 4 4 Xの計数値) を 2進数で示す。 第 4バイ ト 目は、 ジョイスティック 4 5の Y方向の傾斜角度に応じた値である Y座標 (Y力 ゥンタ 4 4 4 Yの計数値) を 2進数で示す。 各 X, Y座標値はそれぞれ 8ビッ ト の 2進数で表されるため、 これを 1 0進数に変換するとジョイスティ ック 4 5の 傾斜角度を 0〜2 5 5までの数値を表すことができる。 また、 最上位ビッ トを負 の値を示すシグネチヤに用いれば、 ジョイスティ ック 4 5の傾斜角度を— 1 2 8 〜1 2 7までの数値で表すことができる。
図 1 1〜図 1 4を参照して、 画像処理装置 1 0とコン トローラ 4 0との間で送 受信される信号のフォーマツ 卜について説明する。
図 1 1は、 画像処理装置 1 0力 <、 コン トローラ 4 0のタイプを識別するために コン トローラ 4 0との間で送受信する信号のフォーマッ 卜を図解したものである 。 画像処理装置 1 0は、 コン トローラ 4 0内の制御回路 4 4 2に対して 1バイ ト (8 ビッ 卜) で構成されるコマンド 「 0」 のタイプデータ要求信号を送信し、 こ れに応答して制御回路 4 4 2が発生する TYPE L ( 1バイ ト) , TYP E H ( 1バイ 卜) およびステータスの計 3バイ 卜のコン トローラ 4 0のタイプデー タ信号を受信する。 ここで、 TYPE Lおよび TYPE Hは、 ジョイポ一卜 コネクタ 4 6に接続されている機器の機能を表すデータである。 TYP E Lお よび TYPE Hデータは、 RAMカートリッジに記憶された RAMカートリツ ジ 5 0のタイプ毎に固有のデータである。 画像処理装置 1 0は、 このデータに基 づいて、 コン トローラ 4 0のタイプ、 すなわちコントローラ 4 0に接続された R AM力一卜リ ッジ 5 0のタイプを識別する。 RAMカートリッジ 5 0のタイプと しては、 例えば単に RAM 5 1のみを搭載したタイプ, RAM 5 1 とタイマチッ プを搭載したタイプおよび RAM5 1 と液晶表示器を搭載したタイプ等があり、 この実施例においては RAM5 1とタイマチップを搭載したタイプについて詳細 に説明している。 また、 ステータスデータは、 ポートに RAMカートリッジ 5 0 等の拡張装置が接続されているか否か、 およびリセッ 卜後に拡張装置が接続され たか否かを示すデータである。
図 1 2は、 画像処理装置 1 0力 <、 コン トローラ 4 0の操作状態を識別するため にコン トローラ 4 0との間で送受信する信号のフォーマツ トを図解したものであ る。 画像処理装置 1 0は、 コン トローラ 4 0内の制御回路 4 4 2に対して 1バイ 卜 ( 8ビッ ト) で構成されるコマン ド 「 1」 のコン トローラデータ要求信号を送 信し、 これに応答して制御回路 4 4 2が発生するコントロ一ラ 4 0の操作状態デ 一夕信号を受信する。 これらの操作状態データに基づいて、 画像処理装置 1 0は 、 操作者がコン トローラ 4 0をどのように操作したかを認識し、 画像を変化させ るのに利用する。 なお、 操作状態データ信号については、 図 1 0の説明で詳述し たためここでは省略する。
図 1 3は、 画像処理装置 1 0力く、 コン トローラ 4 0に接続された RAMカート リ ッジ 5 0内の RAM 5 1からデータの読出しを行う際のリ一ドデータ信号のフ ォーマツ 卜を図解したものである。 画像処理装置 1 0は、 制御回路 4 4 2に対し て、 1バイ 卜 ( 8 ビッ ト) で構成されるコマン ド 2のリー ドコマン ド信号, ァ ド レスの上位ビッ トを示すァ ドレス H ( 8 ビッ ト) 信号, ァ ドレスの下位ビッ 卜 ( 3 ビッ ト) を表わすァドレス L信号およびァドレス H信号とァドレス L信号のァ ドレスデータ送信エラーをチェックするためのァドレス CRC (5ビッ 卜) 信号 を送信し、 これに応答して制御回路 4 4 2が発生する RAM 5 1の記憶データ ( 3 2バイ ト) 信号およびデータ送信エラ一をチェックするためのデータ CRC ( 8 ビッ 卜) 信号を受信する。 なお、 画像処理装置 1 0力 タイマチップ 5 3の時 間関連情報を読み出すには、 単にァドレス H信号を 8 0 h以上の値にして 8 0 0 0 h以上のァドレスを読み出せばよい。
図 1 4は、 画像処理装置 1 0力 コン トローラ 4 0に接続された RAMカー卜 リ ッジ 5 0内の RAM 5 1へデータの書込みを行う際のライ トデータ信号のフォ 一マツ トを図解したものである。 画像処理装置 1 0は、 制御回路 4 4 2に対して 、 1バイ 卜 (8ビッ ト) で構成されるコマンド 3のライ 卜コマン ド信号, ァドレ スの上位ビッ トを示すア ドレス H ( 8ビッ ト) 信号, ア ドレスの下位ビッ ト (3 ビッ 卜) を表わすァドレス L信号およびァドレス H信号, ァドレス L信号のァド レスデータ送信エラーをチヱックするためのァドレス CRC (5ビッ ト) 信号と RAM 5 1に書込むべき 3 2バイ トの書込データ信号を送信し、 これに応答して 制御回路 4 4 2が発生するデータ受信エラーをチヱックするためのデータ CRC (8 ビッ 卜) 信号を受信する。 画像処理装置 1 0は、 データ CRC信号を受信し て送信した誊込データと CR Cチヱックを行うことに基づいて、 RAM 5 1に正 常にデータが書き込まれたことを判断する。 なお、 画像処理装置〗 0力^ タイマ チップに時間関連情報を誊き込んで例えば年月日や時間を再設定するには、 単に 了 ドレス H信号を 8 0 h以上の値にして 8 0 0 0 h以上のァドレスに書込みを行 えばよい。
次に画像処理装置 1 0とコン トローラ 4 0とのデータの送受信に関する動作説 明をする。
まず、 図 1 5の画像処理装置 1 0の C PU 1 1のフローチヤ一卜を参照して画 像処理に関する説明を行う。 ステップ S I 1で、 CPU 1 1は、 図 5のプログラ ムデータ領域 2 0 2に記億されている初期値 (図示せず) に基づき、 初期設定を 行う。 次に、 ステップ S 1 2で、 C PU 1 1は、 プログラムデータ領域 2 0 2に 記憶されているコントールパッ ドデータ要求コマンドをバス制御回路 1 2に出力 する。 次に、 ステップ S 1 3で、 C PU 1 1は、 図 5のプログラムデータ領域 2 0 2に記憶されているプログラムにおよび画像データ領域 2 0 1に基づき所定の 画像処理を行う。 また、 C PU 1 1がステップ S 1 3を実行しているときに、 バ ス制御回路 1 2は、 ステップ S 2 1 — S 2 4を実行している。 次に、 ステップ S 1 4で、 C PU 1 1は、 図 3のコントロールパッ ドデータ領域 1 4 1に記憶され ているコントロールパッ ドデータに基づき画像データを出力する。 ステップ S 1 4を終了した後は、 C PU 1 1は、 ステップ S 1 2—ステップ S 1 4を操り返し 実行する。
バス制御回路 1 2の動作を図 1 6を用いて説明する。 ステップ S 2 1で、 バス 制御回路 1 2は、 C PU 1 1がコン トローラデータ要求コマン ド (コントローラ 4 0のスィツチデータまたは拡張装置 5 0のデータ等の要求命令) を出力したか 否かを判断する。 コントローラデータ要求コマンドが出力されていなければ、 出 力されるまで待機する。 コントローラデータ要求コマンドが出力されていれば、 ステップ S 2 2に移る。 ステップ S 2 2で、 バス制御回路 1 2は、 コントローラ 制御回路 1 7にコン トローラ 4 0のデータを読み込むためのコマンド (後に示す コマンド 1またはコマンド 2等) を出力する。 次に、 ステップ S 2 3で、 バス制 御回路 1 2は、 コン卜ローラ制御回路 1 7がコン トローラ 4 0からデータを受信 して RAM I 7 4に記愴したか否かを判断する。 バス制御回路 1 2は、 コン ト口 ーラ制御回路 1 7がコン トローラ 4 0からデータを受信して RAM 1 7 4に記憶 していなければ、 ステップ S 2 3で待機し、 コントローラ制御回路 1 7がコント ローラ 4 0からデータを受信して RAM 1 7 4に記憶していれば、 ステップ S 2 に移る。 ステップ S 2 4で、 バス制御回路 1 2は、 コントローラ制御回路 1 7 の RAM 1 7 4に言己億されているコン卜ローラ 4 0のデータを W— RAM 1 4へ 転送する。 バス制御回路 1 2は、 W—RAM 1 4へのデータ転送が終わるとステ ッブ S 2 1に戻り、 ステップ S 2 1—ステップ S 2 4の動作を繰り返す。
なお、 図 1 5および図 1 6のフローチャートでは、 バス制御回路 1 2が RAM 1 7 4から W— RAM 1 へデータを転送した後、 C PU 1 1が W—R AM 1 4 に記憶されたデータを処理する例を示したが、 C PU 1 1がバス制御回路 1 2を 介して直接 RAM I 7 4のデータを処理してもよい。
図 1 7はコントローラ制御回路 1 7の動作を説明するためのフローチヤ一卜で ある。 ステップ S 3 1において、 バス制御回路 1 2からの書込み待ちの有無が判 断される。 書込み待ちでなければ、 データ転送制御回路 1 7 1はバス制御回路 1 2からの書込み待ちが有るまで待機する。 書込み待ちで有れば、 次のステップ S 3 2において、 データ転送制御回路 1 Ί 1が第 1〜第 4チヤ ンネルに対するコマ ン ドおよび /またはデータ (以下 f コマン ド Zデータ j と略称する) を R A M I 7 4に記憶させる。 ステップ S 3 3において、 第 1 チヤンネルのコマンド/デー 夕がコネクタ 1 8 1に接続されているコントローラ 4 0に送信される。 制御回路
4 4 2は、 コマンドノデータに基づいて所定の動作を行い、 画像処理装置 1 0に 送信すべきデータを出力する。 このデータの内容は、 制御回路 4 4 2の動作説明 で後述する。 ステップ S 3 4において、 データ転送制御回路 1 7 1が制御回路 4
4 2から出力されたデータを受信し、 そのデータを R A Mに記憶させる。
以後、 ステップ S 3 3および S 3 4の第 1チャンネルの動作と同様にして、 ス テツプ S 3 5において、 第 2チャンネルのコマンド /データがコントローラ 4 0 に送信される。 制御回路 4 4 2は、 このコマン ド データに基づいて所定の動作 を行い、 画像処理装置 1 0に送信すべきデータを出力する。 ステップ S 3 6にお いて、 第 2チャンネルのデータ転送および書込処理が行われる。 また、 ステップ
5 3 7において、 第 3チヤンネルのコマンドノデータがコン卜ローラ 4 0に送信 される。 制御回路 4 4 2は、 このコマンド データに基づいて所定の動作を行い 、 画像処理装置 1 0に送信すべきデータを出力する。 ステップ S 3 8において、 第 2チャンネルのデータ転送および書込処理が行われる。 さらに、 ステップ S 3 9において、 第 4チヤンネルのコマンド データがコントローラ 4 0に送信され る。 コントローラ 4 0の制御回路 4 4 2は、 このコマンド データに基づいて所 定の動作を行い、 画像処理装置 1 0に送信すべきデータを出力する。 ステップ S
4 0において、 第 4チャンネルのデータ転送および書込処理が行われる。 続くス テツブ S 4 1において、 データ転送制御回路 1 7 1がステップ S 3 4 , S 3 6 ,
5 3 8および S 4 0において受信したデータを一括してバス制御回路 1 2へ転送 する。
上述のようにして、 第 1チャンネルから第 4チャンネルのデータ、 すなわちコ ネクタ丄 8 1〜 1 8 4に接続されている各コン卜ローラ 4 0に対するコマンドぉ よび各コントロ一ラ 4 0から読出すべき操作状態データが時分割処理によってデ ータ転送制御回路 1 7 1と各コン トローラ 4 0内の制御回路 4 4 2との間で転送 される。 図 1 8はコン トローラ回路 4 4の動作を説明するためのフローチヤ一トである 。 まず、 ステップ S 5 1において、 コマン ドが画像処理装置 1 0から制御回路 4 4 2に入力されたか否かが判断される。 コマンドが入力されていなければ、 コマ ンドが入力されるまで待機する。 コマンドが入力されると、 ステップ S 5 2にお いて、 制御回路 4 4 2に入力されたコマンドがステータス要求コマンド (コマン ド 「 0」 ) であるか否かが判断される。 コマンド 「0」 の場合は、 ステップ S 5 3へ進み、 ステータス送出処理が行われる。
ステップ S 5 3において、 C PU 1 1がコマン ド 「 0」 を出力した場合、 画像 処理装置 1 0とコン トローラ 4 0との間で図 1 3に示すフォーマツ 卜のデータ力、' 送受信される。 このとき、 制御回路 4 4 2は、 1バイ ト (8ビッ ト) で構成され るコマン ド 「 0」 のデータを受信すると、 TYPE L ( 1バイ ト) , TYP E
H ( 1バイ ト) およびステータスを送信する。 ここで、 TYP E Lおよび T YPE Hは、 ジョイポ一卜コネクタ 4 6に接続されている機器がどんな機能を 有するかを識別するデータであり、 RAMカートリ ッジ 5 0に記録されている固 有のデータである。 これによつて、 画像処理装置 1 0は、 コン トローラ 4 0にど の様な拡張装置 (たとえば、 RAMカートリッジ 5 0または液晶表示器等のその 他の拡張機器) が接銃されているかを認識することが可能となる。 ステータスは 、 ポートに RAMカートリッジ 5 0等の拡張装置が接続されているか否か、 およ びリセッ ト後に拡張装置が接統されたか否かを示すデータである。
—方、 ステップ S 5 2においてコマンド 「 0」 でないことが判断されると、 ス テツプ S 5 4において入力されたコマンドがパッ ドデータ要求コマンド (コマン ド 「 1」 ) であるか否かが判断される。 コマンド 「 1」 の場合は、 ステップ S 5 5へ進み、 パッ ドデータの送出処理が行われる。 具体的には、 C PU 1 1がコマ ン ド 「 1」 を出力した場合は、 画像処理装置 1 0とコン トローラ 4 0との間で図 1 4に示すフォーマツ 卜のデータが送受信される。 このとき、 制御回路 4 4 2は 、 1バイ ト (8ビッ 卜) で構成されるコマンド 1のデータを受信すると、 B, A , G, START, 上. 下, 左, 右. L, R, E, D. C, Fの 1 4個のスイ ツ チのデータ ( 1 6ビッ ト) と J SR ST ( 1 ビッ ト) とカウンタ 4 4 4 Xおよび カウンタ 4 4 4 Yのデータ ( 1 6ビッ ト) を送信する。 これらのデータを画像処 理装置 1 0に送信することによって、 操作者がコン卜ローラ 4 0をどのように操 作したかを画像処理装置 1 0に認識させ、 画像処理装置 1 0がコントローラ 4 0 の操作状態に応じて画像を変化させるのに利用される。
前述のステップ S 5 4においてコマンド 「 1 j でないことが判断されると、 続 くステップ S 5 6において入力されたコマンドが拡張コネクタに接続される R A Mカー トリ ッジ 5 0に関連するデータの読出要求コマンド (コマンド Γ 2」 ) で あるか否かが判断される。 コマン ド 「 2」 の場合は、 ステップ S 5 7へ進み、 拡 張コネクタ書き出し処理が行われる。 具体的には、 C P U 1 1がコマンド Γ 2 J を出力した場合は、 画像処理装置 1 0とコントロ一ラ 4 0との間で図 1 5に示す フォーマツ 卜のデータが送受信される。 このとき、 制御回路 4 4 2は、 1バイ ト ( 8ビッ 卜) で構成されるコマンド 2のデータ, ァドレスの上位ビッ トを示すァ ドレス H ( 8 ビッ ト) , アドレスの下位ビッ ト ( 3 ビッ ト) を表わすァ ドレス L および送受信のァドレスデータエラーをチヱックするためのァドレス C R C ( 5 ビッ 卜) を受信すると、 受信したァドレスデータに基づいて、 R A Mカートリツ ジに記憶されているデータ (3 2バイ ト) およびデータエラーをチヱックするた めの C R C ( 8ビッ ト) を送信する。 このように、 R A Mカー卜リッジ 5 0 (ま たは他の拡張装置) と画像処理装置 1 0とが接続されることにより、 画像処理装 . 1 0が R A Mカー卜リッジ 5 0等からのデータを処理することができる。
前述のステップ S 5 6においてコマン ド 「 2」 でないことが判断されると、 続 くステップ S 5 8において入力されたコマンドが拡張コネクタ 4 6に接続されて いる R A Mカートリッジ 5 0に関連する情報の読込要求コマンド (コマン ド Γ 3 J ) か否かが判断される。 コマン ド 「 3」 の場合は、 ステップ S 5 9において拡 張コネクタ 4 6に接続されている R A M力一卜リ ッジ 5 0のデータ読出処理が行 われる。 具体的には、 C P U 1 1がコマン ド Γ 3」 を出力すると、 コマン ド 「 3 」 に応答して図 3に示すデータが画像処理装置 1 0とコントローラ 4 0との間で 送受信される。
つまり、 制御回路 4 4 2は、 1バイ 卜 ( 8 ビッ ト) で構成されるコマンド 3の データ, ア ドレスの上位ビッ トを示すアドレス H ( 8ビッ ト) , ア ドレスの下位 ビッ ト (3 ビッ ト) を表わすァ ドレス L , 送受信のァ ドレスデータエラ一をチェ ックするためのァドレス C R C ( 5 ビッ ト) および R A Mカー卜リ ッジ 5 0に送 信すべきデータ (3 2バイ ト) を受信すると、 受信したデータに対してエラーを チェックするための C R C ( 8 ビッ ト) を送信する。 このように、 拡張装置 5 0 と画像処理装置 1 0とが接続されることにより、 画像処理装置 1 0が拡張装置 5 0を制御可能となる。 また、 このように、 拡張装置 5 0と画像処理装置 1 0と力く 接続されることにより、 コントローラ 4 0の機能を飛躍的に向上させることがで さる。
前述のステップ S 5 8においてコマンド 「3」 でないことが判断されると、 ス テツプ S 6 0においてリセッ 卜コマンド (コマンド 2 5 5 ) であるか否かが判断 される。 リセッ トコマン ド ( 2 5 5 ) の場合は、 ステップ S 6 1 においてジョィ スティ ック 4 5のカウンタ 4 4 4のリセッ 卜処理が行われる。
具体的には、 C P U 1 1がコマン ド 2 5 5を出力した場合、 画像処理装置 1 0 とコントローラ 4 0との間では、 図 2 1に示すデータが送受信される。 つまり、 コン トローラ 4 0の制御回路 4 4 2は、 1バイ ト ( 8ビッ ト) で構成されるコマ ンド 2 5 5のデータを受信すると、 リセッ 卜信号を出力し、 Xカウンタ 4 4 4 X および Yカウンタ 4 4 4 Yをリセッ トし、 前述の T Y P E L ( 1バイ ト) , T Y P E H ( 1バイ ト) およびステータスを送信する。
次に、 この発明の特徴である三次元空間におけるカメラ (視点) の回り込みに ついて説明する。 つまり、 従来の 3 Dゲームでは、 図 2 0に示すようにカメラと 操作オブジェク ト (たとえば、 マリオ) との間に他のォブジ: Lク ト (たとえば、 壁や敵キャラクタ) が存在するとき、 操作ォブジェク 卜すなわちマリオをカメラ で写すことはできなかった。 これに対して、 この発明では、 図 2 0の点線で示す ように、 カメラをマリオの側面に回り込ませて常にマリオを表示し続けることが できる。
簡単にいえば、 図 2 1に示す状態にあるとき、 マリオからカメラまでの間の直 線上の数点でマリオ側から地形のポリゴンとの衝突判定を行う。 このとき、 各点 から半径 Rの内部で X Z平面に垂直なポリゴンをチェックする。 そして、 衝突判 定がなされたポリゴン Pについてカメラの回り込み処理を行う。 壁面 Pは (1)式の 平面方程式によって表される。 Ax + B y + C z +D= 0 ·'·(1)
そして、 カメラ位置 (撮影位置) の補正はこの面 Ρに対して平行になるように カメラ位置を移動させる。 なお、 面に平行な Υ軸の角度は面の方程式によって算 tb dれる 0
より詳しく説明すると、 図 2 2の最初のステップ S 1 0 1において、 衝突判定 すべきポリゴンの番号 nを初期化 (n = 1 ) する。 次のステップ S 1 0 2では、 チエツクすべきボリゴンの数 Nとポリゴンの番号 nとが等しいかどう力、、 つまり 全てのポリゴンについて衝突判定を行ったかどうかを判断する。 このステッブ S 1 0 2で "NO" なら、 次のステップ S 1 0 3において衝突判定を行う。
図 2 3にこのステップ S 1 0 3すなわち衝突判定ルーチンが詳細に示される。 この衝突判定ルーチンの説明に先立って、 衝突判定すべき壁データは図 2 4およ び図 2 5に示される。 つまり、 壁データは図 2 5のような三角形ポリゴンの集合 として図 2 4のように表され、 このようなそれぞれのボリゴンは壁ポリゴンのリ ス 卜としてメモリに格納されている。
図 2 3の最初のステップ S 2 0 1では、 点 Q (X g, Y g, Z g) および半径 Rを入力する。 なお、 点 Qはチェックすべき点であり、 半径 Rは壁と衝突すると みなす距離である。 次のステップ S 2 0 2では、 壁当たりフラグをリセッ 卜する 。 そして、 ステップ S 2 0 3では、 先に説明した壁ポリゴンリス卜がメモリ内に 格納されているかどうか判断する。 壁ポリゴンリストがあれば、 次のステップ S 2 0 4においてそのポリゴンがカメラの回り込み処理をすべきポリゴンであるか どうかを判断する。 このステップ S 2 0 4において "YE S" ならステップ S 2 0 5に進む。
ステップ S 2 0 5では、 点 Qと壁ポリゴンの平面との距離 (d R) を (2)式に従 つて S†算すな o
dR = AXg + BY g + C Z g + D -(2)
そして、 ステップ S 2 0 6において、 ステップ S 2 0 5で計算した距離 d尺が 半径 Rより小さいかどうか判断する。 この距離 d Rが半径 Rより大きいときは、 マリオと壁とは衝突しないので、 先のステッブ S 2 0 3に戻る。
ステップ S 2 0 6で " YE S" が判断されたとき、 すなわち I dR Iく Rのと き、 ステップ S 2 0 7において点 Qから壁ポリゴン Pへ垂直に引いた直線と壁ポ リ ゴン平面との接する点 Q' の位置座標 (X g' , Y g' , 2 g' ) を、 (3)式に 従って計算する。
X g' =X g + A dR
Y g' = Y g + B x d R
Z g' =Z g + C x dR -(3)
そして、 次のステップ S 2 0 8で点 Q' がポリゴンの内側 (範囲内) であるか 否かをチェックする。
このステップ S 2 0 8では、 まず、 壁の向き (Aの値) に応じて投影する面を 决定する。 すなわち、 Aく一 0. 7 0 7または 〉 0. 7 0 7のときには図 2 6 に示す YZ平面に投影し、 それ以外のときには図 2 6の XY平面に投影する。 そ して、 YZ苹面に投影する場合、 図 2 7において、 点 Q' がポリゴン P 1の内側 にあるかどうかを判定する。
また XY平面に投影する場合、 図 2 8で点 Q' とポリゴン P 1の各頂点の座標 について左回りの外積値の正負を判断する。 つまり、 ポリゴン平面方程式におけ る Cが C≥ 0のときは、 外積の結果が全て 0または負ならば点 Q' はポリゴン P 1の内側にあると判断する。
(Yl-Yq) X(X2-X1) -(Xl-Xq) X (Y2-Y1) ≤ 0
(Y2-Yq) X (X3-X2) 一 (X2-Xq) X (Y3-Y2) ≤ 0
(Y3-Yq) X(X1-X3) - (X3-Xq) (Y1-Y3) ≤ 0 -(4)
また C< 0のときは、 外積の結果が全て 0または正ならば点 Q' がポリゴン P 1の内側にあると判断する。
(Yl-Yq) X(X2-X1) -(Xl-Xq) X (Y2-Y1) ≥ 0
(Y2-Yq) (X3-X2) - (X2-Xq) (Y3-Y2) ≥ 0
(Y3-Yq) x(Xl-X3) 一(X3-Xq) X (Y1-Y3) ≥ 0 … )
このようにしてステップ S 2 0 8で点 Q' がポリゴンの内側か否かをチヱック し、 ステップ S 2 0 9で点 Q' がポリゴンの内側かどうか判断する。 このステツ プ S 2 0 9で " YE S" なら、 先のステップ S 2 0 2でリセッ トした壁当たりフ ラグをセッ 卜する (ステップ S 2 1 0) 。 その後、 図 2 2にリターンする。 ただし、 上述の衝突判定は一例であり、 他の方法によっても衝突判定可能なこ とはいうまでもない。
図 2 2に戻って、 ステップ S 1 0 3の衝突判定の後、 ステップ S 1 0 4で壁当 たりフラグがセッ 卜されているかどうかを判断する。 このステップ S 1 0 4で " NO" なら、 回り込み処理は必要ないので、 ステップ S 1 0 5でチヱックする点 の番号 nをィンクリメントしてステップ S 1 0 2に戻る。
ステップ S 1 0 4で "YE S" なら、 次に、 ステップ S 1 0 6および S 1 0 7 において壁の裏かどうかを判断する。 つまり、 ポリゴンの向きを判断する。 ボリ ゴンがカメラ (視点) を向いているかどうかは、 図 2 9の面の法線べク トル Nと 視線べク トル Vとの内積の符号を調べることにより判定することができる。 その 条件式は (6)式で与えられる。
A = V - N = VxNx + VyNy + V z N z -(6)
そして、 A≥ 0なら壁はカメラの方向を向いている (表) と、 また Aく 0なら 壁は裏を向いているとそれぞれ判断できる。 そして、 カメラとマリオとの間に存 在する面がカメラに向かって表向きならば、 図 3 0のカメラの回り込み処理をし ない。 この場合、 ステップ S 1 0 5において点の番号 nをィンクリメントしてス テツブ S 1 0 2に戻る。
カメラとマリオとの間の面が裏向きならばステップ S 1 0 7で "YE S" とな り、 次のステップ S 1 0 8および S 1 0 9において回り込み処理を行う。 ステツ プ S 1 0 8では、 壁の平面方程式に基づいてカメラの位置 (撮影位置) を変更す るための移動角度を計算する。 すなわち、 平面上の 3点 P 1 (X I , Y 1 , Z 1 ) 、 P 2 (X 2 , Y 2 , Z 2 ) および P 3 (X 3, Y 3 , Z 3 ) による平面の方 程式は (7)式の多項式で表される。
Ax +B y+ C z +D= 0
ただし、 A=Y1(Z2-Z3)+Y2(Z3-Z1)4Y3(Z1-Z2)
B =Z1(X2-X3)+Z2(X3-X1)+Z3(X1-X2)
C =X1(Y2-Y3)+X2(Y3-Y1)+X3(Y1-Y2)
D =Χ1 (Υ2Ζ3-Ζ2Υ3) +Y1 (Ζ2Χ3-Χ2Ζ3)+Ζ1 CX2Y3-Y2X3) -(7) そして、 法線ベク トルの Υ軸の角度 Ryは (8)式である。 R y = tan—' (A/C) -(8)
したがって、 カメラの回り込み角度は R y + 9 0 ° か R y— 9 0 ° のどちらか である。 つまり、 ステップ S 1 0 9において、 カメラはマリォすなわち操作ォブ ジヱク 卜を中心に Ry + 9 0 ° か Ry— 9 0 ° の方向に回転移動される。 具体的 には、 現在のカメラ位置 (図 2 1の C) から近い位置に移動される。
この発明が詳細に説明され図示されたが、 それは単なる図解および一例として 用いたものであり、 限定であると解されるべきではないことは明らかであり、 こ の発明の精神および範囲は添付されたクレームの文言によってのみ限定される。

Claims

請求の範囲
1 . 三次元空間に存在する操作ォブジヱク トおよび他のォブジヱク トを所定の 撮影位置から撮影した映像をディスプレイに表示する画像処理装置であって、 次 のものを備える :
前記操作ォブジヱク 卜および前記他のオブジェク 卜のデータおよび所定のプロ グラムを記憶している外部記憶手段、
前記操作ォブジュク トの前記三次元空間での位置を変化させるデータを入力す るための入力手段、
前記人力手段によって入力されたデータに基づいて前記三次元空間での前記操 作才ブジヱク 卜の位置を変化させるように操作ォブジェク 卜位置データを発生す る操作ォブジェク 卜位置データ発生手段、
前記外部記憶手段に記憶されているデータと前記操作ォブジェク ト位置データ とに基づいて三次元データを作成する三次元データ作成手段、
前記操作オブジェク トを撮影するための前記三次元空間での撮影位置を示す撮 影位置データを発生する撮影位置データ発生手段、
前記撮影位置と前記操作ォブジェク ト位置との間に前記他のオブジェク 卜が存 在するか否かを検出する検出手段、
前記検出手段が前記他のォブジュク 卜の存在を検出したとき前記撮影位置と前 記操作ォブジ Xク 卜位置との間に前記他のオブジェク 卜が存在しないように前記 撮影位置データを変更する撮影位置デ一タ変更手段、
前記三次元データおよび前記撮影位置データに基づいて前記三次元空間の所定 の撮影位置から前記操作ォブジェク トを撮影した映像をディスプレイに表示する ための表示データを作成する表示データ作成手段、 および
前記表示データ作成手段によって作成された表示データに基づいてディスプレ ィに画像信号を出力する画像信号発生手段。
2 . クレーム 1に従属する三次元画像処理装置であって、 前記検出手段は前記 操作オブジェク トが前記他のオブジェク 卜に衝突するかどうかを判定する衝突判 定手段を含む。
3 . クレーム 1または 2に従属する三次元画像処理装置であって、 前記撮影位 置データ変更手段は前記撮影位置と前記操作オブジェク 卜位置との間に前記他の オブジェク トが存在しなくなる移動角度を設定する移動角度設定手段を含む。
PCT/JP1996/002931 1995-10-09 1996-10-09 Dispositif de traitement d'une image en trois dimensions WO1997014115A1 (fr)

Priority Applications (19)

Application Number Priority Date Filing Date Title
CA002205058A CA2205058C (en) 1995-10-09 1996-10-09 Three-dimensional image processor
BR9606670A BR9606670A (pt) 1995-10-09 1996-10-09 Aparelho processador de imagens em três dimensões
US08/836,739 US5973704A (en) 1995-10-09 1996-10-09 Three-dimensional image processing apparatus
EP96933600A EP0801363B1 (en) 1995-10-09 1996-10-09 Three-dimensional image processor
MX9704154A MX9704154A (es) 1995-10-09 1996-10-09 Aparato procesador de imagenes tridimensionales.
AU72270/96A AU724018B2 (en) 1995-10-09 1996-10-09 Three-dimensional image processor
DE69630584T DE69630584T2 (de) 1995-10-09 1996-10-09 Dreidimensionaler bildprozessor
US08/857,882 US6155926A (en) 1995-11-22 1997-05-16 Video game system and method with enhanced three-dimensional character and background control
US08/870,100 US6139433A (en) 1995-11-22 1997-06-05 Video game system and method with enhanced three-dimensional character and background control due to environmental conditions
HK98102460A HK1003398A1 (en) 1995-10-09 1998-03-23 Three-dimensional image processor
US09/377,160 US6421056B1 (en) 1995-10-09 1999-08-19 Three-dimensional image processing apparatus
US09/422,259 US6331146B1 (en) 1995-11-22 1999-10-21 Video game system and method with enhanced three-dimensional character and background control
US09/457,726 US6139434A (en) 1996-09-24 1999-12-10 Three-dimensional image processing apparatus with enhanced automatic and user point of view control
US09/662,156 US6267673B1 (en) 1996-09-20 2000-09-14 Video game system with state of next world dependent upon manner of entry from previous world via a portal
US09/689,729 US6491585B1 (en) 1996-09-24 2000-10-13 Three-dimensional image processing apparatus with enhanced automatic and user point of view control
US09/794,623 US6590578B2 (en) 1995-10-09 2001-02-28 Three-dimensional image processing apparatus
US09/912,393 US6454652B2 (en) 1995-11-22 2001-07-26 Video game system and method with enhanced three-dimensional character and background control due to environmental conditions
US10/042,175 US20020057274A1 (en) 1995-10-09 2002-01-11 Three-dimensional image processing apparatus
US10/052,365 US20020115486A1 (en) 1995-11-22 2002-01-23 Video game system with state of next world dependent upon manner of entry from previous world via a portal

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP7/288006 1995-10-09
JP28800695 1995-10-09
JP15272896A JP3544268B2 (ja) 1995-10-09 1996-06-13 三次元画像処理装置およびそれを用いた画像処理方法
JP8/152728 1996-06-13

Related Parent Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP1996/002726 Continuation-In-Part WO1997014088A1 (fr) 1995-10-09 1996-09-20 Systeme de traitement d'images tridimensionnelles
US08/719,019 Continuation-In-Part US6001015A (en) 1995-10-09 1996-09-24 Operation controlling device and video processing system used therewith

Related Child Applications (9)

Application Number Title Priority Date Filing Date
US08/765,474 Continuation-In-Part US5963196A (en) 1995-05-10 1996-05-10 Image processing system utilizing analog joystick
US08/719,019 Continuation-In-Part US6001015A (en) 1995-10-09 1996-09-24 Operation controlling device and video processing system used therewith
US08/857,882 Continuation-In-Part US6155926A (en) 1995-11-22 1997-05-16 Video game system and method with enhanced three-dimensional character and background control
US08/858,810 Continuation-In-Part US6283857B1 (en) 1995-10-09 1997-05-19 Three-dimensional image processing apparatus with enhanced automatic and user point of view control
US08/870,100 Continuation-In-Part US6139433A (en) 1995-11-22 1997-06-05 Video game system and method with enhanced three-dimensional character and background control due to environmental conditions
US08/870,100 Continuation US6139433A (en) 1995-11-22 1997-06-05 Video game system and method with enhanced three-dimensional character and background control due to environmental conditions
US09/309,375 Continuation US6778190B1 (en) 1995-10-09 1999-05-11 Three-dimensional image processing apparatus
US09/377,160 Continuation US6421056B1 (en) 1995-10-09 1999-08-19 Three-dimensional image processing apparatus
US09/457,726 Continuation-In-Part US6139434A (en) 1996-09-24 1999-12-10 Three-dimensional image processing apparatus with enhanced automatic and user point of view control

Publications (1)

Publication Number Publication Date
WO1997014115A1 true WO1997014115A1 (fr) 1997-04-17

Family

ID=26481572

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1996/002931 WO1997014115A1 (fr) 1995-10-09 1996-10-09 Dispositif de traitement d'une image en trois dimensions

Country Status (12)

Country Link
US (5) US5973704A (ja)
EP (1) EP0801363B1 (ja)
JP (1) JP3544268B2 (ja)
KR (1) KR100356429B1 (ja)
CN (1) CN1111824C (ja)
AU (1) AU724018B2 (ja)
BR (1) BR9606670A (ja)
CA (1) CA2205058C (ja)
DE (1) DE69630584T2 (ja)
HK (1) HK1003398A1 (ja)
MX (1) MX9704154A (ja)
WO (1) WO1997014115A1 (ja)

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69623903T2 (de) 1995-05-10 2003-05-15 Nintendo Co Ltd Betätigungsvorrichtung mit analogem steuerknüppel
US6241611B1 (en) 1995-05-10 2001-06-05 Nintendo Co., Ltd. Function expansion device and operating device using the function expansion device
US8574074B2 (en) 2005-09-30 2013-11-05 Sony Computer Entertainment America Llc Advertising impression determination
MX9704155A (es) 1995-10-09 1997-09-30 Nintendo Co Ltd Sistema procesador de imagenes tridimensionales.
US6007428A (en) 1995-10-09 1999-12-28 Nintendo Co., Ltd. Operation controlling device and video processing system used therewith
JP3544268B2 (ja) 1995-10-09 2004-07-21 任天堂株式会社 三次元画像処理装置およびそれを用いた画像処理方法
JP3524247B2 (ja) 1995-10-09 2004-05-10 任天堂株式会社 ゲーム機およびそれを用いたゲーム機システム
WO1997017651A1 (fr) 1995-11-10 1997-05-15 Nintendo Co., Ltd. Systeme de manche a balai
US6155926A (en) 1995-11-22 2000-12-05 Nintendo Co., Ltd. Video game system and method with enhanced three-dimensional character and background control
US6267673B1 (en) 1996-09-20 2001-07-31 Nintendo Co., Ltd. Video game system with state of next world dependent upon manner of entry from previous world via a portal
US6139433A (en) 1995-11-22 2000-10-31 Nintendo Co., Ltd. Video game system and method with enhanced three-dimensional character and background control due to environmental conditions
US6022274A (en) 1995-11-22 2000-02-08 Nintendo Co., Ltd. Video game system using memory module
EP0844587B1 (en) * 1996-06-05 2004-11-24 Sega Enterprises, Ltd. Image processor, image processing method, game machine and recording medium
US6139434A (en) 1996-09-24 2000-10-31 Nintendo Co., Ltd. Three-dimensional image processing apparatus with enhanced automatic and user point of view control
WO1998035734A1 (fr) * 1997-02-18 1998-08-20 Sega Enterprises, Ltd. Dispositif et procede pour le traitement des images
US6657627B1 (en) * 1997-02-18 2003-12-02 Konami Co., Ltd. Video simulation system for calculating distance between characters and applying polygon to polygon plane
JP3103322B2 (ja) * 1997-05-23 2000-10-30 コナミ株式会社 シューティングゲーム装置、シューティングゲームの画像表示方法及び可読記録媒体
JP3655438B2 (ja) 1997-07-17 2005-06-02 任天堂株式会社 ビデオゲームシステム
JP3372832B2 (ja) * 1997-07-25 2003-02-04 コナミ株式会社 ゲーム装置、ゲーム画像処理方法およびゲーム画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体
CN1171182C (zh) * 1997-08-29 2004-10-13 世雅企业股份有限公司 图象处理系统和图象处理方法
JPH11128533A (ja) * 1997-10-30 1999-05-18 Nintendo Co Ltd ビデオゲーム装置およびその記憶媒体
JPH11207029A (ja) 1998-01-28 1999-08-03 Konami Co Ltd ビデオゲーム装置、ビデオゲームにおける画面表示方法及び画面表示プログラムが格納された可読記録媒体
JP3342393B2 (ja) 1998-03-19 2002-11-05 株式会社コナミコンピュータエンタテインメントジャパン ビデオゲーム装置、コンピュータ読み取り可能な記録媒体
JP2000153063A (ja) * 1998-11-19 2000-06-06 Nintendo Co Ltd ビデオゲーム装置およびビデオゲーム用情報記憶媒体
JP2000172878A (ja) * 1998-12-09 2000-06-23 Sony Corp 情報処理装置および情報処理方法、並びに提供媒体
US7749089B1 (en) 1999-02-26 2010-07-06 Creative Kingdoms, Llc Multi-media interactive play system
JP2000333377A (ja) * 1999-05-21 2000-11-30 Sony Computer Entertainment Inc エンタテインメントシステムおよび充電システム
EP1125608A3 (en) 2000-01-21 2005-03-30 Sony Computer Entertainment Inc. Entertainment apparatus, storage medium and object display method
EP1125609A3 (en) * 2000-01-21 2005-03-30 Sony Computer Entertainment Inc. Entertainment apparatus, storage medium and object display method
EP1125610A3 (en) * 2000-01-21 2004-04-14 Sony Computer Entertainment Inc. Entertainment apparatus, storage medium and operation method of manipulating object
US7878905B2 (en) 2000-02-22 2011-02-01 Creative Kingdoms, Llc Multi-layered interactive play experience
US6761637B2 (en) 2000-02-22 2004-07-13 Creative Kingdoms, Llc Method of game play using RFID tracking device
US7445550B2 (en) 2000-02-22 2008-11-04 Creative Kingdoms, Llc Magical wand and interactive play experience
JP2001276420A (ja) * 2000-03-30 2001-10-09 Namco Ltd ゲーム装置および情報記憶媒体
US7066781B2 (en) 2000-10-20 2006-06-27 Denise Chapman Weston Children's toy with wireless tag/transponder
US6895520B1 (en) 2001-03-02 2005-05-17 Advanced Micro Devices, Inc. Performance and power optimization via block oriented performance measurement and control
KR100446236B1 (ko) * 2001-07-02 2004-08-30 엘지전자 주식회사 비접촉식 3차원 무선 조이스틱
US20070066396A1 (en) 2002-04-05 2007-03-22 Denise Chapman Weston Retail methods for providing an interactive product to a consumer
US6967566B2 (en) 2002-04-05 2005-11-22 Creative Kingdoms, Llc Live-action interactive adventure game
US20060152510A1 (en) * 2002-06-19 2006-07-13 Jochen Dick Cross-platform and data-specific visualisation of 3d data records
US7674184B2 (en) 2002-08-01 2010-03-09 Creative Kingdoms, Llc Interactive water attraction and quest game
US20040137983A1 (en) * 2003-01-13 2004-07-15 Gaming Accessory For Wireless Devices Gaming accessory for wireless devices
US9446319B2 (en) 2003-03-25 2016-09-20 Mq Gaming, Llc Interactive gaming toy
US20040219980A1 (en) * 2003-04-30 2004-11-04 Nintendo Co., Ltd. Method and apparatus for dynamically controlling camera parameters based on game play events
EP1727093A1 (en) * 2003-12-19 2006-11-29 Tdvision Corporation S.A. DE C.V. 3d videogame system
JP3700857B2 (ja) * 2004-03-03 2005-09-28 コナミ株式会社 ゲームプログラム及びゲーム装置
JP4242318B2 (ja) 2004-04-26 2009-03-25 任天堂株式会社 3次元画像生成装置および3次元画像生成プログラム
JP3949674B2 (ja) * 2004-05-11 2007-07-25 株式会社コナミデジタルエンタテインメント 表示装置、表示方法、ならびに、プログラム
KR100696656B1 (ko) 2004-06-30 2007-03-19 삼성에스디아이 주식회사 이동식 이미지 포착부를 갖는 입체영상 기기
CN100337250C (zh) * 2004-10-26 2007-09-12 中国科学院计算技术研究所 一种人体模型与柔性物体间的冲突检测方法
JP4312737B2 (ja) * 2005-05-13 2009-08-12 任天堂株式会社 ゲームプログラムおよびゲーム装置
FR2886800A1 (fr) * 2005-06-03 2006-12-08 France Telecom Procede et dispositif de commande d'un deplacement d'une ligne de visee, systeme de visioconference, terminal et programme pour la mise en oeuvre du procede
US8589142B2 (en) * 2005-06-29 2013-11-19 Qualcomm Incorporated Visual debugging system for 3D user interface program
US7927216B2 (en) 2005-09-15 2011-04-19 Nintendo Co., Ltd. Video game system with wireless modular handheld controller
US7942745B2 (en) 2005-08-22 2011-05-17 Nintendo Co., Ltd. Game operating device
US8313379B2 (en) 2005-08-22 2012-11-20 Nintendo Co., Ltd. Video game system with wireless modular handheld controller
JP4805633B2 (ja) 2005-08-22 2011-11-02 任天堂株式会社 ゲーム用操作装置
US8870655B2 (en) 2005-08-24 2014-10-28 Nintendo Co., Ltd. Wireless game controllers
JP4262726B2 (ja) 2005-08-24 2009-05-13 任天堂株式会社 ゲームコントローラおよびゲームシステム
US8308563B2 (en) 2005-08-30 2012-11-13 Nintendo Co., Ltd. Game system and storage medium having game program stored thereon
US8157651B2 (en) 2005-09-12 2012-04-17 Nintendo Co., Ltd. Information processing program
US20070118425A1 (en) 2005-10-25 2007-05-24 Podbridge, Inc. User device agent for asynchronous advertising in time and space shifted media network
US11004089B2 (en) 2005-10-25 2021-05-11 Sony Interactive Entertainment LLC Associating media content files with advertisements
JP4151982B2 (ja) 2006-03-10 2008-09-17 任天堂株式会社 動き判別装置および動き判別プログラム
JP4684147B2 (ja) 2006-03-28 2011-05-18 任天堂株式会社 傾き算出装置、傾き算出プログラム、ゲーム装置およびゲームプログラム
US9327191B2 (en) * 2006-05-08 2016-05-03 Nintendo Co., Ltd. Method and apparatus for enhanced virtual camera control within 3D video games or other computer graphics presentations providing intelligent automatic 3D-assist for third person viewpoints
JP5127242B2 (ja) 2007-01-19 2013-01-23 任天堂株式会社 加速度データ処理プログラムおよびゲームプログラム
JP5427343B2 (ja) 2007-04-20 2014-02-26 任天堂株式会社 ゲームコントローラ
JP5427346B2 (ja) 2007-10-05 2014-02-26 任天堂株式会社 荷重検出プログラム、荷重検出装置、荷重検出システムおよび荷重検出方法
JP5080196B2 (ja) 2007-10-09 2012-11-21 任天堂株式会社 プログラム、情報処理装置、情報処理システムおよび情報処理方法
JP4382844B2 (ja) 2007-10-31 2009-12-16 任天堂株式会社 調整用加重機、および調整用加重方法
JP5361349B2 (ja) 2008-11-28 2013-12-04 任天堂株式会社 情報処理装置、コンピュータプログラム、情報処理システム、および情報処理方法
JP5806443B2 (ja) 2008-12-26 2015-11-10 任天堂株式会社 生体情報管理システム
JP5271121B2 (ja) 2009-03-09 2013-08-21 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP5436909B2 (ja) 2009-03-30 2014-03-05 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システム、および、情報処理方法
JP5161182B2 (ja) 2009-09-28 2013-03-13 任天堂株式会社 情報処理プログラム及び情報処理装置
JP5610735B2 (ja) 2009-09-29 2014-10-22 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理方法、および、情報処理システム
JP5496591B2 (ja) 2009-09-30 2014-05-21 任天堂株式会社 情報処理プログラム及び情報処理装置
JP6085411B2 (ja) 2011-06-02 2017-02-22 任天堂株式会社 画像処理装置、画像処理方法、および画像処理装置の制御プログラム
CN102722250A (zh) * 2012-06-07 2012-10-10 何潇 一种影像控制点交互编辑的方法及系统
JP6530899B2 (ja) * 2014-10-07 2019-06-12 株式会社三共 遊技機
JP6649742B2 (ja) * 2015-10-27 2020-02-19 株式会社コーエーテクモゲームス 情報処理装置、動作制御方法及び動作制御プログラム
JP7140465B2 (ja) * 2016-06-10 2022-09-21 任天堂株式会社 ゲームプログラム、情報処理装置、情報処理システム、ゲーム処理方法
JP7233399B2 (ja) * 2020-06-23 2023-03-06 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0668238A (ja) * 1992-08-13 1994-03-11 Konami Kk ゲーム装置

Family Cites Families (191)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1284685A (en) * 1969-12-18 1972-08-09 Square D Co Multi-position electric switch assembly
US3729129A (en) * 1971-06-22 1973-04-24 Nasa Numerical computer peripheral interactive device with manual controls
US3827313A (en) * 1973-01-24 1974-08-06 Square D Co Miniaturized joystick and cam structure with push button switch operating means
JPS5022475A (ja) * 1973-07-03 1975-03-10
US4161726A (en) * 1977-04-06 1979-07-17 Texas Instruments Incorporated Digital joystick control
US4148014A (en) * 1977-04-06 1979-04-03 Texas Instruments Incorporated System with joystick to control velocity vector of a display cursor
US4359222A (en) * 1978-10-30 1982-11-16 Smith Engineering Hand-held electronic game playing device with replaceable cartridges
US4315113A (en) * 1980-01-18 1982-02-09 Harman International Industries, Inc. Actuator switch for remote control rearview mirrors
JPS572084A (en) * 1980-06-05 1982-01-07 Fujitsu Ltd Cursor controlling system
JPS5718236A (en) * 1980-07-04 1982-01-30 Sekisui Plastics Foaming molding laminate
JPS57136217A (en) * 1981-02-03 1982-08-23 Fujitsu Ltd Cursor shift control system
US4467412A (en) 1981-05-18 1984-08-21 Atari, Inc. Slave processor with clock controlled by internal ROM & master processor
US4469330A (en) * 1982-01-07 1984-09-04 Atari, Inc. Controller unit for video game
DE3204428A1 (de) * 1982-02-09 1983-08-18 Siemens Ag Steueranordnung zum verschieben von auf dem bildschirm eines sichtgeraetes dargestellten zeichen
JPS59188A (ja) 1982-06-24 1984-01-05 シャープ株式会社 携帯型汎用電子装置
US4685678A (en) * 1982-08-13 1987-08-11 Bally Manufacturing Corporation Position transducer system for a joystick
JPS5940258A (ja) * 1982-08-31 1984-03-05 Sharp Corp 光電式ロ−タリ−エンコ−ダ
US4462594A (en) * 1982-09-29 1984-07-31 Coleco, Industries, Inc. Video game with control of rate of movement of game objects
JPS5968072A (ja) 1982-10-13 1984-04-17 Sharp Corp 機能変換用小形電子機器
JPS59121500A (ja) * 1982-12-27 1984-07-13 株式会社東芝 画像表示処理装置
US4538035A (en) * 1983-02-11 1985-08-27 Pool Danny J Joystick occlusion gate control for video games
US4485457A (en) 1983-05-31 1984-11-27 Cbs Inc. Memory system including RAM and page switchable ROM
US4799677A (en) 1983-09-02 1989-01-24 Bally Manufacturing Corporation Video game having video disk read only memory
US4587510A (en) * 1983-10-19 1986-05-06 Wico Corporation Analog joystick controller
US4575591A (en) * 1984-04-23 1986-03-11 Lugaresi Thomas J Joystick attachment for a computer keyboard
JPS6116641A (ja) * 1984-07-03 1986-01-24 Nec Corp 自動多重化遅延方式
US4789932A (en) 1984-09-21 1988-12-06 Austin T. Musselman Apparatus and method for automatically scoring a dart game
US4620176A (en) 1984-09-25 1986-10-28 Hayes Charles L Control stick mechanism
FR2573552B1 (fr) 1984-10-25 1988-12-02 Monfort Jean Jacques Systeme de traitement de jeux de paris
JPS61185138A (ja) * 1984-12-28 1986-08-18 東急ムサシ工業株式会社 共喰い防止養殖装置
JPS61198286A (ja) * 1985-02-28 1986-09-02 ぺんてる株式会社 カ−ソル制御方式
US4783812A (en) 1985-08-05 1988-11-08 Nintendo Co., Ltd. Electronic sound synthesizer
US4659313A (en) * 1985-11-01 1987-04-21 New Flite Inc. Control yoke apparatus for computerized aircraft simulation
JPH0668758B2 (ja) 1986-01-07 1994-08-31 株式会社日立製作所 カーソル制御方法及び3次元図形表示装置
JPS62260244A (ja) 1986-05-06 1987-11-12 Nintendo Co Ltd メモリカ−トリツジ
US5226136A (en) 1986-05-06 1993-07-06 Nintendo Company Limited Memory cartridge bank selecting apparatus
US4748441A (en) * 1986-09-17 1988-05-31 Brzezinski Stephen R M Multiple function control member
CA1330596C (en) 1986-11-19 1994-07-05 Yoshiaki Nakanishi Memory cartridge and data processing apparatus
JPS63201816A (ja) * 1987-02-18 1988-08-19 Hitachi Ltd カ−ソル表示装置
US4870389B1 (en) 1987-02-23 1997-06-17 Ascii Corp Joystick
JP2615607B2 (ja) * 1987-04-07 1997-06-04 ソニー株式会社 入力操作装置
DE3716892A1 (de) * 1987-05-20 1988-12-01 Fresenius Ag Vorrichtung zur eingabe von numerischen bzw. alphanumerischen daten in ein geraet
US4974192A (en) * 1987-07-23 1990-11-27 Face Technologies, Inc. Communication processor for personal computer
US4868780A (en) * 1987-07-27 1989-09-19 Ambrosia Microcomputer Products, Inc. Emulation circuit for interfacing joystick to ROM cartridge slot of computer
JP2710316B2 (ja) 1987-08-26 1998-02-10 任天堂株式会社 パスワード作成装置およびパスワード作成装置を用いたゲーム機
US4924216A (en) * 1988-02-12 1990-05-08 Acemore International Ltd. Joystick controller apparatus
US4858930A (en) * 1988-06-07 1989-08-22 Namco, Ltd. Game system
US4887966A (en) * 1988-06-30 1989-12-19 Gellerman Floyd R Flight simulation control apparatus
DE3823575A1 (de) * 1988-07-12 1990-01-18 Rothemuehle Brandt Kritzler Verfahren zur minderung von stickoxiden (no(pfeil abwaerts)x(pfeil abwaerts)) aus feuerungsabgasen
US4933670A (en) * 1988-07-21 1990-06-12 Picker International, Inc. Multi-axis trackball
JPH0241342A (ja) * 1988-08-01 1990-02-09 Mitsui Petrochem Ind Ltd ポリエステル樹脂組成物
US5239464A (en) * 1988-08-04 1993-08-24 Blair Preston E Interactive video system providing repeated switching of multiple tracks of actions sequences
US5016876A (en) 1988-10-14 1991-05-21 Williams Electronics Games, Inc. Video display co-processor for use in a video game
US4976435A (en) 1988-10-17 1990-12-11 Will Shatford Video game control adapter
US4976429A (en) * 1988-12-07 1990-12-11 Dietmar Nagel Hand-held video game image-projecting and control apparatus
US5001632A (en) * 1989-12-22 1991-03-19 Hall Tipping Justin Video game difficulty level adjuster dependent upon player's aerobic activity level during exercise
USD316879S (en) 1989-01-09 1991-05-14 Shulman Donald P Joystick for electronic games
FI111789B (fi) 1989-01-10 2003-09-15 Nintendo Co Ltd Elektroninen pelilaite, jossa on mahdollisuus pseudostereofoniseen äänen kehittämiseen
USD317946S (en) 1989-03-08 1991-07-02 Std Electronic International Ltd. Joystick
KR0149503B1 (ko) 1989-04-20 1999-05-15 야마우찌 히로시 메모리 카트리지
GB2234575A (en) 1989-07-28 1991-02-06 Philips Electronic Associated User input device for an interactive display system
JP2725062B2 (ja) 1989-08-01 1998-03-09 株式会社リコー 画像処理装置
US5227689A (en) 1989-08-11 1993-07-13 Mabuchi Motor Co., Ltd. Metal-filled graphite for miniature motors and method of making same
JPH0380786U (ja) * 1989-12-07 1991-08-19
JP3047185B2 (ja) 1990-01-26 2000-05-29 任天堂株式会社 ディジタル音源装置、およびそれに用いられる外部メモリカートリッジ
US5453763A (en) 1990-02-02 1995-09-26 Nintendo Co., Ltd. Still picture display apparatus and external memory cartridge used therefor
GB2244546A (en) 1990-05-10 1991-12-04 Primax Electronics Ltd Computer input device
DE4018052A1 (de) * 1990-06-06 1990-12-20 Klaus Dr Ing Eckert Verfahren zum steuern von anwenderprogrammablaeufen eines computers und einrichtung zur durchfuehrung des verfahrens
US5160918A (en) * 1990-07-10 1992-11-03 Orvitek, Inc. Joystick controller employing hall-effect sensors
US5146557A (en) 1990-07-27 1992-09-08 General Electric Company User interface for a golf green and a golf putt modelling system
JPH0442029U (ja) * 1990-08-09 1992-04-09
JP3274682B2 (ja) 1990-08-27 2002-04-15 任天堂株式会社 静止画像表示装置およびそれに用いる外部記憶装置
JP3068842B2 (ja) 1990-08-27 2000-07-24 任天堂株式会社 画像処理装置におけるダイレクトメモリアクセス装置およびそれに用いる外部記憶装置
US5046739A (en) * 1990-10-31 1991-09-10 Dynasound Organizer, Inc. Ergonomic handle for game controller
US5393073A (en) 1990-11-14 1995-02-28 Best; Robert M. Talking video games
US5393070A (en) 1990-11-14 1995-02-28 Best; Robert M. Talking video games with parallel montage
EP0557444A1 (en) 1990-11-14 1993-09-01 Best, Robert MacAndrew Talking video games
US5393072A (en) 1990-11-14 1995-02-28 Best; Robert M. Talking video games with vocal conflict
US5393071A (en) 1990-11-14 1995-02-28 Best; Robert M. Talking video games with cooperative action
US5371512A (en) 1990-11-19 1994-12-06 Nintendo Co., Ltd. Background picture display apparatus and external storage used therefor
JPH04218824A (ja) * 1990-12-19 1992-08-10 Yaskawa Electric Corp 多次元情報入力装置
US5273294A (en) 1991-02-04 1993-12-28 Tengen Ltd. Game memory
US5286024A (en) * 1991-03-20 1994-02-15 Atari Games Corporation System for sensing the position of a joystick
US5203563A (en) * 1991-03-21 1993-04-20 Atari Games Corporation Shaker control device
US5415549A (en) * 1991-03-21 1995-05-16 Atari Games Corporation Method for coloring a polygon on a video display
US5251909A (en) 1991-05-28 1993-10-12 Reed Michael J Secured high throughput data channel for public broadcast system
JP2794230B2 (ja) * 1991-07-16 1998-09-03 株式会社スクウェア ビデオ・ゲーム装置,その制御方法および制御ディバイス
US5237311A (en) * 1991-08-01 1993-08-17 Picker International, Inc. Hingedly supported integrated trackball and selection device
US5437464A (en) 1991-08-30 1995-08-01 Kabushiki Kaisha Sega Enterprises Data reading and image processing system for CD-ROM
US5213327A (en) * 1991-10-24 1993-05-25 Konami Co. Ltd. Game apparatus
GB2263802A (en) 1992-01-24 1993-08-04 Chen Chin Tung Television game with wireless remote-control for two players
US5388841A (en) 1992-01-30 1995-02-14 A/N Inc. External memory system having programmable graphics processor for use in a video game system or the like
US5357604A (en) 1992-01-30 1994-10-18 A/N, Inc. Graphics processor with enhanced memory control circuitry for use in a video game system or the like
CA2074388C (en) 1992-01-30 2003-01-14 Jeremy E. San Programmable graphics processor having pixel to character conversion hardware for use in a video game system or the like
JP3248215B2 (ja) 1992-02-24 2002-01-21 日本電気株式会社 音声符号化装置
EP0571138A3 (en) 1992-05-20 1995-03-29 Codemasters Ltd Memory cartridge and interface for video game console.
US5245320A (en) * 1992-07-09 1993-09-14 Thrustmaster, Inc. Multiport game card with configurable address
US5551701A (en) * 1992-08-19 1996-09-03 Thrustmaster, Inc. Reconfigurable video game controller with graphical reconfiguration display
US5389950A (en) * 1992-07-09 1995-02-14 Thurstmaster, Inc. Video game/flight simulator controller with single analog input to multiple discrete inputs
US5222136A (en) 1992-07-23 1993-06-22 Crest Industries, Inc. Encrypted communication system
US5259626A (en) * 1992-08-07 1993-11-09 Std Electronic International Ltd. Programmable video game controller
US5513307A (en) * 1992-11-20 1996-04-30 Sega Of America, Inc. Video game with switchable collision graphics
US5394168A (en) * 1993-01-06 1995-02-28 Smith Engineering Dual-mode hand-held game controller
US5290034A (en) * 1993-01-15 1994-03-01 Derral Hineman Game chair apparatus
JP2799126B2 (ja) * 1993-03-26 1998-09-17 株式会社ナムコ ビデオゲーム装置及びゲーム用入力装置
US5607157A (en) * 1993-04-09 1997-03-04 Sega Enterprises, Ltd. Multi-connection device for use in game apparatus
US5388990A (en) * 1993-04-23 1995-02-14 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Virtual reality flight control display with six-degree-of-freedom controller and spherical orientation overlay
US5734373A (en) * 1993-07-16 1998-03-31 Immersion Human Interface Corporation Method and apparatus for controlling force feedback interface systems utilizing a host computer
US5421590A (en) * 1993-07-23 1995-06-06 Commodore Electronics Limited Multiple linked game controllers
US5473325A (en) * 1993-08-11 1995-12-05 Mcalindon; Peter J. Ergonomic human-computer interface apparatus and method
JP3311830B2 (ja) * 1993-09-20 2002-08-05 株式会社東芝 3次元動画作成装置
IT1264225B1 (it) * 1993-09-24 1996-09-23 Sintecna S R L Dispositivo per il puntamento del cursore sullo schermo di sistemi interattivi
US5436640A (en) * 1993-10-29 1995-07-25 Thrustmaster, Inc. Video game and simulator joystick controller with geared potentiometer actuation
USD357712S (en) 1994-01-03 1995-04-25 James Wu Video game control unit
US5515044A (en) * 1994-04-18 1996-05-07 Sensormatic Electronics Corporation Controller apparatus using force sensing resistors
USD375326S (en) 1994-05-02 1996-11-05 Nintendo Co., Ltd. Controller for game machine
JP3628358B2 (ja) * 1994-05-09 2005-03-09 株式会社ソニー・コンピュータエンタテインメント ゲーム機用コントローラ
US6004134A (en) 1994-05-19 1999-12-21 Exos, Inc. Interactive simulation including force feedback
US5680154A (en) 1994-05-25 1997-10-21 Alps Electric Co., Ltd. Operation inputting apparatus
JP3220328B2 (ja) 1994-06-01 2001-10-22 株式会社ソニー・コンピュータエンタテインメント ビデオゲーム機
JPH0816530A (ja) * 1994-07-04 1996-01-19 Kurieiteibu Design:Kk コプロセサシステムおよび補助演算機能付外部メモリ装置
JP3603285B2 (ja) 1994-07-21 2004-12-22 株式会社セガ 画像処理装置
US5624117A (en) * 1994-07-28 1997-04-29 Sugiyama Electron Co., Ltd. Game machine controller
US5820462A (en) * 1994-08-02 1998-10-13 Nintendo Company Ltd. Manipulator for game machine
US5512920A (en) * 1994-08-17 1996-04-30 Mitsubishi Electric Research Laboratories, Inc. Locator device for control of graphical objects
USD363092S (en) 1994-08-29 1995-10-10 Michael Hung Hand-held controller
JPH0869274A (ja) 1994-08-30 1996-03-12 Sega Enterp Ltd 画像処理装置およびその方法
US5451053A (en) * 1994-09-09 1995-09-19 Garrido; Fernando P. Reconfigurable video game controller
KR100188990B1 (ko) 1994-09-27 1999-06-01 이리마지리 쇼우이치로 데이타 중계 장치 및 이것을 이용한 비디오 게임 장치
BR9506347A (pt) 1994-10-12 1997-09-02 Sega Enterprises Aperfeiçoamento na comunicação entre um aparelho de processamento de dados e o dispositivo periférico do mesmo
US5680534A (en) * 1994-10-31 1997-10-21 Nintendo Co., Ltd. Video game/videographics program fabricating system and method with superimpose control
US5593350A (en) * 1994-11-04 1997-01-14 Thrustmaster, Inc. Video game card having interrupt resistant behavior
JPH08137428A (ja) * 1994-11-11 1996-05-31 Nintendo Co Ltd 画像表示装置、画像表示システムおよびそれに用いられるプログラムカートリッジ
JPH08191951A (ja) 1995-01-17 1996-07-30 Sony Corp ゲーム機およびその中継器
JP3267463B2 (ja) * 1995-01-23 2002-03-18 松下電器産業株式会社 景色表示装置
US5670955A (en) * 1995-01-31 1997-09-23 Microsoft Corporation Method and apparatus for generating directional and force vector in an input device
US5558329A (en) * 1995-03-01 1996-09-24 Liu; William S. Y. Photoelectric digitized joystick
US5706029A (en) * 1995-03-15 1998-01-06 United Microelectronics Corp. Apparatus and method for retrieving data from a joystick
US5640177A (en) * 1995-03-15 1997-06-17 Anko Electronic Co., Ltd. Optical analog rocker
US5714981A (en) * 1995-04-21 1998-02-03 Advanced Gravis Computer Technology, Ltd. Gameport communication apparatus and method
GB2300503A (en) 1995-05-05 1996-11-06 United Microelectronics Corp Video game with display of key programming process
CA2194782C (en) 1995-05-10 2004-07-20 Satoshi Nishiumi Image processing system using analog joystick
DE69623903T2 (de) 1995-05-10 2003-05-15 Nintendo Co Ltd Betätigungsvorrichtung mit analogem steuerknüppel
US5653637A (en) * 1995-05-12 1997-08-05 United Microelectronics Corp. Expandable controllers capable of connecting in series to a control deck of a video game machine
WO1996036945A1 (fr) 1995-05-19 1996-11-21 Sega Enterprises, Ltd. Dispositif de traitement d'une image, procede de traitement d'une image dispositif de jeu utilisant ces derniers et support de memoire
TW300974B (ja) 1995-05-31 1997-03-21 Sega Of America Inc
US5691898A (en) 1995-09-27 1997-11-25 Immersion Human Interface Corp. Safe and low cost computer peripherals with force feedback for consumer applications
US5805138A (en) 1995-06-07 1998-09-08 International Business Machines Corporation Gross motion input controller for a computer system
US5589854A (en) * 1995-06-22 1996-12-31 Tsai; Ming-Chang Touching feedback device
US5793356A (en) * 1995-07-31 1998-08-11 Microsoft Corporation System and method for the software emulation of a computer joystick
US5628686A (en) 1995-07-31 1997-05-13 Microsoft Corporation Apparatus and method for bidirectional data communication in a game port
US5694153A (en) 1995-07-31 1997-12-02 Microsoft Corporation Input device for providing multi-dimensional position coordinate signals to a computer
US5632680A (en) * 1995-08-09 1997-05-27 Quickshot Patent (Bvi) Ltd. Method and apparatus for controlling a computer game
JP3734045B2 (ja) 1995-08-10 2006-01-11 株式会社セガ 仮想画像生成方法及びその装置
JP2845175B2 (ja) * 1995-08-25 1999-01-13 株式会社オプテック ゲーム機用コントローラ
IT1279444B1 (it) * 1995-09-22 1997-12-10 Nordica Spa Struttura di calzatura in particolare per pattini
JPH09153146A (ja) 1995-09-28 1997-06-10 Toshiba Corp 仮想空間表示方法
JP3544268B2 (ja) 1995-10-09 2004-07-21 任天堂株式会社 三次元画像処理装置およびそれを用いた画像処理方法
US6007428A (en) 1995-10-09 1999-12-28 Nintendo Co., Ltd. Operation controlling device and video processing system used therewith
MX9704155A (es) 1995-10-09 1997-09-30 Nintendo Co Ltd Sistema procesador de imagenes tridimensionales.
US5663747A (en) * 1995-10-23 1997-09-02 Norandor Systems, Inc. Pointing device
US5896125A (en) 1995-11-06 1999-04-20 Niedzwiecki; Richard H. Configurable keyboard to personal computer video game controller adapter
WO1997017651A1 (fr) 1995-11-10 1997-05-15 Nintendo Co., Ltd. Systeme de manche a balai
US6022274A (en) 1995-11-22 2000-02-08 Nintendo Co., Ltd. Video game system using memory module
US6169540B1 (en) 1995-12-01 2001-01-02 Immersion Corporation Method and apparatus for designing force sensations in force feedback applications
US5615083A (en) * 1995-12-11 1997-03-25 Gateway 2000, Inc. Detachable joystick for a portable computer
US5734376A (en) 1995-12-27 1998-03-31 Hsien; Ming-Kun Joypad circuit for playing PC games
JP2950228B2 (ja) 1996-02-15 1999-09-20 株式会社セガ・エンタープライゼス ゲーム画像表示方法及びゲーム装置
JPH09223098A (ja) 1996-02-19 1997-08-26 Sega Enterp Ltd 画像拡張機能ボード及びこれを用いた電子装置
TW346611B (en) 1996-03-28 1998-12-01 Sega Enterprises Kk An image processor, a game machine using the image processor, a method of image processing and a medium
US6050718A (en) 1996-03-28 2000-04-18 Immersion Corporation Method and apparatus for providing high bandwidth force feedback with improved actuator feel
US5769718A (en) 1996-05-15 1998-06-23 Rieder; William R. Video game apparatus and medium readable by a computer stored with video game program
US5684512A (en) * 1996-05-20 1997-11-04 Schoch; Paul T. Ergonomic apparatus for controlling video or computer equipment
JPH1063470A (ja) * 1996-06-12 1998-03-06 Nintendo Co Ltd 画像表示に連動する音響発生装置
US6146277A (en) 1996-08-21 2000-11-14 Konami Co., Ltd. Command input method and recording medium
US5731806A (en) * 1996-09-20 1998-03-24 Vlsi Technology, Inc. Interrupt based positioning system for joysticks and method therefor
US6139434A (en) * 1996-09-24 2000-10-31 Nintendo Co., Ltd. Three-dimensional image processing apparatus with enhanced automatic and user point of view control
US5898424A (en) 1996-09-30 1999-04-27 Gateway 2000, Inc. Pointing device with differing actuation forces for primary and secondary buttons
US5804781A (en) * 1996-11-07 1998-09-08 Perfect 360 Controls, Inc. Feed-back control plate for joystick
US5867051A (en) 1996-11-20 1999-02-02 Cretech Co., Ltd. Digital joystick interface circuit
US5784051A (en) * 1997-01-27 1998-07-21 Vlsi Technology, Inc. Digital power management system
US6042478A (en) 1997-02-10 2000-03-28 Tiger Electronics, Ltd. Hand held video game
US6020876A (en) 1997-04-14 2000-02-01 Immersion Corporation Force feedback interface with selective disturbance filter
JP3103322B2 (ja) 1997-05-23 2000-10-30 コナミ株式会社 シューティングゲーム装置、シューティングゲームの画像表示方法及び可読記録媒体
JP3767094B2 (ja) 1997-06-17 2006-04-19 株式会社セガ ビデオゲーム装置における遊戯者により操作される複数キャラクタの表示制御方法
US6071194A (en) 1997-06-19 2000-06-06 Act Labs Ltd Reconfigurable video game controller
US5883628A (en) 1997-07-03 1999-03-16 International Business Machines Corporation Climability: property for objects in 3-D virtual environments
JP2997439B2 (ja) 1997-07-16 2000-01-11 コナミ株式会社 ビデオゲーム機,及びコンピュータプログラムを記録した機械読取可能な記録媒体
US6034669A (en) 1998-02-12 2000-03-07 Realtek Semiconductor Corp. Joystick control device having cursor correcting function
US6067077A (en) 1998-04-10 2000-05-23 Immersion Corporation Position sensing for force feedback devices
JPH11319312A (ja) 1998-05-18 1999-11-24 Sega Enterp Ltd 電子遊戯装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0668238A (ja) * 1992-08-13 1994-03-11 Konami Kk ゲーム装置

Also Published As

Publication number Publication date
AU7227096A (en) 1997-04-30
CA2205058C (en) 2001-08-07
DE69630584D1 (de) 2003-12-11
US20010013868A1 (en) 2001-08-16
US6590578B2 (en) 2003-07-08
CN1111824C (zh) 2003-06-18
EP0801363A1 (en) 1997-10-15
US5973704A (en) 1999-10-26
US20020057274A1 (en) 2002-05-16
CN1166220A (zh) 1997-11-26
KR100356429B1 (ko) 2003-01-06
US6421056B1 (en) 2002-07-16
DE69630584T2 (de) 2004-08-19
HK1003398A1 (en) 1998-10-30
CA2205058A1 (en) 1997-04-17
JPH09167260A (ja) 1997-06-24
KR980700623A (ko) 1998-03-30
BR9606670A (pt) 1997-11-04
JP3544268B2 (ja) 2004-07-21
MX9704154A (es) 1997-09-30
EP0801363B1 (en) 2003-11-05
AU724018B2 (en) 2000-09-07
US6778190B1 (en) 2004-08-17
EP0801363A4 (en) 1999-12-22

Similar Documents

Publication Publication Date Title
WO1997014115A1 (fr) Dispositif de traitement d&#39;une image en trois dimensions
US10384129B2 (en) System and method for detecting moment of impact and/or strength of a swing based on accelerometer data
CA2206693C (en) Point of origin controller
US6332840B1 (en) Operation controlling device and video processing system used therewith
US7126584B1 (en) Operating device and image processing system using same
US6325718B1 (en) Operation controlling device and video processing system used therewith
JP3140971B2 (ja) ゲームコントローラ
US20010008847A1 (en) Three-dimensional image processing system having dynamically changing character polygon number
JP2001120838A (ja) ゲームコントローラ及び情報記憶媒体
JP2005312722A (ja) ゲーム装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 96191192.1

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): AU BR CA CN KR MX US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): DE ES FR GB IT NL SE

ENP Entry into the national phase

Ref document number: 2205058

Country of ref document: CA

Ref document number: 2205058

Country of ref document: CA

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 1996933600

Country of ref document: EP

Ref document number: 08836739

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 1019970703892

Country of ref document: KR

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWP Wipo information: published in national office

Ref document number: 1996933600

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1019970703892

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 09457726

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 09689729

Country of ref document: US

WWG Wipo information: grant in national office

Ref document number: 1019970703892

Country of ref document: KR

WWG Wipo information: grant in national office

Ref document number: 1996933600

Country of ref document: EP