DE69630584T2 - Dreidimensionaler bildprozessor - Google Patents

Dreidimensionaler bildprozessor Download PDF

Info

Publication number
DE69630584T2
DE69630584T2 DE69630584T DE69630584T DE69630584T2 DE 69630584 T2 DE69630584 T2 DE 69630584T2 DE 69630584 T DE69630584 T DE 69630584T DE 69630584 T DE69630584 T DE 69630584T DE 69630584 T2 DE69630584 T2 DE 69630584T2
Authority
DE
Germany
Prior art keywords
data
player
controlled object
viewpoint
wall
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Lifetime
Application number
DE69630584T
Other languages
English (en)
Other versions
DE69630584D1 (de
Inventor
Satoshi Kyoto-shi NISHIUMI
Kazuo Kyoto-shi KOSHIMA
Takumi Kyoto-shi KAWAGOE
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
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
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Publication of DE69630584D1 publication Critical patent/DE69630584D1/de
Application granted granted Critical
Publication of DE69630584T2 publication Critical patent/DE69630584T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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
    • 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/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

Description

  • Gebiet der Technik
  • Diese Erfindung betrifft eine 3D-Bildverarbeitungsvorrichtung und eine hierfür zu verwendende externe Speichereinrichtung, und insbesondere eine 3D-Bildverarbeitungsvorrichtung, die eingerichtet ist, ein Bild eines bedienbaren Objekts oder anderer Objekte, die in einem dreidimensionalen Raum vorkommen, aufgenommen von einer vorbestimmten Aufnahmeposition (vom Blickpunkt), auf einer Anzeige anzuzeigen.
  • Stand der Technik
  • Ein herkömmliches so genanntes 3D (3-Dimensionen) -Spiel weist ein mittels von einer Kamera mit einem vorbestimmten Winkel und Abstand aufgenommenen 3D-Daten gebildetes bedienbares Objekt (Objekt, das von einem Nutzer bedient werden kann) auf, wodurch das Anzeigen von Bildern erlangt wird.
  • Bei dem herkömmlichen Spiel, wenn hierbei ein Hintergrundbild oder ein Objekt, das als eine Gegner-Figur (ein anderes Objekt) eingesetzt wird, zwischen das bedienbare Objekt und die Kamera gelangt, oder wenn ein anderes Objekt bewegt wird, sodass es zwischen dem bedienbaren Objekt und der Kamera stört, wird jedoch das bedienbare Objekt so wiedergegeben, dass es unmöglich wird, es aufzunehmen.
  • Zu diesem Zweck gab es bei dem herkömmlichen 3D-Spiel eine Beschränkung dahingehend, dass das andere Objekt mittels eines Programms so angeordnet werden musste, dass es sich nicht zwischen dem bedienbaren Objekt und der Kamera befand.
  • US-A-5 566 280 offenbart ein 3D-dynamisches Bilderzeugungssystem, das in der Lage ist, die geeigneten Blickpunktdaten zum Überwachen eines Zielobjekts automatisch zu erzeugen. Bei diesem System werden Objektdaten, die Objekte kennzeichnen, und Blickpunktdaten, die einen Blickpunkt kennzeichnen, eingegeben, und ein wiederzugebendes Bildaufnahme-Zielobjekt wird bestimmt. Dann wird ermittelt, ob eine Blickpunktachse in Bezug auf das Bildaufnahme-Zielobjekt von einem anderen Objekt blockiert wird, wobei die Blickpunktachse gemäß den Blickpunktdaten ermittelt wird, und die Blickpunktdaten werden geändert, wenn ermittelt wird, dass die Blickpunktachse blockiert ist. Das 3D-dynamische Bild des Bildaufnahme-Zielobjekts wird dann gemäß einer neuen, von den geänderten Blickpunktdaten ermittelten Blickpunktachse erzeugt.
  • US-A-5 415 549 offenbart einen Hubschrauber-Flugsimulator mit Verbesserungen bei optischen Wahrnehmungselementen und beim Modellieren. Die einzelnen optischen Wahrnehmungselemente beinhalten auf der Erde folgende Schatten sowie Farbänderungen (hazing), wobei die Letzteren in etwa einer Kombination von Witterungsverhältnissen entsprechen. Die einzelnen Merkmale der Modellierung beinhalten einen durch einen Nutzer auswählbaren Zoom, die Vermeidung des Bodens horizontal oder vertikal und ein Autorotations-Modell.
  • Zusammenfassung der Erfindung
  • Es ist daher das Hauptziel der Erfindung, eine Bildverarbeitungsvorrichtung bereitzustellen, die in der Lage ist, ein bedienbares, d. h. ein spielergesteuertes Objekt, zu jeder Zeit und deshalb frei von der Beschränkung beim Anordnen anderer Objekte anzuzeigen.
  • Gemäß einem Aspekt der Erfindung ist eine Bildverarbeitungsvorrichtung, wie in Anspruch 1 definiert, vorgesehen.
  • Die Erfassungseinrichtung kann ermitteln, ob eine Kollision zwischen dem bedienbaren Objekt und einer Polygon-Fläche des anderen Objekts möglich ist oder nicht. Besteht eine Möglichkeit des Kollidierens des bedienbaren Objekts mit dem anderen Objekt, modifiziert die Bildaufnahme-Positionsdaten modifizierende Einrichtung die Aufnahmeposition, d. h. die Position einer Kamera, sodass sich das andere Objekt nicht zwischen dem bedienbaren Objekt und der Kamera befindet. Daher wird das bedienbare Objekt aufgenommen, ohne dass es durch das andere Objekt gestört wird.
  • Erfindungsgemäß ist es möglich, ein bedienbares Objekt jederzeit auf einem Anzeigebild anzuzeigen, selbst wenn ein anderes Objekt frei angeordnet wird. Folglich kann das bedienbare Objekt jederzeit auf einer Anzeige angezeigt werden, wenn die Erfindung auf eine Spielevorrichtung angewendet wird, selbst auf ein Spiel, das ein bedienbares Objekt und eine Anzahl anderer Objekte beinhaltet, die sich auf dem Anzeigebild herum bewegen.
  • Die obigen und andere Ziele, Merkmale, Aspekte und der Vorteil der Erfindung werden offensichtlicher aus der folgenden ausführlichen Beschreibung der Erfindung, wenn sie in Verbindung mit den begleitenden Figuren gelesen wird.
  • Kurzbeschreibung der Figuren
  • 1 ist eine schematische Darstellungsansicht, die ein Ausführungsbeispiel der Erfindung zeigt;
  • 2 ist ein Blockdiagramm, das im Detail eine Bildverarbeitungsvorrichtung im Ausführungsbeispiel von 1 zeigt;
  • 3 ist eine Darstellungsansicht, die eine Speicherkarte in der CPU des Ausführungsbeispiels von 2 zeigt, darstellend einen externen Speicher und ein W-RAM, die in einer Einsteckkarte (Cartridge) integriert sind;
  • 4 ist ein Blockdiagramm, das im Detail einen Controller-Steuerschaltkreis im Ausführungsbeispiel von 2 zeigt;
  • 5 ist eine Darstellungsansicht, die ein Modulations/Demodulations-Verfahren für Daten zeigt;
  • 6 ist eine Darstellungsansicht, die eine Speicherkarte eines RAM in 4 zeigt;
  • 7 ist eine perspektivische Ansicht eines Controllers des Ausführungsbeispiels von 2, gesehen von oben;
  • 8 ist eine perspektivische Ansicht des Controllers des Ausführungsbeispiels von 2, gesehen von unten;
  • 9 ist ein Blockdiagramm, das im Detail den Controller und eine Erweiterungsvorrichtung zeigt;
  • 10 ist eine Darstellungsansicht, die Daten für einen analogen Joystick des Controllers und entsprechende Knöpfe zeigt;
  • 11 ist eine Darstellungsansicht des Sendens und des Empfangs von Daten mittels des Steuerschaltkreises, wenn vom Controller-Steuerschaltkreis ein Befehl „0" übertragen wird;
  • 12 ist eine Darstellungsansicht des Sendens und des Empfangs von Daten mittels des Steuerschaltkreises, wenn vom Controller-Steuerschaltkreis ein Befehl „1" übertragen wird;
  • 13 ist eine Darstellungsansicht des Sendens und des Empfangs von Daten mittels des Steuerschaltkreises, wenn vom Controller-Steuerschaltkreis ein Befehl „2" übertragen wird;
  • 14 ist eine Darstellungsansicht des Sendens und des Empfangs von Daten mittels des Steuerschaltkreises, wenn vom Controller-Steuerschaltkreis ein Befehl „3" übertragen wird;
  • 15 ist ein Flussdiagramm, das den Betrieb der CPU des Ausführungsbeispiels von 2 zeigt;
  • 16 ist ein Flussdiagramm, das den Betrieb des Bus-Steuerschaltkreises des Ausführungsbeispiels von 2 zeigt;
  • 17 ist ein Flussdiagramm, das den Betrieb des Controller-Steuerschaltkreises des Ausführungsbeispiels von 2 zeigt;
  • 18 ist ein Flussdiagramm, das den Betrieb des Steuerschaltkreises des Ausführungsbeispiels von 2 zeigt;
  • 19 ist eine Darstellungsansicht des Sendens und des Empfangs von Daten mittels des Steuerschaltkreises, wenn vom Controller-Steuerschaltkreis ein Befehl „255" übertragen wird;
  • 20 ist eine Darstellungsansicht, die einen Zustand zeigt, in dem sich zwischen dem bedienbaren Objekt (Mario) und der Kamera eine Wand befindet;
  • 21 ist eine Darstellungsansicht, die den Zustand von 20 in Koordinaten zeigt;
  • 22 ist ein Flussdiagramm, das den Betrieb für einen Kamera-Herumdreh-Prozess zeigt;
  • 23 ist ein Flussdiagramm, das eine Kollisions-Ermittlungsroutine zeigt;
  • 24 ist eine Darstellungsansicht, die ein Wand-Polygon zeigt;
  • 25 ist eine Darstellungsansicht, die ein entsprechendes Polygon zeigt;
  • 26 ist eine Darstellungsansicht, die eine projizierte Fläche zeigt;
  • 27 ist eine Darstellungsansicht, die einen Zustand zeigt, in dem die Projektion auf eine Y-Z-Ebene erfolgt;
  • 28 ist eine Darstellungsansicht, die einen Zustand zeigt, in dem die Projizierung auf eine X-Y-Ebene erfolgt; und
  • 29 ist eine Darstellungsansicht, die einen Normalenvektor der Ebene und einen Blickpunkt-Vektor der Kamera zeigt.
  • Ausführungsbeispiele
  • Bezugnehmend auf 1 ist dort eine Außenansicht dargestellt, die eine Systemanordnung einer Bildverarbeitungsvorrichtung gemäß einem Ausführungsbeispiel der Erfindung zeigt. Das Bildverarbeitungssystem ist beispielsweise ein Videospiele-System, das einschließlich einen Bildverarbeitungsvorrichtungs-Hauptkörper 10, eine ROM-Einsteckkarte 20 als ein Beispiel einer externen Speichereinrichtung, eine Anzeige 30 als ein Beispiel einer Anzeigeeinrichtung, gekoppelt mit dem Bildverarbeitungsvorrichtung-Hauptkörper 10, einen Controller 40 als ein Beispiel einer Bedieneinrichtung und eine RAM-Einsteckkarte 50 als ein Beispiel einer Erweiterungsvorrichtung auf, die lösbar an dem Controller 40 angeschlossen ist. Im Übrigen speichert die externe Speichereinrichtung Bilddaten und Programmdaten zur Bildverarbeitung für Spiele sowie Audiodaten für Musik, Effektklang usw. Eine CD-ROM oder magnetische Platte können alternativ anstelle der ROM-Einsteckkarte verwendet werden. In dem Fall, dass die Bildverarbeitungsvorrichtung dieses Beispiels auf einen Personalcomputer angewendet wird, wird eine Eingabevorrichtung, wie beispielsweise eine Tastatur oder eine Maus, als Bedieneinrichtung verwendet.
  • 2 ist ein Blockdiagramm der Bildverarbeitungsvorrichtung dieses Beispiels. Die Bildverarbeitungsvorrichtung 10 vereint in sich eine Zentralverarbeitungseinheit (nachstehend „CPU") 11 und einen Bus-Steuerschaltkreis 12. Der Bus-Steuerschaltkreis 12 ist sowohl mit einem Einsteckkarten-Verbinder 13 zum lösbaren Anschließen der ROM-Einsteckkarte 20 als auch mit einem Arbeits-RAM 14 gekoppelt. Der Bus-Steuerschaltkreis 12 ist mit einem Audiosignal-Erzeugungs-Schaltereis 15 zum Ausgeben eines mittels der CPU 11 verarbeiteten Audiosignals und einem Videosignal-Erzeugungs-Schaltkreis 16 zum Ausgeben eines Videosignals und ferner mit einem Controller-Steuerschaltkreis 17 zum seriellen Übertragen von Bediendaten eines oder einer Mehrzahl von Controllern 40 und/oder von Daten der RAM-Einsteckkarte(n) 50 gekoppelt. Der Controller-Steuerschaltkreis 17 ist mit Controller-Verbindern (nachstehend abgekürzt mit „Verbindern") 181184 gekoppelt, die an einer Frontseite der Bildverarbeitungsvorrichtung 10 vorgesehen sind. Mit dem Verbinder 18 sind eine Verbindungsbuchse 41 und mittels einer Leitung 42 der Controller 40 lösbar gekoppelt. Daher bringt die Kopplung des Controllers mit dem Verbinder 181184 den Controller 40 in elektrische Verbindung mit der Bildverarbeitungsvorrichtung 10, was das Senden und den Empfang von Daten zwischen ihnen ermöglicht.
  • Insbesondere gibt der Bus-Steuerschaltkreis 12 darin einen mittels eines Parallel-Signals mittels eines Busses von der CPU 11 ausgegebenen Befehls ein, sodass es zum Ausgeben eines Befehls mittels eines seriellen Signals zum Controller-Steuerschaltkreis 17 von parallel zu seriell umgewandelt wird, und wandelt vom Controller-Steuerschaltkreis 17 eingegebene serielle Signal-Daten in ein Parallel-Signal zum Ausgeben dessen auf einen Bus um. Die mittels des Busses ausgegebenen Daten werden dem Verarbeiten mittels der CPU 11 unterzogen, im W-RAM 14 gespeichert usw. Mit anderen Worten ist das W-RAM 14 ein Speicher, der die mittels der CPU 11 zu verarbeitenden Daten temporär speichert, wobei das Auslesen und Einschreiben der Daten mittels des Bus-Steuerschaltkreises 12 möglich ist.
  • 3 ist eine Diagramm-Darstellung, die Speicherbereiche zeigt, die jeweiligen Speicherräumen zugeordnet sind. Die Speicherräume, auf die von der CPU mittels des Bus-Steuerschaltkreises 12 zugegriffen werden kann, beinhalten einen externen Speicherbereich der ROM-Einsteckkarte 20 und einen Speicherbereich des W-RAM 14. Obwohl die ROM-Einsteckkarte 20 aufgebaut ist, indem ein mit Daten für den Spielefortschritt bespeichertes ROM auf einer Platine befestigt ist und dieselbe Platine in einem Gehäuse untergebracht ist, sind die ROM-Speicherdaten mittels des in 3 gezeigten externen Speicherbereichs gezeigt. D. h. das ROM weist einen Bilddatenbereich 201, der mit Bilddaten bespeichert ist, die erforderlich sind, um die Bildverarbeitungsvorrichtung 10 dazu zu bringen, Bildsignale für das Spiel zu erzeugen, und einen Programmdatenbereich 202 auf, der mit Programmdaten bespeichert ist, die für einen vorbestimmten Betrieb der CPU 11 erforderlich sind. Im Programmdatenbereich 202 sind ein Bildanzeigeprogramm zum Durchführen einer Bildanzeige, basierend auf den Bilddaten 201, ein Zeitmess-Programm zum Ausführen einer Zeitmessung und ein Ermittlungsprogramm zum Ermitteln, ob die Einsteckkarte 20 und eine Erweiterungsvorrichtung 50, auf die nachstehend Bezug genommen wird, in einer vorbestimmten Beziehung stehen, fest gespeichert. Insbesondere werden später die Details des Zeitmess-Programms und der Ermittlungsprogramme erklärt. Andererseits weist der Speicherbereich des W-RAM 14 einen Bereich 141 zum temporären Speichern von Daten auf, die einen Betriebszustand von einem Steuer-Paneel darstellen.
  • 4 ist ein detailliertes Schaltkreisdiagramm eines Controller-Steuerschaltkreises 17. Der Controller-Steuerschaltkreis 17 ist zum Senden und zum Empfang von Daten in serieller Form zwischen dem Bus-Steuerschaltkreis 12 und dem Controller-Verbinder 181184 vorgesehen und weist einen Datenübertragungs-Steuerschaltkreis 171, einen Signal-Sendeschaltkreis 172, einen Signal-Empfangsschaltkreis 173 und ein RAM 174 zum temporären Speichern von Sende- und Empfangsdaten auf. Der Datenübertragungs-Steuerschaltkreis 171 weist einen Parallel-Zu-Seriell-Umwandlungsschaltkreis und einen Seriell-Zu-Parallel-Umwandlungsschaltkreis zur Umwandlung des Datenformats während der Datenübertragung auf, der ferner das Einschreiben und das Auslesen des RAMs 174 durchführt. Der Seriell-Zu-Parallel-Umwandlungsschaltkreis wandelt vom Bus-Steuerschaltkreis 12 zugeführte serielle Daten in Parallel-Daten um, um sie dem RAM 174 oder dem Signal-Sendeschaltkreis 172 bereitzustellen. Der Parallel-Zu- Seriell-Umwandlungsschaltkreis wandelt vom RAM 174 oder dem Signal-Empfangsschaltkreis 173 empfangene Parallel-Daten in serielle Daten um, um sie dem Bus-Steuerschaltkreis 12 bereitzustellen. Der Signal-Sendeschaltkreis 172 wandelt vom Datenübertragungs-Steuerschaltkreis 171 zugeführte Daten zur Signal-Einlese-Steuerung des Controllers 40 und Einschreib-Daten (Parallel-Daten) zu der RAM-Einsteckkarte 50 in serielle Daten um, welche Daten mittels eines entsprechenden Kanals CH1–CH4 zu dem jeweiligen der Mehrzahl der Controller 40 gesendet werden. Der Signal-Empfangsschaltkreis 173 empfängt seriell sowohl Auslese-Daten, die einen Betriebszustand des jeweiligen der Controller 40 kennzeichnen, übertragen mittels eines entsprechenden Kanals CH1–CH4 zu dem jeweiligen der Controller 40, als auch Auslesedaten von der RAM-Einsteckkarte 50, um sie in Parallel-Daten umzuwandeln, sodass sie dem Datenübertragungs-Steuerschaltkreis 171 bereitgestellt werden.
  • Der Signal-Sendeschaltkreis 172 und der Signal-Empfangsschaltkreis 173 wenden ein Betriebszyklus-Modulations- und Demodulations (nachstehend bezeichnet als („Modulation/ Demodulations") -Verfahren als ein Beispiel des Modulations/ Demodulations-Verfahrens an. Das Betriebszyklus-Modulations/ Demodulations-Verfahren, wie in 5 gezeigt, ist ein Modulations/Demodulations-Verfahren, wobei „1" und „0" mittels Variierens einer High-Zeitperiode und einer Low-Zeitperiode für ein Signal mit einem bestimmten Intervall dargestellt werden. Erläuternd das Modulations/Demodulations-Verfahren in größerem Detail wird, wenn seriell zu übertragende Daten logisch „1" sind, ein Signal mit einer Zyklusperiode T mit einer High-Pegel-Periode tH, die länger wiedergegeben wird als eine Low-Pegel-Periode tL (tH > tL), übertragen, wohingegen, wenn zu übertragende Daten logisch „0" sind, ein Signal innerhalb einer Zyklusperiode T übertragen wird, wobei tH kürzer als tL (tH < tL) wiedergegeben wird.
  • Indessen wird mittels des Demodulationsverfahrens eine Abtastung bei einem empfangenen seriellen Signal (Bit-Übertragungssignal) durchgeführt, um zu jedem Zeitpunkt zu überwachen, ob das empfangene Signal einen High-Pegel oder einen Low-Pegel aufweist, wobei ein Zyklus durch T = tL + tH ausgedrückt wird, vorausgesetzt, dass die Zeitperiode des Low-Pegels bis zum Wechsel zum High-Pegel tL ist und die Zeitperiode des High-Pegels bis zum Wechsel zum Low-Pegel tH ist. In diesem Fall wird das Verhältnis von tL zu tH mit tL < tH als logisch „1" erkannt, wohingegen tL > tH als logisch „0" erkannt wird, wodurch eine Demodulation erreicht wird. Wird das Betriebszyklus-Modulations/Demodulations-Verfahren so angewendet, ist es nicht erforderlich, Daten in Synchronisation zu einem Takt zu übertragen, was den Vorteil bietet, dass das Senden und der Empfang von Daten mit lediglich einer Signalleitung möglich sind. Im Übrigen ist es selbstverständlich, dass, wenn zwei Signalleitungen verfügbar sind, ein anderes Modulations/Demodulations-Verfahren angewendet werden kann.
  • Das RAM 174 weist Speicherbereiche oder Speichergebiete 174a174h auf, wie in einer Speicherkarte von 6 gezeigt. Insbesondere ist der Bereich 174a mit einem Befehl für den Kanal 1 bespeichert, während der Bereich 174b mit Sendedaten und Empfangsdaten für den Kanal 1 bespeichert ist. Der Bereich 174c ist mit einem Befehl für den Kanal 2 bespeichert, während der Bereich 174d mit Sendedaten und Empfangsdaten für den Kanal 2 bespeichert ist. Der Bereich 174e ist mit einem Befehl für den Kanal 3 bespeichert, während der Bereich 174f mit Sendedaten und Empfangsdaten für den Kanal 3 bespeichert ist. Der Bereich 174g ist mit einem Befehl für den Kanal 4 bespeichert, während der Bereich 174h mit Sendedaten und Empfangsdaten für den Kanal 4 bespeichert ist.
  • Demgemäß wirkt der Datenübertragungs-Steuerschaltkreis so, dass das Einschreiben der vom Bus-Steuerschaltkreis 12 übertragenen Daten oder der Daten des Betriebszustands des Controllers 40, die mittels der Signal-Empfangsschaltkreises 173 empfangen worden sind, oder der Auslesedaten von der RAM-Einsteckkarte 50 gesteuert wird, und dass Daten des RAM 174 basierend auf einem Befehl vom Bus-Steuerschaltkreis 12 ausgelesen werden, sodass sie zum Bus-Steuerschaltkreis 12 übertragen werden.
  • 7 und 8 sind äußere Erscheinungsbilder an der haupt- und der rückseitigen Fläche eines Controllers 40. Der Controller 40 hat eine Form, die mit beiden Händen oder einer Hand ergriffen werden kann, und weist ein Gehäuse mit einem Äußeren auf, das so ausgebildet ist, dass es mit einer Mehrzahl von Knöpfen zum Erzeugen eines elektrischen Signals, wenn niedergedrückt, und mit einem senkrecht stehenden Steuerabschnitt hervorsteht. Insbesondere ist der Controller 40 mittels eines oberen Gehäuses und eines unteren Gehäuses ausgebildet. Das Gehäuse des Controllers 40 weist einen Bedienbereich auf, der auf einer oberen Fläche in einer ebenen Form länglich seitwärts ausgebildet ist. Im Bedienbereich des Controllers 40 sind ein kreuzförmiger Digital-Richtungsschalter (nachstehend bezeichnet als „Kreuzschalter") 403 an einer linken Seite, eine Mehrzahl von Knopfschaltern (nachstehend lediglich abgekürzt mit „Schalter") 404A404F an einer rechten Seite, ein Startschalter 405, allgemein an einem Neben-Zentralabschnitt, und ein Joystick 45 zum Ermöglichen des analogen Eingebens an einem zentralen unteren Abschnitt vorgesehen. Der Kreuzschalter 403 ist ein Richtungsschalter zum Bestimmen der Bewegungsrichtung einer Heldenfigur oder eines Zeigers, welcher Kreuzschalter 403 einen oberen, einen unteren, einen linken, und einen rechten Niederdruckpunkt aufweist, die zum Bestimmen der Bewegung in vier Richtungen verwendet werden. Die Schalter 404A404F, die aufgrund der Spielesoftware unterschiedlich wirken können, werden beispielsweise verwendet, um in einem Schießspiel ein Geschoss zu laden oder verschiedene Aktionen zu bestimmen, wie beispielsweise in einem Action-Spiel Springen, Treten oder einen Gegenstand aufnehmen. Obwohl der Joystick 45 anstelle des Kreuzschalters 403 verwendet wird, um die Bewegungsrichtung einer Heldenfigur oder dergleichen zu bestimmen, kann er die Richtung über den gesamten Winkelbereich von 360° bestimmen, wobei er als ein Analog-Richtungs-Bestimmungsschalter verwendet wird.
  • Das Gehäuse des Controllers 40 weist drei Griffe 402L, 402C und 402R auf, die in einer Weise ausgebildet sind, dass sie nach unten von drei Positionen des Bedienbereichs aus hervorstehen. Die Griffe 402L, 402C und 402R sind stabförmig so ausgebildet, dass sie, wenn von der Hand ergriffen, von der Handfläche, dem Mittelfinger, dem Zeigefinger und dem kleinen Finger umschlossen sind, wobei jeder von ihnen an einem Basisabschnitt ein wenig dünner, an einem Zwischenabschnitt dick und in Richtung eines offenen Endes (nach unten in 7) dünner ausgebildet ist. Das untere Gehäuse des Controllers 40 weist eine Einführungsöffnung 409 auf, die an einem zentralen oberen Abschnitt ausgebildet ist, der sich von der Unterseite zum lösbaren Anschließen einer RRM-Einsteckkarte 50 als eine Erweiterungsvorrichtung erstreckt. Das Gehäuse weist einen Knopfschalter 406L und einen Knopf 406R auf, die links und rechts an oberen Seitenflächen des unteren Gehäuses an Positionen angeordnet sind, die den Positionen entsprechen, zu denen sich der rechte und der linke Zeigefinger eines Spielers jeweils erstreckt. An einer rückseitigen Fläche am Basisabschnitt des Zentralgriffs 402C ist ein Schalter 407 als ein Schalter mit einer Funktion alternativ zum Schalter 406L vorgesehen, wenn der Joystick 45 anstelle des Kreuzschalters 403 verwendet wird.
  • Die untere Gehäusehälfte an einer rückseitigen Oberflächenseite erstreckt sich in Richtung einer unteren Fläche derart, dass sie eine Öffnung 408 aufweist, die an einem äußersten Ende der Fläche ausgebildet ist. In einem vertieften Ende der Öffnung 408 ist ein Verbinder (nicht gezeigt) vorgesehen, mit dem eine Erweiterungseinsteckkarte 50 zu koppeln ist. In der Öffnung 408 ist ferner ein Hebel 409 zum Auswerfen der in der Öffnung 408 eingeführten Einsteckkarte 50 vorgesehen. An einer dem Hebel 409 in der Öffnung 408 zum Einführen einer Erweiterungs-Einsteckkarte 50 gegenüberliegenden Seite ist eine Aussparung 410 ausgebildet, welche Aussparung 410 einen Raum bereitstellt zum Herausziehen der Erweiterungs-Einsteckkarte 50 beim Herausnehmen der Erweiterungs-Einsteckkarte 50 unter Verwenden des Hebels 409.
  • 9 ist ein detailliertes Schaltkreisdiagram eines Controllers 40 und einer RAM-Einsteckkarte 50 als ein Beispiel einer Erweiterungsvorrichtung. Der Controller 40 beinhaltet im Gehäuse elektronische Schaltkreise, wie beispielsweise einen Betriebssignal-Verarbeitungsschaltkreis 44 usw., um die Betriebszustände der Schalter 403407 oder des Joysticks 45 oder dergleichen zu erfassen und erfasste Daten zum Controller-Steuerschaltkreis 17 zu senden. Der Betriebssignal-Verarbeitungsschaltkreis 44 weist einen Signal-Empfangsschaltkreis 441, einen Steuerschaltkreis 442, einen Schaltsignal-Erfassungsschaltkreis 443, einen Zähler-Schaltkreis 444, einen Signal-Sendeschaltkreis 445, einen Joyport-Steuerschaltkreis 446, einen Rücksetz-Schaltkreis 447 und ein Nicht-Oder (NOR) -Gatter 448 auf.
  • Der Signal-Empfangsschaltkreis 441 wandelt ein serielles Signal, wie beispielsweise ein vom Controller-Steuerschaltkreis 17 übertragenes Steuersignal, Einschreib-Daten für die RAM-Einsteckkarte 50 und dergleichen, in ein Parallel-Signal um, um es dem Steuerschaltkreis 442 zuzuführen. Der Steuerschaltkreis 442 erzeugt ein Rücksetzsignal, um, wenn das vom Controller-Steuerschaltkreis 17 übertragene Steuersignal ein Rücksetzsignal für eine X-, Y-Koordinate des Joysticks 45 ist, das Rücksetzen (0) gemessener Werte eines X-Achsen-Zählers 444X und eines Y-Achsen-Zählers 444Y zu veranlassen, die im Zähler 444 enthalten sind. Der Joystick weist Photo-Interrupter für die X-Achse und die Y-Achse auf, um die Anzahl der Impulse proportional zum Neigungsbetrag eines Hebels in Richtungen der X-Achse und der Y-Achse zu erzeugen, dabei bereitstellend entsprechende Impulssignale den Zählern 444X und 444Y. Der Zähler 444X misst, wenn der Joystick 45 in die X-Achsenrichtung geneigt wird, die Anzahl der proportional zum Neigungsbetrag erzeugten Impulse. Der Zähler 444Y misst die Anzahl der proportional zum Neigungsbetrag erzeugten Impulse, wenn der Joystick 45 in die Y-Achsenrichtung geneigt wird. Demgemäß bestimmt der mittels der gemessenen Werte in X-Achse und Y-Achse des Zählers 444X und des Zählers 444Y resultierende Vektor die Bewegungsrichtung und die Koordinatenposition für die Heldenfigur oder den Zeiger. Im Übrigen werden der Zähler 444X und der Zähler 444Y ferner von ihren gemessenen Werten mittels eines vom Rücksetzsignal-Erzeugungsschaltkreis 447 auf das Einschalten der Energiezufuhr hin zugeführten Rücksetzsignals oder mittels eines vom Schaltsignal-Erfassungsschaltkreis 443 zugeführten Rücksetzsignals zurückgesetzt, wenn der Spieler gleichzeitig zwei im Voraus bestimmte Schalter niederdrückt.
  • Der Schaltsignal-Erfassungsschaltkreis 443 antwortet auf ein Ausgabe-Befehlssignal, das einen Schaltzustand darstellt, der mit einer konstanten Periode (beispielsweise in einem 1/30-Sekundenintervall als eine Frame-Periode eines Fernsehers) zugeführt wird, und liest ein Signal, das infolge des Zustands des Niederdrückens des Kreuzschalters 403 und der Schalter 404A404F, 405, 406L, 406 und 407 verändert wird, um es dem Steuerschaltkreis 442 zuzuführen.
  • Der Steuerschaltkreis 442 antwortet auf ein Befehlssignal zum Auslesen der Betriebszustands-Daten vom Controller-Steuerschaltkreis 17 und führt die Daten des Betriebszustands der Schalter 403407 und die Messwerte der Zähler 444X, 444Y dem Signal-Sendeschaltkreis 445 in einer vorbestimmten Datenformat-Reihenfolge zu. Der Signal-Sendeschaltkreis 445 wandelt diese vom Steuerschaltkreis 442 ausgegebenen Parallel-Daten in serielle Daten um, sodass sie dem Controller-Steuerschaltkreis 17 mittels eines Wandlerschaltkreises 43 und einer Signalleitung 42 zugeführt werden.
  • Mit dem Steuerschaltkreis 442 sind ein Adressbus, ein Datenbus und ein Port-Steuerschaltkreis 446 mittels eines Port-Verbinders gekoppelt. Der Port-Steuerschaltkreis 446 führt eine Eingabe-Ausgabe-Steuerung (oder Signal-Sende- oder -Empfangs-Steuerung) auf Daten gemäß den Befehlen von der CPU 11 durch, wenn die RAM-Einsteckkarte 50 als ein Beispiel einer Erweiterungsvorrichtung mit einem Port-Verbinder 46 gekoppelt ist. Die RAM-Einsteckkarte 50 weist ein RAM 51 und einen Zeitgeber-Chip 53 als ein Beispiel einer Einrichtung zum Erzeugen zeitlich bezogener Information (oder einen Kalender-Zeitgeber), die mit dem Adressbus und dem Datenbus gekoppelt sind, eine mit der RAM-Einsteckkarte 50 gekoppelte Batterie 52 zum Zuführen von Energie dem RAM 51 und dem Zeitgeber-Zähler 53, sowie einen Dekoder 54 zum Aktivieren des Zeitgeber-Zählers 53, wenn eine vorbestimmte Adresse gegeben ist, auf. Das RAM 51 ist ein RAM, das eine Kapazität aufweist, die geringer als die Hälfte einer maximalen Speicherkapazität ist, auf die unter Verwenden des Adressbusses zugegriffen werden kann, und das beispielsweise aus einem 256 kBit-RAM besteht. Dies dient zum Vermeiden einer Duplizierung zwischen der Einschreib/Auslese-Adresse des RAM und der Ausleseadresse des Zeitgeber-Chips 53 infolge des Auslesens eines Wertes eines beliebigen Zählers im Zeitgeber-Chip 53, wenn das höchstwertige Bit „1" wird. Das RAM 51 speichert Sicherungsdaten, die dem Spiel zugeordnet sind, sodass, wenn die RAM-Einsteckkarte 50 vom Port-Verbinder 46 entfernt wird, die gespeicherten Daten mittels Empfangens einer Energiezufuhr von der Batterie 52 gehalten werden. Im Übrigen werden die Details des Typs der vom RAM 51 gespeicherten Daten, das Einschreiben der Daten und das Verwenden der gespeicherten Daten später erläutert.
  • 10 ist eine grafische Darstellung eines Datenformats, mittels dessen die Bildverarbeitungsvorrichtung Daten vom Controller 40 ausliest, die einen Betriebszustand der Schalter 403407 und des Joysticks 45 kennzeichnen. Die vom Controller 40 erzeugten Daten sind als 4 Byte-Daten ausgestaltet. Die Daten des ersten Bytes stellen B, A, G, START, oben, unten, links und rechts dar, d. h. das Niederdrücken der Druckpunkte für oben, unten, links und rechts des Schalters 404B, 404A, 407 und 405 sowie des Kreuzschalters 403. Ist beispielsweise der Knopf B, d. h. der Schalter 404B, niedergedrückt, wird das höchstwertige Bit des ersten Bytes zu „1". In ähnlicher Weise repräsentiert das zweite Byte JSRST, 0 (nicht genutzt bei diesem Ausführungsbeispiel), L, R, E, D, C und F, d. h. das Niederdrücken des Schalters 409, 406L, 406, 404E, 404D, 404C und 404F. Das dritte Byte repräsentiert eine Binärzahl des X-Koordinatenwertes (mittels des X-Zählers 444X gemessener Wert), welcher Wert vom Neigungswinkel des Joysticks 45 in der X-Richtung abhängig ist. Das vierte Byte repräsentiert mittels einer Binärzahl den Y-Koordinatenwert (mittels des Y-Zählers 444Y gemessener Wert), welcher wert vom Neigungswinkel des Joysticks 45 in der Y-Richtung abhängig ist. Da die X- und Y-Koordinatenwerte mittels 8 Bit einer Binärzahl dargestellt werden, ermöglicht deren Umwandlung in Dezimalzahlen eine Darstellung der Neigung des Joysticks 45 durch eine Zahl von 0 bis 255. Wird durch das höchstwertige Bit ein Vorzeichen ausgedrückt, das einen negativen Wert bezeichnet, kann der Neigungswinkel des Joysticks 45 durch eine Zahl zwischen –128 und 127 ausgedrückt werden.
  • Bezugnehmend auf 11 bis 14 werden Erläuterungen bezüglich eines Formats für das zwischen der Bildverarbeitungsvorrichtung 10 und dem Controller 40 gesendete und empfangene Signal durchgeführt.
  • 11 ist eine veranschaulichende Darstellung eines Formats für das zwischen der Bildverarbeitungsvorrichtung 10 und dem Controller 40 gesendete und empfangene Signal zur Identifikation des Typs eines Controllers 40 durch die Bildverarbeitungsvorrichtung 10. Die Bildverarbeitungsvorrichtung 10 sendet ein Befehl „0"-Typdaten-Anforderungssignal, ausgestaltet als 1 Byte (8 Bit), zum Steuerschaltkreis 442 im Controller 40 und empfängt als Antwort darauf insgesamt ein 3 Byte-Typdaten-Signal bezüglich des Controllers 40, Type-L (1 Byte), Type-H (1 Byte) und den mittels des Steuerschaltkreises 442 erzeugten Status. Hierbei sind Type-L und Type-H Daten, die eine Funktion einer Vorrichtung oder Einrichtung in Verbindung mit dem Verbinder 46 darstellen. Die jeweiligen Type-L- und Type-H-Daten sind Daten, die zu einem Typ einer RAM-Einsteckkarte 50 gehören. Basierend auf den Daten identifiziert die Bildverarbeitungsvorrichtung 10 den Typ eines Controllers 40, d. h. den Typ einer mit dem Controller 40 gekoppelten RAM-Einsteckkarte 50. Der Typ der RAM-Einsteckkarte 50 beinhaltet beispielsweise einen Typ, der lediglich mit einem RAM 51 ausgestattet ist, einen Typ, der mit einem RAM 51 zusammen mit einem Zeitgeber-Chip ausgestattet ist, und einen Typ, der mit einem RAM 51 zusammen mit einer Flüs sigkristallanzeige ausgestattet ist. Bei dem Ausführungsbeispiel wird der Typ, ausgestattet mit einem RAM 51 und einem Zeitgeber-Chip, ausführlich erläutert. Indessen sind die Zustandsdaten Daten, die kennzeichnen, ob der Port mit einer Erweiterungsvorrichtung, beispielsweise einer RAM-Einsteckkarte 50, gekoppelt ist oder nicht, und ob nach dem Rücksetzen eine Erweiterungsvorrichtung mit dem Port gekoppelt ist oder nicht.
  • 12 ist eine veranschaulichende Darstellung eines Formats für das zwischen der Bildverarbeitungsvorrichtung 10 und dem Controller 40 gesendete und empfangene Signal zum Unterscheiden des Betriebszustands des Controllers 40 durch die Bildverarbeitungsvorrichtung 10. Die Bildverarbeitungsvorrichtung 10 sendet ein Befehl „1"-Controllerdaten-Anforderungssignal, ausgestaltet als 1 Byte (8 Bit), zum Steuerschaltkreis 442 im Controller 40 und empfängt als Antwort darauf ein vom Steuerschaltkreis 442 erzeugtes Betriebszustands-Datensignal bezüglich des Controllers 40. Basierend auf den Betriebszustands-Daten gibt die Bildverarbeitungsvorrichtung 10 eine Rückmeldung darüber, wie der Bediener den Controller 40 bedient, zur Verwendung zum Verändern des Bildes bedient. Im Übrigen wurde das Betriebszustands-Datensignal ausführlich in der Erläuterung von 10 erklärt, und dessen Erläuterung wird an dieser Stelle weggelassen.
  • 13 ist eine veranschaulichende Darstellung eines Formats für ein Lese-Datensignal, wenn die Bildverarbeitungsvorrichtung 10 Daten aus dem RAM 51 in der mit dem Controller 40 gekoppelten RAM-Einsteckkarte 50 liest. Die Bildverarbeitungsvorrichtung 10 sendet ein Befehl „2"-Lese-Befehlssignal, ausgestaltet als 1 Byte (8 Bit), ein Adresse H (8 Bit) -Signal, das ein höherwertiges Bit einer Adresse darstellt, ein Adresse L (8 Bit) -Signal, das ein niedrigwertigeres Bit einer Adresse darstellt, und ein Adresse CRC (5 Bit) -Signal zum Überprüfen auf Fehler in der Übertragung der Adressdaten des Adresse H-Signals und des Adresse L-Signals zum Steuerschaltkreis 442. Die Bildverarbeitungsvorrichtung empfängt als Antwort darauf ein vom Steuerschaltkreis 442 erzeugtes Speicher-Datensignal für das RAM 51 und ein Daten CRC (8 Bit) -Signal zum Überprüfen auf Übertragungsfehler. Im Übrigen ist es, um zeitbezogene Information des Zeitgeber-Chips 53 durch die Bildverarbeitungsvorrichtung 10 auszulesen, ausreichend, Adressen von 8000 h oder größer mittels lediglich Wiedergebens des Adressen H-Signalwertes größer als 80 h auszulesen.
  • 14 ist eine veranschaulichende Darstellung eines Formats für ein Schreib-Datensignal, wenn die Bildverarbeitungsvorrichtung 10 Daten in das RAM 51 in der mit dem Controller 40 gekoppelten RAM-Einsteckkarte 50 schreibt. Die Bildverarbeitungsvorrichtung 10 sendet ein Befehl „3"-Schreib-Befehlssignal, ausgestaltet als 1 Byte (8 Bit), ein Adresse H (8 Bit) -Signal, das ein höherwertiges Bit einer Adresse darstellt, ein Adresse L-Signal und ein Adresse H-Signal, die ein niedrigwertigeres Bit (3 Bit) einer Adresse darstellen, ein Adresse CRC (5 Bit) -Signal zum Überprüfen auf Fehler in der Übertragung der Adressdaten des Adresse L-Signals und ein in das RAM 51 zu schreibendes 32 Byte-Einschreib-Datensignal zum Steuerschaltkreis 442. Die Bildverarbeitungsvorrichtung 10 empfängt als Antwort darauf ein vom Steuerschaltkreis 442 erzeugtes Daten-CRC (8 Bit) -Signal zum Überprüfen auf Datenempfangs-Fehler. Die Bildverarbeitungsvorrichtung 10 empfängt das CRC-Signal, um eine CRC-Prüfung anhand der übertragenen Einschreib-Daten durchzuführen, und ermittelt basierend darauf, ob die Daten korrekt in das RAM 51 geschrieben worden sind. Im Übrigen ist es, um beispielsweise das Datum und die Zeit mittels Schreibens von zeitbezogenen Information in den Zeitgeber-Chip von der Bildverarbeitungsvorrichtung 10 zurückzusetzen, ausreichend, das Schreiben in Adressen von 8000 h oder größer mittels lediglich Wiedergebens des Adresse H-Signalwerts größer als 80 h durchzuführen.
  • Nun wird der Betrieb des Datensendens und -empfangs zwischen der Bildverarbeitungsvorrichtung 10 und dem Controller 40 erläutert.
  • Bezugnehmend zunächst auf ein Flussdiagramm für die CPU der Bildverarbeitungsvorrichtung 10 in 15 werden Erläuterungen hinsichtlich der Bildverarbeitung durchgeführt. In einem Schritt S11 wird von der CPU 11 eine initiale Einstellung basierend auf einem im Programmdatenbereich in 5 gespeicherten Initial-Wert (nicht gezeigt) durchgeführt. Dann gibt die CPU 11 in einem Schritt S12 einen im Programmdatenbereich 202 gespeicherten Steuerungs-Paddaten-Anforderungsbefehl zum Bus-Steuerschaltkreis 12 aus. In einem Schritt S13 führt die CPU 11 eine vorbestimmte Bildverarbeitung basierend auf dem im Programmdatenbereich 202 und im Bilddatenbereich 201 gespeicherten Programm aus. Während die CPU 11 Schritt S13 ausführt, befindet sich der Bus-Steuerschaltkreis 12 in Ausführung der Schritte S21–S24. Dann gibt die CPU 11 in einem Schritt S14 Bilddaten basierend auf den im Steuerungs-Paddatenbereich 141 in 3 gespeicherten Steuerungs-Paddaten aus. Nach dem Abschließen von Schritt S14 wiederholt die CPU das Ausführen der Schritte S12–S14.
  • Der Betrieb des Bus-Steuerschaltkreises 12 wird unter Verwendung von 16 erläutert. In einem Schritt S21 ermittelt der Bus-Steuerschaltkreis 12, ob die CPU 11 einen Controllerdaten-Anforderungs-Befehl (einen Anforderungsbefehl für Daten an Schaltern des Controllers 40 oder Daten in der Erweiterungsvorrichtung 50) ausgegeben hat oder nicht. Wurde kein Controllerdaten-Anforderungs-Befehl ausgegeben, wird auf das Ausgeben gewartet. Wurde ein Controllerdaten-Anforderungsbefehl ausgegeben, wird im Prozess mit einem Schritt S22 fortgefahren. In Schritt S22 gibt der Bus-Steuerschaltkreis 12 einen Befehl zum Einlesen von Daten des Controllers 40 (nachstehend als Befehl 1 oder Befehl 2 bezeichnet) zum Controller-Steuerschaltkreis 17 aus. Dann ermittelt der Bus-Steuerschaltkreis 12 in einem Schritt S23, ob der Controller-Steuerschaltkreis 12 Daten vom Controller 40 empfangen hat oder nicht, um sie im RAM 174 zu speichern. Hat der Controller-Steuerschaltkreis 17 vom Controller 40 keine Daten empfangen, um sie im RAM 174 zu speichern, wartet der Bus-Steuerschaltkreis 12 in Schritt S23, während, wenn der Controller-Steuerschaltkreis 17 Daten vom Controller 40 empfangen hat, um sie im RAM 174 zu speichern, im Prozes mit einem Schritt S24 fortgefahren wird. In Schritt S24 überträgt der Bus-Steuerschaltkreis 12 die im RAM 174 gespeicherten Daten des Controllers 40 zum W-RAM 14. Wenn der Bus-Steuerschaltkreis 12 die Datenübertragung zum W-RAM 14 abschließt, führt er den Prozess zurück zum Schritt S21, um die Ausführung von Schritt S21 bis Schritt S24 zu wiederholen.
  • Im Übrigen erläutern die Flussdiagramme von 15 und 16 das Beispiel, bei dem die CPU 11, nachdem der Bus-Steuerschaltkreis 12 Daten vom RAM 174 zum W-RAM 14 übertragen hat, die im W-RAM 14 gespeicherten Daten verarbeitet. Jedoch kann die CPU 11 die Daten im RAM 174 mittels des Bus-Steuerschaltkreises 12 direkt verarbeiten.
  • 17 ist ein Flussdiagramm zum Erläutern des Betriebs des Controller-Steuerschaltkreises 17. In einem Schritt S31 wird das Vorhandensein oder das Fehlen des Wartens auf ein Einschreiben vom Bus-Steuerschaltkreis 12 ermittelt. Wird nicht auf ein Einschreiben gewartet, wartet der Datenübertragungs-Steuerschaltkreis 171, bis ein Warten auf ein Einschreiben vom Bus-Steuerschaltkreis 12 eingeht. Wird auf das Einschreiben gewartet, bewirkt der Datenübertragungs-Steuerschaltkreis 171 in einem nächsten Schritt S32, dass das RAM 174 Befehle für den ersten bis zum vierten Kanal und/oder Daten (nachstehend abgekürzt mit „Befehl/Daten") speichert. In einem Schritt S33 werden der Befehl/die Daten für den ersten Kanal zum mit dem Verbinder 181 gekoppelten Controller 40 gesendet. Der Steuerschaltkreis 442 führt eine vorbestimmte Operation basierend auf dem Befehl/den Daten aus, sodass die zur Bildverarbeitungsvorrichtung 10 zu übertragenden Daten ausgegeben werden. Der Inhalt der Daten wird später beim Erläutern des Betriebs des Steuerschaltkreises 442 erklärt. In einem Schritt S34 empfängt der Datenübertragungs-Steuerschaltkreis 171 vom Steuerschaltkreis 442 ausgegebene Daten, um das RAM dazu zu bringen, die Daten zu speichern.
  • Von nun an werden in einem Schritt S35 der Befehl/die Daten für den zweiten Kanal zum Controller 40 in einer Weise ähnlich dem Betrieb für den ersten Kanal in den Schritten S33 und S34 übertragen. Der Steuerschaltkreis 442 führt eine vorbestimmte Operation basierend auf diesem Befehl/diesen Daten aus, sodass die zur Bildverarbeitungsvorrichtung 10 zu übertragenden Daten ausgegeben werden. In einem Schritt S36 werden die Prozesse der Datenübertragung und des Einschreibens für den zweiten Kanal durchgeführt. Indessen werden in einem Schritt S37 der Befehl/die Daten für den dritten Kanal zum Controller 40 übertragen. Der Steuerschaltkreis 442 führt eine vorbestimmte Operation basierend auf diesem Befehl/diesen Daten aus, sodass die zur Bildverarbeitungsvorrichtung 10 zu übertragenden Daten ausgegeben werden. In einem Schritt S38 werden die Prozesse der Datenübertragung und des Einschreibens für den dritten Kanal durchgeführt. Ferner werden in einem Schritt S39 der Befehl/die Daten für den vierten Kanal zum Controller 40 übertragen. Der Steuerschaltkreis 442 des Controllers 40 führt eine vorbestimmte Operation basierend auf diesem Befehl/diesen Daten aus, sodass die zur Bildverarbeitungsvorrichtung 10 zu übertragenden Daten ausgegeben werden. In einem Schritt S40 werden die Prozesse der Datenübertragung und des Einschreibens für den vierten Kanal durchgeführt. In einem nachfolgenden Schritt S41 sendet der Datenübertragungs-Schaltkreis 171 in Stapelverarbeitungsweise die in den Schritten S34, S36, S38 und S40 empfangenen Daten zum Bus-Steuerschaltkreis 12.
  • In der Weise, wie oben erläutert, werden die Daten für den ersten Kanal bis zum vierten Kanal, d. h. die Befehle für die mit den Verbindern 181184 gekoppelten Controller 40, und die Daten des Betriebszustands der auszulesenden Controller 40 mittels einer Zeitteilungsverarbeitung zwischen dem Datenübertragungs-Steuerschaltkreis 171 und dem Steuerschaltkreis 442, jeweils in den Controllern 40, übertragen.
  • 18 ist ein Flussdiagramm zum Erläutern des Betriebs des Steuerschaltkreises 44. Zunächst wird in einem Schritt S51 ermittelt, ob dem Steuerschaltkreis 442 vom Bildverarbeitungsschaltkreis 10 ein Befehl eingegeben worden ist oder nicht. Wurde kein Befehl eingegeben, wird auf das Eingeben eines Befehls gewartet. Wurde ein Befehl eingegeben, wird in einem Schritt S52 ermittelt, ob der dem Steuerschaltkreis 442 eingegebene Befehl ein Status-Anforderungsbefehl (Befehl „0") ist oder nicht. Ist der Befehl „0", wird im Prozess mit einem Schritt S53 fortgefahren, in dem ein Status-Sendeprozess durchgeführt wird.
  • In Schritt S53, in dem die CPU 11 den Befehl „0" ausgibt, werden die Daten im Format, wie in 13 gezeigt, zwischen der Bildverarbeitungsvorrichtung 10 und dem Controller 40 senden und empfangen. Aus diesem Grund sendet der Steuerschaltkreis 442, wenn die Befehl „0"-Daten, ausgestaltet als 1 Byte (8 Bit), empfangen werden, Type-L (1 Byte), Type-H (1 Byte) und den Status. Hierbei sind Type-L und Type-H Daten zum Identifizieren der Funktion einer mit dem Joyport-Verbinder 46 gekoppelten Einrichtung oder Vorrichtung, die inhärent in der RAM-Einsteckkarte 50 aufgezeichnet sind. Dies macht eine Erkennung durch die Bildverarbeitungsvorrichtung 10 möglich, welche Erweiterungsvorrichtung (beispielsweise eine RRM-Einsteckkarte 50 oder andere Erweiterungsvorrichtungen, wie beispielsweise eine Flüssigkristallanzeige) mit dem Controller 40 gekoppelt ist. Der Status sind Daten, die kennzeichnen, ob eine Erweiterungsvorrichtung, wie beispielsweise eine RAM-Einsteckkarte 50, mit dem Port gekoppelt ist oder nicht, und ob die Verbindung der Erweiterungsvorrichtung nach dem Rücksetzen besteht oder nicht.
  • Andererseits wird, wenn in Schritt S52 ermittelt wird, dass es kein Befehl „0" ist, in einem Schritt S54 ermittelt, ob der eingegebene Befehl ein Paddaten-Anforderungsbefehl (Befehl „1") ist oder nicht. Ist es ein Befehl „1", wird im Prozess mit einem Schritt S55 fortgefahren, in dem der Prozess des Sendens von Paddaten durchgeführt wird. Insbesondere werden, wenn die CPU 11 einen Befehl „1" ausgibt, die Daten im Format, wie in 14 gezeigt, zwischen der Bildverarbeitungsvorrichtung 10 und dem Controller 40 gesendet und empfangen. Aus diesem Grund sendet der Steuerschaltkreis 442, wenn er Befehl „1"-Daten empfängt, ausgestaltet als 1 Byte (8 Bit), die Daten von 14 Schaltern (16 Bit) von B, A, G, START, oben, unten, links, rechts; die Daten von JSRST (1 Bit); und die Daten des Zählers 444X und des Zählers 444Y (16 Bit). Mittels Übertragens dieser Daten zur Bildverarbeitungsvorrichtung 10 erkennt die Bildverarbeitungsvorrichtung 10, wie der Bediener den Controller 40 bedient hat. Daher werden diese Daten von der Bildverarbeitungsvorrichtung zum Verändern des Bildes gemäß dem Betriebszustand des Controllers 40 genutzt.
  • Ergibt die Ermittlung im vorgenannten Schritt S54 keinen Befehl „1", wird in einem nachfolgenden Schritt S56 ermittelt, ob der eingegebene Befehl ein Auslese-Anforderungsbefehl (Befehl „2") für Daten ist oder nicht, die zur RAM-Einsteckkarte 50 gehören, die mit dem Erweiterungsverbinder zu koppeln ist. Ergibt die Ermittlung einen Befehl „2", wird im Prozess mit einem Schritt S57 fortgefahren, in dem der Prozess des Herausschreibens des Erweiterungsverbinders durchgeführt wird. Insbesondere werden die Daten, wenn die CPU 11 einen Befehl „2" ausgibt, in einem Format, wie in 15 gezeigt, zwischen der Bildverarbeitungsvorrichtung 10 und dem Controller 40 gesendet und empfangen. Aus diesem Grund sendet der Steuerschaltkreis 442 die in der RAM-Einsteckkarte gespeicherten Daten (32 Byte) und CRC (8 Bit) zum Prüfen auf Datenfehler, wenn der Steuerschaltkreis 442 Befehl „2"-Daten empfängt, ausgestaltet als 1 Byte (8 Bit), eine Adresse H, die die höherwertigen Bits (8 Bit) einer Adresse darstellt, eine Adresse L, die die niedrigwertigeren Bits (3 Bit) der Adresse darstellt, und eine Adresse CRC (5 Bit) zum Prüfen auf Fehler in den gesendeten und empfangenen Adressdaten. Auf diese Weise ermöglichen die Kopplung der RAM-Einsteckkarte 50 (oder anderer Erweiterungsvorrichtungen) und der Bildverarbeitungsvorrichtung 10 der Bildverarbeitungsvorrichtung 10, Daten von der RAM-Einsteckkarte 50 usw. zu verarbeiten.
  • Ergibt die Ermittlung im vorgenannten Schritt S56 keinen Befehl „2", wird in einem nachfolgenden Schritt S58 ermittelt, ob der eingegebene Befehl ein Einlese-Rnforderungs befehl (Befehl „3") für mit dem Erweiterungsverbinder 46 gekoppelten RAM-Einsteckkarte 50 zugeordnete Information ist oder nicht. Ist er ein Befehl „3", wird in einem Schritt S59 der Prozess des Daten-Auslesens für die mit dem Erweiterungsverbinder 46 gekoppelte RAM-Einsteckkarte 50 durchgeführt. Insbesondere werden, wenn die CPU 11 einen Befehl „3" ausgibt, die Daten, gezeigt in 3, als Antwort auf den Befehl „3" zwischen der Bildverarbeitungsvorrichtung 10 und dem Controller 40 gesendet und empfangen.
  • D. h., wenn der Steuerschaltkreis 442 Befehl „3"-Daten empfängt, ausgestaltet als 1 Byte (8 Bit), eine Adresse H, die die höherwertigen Bits einer Adresse (8 Bit) darstellt, eine Adresse L, die die niedrigwertigeren Bits der Adresse (3 Bit) darstellt, eine Adresse CRC zum Überprüfen auf Fehler in den gesendeten und empfangenen Adressdaten (5 Bit) und den zur RAM-Einsteckkarte 50 zu übertragenden Daten (32 Byte), sendet er CRC zum Überprüfen auf Fehler für empfangene Daten (8 Bit). Ruf diese Weise ermöglicht die Kopplung der Erweiterungsvorrichtung 50 und der Bildverarbeitungsvorrichtung 10 der Bildverarbeitungsvorrichtung 10, die Erweiterungsvorrichtung 50 zu steuern. Die Kopplung der Erweiterungsvorrichtung 50 und der Bildverarbeitungsvorrichtung 10 verbessern drastisch die Funktion des Controllers 40.
  • Ergibt die Ermittlung im vorgenannten Schritt S58 keinen Befehl „3", wird in einem Schritt S60 ermittelt, ob dieser ein Rücksetzbefehl (Befehl 255) ist oder nicht. Ist er der Rücksetzbefehl (255), wird in einem Schritt S61 der Prozess des Rücksetzens des Zählers 444 für den Joystick 45 durchgeführt.
  • Insbesondere werden, wenn die CPU 11 einen Befehl 255 ausgibt, die Daten, gezeigt in 21, zwischen der Bildverarbeitungsvorrichtung 10 und dem Controller 40 gesendet und empfangen. D. h. der Steuerschaltkreis 442 des Controllers 40 gibt, wenn er Befehl 255-Daten empfängt, ausgestaltet als 1 Byte (8 Bit), ein Rücksetzsignal aus, um den X-Zähler 444X und den Y-Zähler 444Y zurückzusetzen, und sendet die vorgenannten Type-L (1 Byte), Type-H (1 Byte) und den Status.
  • Ferner werden Erläuterungen beim durch die Erfindung gekennzeichneten Herumdrehen einer Kamera (eines Blickpunkts) in einen dreidimensionalen Raum durchgeführt. D. h., wenn sich im herkömmlichen 3D-Spiel zwischen einer Kamera und einem bedienbaren Objekt (beispielsweise Mario) ein anderes Objekt (beispielsweise eine Wand oder eine gegnerische Figur) befindet, wie in 20 gezeigt, kann das bedienbare Objekt oder Mario nicht von der Kamera aufgenommen werden. Demgegenüber ist es im Rahmen der Erfindung möglich, Mario kontinuierlich zu jeder Zeit mittels Herumdrehens der Kamera um Mario herum bis zu einer lateralen Seite von ihm, wie in 20 gezeigt, anzuzeigen.
  • Kurz dargestellt, liegt ein Zustand, wie in 21 gezeigt, vor, wird die Ermittlung einer Kollision gegen ein Topographie-Polygon von einer Seite von Mario aus an verschiedenen Punkten an einer geraden Linie durchgeführt, die sich zwischen Mario und der Kamera erstreckt. Hierbei wird eine Prüfung für ein Polygon durchgeführt, das sich senkrecht zu einer X-Z-Ebene innerhalb eines Radius' R von dem jeweiligen Punkt aus befindet. Der Prozess des Herumdrehens der Kamera wird an einem Polygon P durchgeführt, das als Kollisionspolygon ermittelt worden ist. Die Fläche der Wand P wird mittels der Ebenen-Flächen-Gleichung, wie durch Gleichung (1) gegeben, ausgedrückt. Ax + By + Cz + D = 0 (1)
  • Die Korrektur in der Kameraposition wird mittels Bewegens der Kamera parallel zu dieser Ebene P durchgeführt. Im Übrigen wird der Winkel der Y-Achse, die parallel mit der Ebene ist, mittels der Ebenen-Flächen-Gleichung berechnet.
  • In größerem Detail erläutert, wird die Nummer n eines auf Kollision zu untersuchenden Polygons in einem ersten Schritt S101 in 22 initialisiert (n = 1). In einem nächsten Schritt S102 wird ermittelt, ob die Anzahl N des zu prüfenden Polygone und die Polygon-Nummer gleich sind oder nicht, d. h. ob eine Kollisions-Ermittlung für all die Polygone durchgeführt worden ist oder nicht. Wenn „Nein" in Schritt S102, wird die Kollisions-Ermittlung in einem nächsten Schritt S103 durchgeführt.
  • 23 zeigt diesen Schritt S103, oder eine Kollisions-Ermittlungsroutine, im Detail. Um die Erläuterung dieser Kollisions-Ermittlungsroutine voranzutreiben, sind in 24 und 25 Wanddaten dargestellt, die auf Kollision zu untersuchen sind. D. h. die Wanddaten sind wie in 24 dargestellt, wobei Dreiecks-Polygone, wie in 25, zusammengefasst sind. Diese jeweiligen Polygone sind als Auflistungen von Wand-Polygonen in einem Speicher gespeichert.
  • In einem ersten Schritt S201 in 23 werden ein Punkt Q (Xg, Yg, Zg) und ein Radius R eingegeben. Im Übrigen ist der Punkt Q ein zu prüfender Punkt, und der Radius R ist ein Abstand, der als kollisionsbehaftet gegenüber der Wand betrachtet wird. In einem nächsten Schritt S202 wird ein Wand-Kollisions-Flag zurückgesetzt. In einem Schritt S203 wird ermittelt, ob die oben erläuterte Wand-Polygon-Liste im Speicher gespeichert ist oder nicht. Gibt es eine Wand-Polygon-Liste, wird in einem nächsten Schritt S204 ermittelt, ob dasselbe Polygon ein Polygon ist, das mittels Herumdrehens der Kamera zu verarbeiten ist. Ist dies in diesem Schritt S204 „Ja", wird im Prozess in einem Schritt S205 fortgefahren.
  • Im nächsten Schritt S205 wird der Abstand (dR) zwischen dem Punkt Q und der Fläche des Wand-Polygons gemäß der Gleichung (2) berechnet. dR = AXg + BYg + CZg + D (2)
  • Dann wird in einem Schritt S206 ermittelt, ob der Abstand dR, berechnet in Schritt S205, kleiner als der Radius R ist oder nicht. Ist der Abstand dR größer als der Radius R, gibt es keine Kollision zwischen dem Mario und der Wand, und demgemäß wird im Prozess zum vorgenannten Schritt S203 zurückgekehrt.
  • Wird in Schritt S206 „Ja" ermittelt, d. h. wenn |dR| < R gilt, wird in einem Schritt S204 eine Berechnung gemäß Gleichung (3) zum Ermitteln der Positionskoordinate (Xg', Yg', Zg') eines Schnittpunkts Q' zwischen einer geraden Linie, die sich vom Punkt Q senkrecht zum Wand-Polygon P erstreckt, und der Ebene des Wand-Polygons durchgeführt. Xg' = Xg + A × dR Yg' = Yg + B × dR Zg' = Zg + C × dR (3)
  • Dann wird in einem nächsten Schritt S208 ermittelt, ob sich der Punkt Q' innerhalb des Polygons (innerhalb des Bereichs) befindet oder nicht.
  • In diesem Schritt S208 wird ermittelt, worauf die Ebenenprojektion in Abhängigkeit zur Wand-Ausrichtung (ein Wert A) hin durchzuführen ist. D. h. wenn gilt: A < –0,707 oder A > 0,707, wird eine Projektion auf eine Y-Z-Ebene, gezeigt in 26, durchgeführt. In anderen Fällen wird die Projektion auf eine X-Y-Ebene durchgeführt. Geschieht die Projektion auf die Y-Z-Ebene, wird ermittelt, ob sich der Punkt Q' in 27 innerhalb des Polygons P1 befindet oder nicht.
  • Indessen wird, wenn die Projektion auf die X-Y-Ebene durchgeführt wird, an dem Punkt Q' und an den Spitzen des Polygons P1 in 28 ermittelt, ob der Wert des Kreuzprodukts im Uhrzeigersinn positiv oder negativ ist. D. h. gilt für C in der Polygon-Ebenengleichung: C ≥ 0, wenn jedes der Ergebnis-Kreuzprodukte 0 oder negativ ist, dann ist die Ermittlung, dass sich der Punkt Q' innerhalb des Polygons P befindet. (Y1 – Yq) × (X2 – X1) – (X1 – Xq) × (Y2 – Y1) ≤ 0 (Y2 – Yq) × (X3 – X2) – (X2 – Xq) × (Y3 – Y2) ≤ 0(Y3 – Yq) × (X1 – X3) – (X3 – Xq) × (Y1 – Y3) ≤ 0 (4)
  • Wenn indessen C < 0 gilt, wenn jedes der resultierenden Kreuzprodukte 0 oder positiv ist, dann ist die Ermittlung, dass sich der Punkt Q' innerhalb des Polygons P befindet. (Y1 – Yq) × (X2 – X1) – (X1 – Xq) × (Y2 – Y1) ≥ 0 (Y2 – Yq) × (X3 – X2) – (X2 – Xq) × (Y3 – Y2) ≥ 0 (Y3 – Yq) × (X1 – X3) – (X3 – Xq) × (Y1 – Y3) ≥ 0 (5)
  • Auf diese Weise wird der Punkt Q' in Schritt S208 daraufhin geprüft, ob er sich innerhalb des Polygons befindet oder nicht, und in einem Schritt S209 wird ermittelt, ob sich der Punkt Q' innerhalb des Polygons befindet oder nicht. Wenn „Ja" in diesem Schritt S209, wird das Wand-Kollisions-Flag gesetzt (Schritt S210), das im vorgenannten Schritt S202 zurückgesetzt worden ist. Danach wird im Prozess zu 22 zurückgekehrt.
  • Es ist zu bemerken, dass die oben erläuterte Kollisions-Ermittlung lediglich ein Beispiel ist, und es ist unnötig zu erwähnen, dass die Kollisions-Ermittlung mittels anderer Verfahren oder Wege möglich ist.
  • Zurück bezugnehmend auf 22 wird nach der Kollisions-Ermittlung in Schritt S103 in einem Schritt S104 ermittelt, ob ein Wand-Kollisions-Flag gesetzt ist oder nicht. Wenn „Nein" in diesem Schritt S104, ist der Prozess des Herumdrehens unnötig, sodass die Nummer n eines zu prüfenden Punktes in einem Schritt S105 inkrementiert wird, und im Prozess wird zu Schritt S102 zurückgekehrt.
  • Wenn „Ja" in Schritt S104, wird in einem Schritt S106 und einem Schritt S107 ermittelt, ob sich der zu prüfende Punkt sich an einer Rückseite der Wand befindet. D. h. die Ausrichtung des Polygons wird ermittelt. Ob das Polygon in Richtung der Kamera (des Blickpunkts) ausgerichtet ist oder nicht, kann mittels Prüfens des Vorzeichens des Skalarprodukts eines Normalenvektors N und eines Blickpunktvektors V in 29 ermittelt werden. Der Bedingungsausdruck dafür ist mittels Gleichung (6) gegeben. A = V·N = VxNx + VyNy + VzNz (6)
  • Mit Gleichung (6) werden jeweils Ermittlungen möglich, sodass, wenn A ≥ 0 gilt, die Wand in Richtung der Kamera (nach vorne) ausgerichtet ist, während, wenn A < 0 gilt, die Wand zu einer Rückseite der Wand ausgerichtet ist. Ist eine zwischen der Kamera und Mario befindliche Ebene in Bezug auf die Kamera nach vorne ausgerichtet, wird das Herumdrehen der Kamera in 29 nicht durchgeführt. In diesem Fall wird die Nummer n der Punkte in einem Schritt S105 inkrementiert, und im Prozess wird zu Schritt S102 zurückgekehrt.
  • Ist die sich zwischen der Kamera und Mario befindliche Ebene nach hinten ausgerichtet, wird die Antwort in Schritt S107 zu „Ja", und der Prozess des Herumdrehens wird in nachfolgenden Schritten S108 und S109 durchgeführt. In Schritt S108 wird der Bewegungswinkel, um dessen die Kameraposition (Aufnahmeposition) geändert wird, basierend auf der Ebenen-Flächen-Gleichung für die Wand. D. h. die Ebenen-Flächen-Gleichung in Bezug auf drei Punkte P1 (X1, Y1, Z1), P2 (X2, Y2, Z2), P3 (X3, Y3, Z3) in der Ebenen-Flächen-Gleichung wird mittels einer Multi-Ausdrucks-Gleichung der Gleichung (7) ausgedrückt. Ax + By + Cz + D = 0,wobei gilt: A = Y1 (Z2 – Z3) + Y2 (Z3 – Z1) + Y3 (Z1 – Z2) B = Z1 (X2 – X3) + Z2 (X3 – X1) + Z3 (X1 – X2) C = X1 (Y2 – Y3) + X2 (Y3 – Y1) + X3 (Y1 – Y2) D = X1(Y2Z3 – Z2Y3) + Y1(Z2X3 – X2Z3) + Z1(X2Y3 – X2Y3) (7)
  • Der Winkel Ry des Normalenvektors in Bezug auf die Y-Achse ist mittels Gleichung (8) gegeben.
  • Figure 00300001
  • Daher beträgt der Winkel des Herumdrehens der Kamera entweder Ry + 90° oder Ry – 90°. D. h. in Schritt S109 wird die Kamera rotationsweise um Mario oder das bedienbare Objekt in entweder der Richtung Ry + 90° oder Ry – 90° herum bewegt. Insbesondere erfolgt die Bewegung zu einer Position näher zur gegenwärtig gelagerten Kameraposition (C in 21).
  • Obwohl die Erfindung im Detail beschrieben und dargestellt worden ist, ist klar zu verstehen, dass dies im Wege der Darstellung und lediglich des Beispiels geschah und nicht im Wege der Einschränkung zu nehmen ist, wobei der Umfang der Erfindung lediglich durch die Ausdrücke in den beigefügten Ansprüchen beschränkt ist.

Claims (11)

  1. Bildverarbeitungsvorrichtung (10) zum Anzeigen eines Bildes eines spielergesteuerten Objekts und eines anderen Objekts, die sich von einem vorbestimmten Blickpunkt aus in einem dreidimensionalen Raum befinden, wobei die Vorrichtung aufweist: eine Einrichtung (11) zum Erzeugen von Positionsdaten eines spielergesteuerten Objekts, die Positionsdaten des spielergesteuerten Objekts erzeugt; eine 3D-Daten erzeugende Einrichtung (11) zum Erzeugen von 3D-Daten basierend auf den Daten des anderen Objekts und den Positionsdaten des spielergesteuerten Objekts; eine Blickpunkt-Positionsdaten erzeugende Einrichtung (11), die Positionsdaten erzeugt, die eine Blickpunkt-Position im dreidimensionalen Raum zum Betrachten des spielergesteuerten Objekts kennzeichnen,; eine Anzeigedaten erzeugende Einrichtung (12), die Anzeigedaten zum Anzeigen des Bildes des spielergesteuerten Objekts von einer vorbestimmten Position im dreidimensionalen Raum aus basierend auf den 3D-Daten und den Blickpunkt-Positionsdaten erzeugt; eine Bildsignal erzeugende Einrichtung (16), die ein Bildsignal an eine Anzeige (30) basierend auf den von der Anzeigedaten erzeugenden Einrichtung erzeugten Anzeigedaten ausgibt; und eine Blickpunkt-Positionsdaten modifizierende Einrichtung (40) zum Ändern der Blickpunkt-Positionsdaten, wenn sich das andere Objekt zwischen der Position des spielergesteuerten Objekts und einer am Blickpunkt positionierten Kamera befindet; dadurch gekennzeichnet, dass: die Blickpunkt-Position modifizierende Einrichtung eine Bewegungswinkel berechnende Einrichtung (11, S108) aufweist, mittels der ein Bewegungswinkel ermittelt wird, bei dem sich das andere Objekt nicht zwischen der Blickpunkt-Position und der Position des Spielergesteuerten Objekts befindet; und eine Kameraposition korrigierende Einrichtung (11, S109), mittels der die Kamera um das andere Objekt herum gemäß dem von der Bewegungswinkel berechnenden Einrichtung ermittelten Bewegungswinkel rotiert wird, wobei die Position des spielergesteuerten Objekts der Rotationsmittelpunkt ist.
  2. Bildverarbeitungsvorrichtung gemäß Anspruch 1, ferner aufweisend eine Erfassungseinrichtung (11, S103), die eine Kollisions-Ermittlungseinrichtung aufweist, die ermittelt, ob das spielergesteuerte Objekt mit dem anderen Objekt kollidiert oder nicht, wodurch ermittelt wird, ob sich das andere Objekt zwischen dem spielergesteuerten Objekt und der Kamera befindet.
  3. Bildverarbeitungsvorrichtung gemäß Anspruch 1 oder Anspruch 2, wobei das andere Objekt eine Wand aufweist.
  4. Bildverarbeitungsvorrichtung gemäß Anspruch 3, wobei die Bewegungswinkel evaluierende Einrichtung den Bewegungswinkel basierend auf einer Ebenengleichung für die Wand evaluiert.
  5. Bildverarbeitungsvorrichtung gemäß Anspruch 3 oder Anspruch 4, ferner aufweisend eine Einrichtung zum Ermitteln einer Seite der Wand, wobei die Blickpunkt-Positionsdaten modifizierende Einrichtung die Blickpunkt-Position nicht ändert, wenn die Ermittlungseinrichtung ermittelt, dass sich der Blickpunkt an der Rückseite der Wand befindet.
  6. Bildverarbeitungsvorrichtung gemäß Anspruch 5, ferner aufweisend eine zweite Einrichtung zum Ermitteln, ob die Wand umzudrehen ist oder nicht, wobei die Blickpunkt-Positionsdaten modifizierende Einrichtung die Blickpunkt-Position nicht ändert, wenn die zweite Ermittlungseinrichtung ermittelt, dass die Wand nicht umzudrehen ist.
  7. Verfahren zum Anzeigen eines Bildes eines spielergesteuerten Objekts und eines anderen Objekts, die sich von einem vorbestimmten Blickpunkt aus in einem dreidimensionalen Raum befinden, wobei das Verfahren die Schritte aufweist: Erzeugen von Positionsdaten des spielergesteuerten Objekts, um die Position des spielergesteuerten Objekts im dreidimensionalen Raum zu ändern; Erzeugen von 3D-Daten basierend auf den Daten des anderen Objekts und den Positionsdaten des spielergesteuerten Objekts; Erzeugen von Positionsdaten, die eine Blickpunkt-Position im dreidimensionalen Raum zum Betrachten des spielergesteuerten Objekts kennzeichnen; Erzeugen von Anzeigedaten zum Anzeigen des Bildes des spielergesteuerten Objekts von einer vorbestimmten Position im dreidimensionalen Raum aus basierend auf den 3D-Daten und den Blickpunkt-Positionsdaten; Ausgeben eines Bildsignals basierend auf den erzeugten Anzeigedaten; Erfassen, ob sich das andere Objekt zwischen der Blickpunkt-Position und der aktuellen Position des spielergesteuerten Objekts befindet oder nicht; und Ändern der Blickpunkt-Positionsdaten, wenn die Existenz des anderen Objekts ermittelt worden ist; dadurch gekennzeichnet, dass: der Modifikationsschritt das Berechnen eines Bewegungswinkels aufweist, bei dem sich das andere Objekt nicht zwischen der Blickpunkt-Position und der Position des spielergesteuerten Objekts befindet; und Korrigieren der Blickpunkt-Position, sodass die Blickpunktposition um das andere Objekt herum gemäß dem berechneten Bewegungswinkel rotiert wird, wobei die Position des spielergesteuerten Objekts der Rotationsmittelpunkt ist.
  8. Verfahren gemäß Anspruch 7, wobei im Erfassungsschritt ermittelt wird, ob das spielergesteuerte Objekt mit dem anderen Objekt kollidiert oder nicht.
  9. Verfahren gemäß Anspruch 7 oder Anspruch 8, wobei das andere Objekt eine Wand aufweist, und wobei das Verfahren ferner einen Schritt zum Ermitteln einer Seite der Wand aufweist; und wobei im Modifikationsschritt der Blickpunkt nicht herumgedreht wird, wenn diese Seite als Rückseite der Wand ermittelt wird.
  10. Verfahren gemäß Anspruch 9, wobei im Berechnungsschritt der Bewegungswinkel basierend auf einer Ebenengleichung für die Wand berechnet wird.
  11. Verfahren gemäß Anspruch 9 oder Anspruch 10, ferner aufweisend einen Schritt des Ermittelns, ob die Wand herumzudrehen ist oder nicht; und wobei die Blickpunktposition im Korrekturschritt nicht korrigiert wird, wenn ermittelt wird, dass die Wand nicht herumzudrehen ist.
DE69630584T 1995-10-09 1996-10-09 Dreidimensionaler bildprozessor Expired - Lifetime DE69630584T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP28800695 1995-10-09
JP28800695 1995-10-09
JP15272896A JP3544268B2 (ja) 1995-10-09 1996-06-13 三次元画像処理装置およびそれを用いた画像処理方法
JP15272896 1996-06-13
PCT/JP1996/002931 WO1997014115A1 (fr) 1995-10-09 1996-10-09 Dispositif de traitement d'une image en trois dimensions

Publications (2)

Publication Number Publication Date
DE69630584D1 DE69630584D1 (de) 2003-12-11
DE69630584T2 true DE69630584T2 (de) 2004-08-19

Family

ID=26481572

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69630584T Expired - Lifetime DE69630584T2 (de) 1995-10-09 1996-10-09 Dreidimensionaler bildprozessor

Country Status (12)

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

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6241611B1 (en) 1995-05-10 2001-06-05 Nintendo Co., Ltd. Function expansion device and operating device using the function expansion device
EP1177821A3 (de) 1995-05-10 2005-01-05 Nintendo Co., Limited Steuergerät mit analogem Joystick
US8574074B2 (en) 2005-09-30 2013-11-05 Sony Computer Entertainment America Llc Advertising impression determination
DE69628727T2 (de) 1995-10-09 2004-05-13 Nintendo Co., Ltd. System zum bearbeiten von dreidimensionalen bildinformationen
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
JP3524247B2 (ja) 1995-10-09 2004-05-10 任天堂株式会社 ゲーム機およびそれを用いたゲーム機システム
GB2313432B (en) 1995-11-10 2000-06-21 Nintendo Co Ltd Joystick device
US6022274A (en) 1995-11-22 2000-02-08 Nintendo Co., Ltd. Video game system using memory module
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
EP0844587B1 (de) * 1996-06-05 2004-11-24 Sega Enterprises, Ltd. Bild-prozessor, bildverarbeitungsverfahren, spielcomputer und aufzeichnungsmedium
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
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
ES2260830T3 (es) * 1997-02-18 2006-11-01 Sega Corporation Dispositivo y metodo para el procesamiento de imagenes.
JP3103322B2 (ja) * 1997-05-23 2000-10-30 コナミ株式会社 シューティングゲーム装置、シューティングゲームの画像表示方法及び可読記録媒体
JP3655438B2 (ja) 1997-07-17 2005-06-02 任天堂株式会社 ビデオゲームシステム
JP3372832B2 (ja) * 1997-07-25 2003-02-04 コナミ株式会社 ゲーム装置、ゲーム画像処理方法およびゲーム画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体
EP1008959B1 (de) * 1997-08-29 2006-11-08 Kabushiki Kaisha Sega doing business as Sega Corporation Bildverarbeitungssystem und -verfahren
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 エンタテインメントシステムおよび充電システム
EP1125609A3 (de) * 2000-01-21 2005-03-30 Sony Computer Entertainment Inc. Unterhaltungsvorrichtung, Aufzeichungsmedium und Objektdarstellungsverfahren
EP1125610A3 (de) * 2000-01-21 2004-04-14 Sony Computer Entertainment Inc. Unterhaltungsvorrichtung, Aufzeichnungsmedium et Kontrollverfahren zur Handhabung eines Objekts
EP1125608A3 (de) 2000-01-21 2005-03-30 Sony Computer Entertainment Inc. Unterhaltungsvorrichtung, Aufzeichungsmedium et Objektdarstellungsverfahren
US7878905B2 (en) 2000-02-22 2011-02-01 Creative Kingdoms, Llc Multi-layered interactive play experience
US7445550B2 (en) 2000-02-22 2008-11-04 Creative Kingdoms, Llc Magical wand and interactive play experience
US6761637B2 (en) 2000-02-22 2004-07-13 Creative Kingdoms, Llc Method of game play using RFID tracking device
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
WO2004001675A1 (de) * 2002-06-19 2003-12-31 Siemens Aktiengesellschaft Plattformübergreifende und datenspezifische visualisierung von 3d-datensätzen
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
AU2003291772A1 (en) * 2003-12-19 2005-07-05 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
JP4805633B2 (ja) 2005-08-22 2011-11-02 任天堂株式会社 ゲーム用操作装置
US8313379B2 (en) 2005-08-22 2012-11-20 Nintendo Co., Ltd. Video game system with wireless modular handheld controller
JP4262726B2 (ja) 2005-08-24 2009-05-13 任天堂株式会社 ゲームコントローラおよびゲームシステム
US8870655B2 (en) 2005-08-24 2014-10-28 Nintendo Co., Ltd. Wireless game controllers
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 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法

Family Cites Families (192)

* 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 (de) * 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 (de) * 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 (de) * 1990-08-09 1992-04-09
JP3068842B2 (ja) 1990-08-27 2000-07-24 任天堂株式会社 画像処理装置におけるダイレクトメモリアクセス装置およびそれに用いる外部記憶装置
JP3274682B2 (ja) 1990-08-27 2002-04-15 任天堂株式会社 静止画像表示装置およびそれに用いる外部記憶装置
US5046739A (en) * 1990-10-31 1991-09-10 Dynasound Organizer, Inc. Ergonomic handle for game controller
AU652209B2 (en) 1990-11-14 1994-08-18 Robert Macandrew Best Talking video games
US5393070A (en) 1990-11-14 1995-02-28 Best; Robert M. Talking video games with parallel montage
US5393073A (en) 1990-11-14 1995-02-28 Best; Robert M. Talking video games
US5393071A (en) 1990-11-14 1995-02-28 Best; Robert M. Talking video games with cooperative action
US5393072A (en) 1990-11-14 1995-02-28 Best; Robert M. Talking video games with vocal conflict
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
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
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
JP3248215B2 (ja) 1992-02-24 2002-01-21 日本電気株式会社 音声符号化装置
EP0571138A3 (de) 1992-05-20 1995-03-29 Codemasters Ltd Speicherkassette und Schnittstelle für Videospielkonsole.
US5551701A (en) * 1992-08-19 1996-09-03 Thrustmaster, Inc. Reconfigurable video game controller with graphical reconfiguration display
US5245320A (en) * 1992-07-09 1993-09-14 Thrustmaster, Inc. Multiport game card with configurable address
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
JP2502438B2 (ja) * 1992-08-13 1996-05-29 コナミ株式会社 ゲ―ム装置
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 株式会社ナムコ ビデオゲーム装置及びゲーム用入力装置
WO1994023811A1 (fr) * 1993-04-09 1994-10-27 Sega Enterprises, Ltd. Multiconnecteur pour appareil de jeu
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
WO1996010230A1 (fr) 1994-09-27 1996-04-04 Sega Enterprises, Ltd. Dispositif de transfert de donnees et jeux video utilisant ce dispositif
JPH09504132A (ja) 1994-10-12 1997-04-22 株式会社 セガ・エンタープライゼス データ処理装置とその周辺機器との間の通信の改善
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
EP1177821A3 (de) 1995-05-10 2005-01-05 Nintendo Co., Limited Steuergerät mit analogem Joystick
KR100258391B1 (ko) 1995-05-10 2000-06-01 야마우치 히로시 아날로그 죠이스틱을 이용한 화상처리시스템
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
US5830066A (en) 1995-05-19 1998-11-03 Kabushiki Kaisha Sega Enterprises Image processing device, image processing method, and game device and storage medium using the same
TW300974B (de) 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
US5694153A (en) 1995-07-31 1997-12-02 Microsoft Corporation Input device for providing multi-dimensional position coordinate signals to a computer
US5628686A (en) 1995-07-31 1997-05-13 Microsoft Corporation Apparatus and method for bidirectional data communication in a game port
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 仮想空間表示方法
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 任天堂株式会社 三次元画像処理装置およびそれを用いた画像処理方法
DE69628727T2 (de) * 1995-10-09 2004-05-13 Nintendo Co., Ltd. System zum bearbeiten von dreidimensionalen bildinformationen
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
GB2313432B (en) 1995-11-10 2000-06-21 Nintendo Co Ltd Joystick device
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 画像表示に連動する音響発生装置
CN1081471C (zh) 1996-08-21 2002-03-27 科乐美股份有限公司 命令输入方法和记录介质
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 電子遊戯装置

Also Published As

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

Similar Documents

Publication Publication Date Title
DE69630584T2 (de) Dreidimensionaler bildprozessor
DE69628727T2 (de) System zum bearbeiten von dreidimensionalen bildinformationen
DE19831808B4 (de) Videospielsystem
DE69723613T2 (de) Aufnahme und/oder Wiedergabe von dreidimensionalen Bilddaten
DE19818492B4 (de) Videospielsystem und Videospiel-Speichermedium
US6497618B1 (en) Video game system with data transmitting/receiving controller
DE60205662T2 (de) Vorrichtung und Verfahren zur Berechnung einer Position einer Anzeige
DE69725807T2 (de) Bildprozessor und bildverarbeitungsverfahren
CA2112297C (en) Computer simulation of live organ
DE69919513T2 (de) Unterhaltungssystem, aufnahmemedium und unterhaltungsvorrichtung
JP3506641B2 (ja) 三次元パズルゲーム装置及び三次元パズルゲーム用記憶媒体
US7804502B2 (en) Method of causing first object to take motion according to positional relationship with second object
CN104656890A (zh) 虚拟现实智能投影手势互动一体机及互动实现方法
DE69432507T2 (de) Verfahren und Geräte zur Erzeugung von Zeichnungsdaten
DE60217006T2 (de) Bildverzerrung
DE60020000T2 (de) Spielvorrichtung
EP1190392B1 (de) Verfahren und einrichtung zur bilderstellung
JP4443716B2 (ja) ゲーム装置、および、情報記憶媒体
DE60018994T2 (de) Aufzeichnungsmedium, auf dem ein Videospielprogramm gespeichert ist, und Videospielvorrichtung
DE10300442A1 (de) Tragbares Elektronikgerät, Adapter hierfür, Softwareprogramm und prozessorlesbares Speichermedium
JP2713582B2 (ja) 作図エディタ
JP3569559B2 (ja) ビデオゲーム機
DE10125075A1 (de) Personal Immersion: PC-basiertes Echtzeitgraphiksystem für Virtual Reality Anwendungen
Saleme Computer aided design and drafting on an Apple II microcomputer
JPS5975077A (ja) テレビゲ−ム機の映像表示方法

Legal Events

Date Code Title Description
8364 No opposition during term of opposition