KR101089538B1 - 화상 처리 장치, 화상 처리 장치의 제어 방법 및 정보 기억 매체 - Google Patents

화상 처리 장치, 화상 처리 장치의 제어 방법 및 정보 기억 매체 Download PDF

Info

Publication number
KR101089538B1
KR101089538B1 KR1020097007813A KR20097007813A KR101089538B1 KR 101089538 B1 KR101089538 B1 KR 101089538B1 KR 1020097007813 A KR1020097007813 A KR 1020097007813A KR 20097007813 A KR20097007813 A KR 20097007813A KR 101089538 B1 KR101089538 B1 KR 101089538B1
Authority
KR
South Korea
Prior art keywords
behavior
behavior control
acceleration vector
moving object
collision
Prior art date
Application number
KR1020097007813A
Other languages
English (en)
Other versions
KR20090079893A (ko
Inventor
젠타 이시다
Original Assignee
가부시키가이샤 코나미 데지타루 엔타테인멘토
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가부시키가이샤 코나미 데지타루 엔타테인멘토 filed Critical 가부시키가이샤 코나미 데지타루 엔타테인멘토
Publication of KR20090079893A publication Critical patent/KR20090079893A/ko
Application granted granted Critical
Publication of KR101089538B1 publication Critical patent/KR101089538B1/ko

Links

Images

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • A63F13/10
    • 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/45Controlling the progress of the video 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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/21Collision detection, intersection

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Architecture (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

이동체 오브젝트가 피충돌 오브젝트에 충돌했을 경우의 이동체 오브젝트의 거동 제어에 프로그래머 이외의 자, 예를 들어 피충돌 오브젝트의 형상 등을 디자인하는 자가 관여하기 쉬워지는 화상 처리 장치를 제공한다.
거동 제어 정보 기억부 (60a) 는, 복수의 거동 제어용 오브젝트의 각각에 대응시켜 가속도 벡터 정보를 기억한다. 거동 제어용 오브젝트는, 피충돌 오브젝트의, 이동체 오브젝트에 의해 충돌되는 면의 배면측 공간에 배치된다. 가속도 벡터 정보는, 피충돌 오브젝트에 의해 이동체 오브젝트에 가해지는 힘에서 기인하는 이동체 오브젝트의 가속도 벡터를 특정하기 위한 정보이다. 볼 오브젝트 거동 제어부 (64a) 는, 이동체 오브젝트가 접촉한 것으로 판정부 (62) 에 의해 판정된 거동 제어용 오브젝트에 대응된 가속도 벡터 정보에 기초하여 이동체 오브젝트의 거동을 제어한다.
이동체 오브젝트, 피충돌 오브젝트, 가속도 벡터 정보 기억 수단, 판정 수단, 이동체 오브젝트 거동 제어 수단

Description

화상 처리 장치, 화상 처리 장치의 제어 방법 및 정보 기억 매체{IMAGE PROCESSOR, CONTROL METHOD OF IMAGE PROCESSOR AND INFORMATION RECORDING MEDIUM}
본 발명은 화상 처리 장치, 화상 처리 장치의 제어 방법 및 정보 기억 매체에 관한 것이다.
3 차원 화상 처리에서는, 오브젝트가 배치된 가상 3 차원 공간을 주어진 시점에서 본 모습이 표시 출력된다. 이와 같은 3 차원 화상 처리의 분야에서는, 이동체 오브젝트가 충돌함으로써 변형되는 피충돌 오브젝트에 이동체 오브젝트가 충돌하는 모습을 바람직하게 표현하기 위한 기술로서, 예를 들어 특허 문헌 1 에 기재된 기술이 있다.
특허 문헌 : 일본 특허 제3768971호
발명의 개시
발명이 해결하고자 하는 과제
종래, 이동체 오브젝트가 피충돌 오브젝트에 충돌했을 경우의 이동체 오브젝트의 거동 제어는 오로지 프로그램측에서 실현되고 있었다. 이 때문에, 이동체 오브젝트가 피충돌 오브젝트에 충돌했을 경우의 이동체 오브젝트의 거동 제어에, 프로그래머 이외의 자 (者), 예를 들어 피충돌 오브젝트의 형상 등을 디자인하는 자가 관여하는 것은 어려웠다.
본 발명은 상기 과제를 감안하여 이루어진 것으로서, 그 목적은, 이동체 오브젝트가 피충돌 오브젝트에 충돌했을 경우의 이동체 오브젝트의 거동 제어에, 프로그래머 이외의 자, 예를 들어 피충돌 오브젝트의 형상 등을 디자인하는 자가 관여하기 쉬워지는 화상 처리 장치, 화상 처리 장치의 제어 방법 및 정보 기억 매체를 제공하는 것에 있다.
과제를 해결하기 위한 수단
상기 과제를 해결하기 위해서, 본 발명에 관련된 화상 처리 장치는, 이동체 오브젝트와, 상기 이동체 오브젝트가 충돌했을 경우에 변형되는 피충돌 오브젝트를 가상 3 차원 공간에 배치하고, 상기 이동체 오브젝트가 상기 피충돌 오브젝트에 충돌하는 모습을 나타내는 화상을 표시하는 화상 처리 장치에 있어서, 상기 피충돌 오브젝트의, 상기 이동체 오브젝트에 의해 충돌되는 면의 배면측 공간에 배치되는 복수의 거동 제어용 오브젝트의 각각에 대응시켜, 상기 피충돌 오브젝트에 의해 상기 이동체 오브젝트에 가해지는 힘에 의한 상기 이동체 오브젝트의 가속도 벡터를 특정하기 위한 가속도 벡터 정보를 기억하는 가속도 벡터 정보 기억 수단과, 상기 이동체 오브젝트와, 상기 복수의 거동 제어용 오브젝트가 접촉했는지의 여부를 판정하는 판정 수단과, 상기 이동체 오브젝트가 상기 복수의 거동 제어용 오브젝트 중 적어도 하나에 접촉한 것으로 판정된 경우, 그 적어도 하나의 거동 제어용 오브젝트에 대응된 가속도 벡터 정보에 의해 특정되는 가속도 벡터에 기초하여, 상기 이동체 오브젝트의 거동을 제어하는 이동체 오브젝트 거동 제어 수단을 포함하는 것을 특징으로 한다.
또, 본 발명에 관련된 화상 처리 장치의 제어 방법은, 이동체 오브젝트와, 상기 이동체 오브젝트가 충돌했을 경우에 변형되는 피충돌 오브젝트를 가상 3 차원 공간에 배치하고, 상기 이동체 오브젝트가 상기 피충돌 오브젝트에 충돌하는 모습을 나타내는 화상을 표시하는 화상 처리 장치의 제어 방법에 있어서, 상기 피충돌 오브젝트의, 상기 이동체 오브젝트에 의해 충돌되는 면의 배면측 공간에 배치되는 복수의 거동 제어용 오브젝트의 각각에 대응시켜, 상기 피충돌 오브젝트에 의해 상기 이동체 오브젝트에 가해지는 힘에 의한 상기 이동체 오브젝트의 가속도 벡터를 특정하기 위한 가속도 벡터 정보를 기억하는 가속도 벡터 정보 기억 수단의 기억 내용을 판독 출력하는 단계와, 상기 이동체 오브젝트와, 상기 복수의 거동 제어용 오브젝트가 접촉했는지의 여부를 판정하는 판정 단계와, 상기 이동체 오브젝트가 상기 복수의 거동 제어용 오브젝트 중 적어도 하나에 접촉한 것으로 판정된 경우, 그 적어도 하나의 거동 제어용 오브젝트에 대응된 가속도 벡터 정보에 의해 특정되는 가속도 벡터에 기초하여, 상기 이동체 오브젝트의 거동을 제어하는 이동체 오브젝트 거동 제어 단계를 포함하는 것을 특징으로 한다.
또, 본 발명에 관련된 프로그램은, 이동체 오브젝트와, 상기 이동체 오브젝트가 충돌했을 경우에 변형되는 피충돌 오브젝트를 가상 3 차원 공간에 배치하고, 상기 이동체 오브젝트가 상기 피충돌 오브젝트에 충돌하는 모습을 나타내는 화상을 표시하는 화상 처리 장치로서, 예를 들어 가정용 게임기, 휴대용 게임기, 업무용 게임기, 휴대 전화기, 휴대 정보 단말 (PDA) 이나 PC 등의 컴퓨터를 기능시키기 위한 프로그램으로서, 상기 피충돌 오브젝트의, 상기 이동체 오브젝트에 의해 충돌되는 면의 배면측 공간에 배치되는 복수의 거동 제어용 오브젝트의 각각에 대응시켜, 상기 피충돌 오브젝트에 의해 상기 이동체 오브젝트에 가해지는 힘에 의한 상기 이동체 오브젝트의 가속도 벡터를 특정하기 위한 가속도 벡터 정보를 기억하는 가속도 벡터 정보 기억 수단, 상기 이동체 오브젝트와, 상기 복수의 거동 제어용 오브젝트가 접촉했는지의 여부를 판정하는 판정 수단, 및, 상기 이동체 오브젝트가 상기 복수의 거동 제어용 오브젝트 중 적어도 하나에 접촉한 것으로 판정된 경우, 그 적어도 하나의 거동 제어용 오브젝트에 대응된 가속도 벡터 정보에 의해 특정되는 가속도 벡터에 기초하여, 상기 이동체 오브젝트의 거동을 제어하는 이동체 오브젝트 거동 제어 수단으로서 상기 컴퓨터를 기능시키기 위한 프로그램이다.
또, 본 발명에 관련된 정보 기억 매체는, 상기 프로그램을 기록한 컴퓨터 판독 가능한 정보 기억 매체이다. 또, 본 발명에 관련된 프로그램 배신 (配信) 장치는, 상기 프로그램을 기록한 정보 기억 매체를 구비하고, 당해 정보 기억 매체로부터 상기 프로그램을 판독 출력하고, 배신하는 프로그램 배신 장치이다. 또, 본 발명에 관련된 프로그램 배신 방법은, 상기 프로그램을 기록한 정보 기억 매체로부터 상기 프로그램을 판독 출력하고, 배신하는 프로그램 배신 방법이다.
본 발명은, 이동체 오브젝트와, 그 이동체 오브젝트가 충돌했을 경우에 변형되는 피충돌 오브젝트를 가상 3 차원 공간에 배치하고, 이동체 오브젝트가 피충돌 오브젝트에 충돌하는 모습을 나타내는 화상을 표시하는 화상 처리 장치에 관한 것이다. 본 발명에서는 피충돌 오브젝트의, 이동체 오브젝트에 의해 충돌되는 면의 배면측 공간에 배치되는 복수의 거동 제어용 오브젝트의 각각에 대응시켜 가속도 벡터 정보가 기억된다. 가속도 벡터 정보는, 상기 피충돌 오브젝트에 의해 상기 이동체 오브젝트에 가해지는 힘에 의한 이동체 오브젝트의 가속도 벡터를 특정하기 위한 정보이다. 여기에서, 가속도 벡터 정보는, 가속도 벡터 그 자체를 나타내는 정보여도 되고, 가속도 벡터 산출의 기초가 되는 정보여도 된다. 또 본 발명에서는, 이동체 오브젝트와, 복수의 거동 제어용 오브젝트가 접촉했는지의 여부가 판정된다. 그리고, 이동체 오브젝트가 복수의 거동 제어용 오브젝트 중 적어도 하나에 접촉한 것으로 판정된 경우, 그 적어도 하나의 거동 제어용 오브젝트에 대응된 가속도 벡터 정보에 의해 특정되는 가속도 벡터에 기초하여, 이동체 오브젝트의 거동이 제어된다. 본 발명에 의하면, 예를 들어, 피충돌 오브젝트의 형상 등을 디자인하는 자가, 피충돌 오브젝트의 형상 등에 맞추어 거동 제어용 오브젝트와 거동 제어용 오브젝트에 대응되는 가속도 벡터 정보를 설정하는 것이 가능해지고, 그러한 데이터를 피충돌 오브젝트의 형상 데이터 등과 함께 피충돌 오브젝트의 데이터로서 제작하는 것이 가능해진다. 그 결과로서, 예를 들어, 피충돌 오브젝트의 형상 등을 디자인하는 자가, 이동체 오브젝트가 피충돌 오브젝트에 충돌했을 경우의 이동체 오브젝트의 거동 제어에 관여하기 쉬워진다.
또, 본 발명의 일 양태에서는, 상기 복수의 거동 제어용 오브젝트의 각각에 대응시켜, 상기 이동체 오브젝트가 상기 거동 제어용 오브젝트에 의해 튕겨 나와지는지의 여부를 나타내는 튕겨나옴 제어 정보를 기억하는 튕겨나옴 제어 정보 기억 수단을 포함하도록 해도 된다. 또, 상기 이동체 오브젝트 거동 제어 수단은, 상기 이동체 오브젝트가 접촉한 것으로 판정된 상기 거동 제어용 오브젝트에 대응된 튕겨나옴 제어 정보가, 상기 이동체 오브젝트가 그 거동 제어용 오브젝트에 의해 튕겨나와지는 것을 나타내는 경우, 상기 이동체 오브젝트가 그 거동 제어용 오브젝트에 의해 주어진 튕겨나옴 계수로 튕겨나와진 것으로 하여, 상기 이동체 오브젝트의 거동을 제어하는 수단을 포함하도록 해도 된다.
또, 본 발명의 일 양태에서는, 상기 판정 수단은, 상기 이동체 오브젝트의 현재 위치에 기초하여 소정 연산을 실행함으로써 기준 위치를 설정하는 기준 위치 설정 수단을 포함하고, 상기 기준 위치 설정 수단에 의해 설정된 기준 위치로부터 상기 이동체 오브젝트의 현재 위치까지의 직선과 상기 복수의 거동 제어용 오브젝트가 교차하는지의 여부를 판정함으로써, 상기 이동체 오브젝트와 상기 복수의 거동 제어용 오브젝트가 접촉했는지의 여부를 판정하도록 해도 된다.
도 1 은 본 실시 형태에 관련된 게임 장치의 하드웨어 구성을 나타내는 도면이다.
도 2 는 가상 3 차원 공간의 일례를 나타내는 도면이다.
도 3 은 골 오브젝트의 일례를 나타내는 사시도이다.
도 4 는 골 네트의 일부를 나타내는 도면이다.
도 5 는 본 실시 형태에 관련된 게임 장치의 기능 블록도이다.
도 6 은 거동 제어용 오브젝트의 일례를 나타내는 사시도이다.
도 7 은 거동 제어용 오브젝트의 배치예를 나타내는 도면이다.
도 8 은 거동 제어용 오브젝트의 배치예를 나타내는 도면이다.
도 9 는 거동 제어 테이블의 일례를 나타내는 도면이다.
도 10 은 게임 장치에서 실행되는 처리를 나타내는 흐름도이다.
도 11 은 게임 장치에서 실행되는 처리를 나타내는 흐름도이다.
도 12 는 기준점의 설정에 대해 설명하기 위한 도면이다.
도 13 은 기준점의 설정에 대해 설명하기 위한 도면이다.
도 14 는 기준점의 설정에 대해 설명하기 위한 도면이다.
도 15 는 볼 오브젝트와 거동 제어용 오브젝트의 접촉 판정에 대해 설명하기 위한 도면이다.
도 16 은 골 네트의 변형 제어에 대해 설명하기 위한 도면이다.
도 17 은 골 네트의 변형 제어에 대해 설명하기 위한 도면이다.
도 18 은 거동 제어용 오브젝트의 배치예를 나타내는 도면이다.
도 19 는 거동 제어용 오브젝트의 배치예를 나타내는 도면이다.
도 20 은 기준점의 설정에 대해 설명하기 위한 도면이다.
도 21 은 기준점의 설정과, 볼 오브젝트와 거동 제어용 오브젝트의 접촉 판정에 대해 설명하기 위한 도면이다.
도 22 는 본 발명의 다른 실시 형태에 관련된 프로그램 배신 시스템의 전체 구성을 나타내는 도면이다.
발명을 실시하기 위한 최선의 형태
이하, 본 발명의 실시 형태의 일례에 대해 도면에 기초하여 상세하게 설명한다. 여기에서는, 화상 처리 장치의 일 양태인 게임 장치에 본 발명을 적용한 경우의 예에 대해 설명한다. 또한, 본 발명은 게임 장치 이외의 화상 처리 장치에도 적용할 수 있는 것이다.
도 1 은, 본 발명의 실시 형태에 관련된 게임 장치의 구성을 나타내는 도면이다. 도 1 에 나타내는 게임 장치 (10) 는 가정용 게임기 (11) 를 주로 하여 구성된다. 가정용 게임기 (11) 에는, 정보 기억 매체인 DVD-ROM (25) 및 메모리 카드 (28) 가 장착된다. 또한 가정용 게임기 (11) 에는 모니터 (18) 및 스피커 (22) 가 접속된다. 예를 들어, 모니터 (18) 에는 가정용 TV 수상기가 사용되고, 스피커 (22) 에는 그 내장 스피커가 사용된다.
가정용 게임기 (11) 는, 버스 (12), 마이크로 프로세서 (14), 화상 처리부 (16), 음성 처리부 (20), DVD-ROM 재생부 (24), 주기억 (26), 입출력 처리부 (30)및 컨트롤러 (32) 를 포함하여 구성되는 공지된 컴퓨터 게임 시스템이다. 컨트롤러 (32) 이외의 구성 요소는 케이스 내에 수용된다.
버스 (12) 는 어드레스 및 데이터를 가정용 게임기 (11) 의 각 부에서 주고 받기 위한 것이다. 마이크로 프로세서 (14), 화상 처리부 (16), 주기억 (26) 및 입출력 처리부 (30) 는, 버스 (12) 에 의해 상호 데이터 통신 가능하게 접속된다.
마이크로 프로세서 (14) 는, 도시되지 않은 ROM 에 저장되는 오퍼레이팅 시스템, DVD-ROM (25) 이나 메모리 카드 (28) 로부터 판독 출력되는 게임 프로그램이나 게임 데이터에 기초하여, 가정용 게임기 (11) 의 각 부를 제어한다. 주기억 (26) 은, 예를 들어 RAM 을 포함하여 구성되는 것으로, DVD-ROM (25) 이나 메모리 카드 (28) 로부터 판독 출력된 게임 프로그램이나 게임 데이터가 필요에 따라 기록된다. 주기억 (26) 은 마이크로 프로세서 (14) 의 작업용으로서도 사용된다.
화상 처리부 (16) 는 VRAM 을 포함하여 구성되어 있다. 화상 처리부 (16) 는, 마이크로 프로세서 (14) 로부터 보내지는 화상 데이터를 받아들여 VRAM 상에 게임 화면을 묘화함과 함께, 그 내용을 소정의 비디오 신호로 변환하여 소정 타이밍으로 모니터 (18) 에 출력한다.
입출력 처리부 (30) 는, 마이크로 프로세서 (14) 가 음성 처리부 (20), DVD-ROM 재생부 (24), 메모리 카드 (28) 및 컨트롤러 (32) 에 액세스하기 위한 인터페이스이다. 입출력 처리부 (30) 에는, 음성 처리부 (20), DVD-ROM 재생부 (24), 메모리 카드 (28) 및 컨트롤러 (32) 가 접속된다.
음성 처리부 (20) 는 사운드 버퍼를 포함하여 구성되어 있고, DVD-ROM (25) 으로부터 판독 출력되어, 그 사운드 버퍼에 기억된 게임 음악, 게임 효과음, 메세지 등의 각종 음성 데이터를 재생하여 스피커 (22) 로부터 출력한다.
DVD-ROM 재생부 (24) 는 마이크로 프로세서 (14) 로부터의 지시에 따라 DVD-ROM (25) 에 기록된 게임 프로그램이나 게임 데이터를 판독한다. 여기에서는 게임 프로그램이나 게임 데이터를 가정용 게임기 (11) 에 공급하기 위해서 DVD-ROM (25) 을 사용하는 것으로 하지만, CD-ROM 이나 ROM 카드 등, 다른 모든 정보 기억 매체를 사용하도록 해도 된다. 또, 인터넷 등의 데이터 통신망을 통하여 원격지로부터 게임 프로그램이나 게임 데이터를 가정용 게임기 (11) 에 공급하도록 해도 된다.
메모리 카드 (28) 는 불휘발성 메모리 (예를 들어 EEPROM 등) 를 포함하여 구성된다. 가정용 게임기 (11) 는, 메모리 카드 (28) 를 장착하기 위한 메모리 카드 슬롯을 복수 구비하고 있다. 메모리 카드 (28) 는 예를 들어 세이브 데이터 등의 각종 게임 데이터를 기억하기 위해서 사용된다.
컨트롤러 (32) 는, 플레이어가 각종 게임 조작의 입력을 하기 위한 범용 조작 입력 수단이다. 입출력 처리부 (30) 는 일정 주기마다 (예를 들어 1/60초 마다) 컨트롤러 (32) 의 각 부 상태를 스캔하고, 그 스캔 결과를 나타내는 조작 신호를 버스 (12) 를 통하여 마이크로 프로세서 (14) 에 건네준다. 마이크로 프로세서 (14) 는, 그 조작 신호에 기초하여 플레이어의 게임 조작을 판정한다. 가정용 게임기 (11) 는 복수의 컨트롤러 (32) 를 접속 가능하게 구성되어 있다.
상기 구성을 갖는 게임 장치 (10) 에서는, DVD-ROM (25) 으로부터 판독 출력되는 프로그램이 실행됨으로써, 예를 들어 축구 게임이 실현된다.
상기 축구 게임을 실현하기 위해서, 주기억 (26) 에는 가상 3 차원 공간이 구축된다. 도 2 는 가상 3 차원 공간의 일례를 나타내는 도면이다. 도 2 에 나타내는 바와 같이, 가상 3 차원 공간 (40) 에는, 축구 필드를 나타내는 필드 오브젝트 (42) 와, 골을 나타내는 골 오브젝트 (44) 가 배치되고, 축구 시합 회장 이 형성된다. 필드 오브젝트 (42) 에는 예를 들어 골 라인 (43) 등이 표시된다. 또 필드 오브젝트 (42) 상에는, 축구 선수를 나타내는 선수 오브젝트 (46) 와, 축구 볼을 나타내는 볼 오브젝트 (48 ; 이동체 오브젝트) 가 배치된다. 도 2 에서는 생략되어 있지만, 필드 오브젝트 (42) 상에는 22 개의 선수 오브젝트 (46) 가 배치된다.
도 3 은 골 오브젝트 (44) 의 일례를 나타내는 사시도이다. 도 3 에 나타내는 바와 같이, 골 오브젝트 (44) 는, 2 개의 골 포스트 (52) 와, 크로스바 (54) 를 포함하여 구성되는 프레임체와, 프레임체에 쳐진 골 네트 (56 ; 피충돌 오브젝트) 를 포함하여 구성된다. 골 네트 (56) 는, 어느 정도의 느슨함을 갖게 하면서, 예를 들어 골 포스트 (52), 크로스바 (54) 나, 골 오브젝트 (44) 후방의 지면 (필드 오브젝트 (42)) 에 고정된다. 도 4 는 골 네트 (56) 의 일부를 나타내는 도면이다. 도 3 에서는 골 네트 (56) 의 메시 구조가 상세하게 묘사되어 있지 않지만, 도 4 에 나타내는 바와 같이, 골 네트 (56) 는 육각형의 메시 구조를 가지고 있다. 또한 이하에서는, 육각형 메시의 각 정점 (頂点) 을 「노드」 라고 기재한다.
또 가상 3 차원 공간 (40) 에는 가상 카메라 (50 ; 시점 및 시선 방향) 가 설정된다. 가상 카메라 (50) 는 예를 들어 볼 오브젝트 (48) 에 종동 (從動) 된다. 이 가상 카메라 (50) 로부터 가상 3 차원 공간 (40) 을 본 모습을 나타내는 게임 화면이 모니터 (18) 에 표시된다.
이하, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 경우의 볼 오브젝트 (48) 및 골 네트 (56) 의 거동을 표현하기 위한 기술에 대해 설명한다. 즉, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 경우에, 볼 오브젝트 (48) 의 움직임이 골 네트 (56) 에 의해 제동되는 모습과, 골 네트 (56) 가 볼 오브젝트 (48) 의 충돌에 의해 요동하는 모습을 표현하기 위한 기술에 대해 설명한다.
먼저, 게임 장치 (10) 에서 실현되는 기능에 대해 설명한다. 도 5 는, 게임 장치 (10) 에 있어서 실현되는 기능 중, 본 발명에 관련된 것을 주로 나타내는 기능 블록도이다. 도 5 에 나타내는 바와 같이, 게임 장치 (10) 는, 게임 데이터 기억부 (60) 와, 판정부 (62) 와, 오브젝트 거동 제어부 (64) 를 기능적으로 포함하고 있다. 이들 기능은, DVD-ROM (25) 으로부터 판독 출력된 프로그램이 게임 장치 (10 ; 마이크로 프로세서 (14)) 에 의해 실행됨으로써 실현된다.
게임 데이터 기억부 (60) 는 DVD-ROM (25) 이나 주기억 (26) 을 주로 하여 실현된다. 게임 데이터 기억부 (60) 는 상기 축구 게임을 실현하기 위한 각종 데이터를 기억한다. 게임 데이터 기억부 (60) 는, 가상 3 차원 공간 (40) 에 배치되는 각 오브젝트의 기본 형상을 나타내는 정보를 기억한다. 또 게임 데이터 기억부 (60) 는 가상 3 차원 공간 (40) 에 배치되는 각 오브젝트의 현재 상태를 나타내는 정보를 기억한다. 예를 들어, 게임 데이터 기억부 (60) 는, 골 오브젝트 (44) 나 후술하는 거동 제어용 오브젝트 등의 정적 오브젝트의 위치, 자세나 형상을 나타내는 정보를 기억한다. 또 예를 들어, 게임 데이터 기억부 (60) 는, 각 선수 오브젝트 (46) 나 볼 오브젝트 (48) 등의 동적 오브젝트의 위치, 자세, 이동 속도 벡터 (이동 방향 및 속도) 를 나타내는 정보를 기억한다. 또 게 임 데이터 기억부 (60) 는, 가상 카메라 (50) 의 위치 (시점 위치) 나 자세 (시선 방향) 를 나타내는 정보를 기억한다.
게임 데이터 기억부 (60) 는 거동 제어 정보 기억부 (60a ; 가속도 벡터 정보 기억 수단, 튕겨나옴 제어 정보 기억 수단) 를 포함한다. 거동 제어 정보 기억부 (60a) 는 거동 제어 정보를 기억한다. 거동 제어 정보는, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 때의 볼 오브젝트 (48) 및 골 네트 (56) 의 거동 제어의 기초가 되는 정보이다.
게임 장치 (10) 에서는, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 때의 볼 오브젝트 (48) 및 골 네트 (56) 의 거동을 제어하기 위해서, 가상 3 차원 공간 (40) 에 복수의 거동 제어용 오브젝트가 배치된다. 도 6 은 거동 제어용 오브젝트의 일례를 나타내는 사시도이다. 도 6 에 나타내는 바와 같이, 거동 제어용 오브젝트 (70) 는 판상의 직사각형 오브젝트이다. 거동 제어용 오브젝트 (70) 는 불가시 (투명) 한 오브젝트로, 게임 화면에는 표시되지 않는다. 또 거동 제어용 오브젝트 (70) 는 앞면과 뒷면이 구별된다. 도 7 및 도 8 은 거동 제어용 오브젝트 (70) 의 배치예를 나타내고 있다. 또한 도 7 및 도 8 에서는, 거동 제어용 오브젝트 (70) 의 배치 상태를 알기 쉽게 하기 위해서, 골 오브젝트 (44) 및 골 라인 (43) 을 점선으로 나타내고 있다.
도 7 은, 볼 오브젝트 (48) 가 골 오브젝트 (44) 내에 들어가 골 네트 (56) 의 정면 (56a) 의 내면측에 충돌했을 경우의 볼 오브젝트 (48) 및 골 네트 (56) 의 거동을 제어하기 위해서 배치되는 거동 제어용 오브젝트 (70) 의 일례를 나타내고 있다. 도 7 에 나타내는 거동 제어용 오브젝트 (70) 는, 골 네트 (56) 의 정면 (56a) 의 외면측 공간에 배치되어 있다. 도 7 에 나타내는 거동 제어용 오브젝트 (70) 는, 골 네트 (56) 로부터 서서히 멀어지도록 하여 일정 간격으로 복수 배열되어 있다. 도 7 에 나타내는 거동 제어용 오브젝트 (70) 는, 골 네트 (56) 의 정면 (56a) 에 거의 평행하게 배치되어 있다. 도 7 에 나타내는 거동 제어용 오브젝트 (70) 는, 그 앞면측이 골 네트 (56) 의 정면 (56a) 쪽을 향하도록 배치되어 있다. 도 7 에 나타내는 거동 제어용 오브젝트 (70) 의 면적은, 골 네트 (56) 의 정면 (56a) 의 면적과 동등하거나, 또는 골 네트 (56) 의 정면 (56a) 의 면적보다 넓게 설정된다.
도 8 은, 볼 오브젝트 (48) 가 골 오브젝트 (44) 내에 들어가 골 네트 (56) 의 측면 (56b) 내면측에 충돌했을 경우의 볼 오브젝트 (48) 및 골 네트 (56) 의 거동을 제어하기 위해서 배치되는 거동 제어용 오브젝트 (70) 의 일례를 나타내고 있다. 도 8 에 나타내는 거동 제어용 오브젝트 (70) 는, 골 네트 (56) 의 측면 (56b) 의 외면측 공간에 배치되어 있다. 도 8 에 나타내는 거동 제어용 오브젝트 (70) 도, 골 네트 (56) 로부터 서서히 멀어지도록 하여 일정 간격으로 복수 배열되어 있다. 또, 도 8 에 나타내는 거동 제어용 오브젝트 (70) 는, 골 네트 (56) 의 측면 (56b) 에 대략 평행하게 배치되어 있다. 도 8 에 나타내는 거동 제어용 오브젝트 (70) 는, 그 앞면측이 골 네트 (56) 의 측면 (56b) 쪽을 향하도록 배치되어 있다. 도 8 에 나타내는 거동 제어용 오브젝트 (70) 의 면적은, 골 네트 (56) 의 측면 (56b) 의 면적과 동등하거나, 또는 골 네트 (56) 의 측면 (56b) 의 면적보다 넓게 설정된다.
거동 제어 정보 기억부 (60a) 는, 거동 제어용 오브젝트 (70) 의 각각에 대응시켜 거동 제어 정보를 기억한다. 도 9 는, 거동 제어 정보 기억부 (60a) 에 기억되는 거동 제어 테이블의 일례를 나타내고 있다. 도 9 에 나타내는 바와 같이, 거동 제어 테이블은, 「ID」 필드와, 「반력 계수」 필드와, 「튕겨나옴 플래그」 필드를 포함하고 있다. 「ID」 필드에는, 거동 제어용 오브젝트 (70) 를 일의적으로 식별하는 ID (식별 정보) 가 기억된다. 또한, 여기에서는, 도 7 에 나타내는 거동 제어용 오브젝트 (70) 에 대해, 골 네트 (56) 에 가장 가까운 것부터 순서대로 「1」 , 「2」 , 「3」 , 「4」 라고 ID 가 할당되는 것으로 한다. 「반력 계수」 필드에는 반력 계수 (가속도 벡터 정보) 가 기억된다. 반력 계수는, 골 네트 (56) 에 충돌한 볼 오브젝트 (48) 에 대해 골 네트 (56) 에 의해 가해지는 힘 (반력) 의 강도를 나타내는 수치 정보이다. 후술하는 바와 같이, 골 네트 (56) 에 의해 볼 오브젝트 (48) 에 가해지는 힘에서 기인하는 볼 오브젝트 (48) 의 가속도 벡터가, 이 반력 계수에 기초하여 특정된다 (도 11 의 S205 및 S206 참조). 「튕겨나옴 플래그」 필드에는, 튕겨나옴 플래그 (튕겨나옴 제어 정보) 가 기억된다. 튕겨나옴 플래그는, 볼 오브젝트 (48) 가 거동 제어용 오브젝트 (70) 에 접촉했을 경우에, 볼 오브젝트 (48) 가 그 거동 제어용 오브젝트 (70) 에 의해 튕겨나오도록 하는지의 여부를 나타내는 정보이다. 볼 오브젝트 (48) 가 그 거동 제어용 오브젝트 (70) 에 의해 튕겨나오도록 하는 경우에는, 「튕겨나옴 플래그」 필드의 값은 1 로 설정된다. 한편, 볼 오브젝트 (48) 가 그 거동 제어용 오브젝트 (70) 에 의해 튕겨나오도록 하지 않는 경우에는, 「튕겨나옴 플래그」 필드의 값은 0 으로 설정된다. 본 실시 형태에서는, 도 7 및 도 8 의 각 도면에 있어서, 골 네트 (56) 의 정면 (56a) 또는 측면 (56b) 으로부터 가장 떨어진 거동 제어용 오브젝트 (70) 의 「튕겨나옴 플래그」 필드의 값이 1 로 설정되고, 그 밖의 거동 제어용 오브젝트 (70) 의 「튕겨나옴 플래그」 필드의 값이 0 으로 설정된다.
판정부 (62) 는 마이크로 프로세서 (14) 를 주로 하여 실현된다. 판정부 (62) 는, 볼 오브젝트 (48) 가 거동 제어용 오브젝트 (70) 에 접촉했는지의 여부를 판정한다. 상세한 내용에 대해서는 후술한다 (도 11 의 S202 및 S203 참조).
오브젝트 거동 제어부 (64) 는 마이크로 프로세서 (14) 를 주로 하여 실현된다. 오브젝트 거동 제어부 (64) 는, 가상 3 차원 공간 (40) 에 배치되는 각 오브젝트의 거동을 제어한다. 즉, 오브젝트 거동 제어부 (64) 는, 가상 3 차원 공간 (40) 에 배치되는 각 오브젝트의 위치, 자세나 형상 등을 제어한다. 오브젝트 거동 제어부 (64) 는, 볼 오브젝트 거동 제어부 (64a) 와, 골 네트 거동 제어부 (64b) 를 포함한다.
볼 오브젝트 거동 제어부 (64a) 는, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 경우의 볼 오브젝트 (48) 의 거동을 제어한다. 볼 오브젝트 거동 제어부 (64a) 는, 볼 오브젝트 (48) 가 거동 제어용 오브젝트 (70) 에 접촉한 것으로 판정된 경우, 그 거동 제어용 오브젝트 (70) 에 대응된 거동 제어 정보에 기초하여, 볼 오브젝트 (48) 의 거동 제어를 실행한다. 상세한 내용에 대해서는 후술 한다 (도 11 의 S203 ∼ S208 참조).
골 네트 거동 제어부 (64b) 는, 볼 오브젝트 (48) 가 골 네트 (56) 와 충돌했을 경우의 골 네트 (56) 의 거동 제어 (변형 제어) 를 실행한다. 골 네트 거동 제어부 (64b) 는, 볼 오브젝트 거동 제어부 (64a) 에 의해 제어되는 볼 오브젝트 (48) 의 위치에 기초하여 골 네트 (56) 의 거동 제어를 실행한다. 상세한 내용에 대해서는 후술한다 (도 11 의 S209 참조).
다음으로, 게임 장치 (10) 에서 실행되는 처리에 대해 설명한다. 도 10 은, 게임 장치 (10) 에서 소정 시간 (예를 들어 1/60초) 마다 실행되는 처리를 나타내는 흐름도이다.
도 10 에 나타내는 바와 같이, 게임 장치 (10) 는 먼저 게임 환경 처리를 실행한다 (S101). 게임 환경 처리에서는, 가상 3 차원 공간 (40) 에 배치되는 각 오브젝트 상태 (위치, 자세, 이동 방향 벡터나 형상 등) 가 연산된다. 그리고, 게임 데이터 기억부 (60) 에 기억되는 각 오브젝트 상태를 나타내는 정보가 그 연산 결과에 기초하여 갱신된다. 또 게임 환경 처리에서는 가상 카메라 (50) 의 위치, 방향이나 화각 (畵角) 이 결정되어 시야 범위가 산출된다. 시야 범위 내에 속하지 않는 오브젝트는 이후의 처리의 대상에서 제외된다.
그 후, 게임 장치 (10) 는 지오메트리 처리를 실행한다 (S102). 지오메트리 처리에서는 전역 좌표계로부터 시점 좌표계로의 좌표 변화가 실시된다. 여기에서, 전역 좌표계란, 도 2 에 나타내는 Xw 축, Yw 축, Zw 축으로 이루어지는 좌표계이다. 시점 좌표계는, 가상 카메라 (50) 의 위치 (시점) 를 원점으로 하 여, 가상 카메라 (50) 의 정면 방향 (시선 방향) 을 Z 방향, 수평 방향을 X 방향, 수직 방향을 Y 방향으로 하는 좌표계이다. 지오메트리 처리에서는 클리핑 처리도 실시된다.
그 후, 게임 장치 (10) 는 렌더링 처리를 실행한다 (S103). 랜더링 처리에서는, 시야 범위 내의 각 오브젝트의 각 정점의 좌표, 색 정보 및 알파값이나, 시야 범위 내의 각 오브젝트의 표면에 맵핑되는 텍스쳐 화상 등에 기초하여, VRAM 상에 게임 화면이 묘화된다. VRAM 상에 묘화된 게임 화면은 주어진 타이밍으로 모니터 (18) 에 표시 출력된다.
여기에서, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 경우에 실행되는 처리에 대해 설명한다. 도 11 은, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌한 경우에 실행되는 처리를 나타내는 흐름도이다. 이 처리는 게임 환경 처리 (도 10 의 S101) 의 일부로서 실행된다. 본 처리를 실행하기 위한 프로그램이 DVD-ROM (25) 으로부터 판독 출력되어, 게임 장치 (10 ; 마이크로 프로세서 (14)) 에 의해 실행됨으로써, 도 5 에 나타내는 각 기능 블록이 실현된다.
도 11 에 나타내는 바와 같이, 먼저 게임 장치 (10) 는 볼 오브젝트 (48) 가 골 네트 (56) 의 어느 면 (정면 (56a) 이나 측면 (56b)) 에 충돌했는지의 여부를 판단한다 (S201). 다음으로 게임 장치 (10 ; 판정부 (62) : 기준 위치 설정 수단) 는 기준점을 설정한다 (S202).
여기에서, 기준점의 설정에 대해, 볼 오브젝트 (48) 가 골 오브젝트 (44) 내에 들어가 골 네트 (56) 에 충돌했을 경우를 예로 설명한다. 도 12 ∼ 도 14 는, 볼 오브젝트 (48) 가 골 오브젝트 (44) 내에 들어가 골 네트 (56) 에 충돌했을 경우에 설정되는 기준점에 대해 설명하기 위한 도면이다. 먼저 게임 장치 (10) 는, 볼 오브젝트 (48) 의 현재 위치 (B) 로부터 기준 평면 (72) 에 대해 그은 수선 (L1) 과, 기준 평면 (72) 의 교점 (I) 을 취득한다. 도 12 에 나타내는 바와 같이, 기준 평면 (72) 은, 골 네트 (56) 를 사이에 두고, 거동 제어용 오브젝트 (70) 가 있는 측과는 반대측에 설정된다. 도 12 에 나타내는 예에서는, 골 라인 (43) 상의 YwZw 평면이 기준 평면 (72) 으로서 설정되어 있다. 다음으로 게임 장치 (10) 는, 교점 (I) 이 기준 평면 (72) 의 기준점 설정 대상 영역 (72a) 내인지의 여부를 판정한다. 여기에서, 기준점 설정 대상 영역 (72a) 은 기준점이 설정될 수 있는 영역이다. 도 12 에 나타내는 예에서는, 골 포스트 (52) 와 크로스바 (54) 와 골 라인 (43) 에 둘러싸인 영역의 중심 부근의 영역이 기준점 설정 대상 영역 (72a) 으로서 설정되어 있다. 도 13 에 나타내는 바와 같이, 교점 (I) 이 기준점 설정 대상 영역 (72a) 내인 경우, 게임 장치 (10) 는 교점 (I) 을 기준점 (S) 으로 설정한다. 한편, 도 14 에 나타내는 바와 같이, 교점 (I) 이 기준점 설정 대상 영역 (72a) 내가 아닌 경우, 게임 장치 (10) 는 교점 (I) 에 가장 가까운 기준점 설정 대상 영역 (72a) 상의 점을 기준점 (S) 으로 설정한다.
기준점이 설정된 후, 게임 장치 (10 ; 판정부 (62)) 는, 예를 들어 도 15 에 나타내는 바와 같이, 기준점 (S) 으로부터 볼 오브젝트 (48) 의 현재 위치 (B) 까지의 직선 (L2) 과 교차하는 거동 제어용 오브젝트 (70) 의 ID 를 취득한다 (S203). 도 15 에 나타내는 예의 경우이면, 골 네트 (56) 의 정면 (56a) 에 가 장 가까운 거동 제어용 오브젝트 (70) 와, 골 네트 (56) 의 정면 (56a) 에 2 번째 및 3 번째로 가까운 거동 제어용 오브젝트 (70) 의 ID 가 취득된다. 또한 도 15 에서는, 기준점 (S), 볼 오브젝트 (48) 의 현재 위치 (B), 직선 (L2), 거동 제어용 오브젝트 (70) 의 관계를 알기 쉽게 하기 위해, 골 오브젝트 (44) 를 점선으로 나타내고 있다.
그 후, 게임 장치 (10 ; 볼 오브젝트 거동 제어부 (64a)) 는, S203 에서 취득된 ID 에 대응된 모든 튕겨나옴 플래그가 0 인지의 여부를 판정한다 (S204). S203 에서 취득된 ID 에 대응된 모든 튕겨나옴 플래그가 0 인 경우, 게임 장치(10 ; 볼 오브젝트 거동 제어부 (64a)) 는, 골 네트 (56) 에 의해 볼 오브젝트 (48) 에 가해지는 반력을 나타내는 반력 벡터를, S203 에서 취득된 ID 에 대응된 반력 계수에 기초하여 취득한다 (S205). 먼저 게임 장치 (10) 는, S203 에서 취득된 각 ID 에 대응하는 반력 벡터를 취득한다. 각 ID 에 대응하는 반력 벡터는, 그 ID 에 대응된 반력 계수를, 그 ID 에 관련된 거동 제어용 오브젝트 (70) 의 앞쪽 면의 법선 방향의 단위력 벡터를 곱합으로써 얻어진다. 다음으로 게임 장치 (10) 는, S203 에서 취득된 각 ID 에 대응하는 반력 벡터를 합성함으로써, 볼 오브젝트 (48) 에 가해지는 반력 벡터를 취득한다. 예를 들어, S203 에서 취득된 ID 가 1, 2, 3 인 경우, 볼 오브젝트 (48) 에 가해지는 반력 벡터 (F) 는 하기의 식 (1) 과 같이 된다. 또한, 하기의 식 (1) 에 있어서, F1 은, ID 가 1 인 거동 제어용 오브젝트 (70) 의 앞쪽 면의 법선 방향의 단위력 벡터를 나타내고 있 다. 마찬가지로, F2, F3 은, ID 가 2, 3 인 거동 제어용 오브젝트 (70) 의 앞쪽 면의 법선 방향의 단위력 벡터를 각각 나타내고 있다.
[수학식 1]
Figure 112009023020550-pct00001
다음으로, 게임 장치 (10 ; 볼 오브젝트 거동 제어부 (64a)) 는, S205 에서 취득된 반력 벡터에 기초하여, 반력에서 기인하는 볼 오브젝트 (48) 의 가속도 벡터를 취득한다 (S206). 예를 들어, 볼 오브젝트 (48) 의 가속도 벡터 (a) 는, 하기의 식 (2) 에 의해 취득된다. 또한, 하기의 식 (2) 에 있어서 m 은 볼 오브젝트 (48) 의 질량을 나타내고 있다. 볼 오브젝트 (48) 의 질량은 미리 설정되어 있고, 게임 데이터 기억부 (60) 에 기억되어 있다.
[수학식 2]
Figure 112009023020550-pct00002
다음으로, 게임 장치 (10 ; 볼 오브젝트 거동 제어부 (64a)) 는, S206 에서 취득된 가속도 벡터에 기초하여, 볼 오브젝트 (48) 의 현재 위치나 이동 속도 벡터등을 갱신한다 (S207). 예를 들어, 먼저 게임 장치 (10) 는, 볼 오브젝트 (48) 의 현재 이동 속도 벡터를 S206 에서 취득된 가속도 벡터에 기초하여 갱신함으로써, 볼 오브젝트 (48) 의 새로운 이동 속도 벡터를 산출한다. 다음으로 게임 장치 (10) 는, 볼 오브젝트 (48) 의 현재 위치로부터, 상기 산출된 볼 오브젝트 (48) 의 이동 속도 벡터가 나타내는 이동 방향으로, 그 이동 속도 벡터가 나타내는 이동 속도로 소정 시간 (예를 들어 1/60초) 이동하여 이루어지는 위치를 볼 오브젝트 (48) 의 새로운 현재 위치로서 산출한다.
한편, S204 에 있어서, S203 에서 취득된 ID 에 대응된 튕겨나옴 플래그 중의 어느 하나가 1 인 것으로 판정되었을 경우, 게임 장치 (10 ; 볼 오브젝트 거동 제어부 (64a)) 는, 튕겨나옴 플래그가 1 인 거동 제어용 오브젝트 (70) 에 의해 볼 오브젝트 (48) 가 주어진 튕겨나옴 계수로 튕겨나온 것으로 하여, 볼 오브젝트 (48) 의 현재 위치나 이동 속도 벡터 등을 갱신한다 (S208). 예를 들어 주어진 튕겨나옴 계수를 e 로 하면, 게임 장치 (10) 는, 볼 오브젝트 (48) 의 이동 속도 벡터 V 를 하기 식 (3) 에 나타내는 바와 같이 갱신한다. 또한, 튕겨나옴 계수는 0 보다 크고 1 보다 작은 수치이다.
[수학식 3]
Figure 112009023020550-pct00003
볼 오브젝트 (48) 의 현재 위치나 이동 속도 벡터 등이 갱신된 후, 게임 장치 (10 ; 골네트 거동 제어부 (64b)) 는, 볼 오브젝트 (48) 의 현재 위치 (S207 또는 S208 에 의한 갱신 후의 위치) 에 맞추어 골 네트 (56) 를 변형한다 (S209). 여기에서, 골 네트 (56) 의 변형 제어 (거동 제어) 에 관해서는, 일본 특허 제3768971호에 기재된 기술을 이용할 수 있다.
도 16 및 도 17 은 골 네트 (56) 의 변형 제어에 대해 설명하기 위한 도면이 다. 또한 도 16 및 도 17 에서는, 볼 오브젝트 (48) 가 이들 도면에 나타내는 방향 (D1) 으로 이동하여 골 네트 (56) 에 충돌했을 경우에 대해 나타내고 있다. 먼저 게임 장치 (10) 는, 볼 오브젝트 (48) 가 골 네트 (56) 를 빠져나가고 있는지의 여부를 판정한다. 볼 오브젝트 (48) 가 골 네트 (56) 를 빠져나가 있지 않은 경우, 골 네트 (56) 의 변형은 실시되지 않는다. 볼 오브젝트 (48) 가 골 네트 (56) 를 빠져나가 있는 경우, 게임 장치 (10) 는, 골 네트 (56) 의 노드 (N1, N2, N3, N4, N5, …) 중에서, 볼 오브젝트 (48) 에 가장 가까운 노드를 선출한다. 예를 들어, 게임 장치 (10) 는, 볼 오브젝트 (48) 가 충돌한 골 네트 (56) 의 면 (예를 들어 정면 (56a) 또는 측면 (56b)) 에 대해, 볼 오브젝트 (48) 의 선단 위치 (B1) 를 투영한다. 그리고 게임 장치 (10) 는, 그 투영 위치 (B2) 에 가장 가까운 노드를 선출한다. 다음으로 게임 장치 (10) 는, 선출된 노드의 위치 (도 16 에 나타내는 예에서는 N3) 로부터 볼 오브젝트 (48) 의 선단 위치 (B1) 까지의 거리 (r) 를 산출한다. 여기에서, 거리 (r) 는, 볼 오브젝트 (48) 의 선단 위치 (B1) 의 투영 방향 (D2 ; 또는 그 반대 방향 (D3)) 에 대응하는 거리이다. 그리고 게임 장치 (10) 는, 상기 선출된 노드의 위치를 상기 방향 (D3) 으로 거리 (r) 만큼 이동시킨다. 또 게임 장치 (10) 는, 상기 선출된 노드의 주변 노드의 위치를 상기 방향 (D3) 으로, 거리 (r) 에 기초하여 결정되는 거리만큼 이동시킨다. 예 를 들어 게임 장치 (10) 는, 상기 선출된 노드에 인접하는 노드의 위치를 상기 방향 (D3) 으로 거리 (r*3/4) 만큼 이동시킨다. 또한, 「*」 은 곱셈 연산자를 나타내고 있다.
이상으로 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 경우의 처리는 종료된다. 또한, 여기에서는 주로, 볼 오브젝트 (48) 가 골 오브젝트 (44) 내에 들어가 골 네트 (56) 의 내측에 충돌했을 경우의 볼 오브젝트 (48) 및 골 네트 (56) 의 거동 제어에 대해 설명했지만, 볼 오브젝트 (48) 가 골 네트 (56) 의 외측에 충돌했을 경우의 볼 오브젝트 (48) 및 골 네트 (56) 의 거동 제어도 동일하게 하여 실시할 수 있다.
도 18 및 도 19 는, 볼 오브젝트 (48) 가 골 네트 (56) 의 외측에 충돌했을 경우의 볼 오브젝트 (48) 및 골 네트 (56) 의 거동을 제어하기 위한 거동 제어용 오브젝트 (70) 의 배치예를 나타내고 있다. 또한 도 18 및 도 19 에서도, 거동 제어용 오브젝트 (70) 의 배치 상태를 알기 쉽게 하기 위해서, 골 오브젝트 (44) 및 골 라인 (43) 을 점선으로 나타내고 있다.
도 18 은, 볼 오브젝트 (48) 가 골 네트 (56) 의 정면 (56a) 의 외면측에 충돌했을 경우의 볼 오브젝트 (48) 및 골 네트 (56) 의 거동을 제어하기 위해서 배치되는 거동 제어용 오브젝트 (70) 의 일례를 나타내고 있다. 도 18 에 나타내는 거동 제어용 오브젝트 (70) 는, 골 네트 (56) 의 정면 (56a) 의 내면측 공간에 배치되어 있다. 도 18 에 나타내는 거동 제어용 오브젝트 (70) 는, 그 앞쪽이 골 네트 (56) 의 정면 (56a) 쪽을 향하도록 배치되어 있다.
도 19 는, 볼 오브젝트 (48) 가 골 네트 (56) 의 측면 (56b) 의 외면측에 충돌했을 경우의 볼 오브젝트 (48) 및 골 네트 (56) 의 거동을 제어하기 위해 배치되는 거동 제어용 오브젝트 (70) 의 일례를 나타내고 있다. 도 19 에 나타내는 거동 제어용 오브젝트 (70) 는, 골 네트 (56) 의 측면 (56b) 의 내면측 공간에 배치되어 있다. 도 19 에 나타내는 거동 제어용 오브젝트 (70) 는, 그 앞면측이 골 네트 (56) 의 측면 (56b) 쪽을 향하도록 배치되어 있다.
또한, 도 18 및 도 19 의 각 도면에 있어서, 골 네트 (56) 의 정면 (56a) 또는 측면 (56b) 으로부터 가장 떨어진 거동 제어용 오브젝트 (70) 의 「튕겨나옴 플래그」 필드의 값이 1 로 설정되고, 그 밖의 거동 제어용 오브젝트 (70) 의 「튕겨나옴 플래그」 필드의 값이 0 으로 설정된다.
도 20 및 도 21 은, 볼 오브젝트 (48) 가 골 네트 (56) 의 정면 (56a) 이나 측면 (56b) 의 외측에 충돌했을 경우에 있어서의 도 11 의 S202 및 S203 의 처리에 대해 설명하기 위한 도면이다. 또한 도 21 에서는, 기준점 (S), 볼 오브젝트 (48) 의 현재 위치 (B), 직선 (L2), 거동 제어용 오브젝트 (70) 등의 관계를 알기 쉽게 하기 위해, 골 오브젝트 (44) 를 점선으로 나타내고 있다.
볼 오브젝트 (48) 가 골 네트 (56) 의 정면 (56a) 이나 측면 (56b) 의 외측에 충돌했을 경우, 도 11 의 S202 에서는, 도 12 ∼ 도 15 에 나타낸 기준점 설정 대상 영역 (72a) 에 추가하여, 예를 들어 도 20 에 나타내는 바와 같은 기준점 설정 대상 영역 (72b) 이 설정된다. 도 20 에 나타내는 바와 같이, 기준점 설정 대상 영역 (72b) 은, 골 오브젝트 (44) 의 외측 공간에 골 오브젝트 (44) 를 둘러싸도록 하여 설정된다.
이 경우, 먼저 게임 장치 (10) 는, 도 13 또는 도 14 에 나타내는 기준점 (S) 을 S0 으로서 취득한다. 즉, 볼 오브젝트 (48) 가 골 네트 (56) 의 정면 (56a) 이나 측면 (56b) 의 내측에 충돌했을 경우와 동일하게, 볼 오브젝트 (48) 의 현재 위치 (B) 로부터 기준 평면 (72) 에 대해 그은 수선 (L1) 과 기준 평면 (72) 의 교점 (I) 을 취득한다 (도 13 및 도 14 참조). 그리고, 교점 (I) 이 기준점 설정 대상 영역 (72a) 내인 경우, 게임 장치 (10) 는 교점 (I) 을 S0 으로서 취득한다. 한편, 교점 (I) 이 기준점 설정 대상 영역 (72a) 내가 아닌 경우, 게임 장치 (10) 는 교점 (I) 에 가장 가까운 기준점 설정 대상 영역 (72a) 상의 점을 S0 로서 취득한다. 점 S0 가 취득되면, 게임 장치 (10) 는, 도 21 에 나타내는 바와 같이, 점 S0 으로부터 볼 오브젝트 (48) 의 현재 위치 (B) 의 방향으로 연장한 직선 (L3) 과, 기준점 설정 대상 영역 (72b) 의 교점을 기준점 (S) 으로서 취득한다. 그리고, 도 11 의 S203 에서는, 기준점 (S) 으로부터 볼 오브젝트 (48) 의 현재 위치 (B) 까지의 직선 (L2) 과 교차하는 거동 제어용 오브젝트 (70) 의 ID 가 취득된다.
또한, 도 11 의 S203 에서는, 게임 장치 (10) 는, 기준점 (S) 으로부터 볼 오브젝트 (48) 의 현재 위치 (B) 까지의 직선 (L2) 가 거동 제어용 오브젝트 (70) 와 거동 제어용 오브젝트 (70) 의 앞쪽에서 교차하는 경우에만, 직선 (L2) 가 거동 제어용 오브젝트 (70) 와 교차하는 것으로 판정하도록 하면 바람직하다. 이렇 게 하면, 예를 들어, 볼 오브젝트 (48) 가 골 오브젝트 (44) 내에 들어가 골 네트 (56) 의 정면 (56a) 내측에 충돌한 경우에는, 볼 오브젝트 (48) 가, 도 18 이나 도 19 에 나타내는 거동 제어용 오브젝트 (70) 와는 접촉하고 있지 않은 것으로 판정되게 된다. 또 예를 들어, 볼 오브젝트 (48) 가 골 네트 (56) 의 정면 (56a) 외측에 충돌한 경우에는, 볼 오브젝트 (48) 가, 도 7 에 나타내는 거동 제어용 오브젝트 (70) 와는 접촉 (충돌) 하고 있지 않은 것으로 판정되게 된다.
이상 설명한 게임 장치 (10) 에 의하면, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 경우의 볼 오브젝트 (48) 및 골 네트 (56) 의 리얼리티가 높은 거동 표현을 복잡한 시뮬레이션 연산 등을 실시하지 않고 실현하는 것이 가능해진다. 즉, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 경우의 볼 오브젝트 (48) 및 골 네트 (56) 의 리얼리티가 높은 거동 표현을 처리 부하의 경감을 도모하면서 실현하는 것이 가능해진다.
또 게임 장치 (10) 에 의하면, 골 오브젝트 (44) 의 디자인을 담당하는 자 (골 오브젝트 (44) 의 형상 등을 숙지하고 있는 자) 가, 골 오브젝트 (44) 의 형상 등에 맞추어, 거동 제어용 오브젝트 (70) 와 거동 제어 테이블을 설정하는 것이 가능해지고, 그러한 데이터를 골 오브젝트 (44) 의 형상 데이터 등과 함께 골 오브젝트 (44) 의 데이터로서 제작하는 것이 가능해진다. 즉 게임 장치 (10) 에 의하면, 골 오브젝트 (44) 의 디자인을 담당하는 자가, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌한 경우의 볼 오브젝트 (48) 나 골 네트 (56) 의 거동 제어에 관여하기 쉬워진다.
그런데, 현실의 축구에서 사용되는 골의 형상이나 구조는 일정하지 않아, 여러 형상이나 구조의 골이 존재한다. 이 때문에, 축구 게임에 있어서도, 형상이나 구조가 상이한 복수 종류의 골을 등장시킴으로써 축구 게임의 리얼리티를 향상시키는 것이 가능해진다. 그러나, 골 오브젝트 (44) 의 형상이나 구조가 상이하면, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 경우의 볼 오브젝트 (48) 나 골 네트 (56) 의 거동도 상이해진다. 이 때문에, 복수 종류의 골 오브젝트 (44) 를 게임에 등장시키고자 하면, 종래의 방법에서는, 게임 프로그래머는 각 골 오브젝트 (44) 마다, 그 골 오브젝트 (44) 의 형상이나 구조에 맞춘 프로그램 (볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 경우의 볼 오브젝트 (48) 및 골 네트 (56) 의 거동을 제어하기 위해 프로그램) 을 작성해야 한다. 따라서, 복수 종류의 골 오브젝트 (44) 를 게임에 등장시키고자 하면, 게임 프로그래머의 수고가 증대될 우려가 있다. 이 점, 게임 장치 (10) 에 의하면, 거동 제어용 오브젝트 (70) 는 골 오브젝트 (44) 의 형상이나 구조에 맞추어 배치하는 것이 가능하기 때문에, 복수 종류의 골 오브젝트 (44) 를 게임에 등장시키는 경우에 있어서, 각 골 오브젝트 (44) 마다 그 골 오브젝트 (44) 의 형상이나 구조에 맞춘 프로그램을 작성하는 수고가 경감된다. 즉, 게임 장치 (10) 에 의하면, 게임 프로그래머의 수고가 증대되는 것을 억제하면서, 복수 종류의 골 오브젝트 (44) 를 게임에 등장시키는 것이 가능해진다.
또 게임 장치 (10) 에서는, 각 거동 제어용 오브젝트 (70) 에 대응되어 튕겨나옴 플래그가 기억된다. 그리고, 각 거동 제어용 오브젝트 (70) 에 대응된 튕 겨나옴 플래그에 기초하여, 볼 오브젝트 (48) 의 거동이 제어된다. 골 네트 (56) 에 충돌한 볼 오브젝트 (48) 가 지나치게 진행되면, 부자연스러운 모습이 게임 화면에 표시되게 되어, 오히려 리얼리티가 저해된다. 이 점, 게임 장치 (10) 에서는, 도 7, 도 8, 도 18 이나 도 19 의 각 도면에 있어서의, 골 네트 (56) 의 정면 (56a) 또는 측면 (56b) 으로부터 가장 떨어진 거동 제어용 오브젝트 (70) 의 튕겨나옴 플래그가 1 로 설정된다. 그리고, 그들 거동 제어용 오브젝트 (70) 에 볼 오브젝트 (48) 가 접촉한 경우에는, 그들 거동 제어용 오브젝트 (70) 에 의해 볼 오브젝트 (48) 가 주어진 튕겨나옴 계수로 튕겨나온 것으로 하여, 볼 오브젝트 (48) 의 거동이 제어된다. 즉, 볼 오브젝트 (48) 가 그 이상 진행되지 않도록 제어된다. 그 결과로서, 게임 장치 (10) 에서는, 골 네트 (56) 에 충돌한 볼 오브젝트 (48) 가 지나치게 진행되는 경우가 없도록 도모되어 있다.
또 게임 장치 (10) 에서는, 소정 시간 (예를 들어 1/60초) 마다 실행되는 처리에 있어서, 볼 오브젝트 (48) 의 현재 위치에 기초하여 기준점이 그때마다 산출되고, 기준점으로부터 볼 오브젝트 (48) 의 현재 위치까지의 직선이 각 거동 제어용 오브젝트 (70) 와 교차하는지의 여부를 판정함으로써, 볼 오브젝트 (48) 가 각 거동 제어용 오브젝트 (70) 와 접촉했는지의 여부가 그때마다 판정된다. 볼 오브젝트 (48) 가 거동 제어용 오브젝트 (70) 에 접촉했는지 여부의 판정 결과에 기초하여, 볼 오브젝트 (48) 나 골 네트 (56) 의 거동 제어를 실시하는 경우에는, 예를 들어, 각 거동 제어용 오브젝트 (70) 에 대응시켜, 볼 오브젝트 (48) 가 접촉이 완료된 상태인지의 여부를 나타내는 플래그 정보를 기억해 두고, 그것들 플래그 정 보에 기초하여, 볼 오브젝트 (48) 나 골 네트 (56) 의 거동 제어를 실행하는 방법을 생각할 수 있다. 그러나, 이 방법에서는, 각 거동 제어용 오브젝트 (70) 에 대응시켜, 볼 오브젝트 (48) 가 접촉 완료 상태인지의 여부를 나타내는 플래그 정보를 기억해야 되기 때문에, 데이터량이 증대된다는 난점이 있다. 또, 예를 들어 리플레이 대상의 장면마다 기록된 리플레이 데이터를 재생하는 리플레이 기능을 축구 게임이 구비하는 경우에, 이 수법을 사용하면, 리플레이 화면에 있어서 볼 오브젝트 (48) 나 골 네트 (56) 의 거동이 정확하게 재현 (리플레이) 되지 않을 가능성이 있다. 즉, 리플레이 데이터에 의해 재현되는 최초의 상황이, 이미 볼 오브젝트 (48) 가 적어도 1 개의 거동 제어용 오브젝트 (70) 에 충돌한 후의 상황이면, 그 이전에 볼 오브젝트 (48) 가 충돌한 거동 제어용 오브젝트 (70) 가 불분명해지기 때문에, 리플레이 화면에 있어서 볼 오브젝트 (48) 나 골 네트 (56) 의 거동이 정확하게 재현되지 않게 된다. 이 점, 게임 장치 (10) 에 의하면, 데이터량의 증대를 억제하는 것이 가능해진다. 또, 게임 장치 (10) 에 의하면, 상기와 같은 리플레이 기능에 있어서도, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 경우의 볼 오브젝트 (48) 나 골 네트 (56) 의 거동이 정확하게 재현 (리플레이) 되게 된다.
또한, 본 발명은 이상에서 설명한 실시 형태에 한정되는 것은 아니다.
예를 들어, 거동 제어 테이블에는, 「반력 계수」 필드 대신에, 반발 계수 (가속도 벡터 정보) 를 기억하기 위한 「반발 계수」 필드와, 마찰 계수 (가속도 벡터 정보) 를 기억하기 위한 「마찰 계수」 필드를 형성하도록 해도 된다. 이 와 같이 하여, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌했을 때의 볼 오브젝트 (48) 의 거동을, 골 네트 (56) 에 의해 볼 오브젝트 (48) 에 가해지는 힘의 반발력 성분과 마찰력 성분을 따로따로 고려하여 제어하도록 해도 된다.
또 예를 들어, 거동 제어 테이블에는, 「반력 계수」 필드에 추가하여, 반력의 작용 방향을 나타내는 벡터 정보 (가속도 벡터 정보) 를 기억하기 위한 「가속도 벡터」 필드를 형성하도록 해도 된다. 이와 같이 하여, 거동 제어용 오브젝트 (70) 의 앞쪽 면의 법선 방향 이외의 힘이 볼 오브젝트 (48) 에 가해지도록 해도 된다.
또 예를 들어, 거동 제어 테이블에는, 「반력 계수」 필드 대신에, 골 네트 (56) 가 볼 오브젝트 (48) 를 되밀어내는 힘에 의한 볼 오브젝트 (48) 의 가속도 벡터를 나타내는 정보 (가속도 벡터 정보) 를 기억하기 위한 「가속도 벡터」 필드를 형성하도록 해도 된다.
또 예를 들어, 거동 제어 테이블에는, 「튕겨나옴 플래그」 필드 대신에, 또는 「튕겨나옴 플래그」 필드와 함께, 튕겨나옴 계수 (튕겨나옴 제어 정보) 를 기억하기 위한 「튕겨나옴 계수」 필드를 형성하도록 해도 된다. 이와 같이 하여, 거동 제어용 오브젝트 (70) 마다 튕겨나옴 계수를 바꾸도록 해도 된다.
또 예를 들어, 본 발명이 사용되는 것은, 볼 오브젝트 (48) 가 골 네트 (56) 에 충돌하는 모습을 표현하는 경우에 한정되지 않는다. 예를 들어, 축구 스타디움의 관객석에서 흔들어지고 있는 큰 깃발 (피충돌 오브젝트) 에 볼이나 발염통 등 (이동체) 이 충돌하는 모습을 표현하는 경우에도, 본 발명은 사용할 수 있다. 이 때, 관객이 깃발을 흔듦으로서 깃발의 형상이 변화되는 모습은, 예를 들어 애니메이션에 의해 표현된다. 이와 같은 경우, 거동 제어 오브젝트 (70) 의 위치 및 형상이나, 거동 제어 오브젝트 (70) 에 대응되는 반력 계수 (가속도 벡터 정보) 가, 관객의 깃발을 흔드는 동작에 의한 깃발의 형상 변화를 나타내는 애니메이션 정보에 연동하여 변화되도록 해도 된다. 이와 같이, 이동체 오브젝트의 충돌 이외의 사상 (事象) 에서 기인하는 피충돌 오브젝트의 형상 변화에 따라, 거동 제어 오브젝트 (70) 의 위치 및 형상이나, 거동 제어 오브젝트 (70) 에 대응되는 반력 계수 (가속도 벡터 정보) 가 변화되도록 해도 된다. 이렇게 하면, 이동체 오브젝트의 충돌 이외의 사상에서 기인하는 피충돌 오브젝트의 형상이 변화되는 경우에도, 이동체 오브젝트가 피충돌 오브젝트에 충돌하는 모습을 바람직하게 표현할 수 있게 된다. 또한, 거동 제어 오브젝트 (70) 의 위치 및 형상이 변화된 경우에는, 그들 변화에 따라, 그 기준점 설정 대상 영역 (72a 및 72b) 의 위치나 형상도 변화시킬 필요가 있다. 이 때문에, 예를 들어, 피충돌 오브젝트의 형상 변화를 나타내는 애니메이션의 각 프레임과, 기준점 설정 대상 영역 (72a 및 72b) 의 위치나 형상을 특정하기 위한 정보를 대응시켜 이루어지는 데이터가 기억된다. 이 데이터는, 예를 들어, 피충돌 오브젝트의 형상 변화를 나타내는 애니메이션의 각 프레임과, 기준점 설정 대상 영역 (72a 및 72b) 의 각 정점의 좌표를 특정하기 위한 정보를 대응시켜 이루어지는 테이블 형식의 데이터이다. 또 예를 들어, 상기 데이터는, 피충돌 오브젝트의 형상 변화를 나타내는 애니메이션의 각 프레임의 위치 (예를 들어, 선두로부터 몇번째 프레임인지를 나타내는 수치) 에 기초하 여, 기준점 설정 대상 영역 (72a 및 72b) 의 각 정점의 좌표를 산출하기 위한 연산식 형식의 데이터여도 된다. 상기와 같은 데이터에 기초하여, 기준점 설정 대상 영역 (72a 및 72b) 의 위치나 형상이, 이동체 오브젝트의 충돌 이외의 사상에서 기인하는 피충돌 오브젝트의 형상 변화에 따라 변화된다.
또 예를 들어, 본 발명은 축구 게임 이외의 게임을 실행하는 게임 장치에도 적용할 수 있다. 예를 들어, 배구 게임을 실행하는 게임 장치에 본 발명을 적용함으로써, 볼이 네트에 충돌하는 모습을 바람직하게 표현할 수도 있다. 또, 본 발명은 게임 장치 이외의 화상 처리 장치에도 적용할 수 있다. 본 발명은, 이동체 오브젝트가 충돌함으로써 변형되는 피충돌 오브젝트에 이동체 오브젝트가 충돌하는 모습을 표현하는 경우에 사용할 수 있다. 또한, 피충돌 오브젝트로는, 예를 들어 네트나 천 등의 시트상 오브젝트나, 스펀지상 오브젝트 등을 들 수 있다.
또 예를 들어, 이상의 설명에서는, 프로그램을 정보 기억 매체인 DVD-ROM (25) 으로부터 가정용 게임기 (11) 에 공급하도록 했지만, 통신 네트워크를 통하여 프로그램을 가정 등에 배신하도록 해도 된다. 도 22 는, 통신 네트워크를 사용한 프로그램 배신 시스템의 전체 구성을 나타내는 도면이다. 도 22 에 기초하여 본 발명에 관련된 프로그램 배신 방법을 설명한다. 도 22 에 나타내는 바와 같이, 이 프로그램 배신 시스템 (100) 은, 데이터 베이스 (102 ; 정보 기억 매체), 서버 (104), 통신 네트워크 (106), PC (108), 가정용 게임기 (110), PDA (휴대 정보 단말 ; 112) 를 포함하고 있다. 이 중, 데이터 베이스 (102) 와 서버 (104) 에 의해 프로그램 배신 장치 (114) 가 구성된다. 통신 네트워크 (106) 는, 예를 들어 인터넷이나 케이블 텔레비전 네트워크를 포함하여 구성되어 있다. 이 시스템에서는, 데이터 베이스 (102) 에 DVD-ROM (25) 의 기억 내용과 동일한 프로그램이 기억되어 있다. 그리고, PC (108), 가정용 게임기 (110) 또는 PDA (112) 등을 사용하여 수요자가 프로그램 배신 요구를 함으로써, 그것이 통신 네트워크 (106) 를 통하여 서버 (104) 에 전달된다. 그리고, 서버 (104) 는 프로그램 배신 요구에 따라 게임 데이터 베이스 (102) 로부터 프로그램을 판독 출력하고, 그것을 PC (108), 가정용 게임기 (110), PDA (112) 등, 프로그램 배신 요구처에 송신한다. 여기에서는 프로그램 배신 요구에 따라 프로그램 배신하도록 했지만, 서버 (104) 로부터 일방적으로 송신하도록 해도 된다. 또, 반드시 한 번에 모든 프로그램을 배신 (일괄 배신) 할 필요는 없고, 필요한 부분을 그때마다 전달 (분할 전달) 하도록 해도 된다. 이와 같이 통신 네트워크 (106) 를 통하여 프로그램을 전달하도록 하면, 수요자는 용이하게 프로그램을 입수할 수 있게 된다.

Claims (5)

  1. 이동체 오브젝트와, 상기 이동체 오브젝트가 충돌했을 경우에 변형되는 피충돌 오브젝트를 가상 3 차원 공간에 배치하고, 상기 이동체 오브젝트가 상기 피충돌 오브젝트에 충돌하는 모습을 나타내는 화상을 표시하는 화상 처리 장치에 있어서,
    상기 피충돌 오브젝트의, 상기 이동체 오브젝트에 의해 충돌되는 면의 배면측 공간에 배치되는 복수의 거동 제어용 오브젝트의 각각에 대응시켜, 상기 피충돌 오브젝트에 의해 상기 이동체 오브젝트에 가해지는 힘에 의한 상기 이동체 오브젝트의 가속도 벡터를 특정하기 위한 가속도 벡터 정보를 기억하는 가속도 벡터 정보 기억 수단과,
    상기 이동체 오브젝트와, 상기 복수의 거동 제어용 오브젝트가 접촉했는지의 여부를 판정하는 판정 수단과,
    상기 이동체 오브젝트가 상기 복수의 거동 제어용 오브젝트 중 적어도 하나에 접촉한 것으로 판정된 경우, 상기 적어도 하나의 거동 제어용 오브젝트에 대응된 가속도 벡터 정보에 의해 특정되는 가속도 벡터에 기초하여, 상기 이동체 오브젝트의 거동을 제어하는 이동체 오브젝트 거동 제어 수단을 포함하고,
    상기 판정 수단은,
    상기 이동체 오브젝트의 현재 위치에 기초하여 소정 연산을 실행함으로써 기준 위치를 설정하는 기준 위치 설정 수단을 포함하고,
    상기 기준 위치 설정 수단에 의해 설정된 기준 위치로부터 상기 이동체 오브젝트의 현재 위치까지의 직선과, 상기 복수의 거동 제어용 오브젝트가 교차하는지의 여부를 판정함으로써, 상기 이동체 오브젝트와 상기 복수의 거동 제어용 오브젝트가 접촉했는지의 여부를 판정하는 것을 특징으로 하는 화상 처리 장치.
  2. 제 1 항에 있어서,
    상기 복수의 거동 제어용 오브젝트의 각각에 대응시켜, 상기 이동체 오브젝 트가 상기 거동 제어용 오브젝트에 의해 튕겨나오는지의 여부를 나타내는 튕겨나옴 제어 정보를 기억하는 튕겨나옴 제어 정보 기억 수단을 포함하고,
    상기 이동체 오브젝트 거동 제어 수단은, 상기 이동체 오브젝트가 접촉한 것으로 판정된 상기 거동 제어용 오브젝트에 대응된 튕겨나옴 제어 정보가, 상기 이동체 오브젝트가 상기 거동 제어용 오브젝트에 의해 튕겨나오는 것을 나타내는 경우, 상기 이동체 오브젝트가 상기 거동 제어용 오브젝트에 의해 주어진 튕겨나옴 계수로 튕겨나온 것으로 하여, 상기 이동체 오브젝트의 거동을 제어하는 수단을 포함하는 것을 특징으로 하는 화상 처리 장치.
  3. 삭제
  4. 이동체 오브젝트와, 상기 이동체 오브젝트가 충돌했을 경우에 변형되는 피충돌 오브젝트를 가상 3 차원 공간에 배치하고, 상기 이동체 오브젝트가 상기 피충돌 오브젝트에 충돌하는 모습을 나타내는 화상을 표시하는 화상 처리 장치의 제어 방법에 있어서,
    상기 피충돌 오브젝트의, 상기 이동체 오브젝트에 의해 충돌되는 면의 배면측 공간에 배치되는 복수의 거동 제어용 오브젝트의 각각에 대응시켜, 상기 피충돌 오브젝트에 의해 상기 이동체 오브젝트에 가해지는 힘에 의한 상기 이동체 오브젝트의 가속도 벡터를 특정하기 위한 가속도 벡터 정보를 기억하는 가속도 벡터 정보 기억 수단의 기억 내용을 판독 출력하는 단계와,
    상기 이동체 오브젝트와 상기 복수의 거동 제어용 오브젝트가 접촉했는지의 여부를 판정하는 판정 단계와,
    상기 이동체 오브젝트가 상기 복수의 거동 제어용 오브젝트 중 적어도 하나에 접촉한 것으로 판정된 경우, 상기 적어도 하나의 거동 제어용 오브젝트에 대응된 가속도 벡터 정보에 의해 특정되는 가속도 벡터에 기초하여, 상기 이동체 오브젝트의 거동을 제어하는 이동체 오브젝트 거동 제어 단계를 포함하고,
    상기 판정 단계는,
    상기 이동체 오브젝트의 현재 위치에 기초하여 소정 연산을 실행함으로써 기준 위치를 설정하는 기준 위치 설정 단계를 포함하고,
    상기 기준 위치 설정 단계에서 설정된 기준 위치로부터 상기 이동체 오브젝트의 현재 위치까지의 직선과, 상기 복수의 거동 제어용 오브젝트가 교차하는지의 여부를 판정함으로써, 상기 이동체 오브젝트와 상기 복수의 거동 제어용 오브젝트가 접촉했는지의 여부를 판정하는 것을 특징으로 하는 화상 처리 장치의 제어 방법.
  5. 이동체 오브젝트와, 상기 이동체 오브젝트가 충돌했을 경우에 변형되는 피충돌 오브젝트를 가상 3 차원 공간에 배치하고, 상기 이동체 오브젝트가 상기 피충돌 오브젝트에 충돌하는 모습을 나타내는 화상을 표시하는 화상 처리 장치로서 컴퓨터를 기능시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 정보 기억 매체로서,
    상기 피충돌 오브젝트의, 상기 이동체 오브젝트에 의해 충돌되는 면의 배면측 공간에 배치되는 복수의 거동 제어용 오브젝트의 각각에 대응시켜, 상기 피충돌 오브젝트에 의해 상기 이동체 오브젝트에 가해지는 힘에 의한 상기 이동체 오브젝트의 가속도 벡터를 특정하기 위한 가속도 벡터 정보를 기억하는 가속도 벡터 정보 기억 수단,
    상기 이동체 오브젝트와 상기 복수의 거동 제어용 오브젝트가 접촉했는지의 여부를 판정하는 판정 수단, 및,
    상기 이동체 오브젝트가 상기 복수의 거동 제어용 오브젝트 중 적어도 하나에 접촉한 것으로 판정된 경우, 상기 적어도 하나의 거동 제어용 오브젝트에 대응된 가속도 벡터 정보에 의해 특정되는 가속도 벡터에 기초하여, 상기 이동체 오브젝트의 거동을 제어하는 이동체 오브젝트 거동 제어 수단
    으로서 상기 컴퓨터를 기능시키고,
    상기 판정 수단은, 상기 이동체 오브젝트의 현재 위치에 기초하여 소정 연산을 실행함으로써 기준 위치를 설정하는 기준 위치 설정 수단을 포함하고,
    상기 기준 위치 설정 수단에 의해 설정된 기준 위치로부터 상기 이동체 오브젝트의 현재 위치까지의 직선과, 상기 복수의 거동 제어용 오브젝트가 교차하는지의 여부를 판정함으로써, 상기 이동체 오브젝트와 상기 복수의 거동 제어용 오브젝트가 접촉했는지의 여부를 판정하는 것을 특징으로 하는, 프로그램을 기록한 컴퓨터 판독 가능한 정보 기억 매체.
KR1020097007813A 2006-12-28 2007-11-26 화상 처리 장치, 화상 처리 장치의 제어 방법 및 정보 기억 매체 KR101089538B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006355720A JP4205747B2 (ja) 2006-12-28 2006-12-28 画像処理装置、画像処理装置の制御方法及びプログラム
JPJP-P-2006-355720 2006-12-28
PCT/JP2007/072766 WO2008081661A1 (ja) 2006-12-28 2007-11-26 画像処理装置、画像処理装置の制御方法及び情報記憶媒体

Publications (2)

Publication Number Publication Date
KR20090079893A KR20090079893A (ko) 2009-07-22
KR101089538B1 true KR101089538B1 (ko) 2011-12-05

Family

ID=39588345

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097007813A KR101089538B1 (ko) 2006-12-28 2007-11-26 화상 처리 장치, 화상 처리 장치의 제어 방법 및 정보 기억 매체

Country Status (7)

Country Link
US (1) US20100045664A1 (ko)
EP (1) EP2098997A4 (ko)
JP (1) JP4205747B2 (ko)
KR (1) KR101089538B1 (ko)
CN (1) CN101536041B (ko)
TW (1) TW200833399A (ko)
WO (1) WO2008081661A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4459993B2 (ja) * 2007-10-03 2010-04-28 株式会社スクウェア・エニックス 画像生成装置、画像生成プログラム及び画像生成プログラム記録媒体
US9576330B2 (en) 2008-03-07 2017-02-21 Virtually Live (Switzerland) Gmbh Media system and method
GB0804274D0 (en) * 2008-03-07 2008-04-16 Virtually Live Ltd A media sysyem and method
JP5395538B2 (ja) * 2009-06-30 2014-01-22 株式会社東芝 超音波診断装置及び画像データ表示用制御プログラム
JP5236697B2 (ja) * 2010-07-09 2013-07-17 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法、及びプログラム
JP5784985B2 (ja) * 2011-05-26 2015-09-24 株式会社ソニー・コンピュータエンタテインメント プログラム、情報記憶媒体、情報処理システム及び情報処理方法
US9050538B2 (en) 2011-05-26 2015-06-09 Sony Corporation Collision detection and motion simulation in game virtual space
US8909506B2 (en) 2011-05-31 2014-12-09 Sony Corporation Program, information storage medium, information processing system, and information processing method for controlling a movement of an object placed in a virtual space
JP5328841B2 (ja) * 2011-05-31 2013-10-30 株式会社ソニー・コンピュータエンタテインメント プログラム、情報記憶媒体、情報処理システム及び情報処理方法
US9183676B2 (en) * 2012-04-27 2015-11-10 Microsoft Technology Licensing, Llc Displaying a collision between real and virtual objects

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11213176A (ja) * 1998-01-26 1999-08-06 Sega Enterp Ltd 画像処理方法
JP2004321551A (ja) * 2003-04-25 2004-11-18 Namco Ltd 画像生成装置、方法およびプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6195625B1 (en) * 1999-02-26 2001-02-27 Engineering Dynamics Corporation Method for simulating collisions
JP3843242B2 (ja) * 2002-02-28 2006-11-08 株式会社バンダイナムコゲームス プログラム、情報記憶媒体、およびゲーム装置
US7918730B2 (en) * 2002-06-27 2011-04-05 Igt Trajectory-based 3-D games of chance for video gaming machines

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11213176A (ja) * 1998-01-26 1999-08-06 Sega Enterp Ltd 画像処理方法
JP2004321551A (ja) * 2003-04-25 2004-11-18 Namco Ltd 画像生成装置、方法およびプログラム

Also Published As

Publication number Publication date
TW200833399A (en) 2008-08-16
US20100045664A1 (en) 2010-02-25
CN101536041B (zh) 2012-07-25
WO2008081661A1 (ja) 2008-07-10
KR20090079893A (ko) 2009-07-22
CN101536041A (zh) 2009-09-16
EP2098997A1 (en) 2009-09-09
EP2098997A4 (en) 2010-01-06
JP4205747B2 (ja) 2009-01-07
JP2008165584A (ja) 2008-07-17

Similar Documents

Publication Publication Date Title
KR101089538B1 (ko) 화상 처리 장치, 화상 처리 장치의 제어 방법 및 정보 기억 매체
US7597622B2 (en) Game device, computer control method, and computer-readable information storage medium
JP3696216B2 (ja) 3次元ビデオゲーム装置、3次元ビデオゲームにおける仮想カメラの制御方法、並びにプログラム及び記録媒体
US8568229B2 (en) Apparatus and method for displaying player character showing special movement state in network game
JP4447568B2 (ja) ゲーム装置、ゲーム装置の制御方法及びプログラム
KR101127774B1 (ko) 게임 장치, 게임 장치의 제어 방법 및 정보 기억 매체
JP2007300974A (ja) プログラム、情報記憶媒体及び画像生成システム
KR100825704B1 (ko) 화상 처리 장치, 화상 처리 방법 및 정보 기억 매체
JP2012249799A (ja) 画像処理装置、画像処理方法、および画像処理装置の制御プログラム
KR100924257B1 (ko) 게임 장치, 게임 장치의 제어 방법 및 정보 기억 매체
KR100972771B1 (ko) 게임 장치, 게임 장치의 제어 방법 및 정보 기억 매체
JP4563266B2 (ja) ネットワークゲームシステム、ゲーム装置、ゲーム装置の制御方法及びプログラム
JP3880603B2 (ja) 画像処理装置、画像処理方法及びプログラム
US8485898B2 (en) Game device, method for controlling game device, program, and information storage medium
KR100977692B1 (ko) 게임 장치, 게임용 화상 처리 방법 및 정보 기억 매체
KR100959051B1 (ko) 화상 처리 장치, 화상 처리 방법 및 정보 기억 매체
JP4791514B2 (ja) 画像処理装置、画像処理装置の制御方法及びプログラム
JP4563267B2 (ja) ネットワークゲームシステム、ネットワークゲーム制御方法、ゲーム装置、ゲーム制御方法及びプログラム
JP4124795B2 (ja) ゲーム装置、ゲーム装置の制御方法及びプログラム
JP3967720B2 (ja) 画像処理装置、プログラム及び画像処理方法
JP3967719B2 (ja) 画像処理装置、プログラム及び画像処理方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20141125

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151120

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161118

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20171116

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20181120

Year of fee payment: 8