KR20000064948A - 화상 처리 장치 및 화상 처리 방법 - Google Patents

화상 처리 장치 및 화상 처리 방법 Download PDF

Info

Publication number
KR20000064948A
KR20000064948A KR1019980708368A KR19980708368A KR20000064948A KR 20000064948 A KR20000064948 A KR 20000064948A KR 1019980708368 A KR1019980708368 A KR 1019980708368A KR 19980708368 A KR19980708368 A KR 19980708368A KR 20000064948 A KR20000064948 A KR 20000064948A
Authority
KR
South Korea
Prior art keywords
polygon
game
virtual
image processing
processing apparatus
Prior art date
Application number
KR1019980708368A
Other languages
English (en)
Other versions
KR100300832B1 (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
Priority claimed from JP9034163A external-priority patent/JP2955989B2/ja
Application filed by 이리마지리 쇼우이치로, 가부시키가이샤 세가 엔터프라이제스 filed Critical 이리마지리 쇼우이치로
Publication of KR20000064948A publication Critical patent/KR20000064948A/ko
Application granted granted Critical
Publication of KR100300832B1 publication Critical patent/KR100300832B1/ko

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/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
    • 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
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5258Changing parameters of virtual cameras by dynamically adapting the position of the virtual camera to keep a game object or game character in its viewing frustum, e.g. for tracking a character or a ball
    • 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/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • 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/80Special adaptations for executing a specific game genre or game mode
    • A63F13/812Ball games, e.g. soccer or baseball
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • 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
    • 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/6607Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics
    • 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/6623Methods for processing data by generating or executing the game program for rendering three dimensional images for animating a group of characters
    • 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/663Methods for processing data by generating or executing the game program for rendering three dimensional images for simulating liquid objects, e.g. water, gas, fog, snow, clouds
    • 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/6684Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera by dynamically adapting its position to keep a game object in its viewing frustrum, e.g. for tracking a character or a ball
    • 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/8011Ball

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

축구 게임등의 화상 처리에서, 게임의 리얼감, 현장감을 보다 한층 높인 처리를 실시한다. 특히, 캐릭터의 움직임을 실제의 경기자의 그것에, 보다 정확하게 시뮬레이트하고, 게임의 리얼감을 향상시킨다.
가상 3차원 공간에서 경기자를 모방한 캐릭터의 거동을 화상 표시하는 화상 처리 장치이다. 캐릭터에 게임을 통해 관계를 갖는 목표체(예를 들면, 상대 캐릭터나 볼)와 상기 캐릭터 사이의 상호적 관계(거리 등) 또는 게임 내용에 관한 관계(센터링 영역에 있음, 등)가 소정 조건에 합치하는 소정 상태인지의 여부를 판단하고(S21 ∼ S24 등), 소정 상태가 판단될 때, 캐릭터의 시선을 목표체를 향하게 한다(S25, S26, S28 등). 특히 축구 게임에 적합하다.

Description

화상 처리 장치 및 화상 처리 방법
최근의 컴퓨터 기술의 발달에 따라, TV 게임기, 시뮬레이션 장치 등에 관한 화상 처리 기술이 널리 일반적으로 보급되어 있다. 이러한 시스템에서는, 표시 화면이나 표시 내용을 보다 리얼하게 보이게 하는 화상 처리 기술의 고도화가, 상품 가치를 높이는데 매우 큰 비중을 차지하고 있다.
TV 게임기를 일례로 들면, 그 컴퍼넌트로서는, 패드, 죠이스틱 등의 조작기 및 표시용 모니터를 포함하는 주변 장치와, 화상 처리, 음향 처리, 주변 장치의 데이타 통신 등을 실행하는 CPU를 탑재한 처리 장치를 구비하고, 조작기 사이에서 인터액티브하게 게임 전개를 연출할 수 있게 되어 있다.
이러한 TV 게임기의 한 분야로서, 축구 게임을 행할 수 있는 게임 장치가 있다. 이 축구 게임은, 통상 3차원 가상 공간에 필드 및 관객석(스탠드)을 설치한 축구 스타디움을 구축하고, 필드 상에서 2팀의 캐릭터(표시체, 혹은 오브젝트라고도 함)가 가상의 축구 경기를 행하는 것이다. 구체적으로는, 플레이어로부터의 조작 정보에 따른 모션의 계산, 볼 처리, 충돌 처리, 로보트의 처리, 필드의 처리 등을 순차 실행하고, 플레이어의 조작을 반영시킨 게임 전개를 화면 표시한다.
이 때, 스탠드의 관객의 거동도 게임의 분위기를 고조시키는 중요한 요소이기 때문에, 관객의 거동 처리도 도입하는 경우가 많다. 관객의 거동의 제어 방법으로서는, 1) 애니메이션(동화상)과 마찬가지로, 미리 움직임이 있는 관객의 화상 데이타를 프레임마다 다수개 준비해 두고, 그 화상을 경기 장면에 따라, 텍스쳐를 접착하여 동화상적으로 표시하는 방법, 2) 관객을 나타낸 폴리곤 데이타를 준비하여 경기 장면에 따라 폴리곤을 움직이게 하는 등의 방법이 있다.
또한, 게임의 분위기나 현장감을 고조시키는 중요한 요소로서, 표시 화면의 칼라 정도가, 하루의 시간 경과에 대응한 실제의 밝기(일조 등)에 매치하고 있는지의 여부의 문제가 있다. 특히, 야외에서 행하는 일이 많은 축구 게임에는 중요한 것으로, 축구를 하루 내의 어떤 시간대에서 행할지에 따라, 밝기에 관한 물리적 환경은 미소하게 변한다. 즉, 아침, 낮, 밤 중 어느 시간대에서 행할지, 또는 그들의 중간 시간 대의 어디서 행할지에 따라, 밝기가 다르다. 종래에는 시간 대에 따라 칼라 화면의 휘도를 조정하는 수법이 알려져 있다.
그러나, 상술한 종래의 게임기에서는, 게임의 현장감이나 리얼감의 면에서, 여전히 아래와 같은 부족함이 있다.
제1로, 예를 들면 축구 게임을 예로 들어 설명하면, 예를 들면 캐릭터가 볼을 드리블하면서 공격을 할 경우, 종래 장치에서는 그 캐릭터를, 달리는 방향으로 얼굴을 향한 체 드리블시킬 뿐이다. 그러나, 실제의 축구 게임에서는, 드리블하면서 슛하거나, 자기편에 패스할 경우, 드리블하고 있는 선수는 차내는 타이밍을 계산하거나, 차내는 지대나 자기편 선수를 찾기 위해, 주행 방향과 동일하던지, 또는 다른 방향을 보는(바라보는) 동작을 행하는 것이다. 즉, 드리블하면서 달리는 모션의 제어만으로는, 실제의 축구 경기자의 거동을 리얼하게 시뮬레이션하고 있다고는 말하기 어렵고, 표시 화면에 비치는 캐릭터의 동작이 매우 단조롭고 또한 부자연스럽다. 이 얼굴의 방향(즉, 시선)의 제어는, 드리블하면서 달리는 경기자 뿐만 아니라, 다른 볼을 갖지 않은 경기자에 관해서도 마찬가지이다. 또한, 수비측의 캐릭터도 실제로는, 공격측의 캐릭터의 동작에 좌우되는 얼굴의 방향(시선)으로 되는 것이 자연스럽지만, 종래에는 그와 같은 제어는 이루어지지 않았다.
제2로, 관객의 거동도 게임의 현장감을 고조시키는 필수 요소이다. 그러나, 종래는 관객 개개의 다채로운 움직임(보다 리얼한 거동), 소프트 프로그램의 설계의 간단함, 연산 부하의 감소, 메모리 용량의 소량화 등의 점에서, 이들을 동시에 만족시키는 것이 아니다.
종래와 마찬가지로, 동화상적으로 텍스쳐를 붙여 관객을 표시할 경우, 움직임을 나타낸 프레임 매수가 적으면, 관객의 움직임은 거칠고 또한 어색하게 된다. 이것을 회피하려고 생각하면 프레임 매수가 많아진다. 따라서, 취급하는 화상 데이타도 많아, 필요한 메모리 용량도 증대한다. 또한, 소프트 프로그램의 설계의 시간도 증가하고, 또한 연산, 부하도 크게 된다. 이 부하가 너무 증대하면, 캐릭터 (혹은, 오브젝트)쪽의 제어에 지장도 생기기 때문에, 관객쪽은 생력화하고 싶다. 그러나, 관객쪽의 제어 처리를 추출하거나 하여 생력화하면, 표시되는 화면은 박력이 없고, 현장감에 부족하게 된다.
한편, 관객을 폴리곤으로 나타낼 경우, 폴리곤으로 나타낼 수 있는 관객수는 그 제어의 부담을 생각하면, 현저하게 제한된다. 제어를 위한 연산 부하를 무시하면, 개개의 관객을 폴리곤으로 나타내고, 그 움직임을 개개로 각각 제어하는 것도 가능하다고 생각되지만, 다수의 관객에 대해 실제로, 그것은 곤란하다. 그래서, 어떻게 해서든, 메인이 되는 특정한 (선택된) 관객만을 폴리곤으로 나타내게 된다. 실제로는, 관객은 개개로 다른 움직임을 하는 한편, 때로는 집단으로 동일한 움직임을 할 경우도 있다. 이 때문에, 특정한 관객만을 메인으로 움직여도, 박력이 없어, 현장감에 부족하다.
제3으로, 종래 장치인 경우, 하루 내의 실제의 밝기에 관한 물리적 환경의 제어면에서도, 최근의 게임기에 요구되고 있는 필요성을 만족시키지는 않는다. 예를 들면, 아침, 낮, 밤의 중간 시간대에 게임기 앞에 앉아 축구 게임을 즐기는 플레이어(유희자)에게는, 표시 화면이 그와 같은 플레이어의 주위 환경에 매치하는 것이 바람직하다. 그러나, 종래 장치와 마찬가지로 단순히 화면 전체의 휘도를 조정만 하는 처리일 경우, 밤에 가까와짐에 따라 화면이 어두어져 버리고, 오히려 조작이 어려워진다.
제4로, 가상 3차원 공간에서 전개되는 게임을 화면에 표시하는 경우, 게임을 중계하는 가상 카메라가 캐릭터(혹은, 오브젝트)를 보는 카메라의 시선 방향에 따라 게임의 용이함이 다르다. 또한, 가상 카메라의 위치에 따라, 게임의 용이함이 다르다. 또한, 게임의 전개 영역에 따라 오브젝트의 입체적 표현이 강조되는 것도 바람직하다.
제5로, 가상 3차원 공간에서의 게임을 화면에 표시하려고 하는 경우, 유희자가 상기 게임을 하기쉽게 하기 위해, 가상 카메라의 시점 위치를 멀리하여, 게임 필드를 가능한 한 넓게 화면상에 표시하는 것이 요구된다. 이러한 처리를 한 경우, 스포츠 게임의 코트 범위를 도시하는 라인·마커의 폭이 가상 공간 전체에 비교하여 가늘기 때문에, 화면의 해상도와의 관계에서 소실하는 경우가 있다. 한편, 이 소실을 막기 위해, 미리 굵은 라인을 준비하는 것을 생각할 수 있다. 그러나, 게임의 박력을 늘리기 위해 줌업(시점을 주시점에 접근시킴)했을 경우에는, 특별히 굵은 라인이 표시되게 되어, 부자연스럽다.
본 발명은, 이상과 같은 과제를 감안하여 이루어진 것으로, 축구 게임등의 화상 처리에서, 게임의 리얼감, 현장감을 보다 한층더 높인 처리를 실시할 수 있고, 게임 장치에 요구되고 있는 최근의 필요성에 충분히 응할 수 있는 화상 처리 장치 및 그 방법을 제공하는 것을 목적으로 한다.
또한, 본 발명은 축구 게임 등에 대한 게임의 화상 처리에서, 캐릭터의 움직임이 실제의 경기자의 움직임에 근접하도록 보다 정확하게 시뮬레이트하고, 게임의 리얼감을 향상시키는 것을 목적으로 한다.
또한, 본 발명은 축구 게임 등에 대한 게임의 화상 처리에 있어서, 관객의 움직임을보다 리얼하게 표현하고, 게임의 현장감을 현저히 향상시키는 것을 목적으로 한다.
또한, 본 발명은 축구 게임 등에 대한 게임의 화상 처리에 있어서, 플레이어가 게임 장치를 실제로 조작하는 시간대의 주위 환경의 광원 상태에 대응하여 칼라 표시를 조정한 화면을 제공하고, 게임의 현장감을 향상시키는 것을 목적으로 한다.
또한, 본 발명은 정확히 시뮬레이트된 캐릭터의 동작을 이용해, 게임의 상황을 유희자에게 시사하기 위한 새로운 수단, 및 게임의 난이도를 조정하기 위한 새로운 수단을 제공하는 것을 목적으로 한다.
또한, 본 발명은 3차원 가상 게임 공간에서 일정한 역할을 갖지만, 2차원 화상로의 변환 처리에서 소실하기 쉬운 소(小)오브젝트가, 작은 상태에서도 2차원의 게임 화면 중에 남도록 하여, 유희자에게 필요한 오브젝트의 표시가 확보된 보기 편한 게임 화면을 제공하는 것을 목적으로 한다.
또한, 본 발명은 게임 필드의 영역이나 캐릭터와 가상 카메라와의 상대적 위치 관계에 따라 가상 카메라 위치나 카메라의 시선 방향을 제어하고, 유희자에게 그 영역에서 보다 잘 볼 수 있는쪽을 화면을 형성하는 화상 처리 장치를 제공하는 것을 목적으로 한다.
<발명의 개시>
상기 목적을 달성시키기 위해, 본 발명의 화상 처리 장치는, 가상 3차원 공간에서 경기자를 모방한 캐릭터의 거동을 화상 표시하는 장치로, 상기 캐릭터에게 게임을 통해 관계를 갖는 목표체(가상점) 및 상기 캐릭터 상호간의 (거리 등의) 상호 위치 관계 또는 게임 내용에 관한 관계가 소정 조건에 합치하는 소정 상태인지의 여부를 판단하는 판단 수단과, 이 판단 수단이 상기 소정 상태를 판단했을 때, 상기 캐릭터의 시선을 상기 목표체를 향하게 하는(상기 가상점을 주시점으로 함) 시선 제어 수단을 구비한다. 이 목표점을 대신하여, 가상 공간 내의 어느 한 가상점이라도 좋다.
예를 들면, 상기 게임은 축구 게임이고, 상기 목표체는 상기 축구 게임의 볼이다. 예를 들면, 상기 시선 제어 수단은, 상기 캐릭터의 머리 부분의 회전에 이어 상기 캐릭터의 몸통부 및 허리부를 회전 제어하는 수단을 포함해도 좋다. 예를 들면, 상기 판단 수단은 상기 가상 3차원 공간에서의 상기 캐릭터와 상기 목표체의 좌표값을 기초로 상기 캐릭터로부터 목표체까지의 각도를 계산하는 수단을 포함하는 구성이라도 좋다.
또한, 바람직하게는 상기 목표체는 복수개 있고, 상기 판단 수단은 상기 복수개의 목표체 중 어디에 시선을 두게 하는지를 상기 게임의 상황에 따라 판정하는 판정 수단을 포함하는 것이다.
본 발명의 화상 처리 방법은, 가상 3차원 공간에서 경기자를 모방한 캐릭터의 거동을 화상 표시하는 방법이고, 상기 캐릭터에게 게임을 통해 관계를 갖는 목표체와 상기 캐릭터 사이의 상호적 관계 또는 게임 내용에 관한 관계가 소정 조건을 합치하는 소정 상태인지의 여부를 판단하고, 그 소정 상태가 판단될 때, 상기 캐릭터의 시선을 상기 목표체를 향하게 한다.
본 발명의 화상 처리 방법은, 특히 상기 캐릭터에게 제1 거동을 실행시키고 있는 동안에 소정 조건이 성립하는지의 여부를 판단하고, 상기 소정 조건이 성립할 때에는, 상기 캐릭터에게 제2 거동을 실행시키고, 이에 따라 유희자에게 게임의 진행 상황의 정보를 암시(혹은 시사)한다.
본 발명의 화상 처리 장치는, 가상 3차원 공간에서 경기장을 향하는 스탠드의 관객의 거동을 화상 표시하는 장치로, 복수의 관객을 모방한 텍스쳐를 개개로 접착하는 복수매의 폴리곤으로서 가상적으로 중합시킨 복수매의 폴리곤과, 이 복수매의 폴리곤을 그 중합 방향으로 교차하는 방향을 따라 움직이는 폴리곤 요동 수단을 구비한다.
바람직하게는, 상기 복수매의 폴리곤은 복수개의 오브젝트의 각각을 형성하는 복수매의 폴리곤이 오브젝트순으로 인터리브된 상태에서 가상적으로 중합시켜 두고, 상기 폴리곤 요동 수단은 상기 복수개의 오브젝트를 오브젝트마다 동기하고 또한 연동하여 주기적으로 움직이게 하는 수단이다. 또한, 상기 움직이는 방향은 적합하게는 상기 폴리곤의 상하 방향 또는 좌우 방향이다.
본 발명의 화상 처리 방법은, 가상 3차원 공간에서 경기장을 향하는 스탠드의 관객의 거동을 화상 표시하는 방법이고, 복수의 관객을 모방한 텍스쳐를 개개로 접착하는 복수매의 폴리곤을 가상적으로 중합시키고, 이 복수매의 폴리곤을 그 중합 방향으로 교차하는 방향을 따라 움직이게 한다.
본 발명의 화상 처리 장치는, 가상 3차원 공간에서의 게임을 시뮬레이트하여 화상 표시하는 장치로, 플레이어가 상기 게임을 행하는 시각을 검지하는 검지 수단과, 이 검지 수단에 의해 검지되는 시각에 따라 상기 화상의 화면 칼라를 부분적으로 혹은 전체적으로 조정하는 조정 수단을 구비한다. 예를 들면, 상기 조정 수단은, 하루 중에서 가장 게임에 알맞은 밝기를 나타내는 적어도 2개의 기준 시간대가 미리 정해진 화면 칼라 상태의 정보를 각각 기준값으로 하여 기억하는 기억 수단과, 상기 검지 수단에 의해 검지되는 게임의 시각이 상기 기준 시간대 중 어느 하나에 들어갈 때에는, 상기 기준값 중 무엇이든 상당하는 쪽으로부터 게임의 표시 화면에 마스크하는 데이타를 생성함과 동시에, 상기 시각이 상기 기준 시간대 중 어디에도 들어가지 않을 때에는, 상기 적어도 2개의 기준값 중 상기 시각의 시간적 전후에 있는 2개의 기준값에 기초하여 보간한 화면 칼라 상태의 정보로부터 상기 마스크하는 데이타를 생성하는 데이타 생성 수단을 구비한다.
본 발명의 화상 처리 방법은, 가상 3차원 공간에서의 게임을 시뮬레이트하여 화상 표시하는 방법으로서, 플레이어가 상기 게임을 실행하는 하루 중 실제의 시간을 검지하고, 이 실제의 시간에 따라 상기 화상의 화면 칼라를 조정한다.
본 발명의 화상 처리 장치는, 컴퓨터 시스템 내에 형성되는 가상 공간에 오브젝트를 배치하고, 입력 조작과 정해진 룰에 따라 상기 오브젝트의 움직임을 제어하면서 게임을 전개하고, 상기 가상 공간 내의 모습을 가상 카메라로부터 본 화면으로서 표시하는 화상 처리 장치에서, 상기 가상 공간 내의 기준이 되는 기준 평면 상에 배치되는 폴리곤과, 상기 폴리곤과 상기 가상 카메라 상호간의 위치 관계를 판별하는 판별 수단과, 판별 결과에 대응하여 상기 가상 카메라로부터 보이는 상기 폴리곤의 면적이 늘어나도록 상기 폴리곤을 경사진 폴리곤 경사 수단을 구비한다.
또한, 바람직하게는 상기 기준 평면은 그라운드이고, 상기 폴리곤은 상기 그라운드 상에 배치되는 라인을 형성하는 폴리곤이다.
또한, 상기 폴리곤은 복수변에 의해 획정되고, 상기 폴리곤 경사 수단은 상기 폴리곤의 상호 대향하는 변 중 한쪽 변에 속하는 정점의 좌표값을 변경한다.
또한, 본 발명의 화상 처리 장치는 컴퓨터 시스템 내에 형성되는 가상 공간에 오브젝트를 배치하고, 입력 조작과 정해진 룰에 따라 상기 오브젝트의 움직임을 제어하면서 게임을 전개하고, 상기 가상 공간 내의 모습을 가상 카메라로부터 본 화면으로서 표시하는 화상 처리 장치로서, 상기 오브젝트가 상기 가상 공간에서의 특정한 영역 내에 존재하는지의 여부를 판별하는 판별 수단과, 상기 판별 결과에 기초하여 상기 가상 카메라의 각도를 조정하는 카메라 각도 조정 수단을 구비한다.
바람직하게는, 상기 카메라 각도 조정 수단은, 상기 판별 결과와 상기 오브젝트의 이동 방향에 기초하여 상기 가상 카메라의 각도를 조정한다.
바람직하게는, 상기 카메라 각도 조정 수단은, 상기 가상 공간에서의 좌우 방향 및 상하 방향 중 적어도 어느 한 방향에 따라 상기 가상 카메라의 각도 조정을 행한다.
또한, 본 발명의 화상 처리 장치는, 컴퓨터 시스템 내에 형성되는 가상 공간에 오브젝트를 배치하고, 입력 조작과 정해진 룰에 따라 상기 오브젝트의 움직임을 제어하면서 게임을 전개하고, 상기 가상 공간 내의 모습을 가상 카메라로부터 본 화면으로서 표시하는 화상 처리 장치로서, 상기 오브젝트가 상기 가상 공간에서의 특정한 영역 내에 존재하는지의 여부를 판별하는 판별 수단과, 상기 판별 결과에 기초하여 상기 가상 카메라의 시야 범위를 조정하는 줌 조정 수단을 구비한다.
또한, 본 발명의 화상 처리 장치는, 복수의 폴리곤으로 이루어지는 3차원 형상 모델로 구성된 가상 공간을 임의의 위치의 가상 카메라로부터 본 2차원 화상을 생성하여, 표시 장치에 표시하는 화상 생성 표시 수단을 갖는 화상 처리 장치에서, 상기 가상 카메라의 방향(카메라의 시선 방향)을 나타내는 시선 벡터와, 상기 가상 공간 내에 배치된 소정의 폴리곤의 면의 방향을 나타내는 법선 벡터가 이루는 각도를 산출하는 각도 산출 수단과, 상기 각도 산출 수단의 산출한 각도가 소정의 값이 되도록, 상기 폴리곤의 정점의 좌표값을 변경하는 폴리곤 경사 수단을 구비한다.
또한, 본 발명의 화상 처리 장치는 복수의 폴리곤으로 이루어지는 3차원 형상 모델로 구성된 가상 공간을 임의의 시점(혹은, 가상 카메라)으로부터 본 2차원 화상을 생성하여, 표시 장치에 표시하는 화상 생성 표시 수단을 갖는 화상 처리 장치에서, 상기 폴리곤은 폴리곤의 소실 방지 프로그램을 동작시키기 위한 데이타를 포함하고, 소실 방지의 속성을 갖는 소실 방지 폴리곤을 포함하고, 상기 소실 방지 프로그램은, 상기 소실 방지 폴리곤과 상기 시점과의 상호 위치 관계를 판별하는 위치 판별 수단과, 상기 위치 판별 수단의 판별 결과에 따라, 상기 소실 방지 폴리곤의 정점의 좌표값을 변경하는 좌표값 변경 수단을 포함하고, 상기 표시 장치에 묘화되는 폴리곤이 상기 소실 방지 폴리곤인 경우에 상기 소실 방지 프로그램을 실행하는 소실 방지 실행 수단을 구비한다.
또한, 본 발명에 따른 정보 기록 매체는, 컴퓨터 시스템을 상술한 어느 한 화상 처리 장치로서 기능시키는 프로그램을 기록하고 있다.
본 발명은, 가상 공간에 캐릭터(보다 넓은 의미에서는 오브젝트)를 배치하여 축구 게임 등을 실행하는 TV 게임기 등의 화상 처리 장치에 적용 가능한 화상 처리 기술에 관한 것이다. 특히, 캐릭터의 시선 제어, 관객의 거동 제어, 및 화면의 칼라 조정을 위한 포그 제어의 각 처리를 실행함으로써, 게임을 보다 리얼하고 또한 현장감 넘치는 것으로 하는 화상 처리 기술에 관한 것이다. 또한, 본 발명은 게임 필드에 배치된 오브젝트의 방향이나, 게임 진행 상황을 중계하는 가상 카메라의 각도를 적절하게 제어하여 유희자에게 보다 보기 쉬운 화상을 제공하는 화상 처리 기술에 관한 것이다.
제1도는 본 발명의 하나의 실시예에 따른 게임 장치의 기능적인 구성을 도시하는 블럭도.
제2도는 CPU의 처리의 개요를 도시하는 대략의 플로우차트.
제3도는 시선 제어에서의 각도 계산을 설명하는 도면.
제4도는 시선 제어에서의 각도 계산을 설명하는 도면.
제5도는 캐릭터의 시선 제어의 모습을 도시하는 도면.
제6도는 시선 제어의 일례를 도시하는 개략 플로우차트.
제7도는 제6도과 함께, 시선 제어의 일례를 도시하는 개략 플로우차트.
제8도는 폴리곤에 의한 관객 데이타의 데이타 구조를 설명하는 도면.
제9도는 관객의 거동 제어의 처리의 일례를 도시하는 개략 플로우차트.
제10도는 관객의 거동 제어의 일례의 한 장면을 도시하는 설명도.
제11도는 관객의 거동 제어의 일례의 다른 한 장면을 도시하는 설명도.
제12도는 관객의 거동 제어의 일례의 다른 한 장면을 도시하는 설명도.
제13도는 관객의 거동 제어의 일례의 다른 한 장면을 도시하는 설명도.
제14도는 관객의 거동 제어의 일례의 다른 한 장면을 도시하는 설명도.
제15도는 관객의 거동 제어의 일례의 다른 한 장면을 도시하는 설명도.
제16도는 관객의 거동 제어의 일례의 다른 한 장면을 도시하는 설명도.
제17도는 관객의 거동 제어의 일례의 다른 한 장면을 도시하는 설명도.
제18도는 포그 제어의 일례에 따른 개략 플로우차트.
제19도는 포그 제어를 위한 시간대 분할을 설명하는 도면.
제20도는 포그 제어에 따른 표시 화면의 일례를 도시하는 도면.
제21도는 포그 제어에 따른 표시 화면의 다른 일례를 도시하는 도면.
제22도는 캐릭터의 시선 제어의 결과, 화면에 표시되는 영상의 모식도.
제23도는 게임 장치의 전체적인 구성예를 도시하는 설명도.
제24도는 게임 장치의 회로 구성을 설명하는 블럭도.
제25도는 게임 장치 내에 형성되는 가상 게임 공간을 설명하는 설명도.
제26도는 카메라 위치와 그라운드에 그려진 라인이 보이는 방법을 설명하는 설명도.
제27도는 라인·폴리곤의 내측 엣지의 정점을 올려, 라인이 보이도록 하는 처리를 설명하는 설명도.
제28도는 라인 소실 방지 처리를 설명하는 플로우차트.
제29도는 라인·폴리곤의 정점과 카메라의 위치 관계를 설명하는 설명도.
제30도는 라인·폴리곤의 정점과 카메라의 위치 관계를 설명하는 설명도.
제31도는 라인·폴리곤의 정점의 데이타의 예를 설명하는 설명도.
제32도의 (a)는 플레이어의 내측·앞 방향의 이동을 설명하는 설명도이고, (b)는 그 때의 카메라의 시선 벡터의 방향을 설명하는 설명도.
제33도의 (a)는 플레이어의 좌측 방향에의 이동을 설명하는 설명도이고, (b)는, 그 때의 카메라의 시선 벡터의 방향을 설명하는 설명도.
제34도의 (a)는, 플레이어의 우측 방향으로의 이동을 설명하는 설명도이고, (b)는 그 때의 카메라의 시선 벡터의 방향을 설명하는 설명도.
제35도는 카메라의 좌우 방향으로의 각도 조정 처리를 설명하는 플로우차트.
제36도는 카메라의 좌우 방향으로의 각도 조정 처리를 설명하는 플로우차트의 연속도.
제37도는 카메라의 주시점이 플레이어에 있는 경우를 설명하는 설명도.
제38도는 주시점이 페널티 영역으로부터 8m이내에 있는 경우의 카메라의 각도 조정의 예를 설명하는 설명도.
제39도는 플레이어의 진행 방향이 앞 방향인 경우를 설명하는 설명도.
제40도는 플레이어의 진행 방향이 내측 방향인 경우를 설명하는 설명도.
제41도는 플레이어의 진행 방향이 내측·앞 방향일 때의 카메라의 시선 벡터 방향의 예를 설명하는 설명도.
제42도는 플레이어가 좌측 방향으로 이동하는 예를 설명하는 설명도.
제43도는 플레이어가 좌측 방향으로 이동하는 경우의 카메라의 각도 조정을 설명하는 설명도.
제44도는 플레이어가 우측 방향으로 이동하는 예를 설명하는 설명도.
제45도는 플레이어가 우측 방향으로 이동하는 경우의 카메라의 각도 조정을 설명하는 설명도.
제46도는 카메라의 주시점이 볼에 있을 때의 예를 설명하는 설명도.
제47도는 볼과 플레이어가 15m이상 떨어져 있을 때의 카메라의 조정 각도의 예를 설명하는 설명도.
제48도는 볼과 플레이어가 15m이상 떨어져 있을 때의 카메라의 조정 각도의 다른 예를 설명하는 설명도.
제49도는 카메라의 주시점이 페널티 영역으로부터 8m 이내에 있는 경우를 설명하는 설명도.
제50도는 카메라의 주시점이 페널티 영역으로부터 8m 이내에 있는 경우의 카메라의 각도 조정을 설명하는 설명도.
제51도는 주시점이 페날티 영역으로부터 8m 이내가 아닌 경우를 설명하는 설명도.
제52도는 주시점이 페널티 영역으로부터 8m이내가 아닌 경우의 카메라의 각도 조정을 설명하는 설명도.
제53도는 카메라의 상하 각도의 조정을 설명하는 플로우차트.
제54도는 카메라의 상하 각도의 조정을 설명하는 설명도.
제55도는 카메라의 줌 조정을 설명하는 플로우차트.
제56도는 화면의 플레이어가 존재하는 영역을 설명하는 설명도.
제57도는 다른 오브젝트 소멸 방지의 예를 설명하는 플로우차트.
제58도는 오브젝트 소멸 방지를 설명하는 설명도.
제59도는 관객을 포함하는 텍스쳐의 다른 예를 나타낸 도면.
제60도는 그것의 또 다른예를 나타낸 도면.
제61도는 각각의 텍스쳐가 붙여진 폴리곤을 거듭 표시한 경우의 텍스쳐의 표시 형태를 나타낸 도면.
제62도는 각 폴리곤 면을 움직이게 하는 형태를 나타낸 도면.
제63도는 또 다른 형태를 나타낸 도면.
<발명을 실시하기 위한 최량의 형태>
이하, 본 발명에 제1 실시 형태에 대해 도 1 ∼ 도 22를, 제2 실시 형태에 대해 도 23 ∼ 도 31을, 제3 실시 형태에 대해 도 32 ∼ 도 58을 참조하여 설명한다. 이들 실시 형태는, 본 발명의 화상 처리 장치를 일체로 내장한 게임 장치에 관한 것이다. 또, 여기서의 어플리케이션 소프트는 축구 게임 소프트인 경우를 예시하지만, 야구 게임, 소프트볼, 농구등, 그 밖의 게임 소프트에서도 마찬가지로 실시할 수 있다.
도 1은, 제1 실시 형태에 따른 게임 장치의 블럭 구성의 개요를 도시한다. 이 게임 장치는, CPU(중앙 처리 장치 : 1)를 구비하고, 이 CPU(1)에 버스 BUS를 통해 ROM(2), 작업용 RAM(3), 입력 장치(4) 및 비디오 디스플레이 프로세서(VDP : 5)가 접속되어 있다. CPU(1)는, ROM(2)에 미리 저장되어 있는 게임의 프로그램을 순차적으로 실행한다. 본 발명에 따른 여러가지 처리는, ROM(2)에 저장되어 있는 프로그램을 VDP(5)가 일정 주기에서 실행하는 중에 실현된다. 본 발명에 따른 처리로서는, 캐릭터의 시선 제어의 처리, 관객의 거동 제어의 처리, 표시 화면의 칼라 조정으로서의 포그 제어의 처리 3개이다. 이 때문에, ROM(2)에는 CPU(1)나 VDP(5)에서 처리하는 프로그램 외에, 캐릭터의 폴리곤 데이타, 및 이들 3개 처리에 필요한 프로그램 및 고정 데이타(관객의 폴리곤 데이타, 포그의 기준 데이타등)이 미리 저장되어 있다.
작업용 RAM(3)은, 게임 실행 중의 각종 데이타를 일시적으로 기억한다. 입력 장치(4)는, 죠이스틱 등, 플레이어가 조작하는 조작기를 구비하고, 캐릭터의 이동, 모션을 제어하는 경우 등, 게임 진행에 필요한 데이타를 입력하기 위해 사용된다.
VDP(5)에는, 비디오 RAM(VRAM : 6), 묘화 장치(7), 작업용 RAM(8)이 접속되어 있다. VRAM(6)에는 ROM(2)으로부터의 폴리곤 데이타가 저장된다. 이 폴리곤 데이타의 각각은, 표시해야 할 정점수만큼의 좌표 데이타와, 이들 정점의 칼라 파레트로서 부여되는 빛깔 데이타를 구비한다. VDP(5)는 디지탈 신호 프로세서(DSP)를 구비하고 있다. 이 VDP(5)도, ROM(2)에 미리 저장되어 있는 화상 처리 전용 프로그램을, 프레임의 전환 타이밍 등의 일정 주기의 타이밍 신호에 호응하여 기동하고, 실행한다. VDP(5)의 처리에 따라, VRAM(6)에 기억되어 있는 폴리곤 데이타가 좌표 변환 처리되어, 묘화 장치(7)로 전해진다.
묘화 장치(7)에는 텍스쳐 데이타 ROM(9) 및 프레임 버퍼 메모리(10)가 접속되어 있다. 묘화 장치(7)에 의해, 좌표 변환된 폴리곤 데이타에 텍스쳐가 접착되고, 프레임 버퍼 메모리(10)에 1프레임(화면) 분의 피크 셀 데이타로서 기록된다.
프레임 버퍼 메모리(10)는 D/A 변환기(11)를 통해 CRT 등의 화상 표시 장치(12)에 접속되어 있다. D/A 변환기(11)는 비디오 신호 발생 회로로서 기능하는 것으로, 프레임 버퍼 메모리(10)로부터 피크 셀 데이타를 판독하고, 아날로그 신호로 변환한다. 이 변환 데이타는 비디오 신호로서 표시 장치(12)로 순차적으로 이송되고, 화상이 표시된다.
또한, 이 게임 장치는 버스 BUS에 접속된 포그 회로(13) 및 실제 시간 클럭(14)을 구비한다. 실제 시간 클럭(14)은, 시계, 카렌더 기능을 구비하고 있고, 일상의 실제 시각 데이타를 CPU(l)에 부여하게 되어 있다. 포그 회로(13)는 후술한 바와 같이, 게임 장치가 조작되는 시간(즉, 플레이어가 게임을 행하는 일상의 실제 시각)에 따라, 표시 화면의 칼라를 포그 데이타라고 하는 별도로 설정된 칼라 데이타로 마스크하여 조정하는, 소위「포그 기능」을 발휘함으로써, CPU(1)의 지시 하에 포그 데이타를 생성하여 VDP(5)로 보내게 되어 있다.
도 2에, CPU(1)에 의해 실행되는 프레임마다의 처리의 일례를 도시한다. 우선, CPU(1)는 플레이어의 조작 정보에 대응한 캐릭터의 모션·커맨드(달리기, 달리는 방향을 바꾸기, 볼차기 등)을 입력 장치(4)로부터 수취하고, 3차원 가상 공간에서의 캐릭터의 모션의 계산을 실행시킨다(S1).
계속해서, CPU(1)는, 축구 볼의 위치를 진행시키는 등, 3차원 가상 공간에서의 볼의 처리를 행하고(S2), 또한 3차원 가상 공간에서의 충돌(아따리)의 처리를 행한다 (S3). 이 충돌 처리는 캐릭터와 지면 사이, 캐릭터끼리, 캐릭터와 볼 사이 등, 여러가지 충돌 판정 및 그 처리가 실행된다. 계속해서, CPU(1)은 플레이어가 조작하는 캐릭터(로보트)의, 플레이어로부터의 조작 정보에 대응한 가상 3차원 공간에서의 거동 처리를 행한다(S4).
또한, CPU(1)는 캐릭터의 시선 제어의 처리를 행한다(S5). 이 시선 제어는 본 발명의 특징의 하나를 이루는 것으로, 경기 중인 캐릭터의 동작의 다양화를 꾀하고, 축구 게임의 리얼감을 증가시키려고 하는 것이다. 이 처리의 상세한 내용은 후술하겠다.
이 시선 제어의 처리가 끝나면, CPU(1)는 축구 경기장의 필드의 처리를 행한다(S6). 이 필드의 처리는, 가상 3차원 공간의 필드 내에 존재하는 각 캐릭터의 위치를 참조하여, 어느 캐릭터가 오프사이드 라인 내에 있는지, 어느 캐릭터가 골 영역에 있는지 등을 판단하여, 게임을 진행시키는 데에 있어서의 상술된 것에 대한 필요한 처리를 지령하는 것이다.
이 후, CPU(1)는 관객의 거동 제어의 처리를 행하고(S7), 또한 포그 제어의 지령을 낸다(SS8). 이들 2개의 처리도, 본 발명의 특징의 일부를 이루는 것이다. 관객의 거동 제어의 처리는, 연산 부하를 누른 상태에서 관객의 거동을 다채롭게 표현하고, 리얼감 및 현장감을 향상시키고자 하는 것으로, 그 상세한 내용은 후술하겠다. 또한, 포그 제어의 처리는, 상술된 포그 기능을 사용하여, 플레이어가 실제로 게임을 행하는 하루 안의 실제 시간에 맞춘 칼라 화면의 명암도(대낮의 시합이나, 야간의 시합등에 의한 칼라 조정)의 제어를 행하고, 리얼감 및 현장관을 고저시키려고 하는 것으로, 그 상세한 내용은 후술하겠다. 마지막으로, 그 밖의 필요한 처리를 실행시킨다(S9).
또, 스텝 S5에서의 시점 제어로 캐릭터의 주시점만을 결정하고, 실제로 캐릭터를 뒤돌아보게 하는 모션은, 다음 처리 시간 S1에서 행하도록 해도 좋다. 스텝 S4도 마찬가지로 하면 된다. 다시 말하면, 데이타 취득, 주시점 결정으로부터, 실제로 해당 방향을 향한 모션이 행해질 때까지, 최대 1/60초 정도의 타임 러그를 설치할 수 있다.
CPU(1)는 이상의 처리를 프레임마다 반복한다. 이 때문에, 게임의 진행에 따라, CPU(1)는 플레이어 조작에 따른 모션등의 커맨드를, VDP(5)로 이송한다. VDP(5)에는, 또한 CPU1의 제어 밑에서, ROM(2)로부터 필요한 폴리곤 데이타가 이송된다. 그래서, VDP(5)는 폴리곤 데이타를 VRAM(6)에 일시적으로 기억시킴과 동시에, 커맨드에 따라 폴리곤 데이타를 가상 3차원 공간으로부터 투시 2차원 공간에 좌표 변환하고, 이 변환 좌표를 묘화 장치(7)로 이송한다. 묘화 장치(7)는 좌표 변환된 폴리곤 데이타에 텍스쳐를 접착하고, 프레임 버퍼 메모리(10)에 기록한다. 이 결과, 프레임마다 피크 셀 데이타가 갱신된 화상이 표시 장치(12)에 표시된다.
상술된 캐릭터의 시선 제어의 처리를 도 3 ∼ 도7에 기초하여 설명한다. 이 처리는 상술된 도 2의 스텝 S5에서 실행되는 처리이다.
최초로 캐릭터 C의 시선 방향을 결정하는 각도 연산의 원리를 설명한다. 지금, 캐릭터 C가 3차원 가상 공간의 좌표(xp, yp, zp)에 위치하고, 또한 대상체로서 축구볼 B가 동일 공간의 좌표(xp, yp, zp)에 위치하는 것이다. 이 경우, 도 3에 도시된 y 축 방향으로부터 봤을 때의 지오메트리로부터
x′= xt- xp
z′= zt- zp
의 값을 연산할 수 있고, 이 값 x′, z ′로부터 캐릭터 C와 볼 B 사이의 x-z 면 상에서의 각도 θy및 거리 L을 계산할 수 있다. 마찬가지로, 이 지오메트리로부터 횡축에 캐릭터 C와 볼 B 사이의 거리 L을 취하고, 종축을 y 축으로 할 때의 지오메트리를 도 4에 도시된 바와 같이 상정할 수 있다. 즉, 캐릭터 C의 좌표(yp, Lp) 및 볼 B의 좌표(yt, Lt)를 설정할 수 있다. 이 경우,
y′= yt- Lt
L′= Lt- Lp
의 값을 연산할 수 있고, 이 y′및 L′로부터 y-L 면 상에서의 캐릭터 C의 볼 B를 응시하는 각도 θy를 계산할 수 있다. 즉, 각 캐릭터에 대해 예를 들면 볼을 볼 때의 시선은 θy, L, θx의 파라메터로 결정된다. 대상체가 볼에 한정되지 않고, 상대 플레이어, 골, 심판이거나 하는 경우도 마찬가지로 계산할 수 있다. 즉, 자기 캐릭터의 좌표와 상대 플레이어나 심판의 소정점의 좌표, 골의 예를 들면, 중심 위치의 좌표를 부여해주면 된다.
이와 같이 시선 방향이 결정되지만, 캐릭터가 실제로 그 방향으로 시선을 두는 과정에서는, 여러 몸의 방향(회전의 방법)이 있다. 이 모습을 도 5에 도시한다. 본 실시 형태에서는, 시선 제어시에 몸을 향하는 (회전시키는) 부분으로 하여, 캐릭터 C의 머리 부분 HD, 몸통부 BD, 허리부 HP를 지정하고 있다. 그리고,
1) 머리 부분 HD의 회전(상하 방향, 가로 방향의 회전)을 선행시키고, 이것에 몸통부 BD의 회전을 추종시키고, 이것에 허리부 HP의 회전을 추종시킨다,
2) 머리 부분 HD과 몸체부 BD의 동시 회전을 선행시키고, 이것에 허리부 HP의 회전을 추종시킨다,
3) 몸체부 HD만 회전시킨다,
등의 회전 상태를 경기의 장면마다, 캐릭터가 놓여진 상황마다 제어할 수 있게 되어 있다. 이 제어는, 예를 들면 프레임마다 각 부 HD, BD, HP의 그 때까지의 회전각을 기억해두고, 다음 프레임에서는 현재의 회전각에 미소 각도를 증가시킨 모션을 지령하면 좋고, 각 부마다 연산 각도θx, θy까지 이른 프레임에서 회전 모션의 지령이 끝나도록 하면 된다.
또, 일반적으로는 인간의 움직임에는 구조적인 법칙성이 있고, 모션시킬 때에는, 이 법칙성을 가미하면 가장 자연스러운 움직임으로 보인다. 예를 들면, 뒤돌아볼 때에는 도 5에도 도시된 바와 같이, 목의 회전 속도가 가장 빠르고, 다음에 상반신, 마지막으로 전신이 된다. 그래서, 뒤돌아볼 경우, 목을 상반신보다 빠르게, 또한 상반신을 전신보다 빠르게 회전시키는 것이 바람직하다.
또한, 머리 부분 HD의 회전 각도가 일정치에 달한 시점에서 몸통부 BD의 회전을 개시시키는 처리에 따라, 머리→몸통→허리의 회전 타이밍을 차이를 두어 표현해도 좋다.
이와 같이 결정되는 시선 제어의 처리의 일례를 도 6 및 도 7에 도시한다. 이 처리는 CPU1에 의해 실시된다. 또, 이 캐릭터의 시선 제어의 수법은 다양한 형태를 취할 수 있다. 여기에 도시하는 것은 어디까지나 일례로서 도시하는 것으로, 본 발명을 실시예에 한정할 만한 것이 아니다. 또한, 이 시선 제어의 처리는, 필드상에 있는 모든 경기자(캐릭터)에 대해 실시해도 좋고, 연산 부하를 경감하는 관점으로부터, 표시 시야 내에 들어가는 캐릭터에 대해서만 실시해도 좋다. 또한, 표시 시야 내의 캐릭터라도, 특히 주목해야 할 캐릭터 (예를 들면 볼에 대한 모션을 행하고 있는 캐릭터나, 플레이어(유희자)가 조작하는 캐릭터) 등 특정한 캐릭터에 대해서만 실시해도 좋다.
도 5에 도시된 바와 같이, 예를 들면 어느 캐릭터가 현재 달리고 있는지의 여부를 판단하고, 예 (달리고 있음)나 아니오(달리지 않음)로 나누어 행한다(S21). 예인 경우, 또한 상대팀이 볼을 가지고 있는지의 여부를 판단한다(S22). 이 판단이 예(상대팀이 가지고 있음)인 경우, 또한 상대팀의 캐릭터가 드리블 중인지의 여부를 판단한다(S23). 이 판단으로 예 (드리블 중에 있음)일 때는, 또한 드리블하고 있는 캐릭터가 3미터 이내에 있는지의 여부를 거리 계산치로부터 판단한다(S24). 이 판단으로 예 (3미터 이내에 있음)일 때, 지금 제어 대상으로 되어 있는 캐릭터는 볼에 시선을 둔다(S25). 이 스텝 25의 처리에서는, 상술된 도 5의 회전처리가 가미된다. 예를 들면, 이 스텝 25에 이르는 캐릭터는 달리고 있기 때문에, 달리면서 시선을 볼을 향하기 위해서는, 1)의 형태가 예를 들면 적합해진다.
스텝 S24에서 아니오(3미터 이내에 없음)일 때는, 지금 제어 대상으로 되어 있는 캐릭터는, 드리블하고 있는 상대 캐릭터에게 시선을 둔다(S26). 이 때의 회전 제어는 도 5에서 설명한 어떤 형태를 취해도 좋고, 그 시점에서 상대와의 각도 관계가 어떻게 되어 있는지에 따라 선택하면 된다.
스텝 S23에서 아니오(드리블 중이 아님)일 때, 및 스텝 S22에서 아니오(상대팀이 볼을 가지고 있지 않음)일 때는, 현재의 볼의 거동이 「하이볼」인지의 여부를 판단한다(S27). 「하이볼」은 여기서는 볼의 위치가 캐릭터의 머리 위보다도 높은 상태를 말한다. 이 판단이 예(하이볼임)일 때에는, 지금 제어 대상으로 되어 있는 캐릭터에 볼에 시선을 두도록 지령한다(S28). 반대로, 아니오 (하이볼이 아님)일 때는, 시선 제어는 행하지 않고, 모션에 의존한 시선을 유지시킨다(S29). 예를 들면, 이 캐릭터는 적어도 달리고 있기 때문에, 주행 방향을 향한 시선을 유지시킨다. 이하, 모션에 의존한다는 것은, 시선 제어를 행하지 않고, 프로그램에 정해진 캐릭터의 동작 패턴(모션)의 움직임을 그대로 사용하는 것을 말한다.
스텝 S21의 판단으로 아니오, 즉 자기가 주행하지 않는 상태가 판단됐을 때는, 드리블 중에 있는지(도 7, S30), 센터링 영역 내에 있는지를(S31) 순차적으로 판단한다. 스텝 S31에서 예라고 판단될 때는, 드리블 중이고 또한 센터링 영역 안에 있는 경우이기 때문에, 당연히 골을 겨냥하는 것이 자연스러운 흐름이다. 그래서, 이 경우에는 캐릭터의 시선을 골을 향하게 한다(S32).
스텝 S31에서 센터링 영역 내에 없을 때는, 예를 들면 4초에 1회의 비율로 톱 선수에게 시선을 둠과(S33) 동시에, 4초에 1회의 비율로 골에 시선을 두게 한다(S34). 또한, 스텝 S30에서 아니오(드리블 중이 아님)일 때는, 예를 들면 셋트 플레이 중에 있는지의 여부를 판단한다(S35). 이 판단이 예 (셋트 플레이중)일 때는 또한, 패스의 상대가 결정되어 있어 킥하여 들어가는지의 여부를 판단하고(S37), 예일 때는 패스의 상대에게 시선을 두게 하고(S37), 아니오일 때는 각별한 시선 제어는 행하지 않고, 모션에 의존한 시선을 확보시킨다(S38).
또, 도 22는 캐릭터의 시선 제어의 결과 표시되는 화면을 모식적으로 도시한 것이다. 동일 도면에서, 선수 A는 패스하는 상대인 선수 b의 (발밑의) 방향으로 시선을 둔다. 선수 B는, 패스된 볼의 방향으로 시선을 두고 있다.
이와 같이 캐릭터의 시선 제어를 실시하도록 했기 때문에, 실제의 축구 게임에서 경기자가 행하는 거동에 상당히 가까운 시뮬레이션을 행할 수 있다. 종래와 마찬가지로, 시선은 예를 들면 주행 방향을 향한 상태에서, 갑자기 다른 방향으로 볼을 차내는 일도 없어진다. 이러한 경우에서도, 캐릭터는 사전에 차내고, 또는 차내고 싶은 방향으로 시선을 두게 하므로, 보다 리얼하게 캐릭터의 거동을 표현할 수 있고, 현장감도 높일 수 있고, 게임성이 높은 게임 장치를 제공할 수 있다. 또한, 시선을 제어할 때, 머리 부분만을 회전시킬 뿐만이 아니라, 필요에 따라 몸통부나 허리부도 추종 또는 동시에 회전시키므로, 그 시선 제어에 거동에 리얼감을 확실하게 높일 수 있다.
또한 다른 관점으로부터 상기 시선 제어의 이점을 생각하면, 캐릭터가 향하는 시선 방향 자체가, 플레이어(유희자)에게 다음 조작을 행하는 힌트를 암시(시사)하는 것이다. 예를 들면, 드리블 중의 캐릭터가 빈번히 뒤로 시선을 두기 시작하면, 뒤로부터 상대팀의 캐릭터가 다가온다는 것을 생각할 수 있기 때문에, 플레이어(유희자)는 이 추적을 피해야된다고 생각하게 된다. 따라서, 캐릭터의 거동이 플레이어(유희자)에게 게임의 상황을 전할 수 있다(암시할 수 있음).
반대로, 도 6 및 도 7에 도시된 판단 스텝에, 약간의 플럭을 섞을 수 있다. 즉, 정규의 판단과는 완전히 다른 방향으로 일부러 시선을 두게 하는 것이다. 이에 따라, 플레이어(유희자)의 판단을 교란할 수 있고, 게임 장치로서의 흥미성, 게임성을 한층더 높일 수 있고, 또한 게임의 난이도를 올릴 수 있다.
이어서, 상술된 관객의 거동 제어의 처리를 도 8∼도 17을 이용하여 설명한다.
최초로, 본 발명에 따른 관객을 나타내는 화상 데이타(관객 데이타)의 구조를 도 8에 의해 설명한다. 지금, 뒤로 진행할수록 좌석이 높아지는 m(>2) 열의 스탠드에 관객이 앉아 있다고 하고, 이 m 열의 관객 중의 n(>2) 행을 추출한다. 이 「m 열×n행」 중, m' 열(>0) 분에 대한 「m′열×n행」의 관객을 1매의 구형의 폴리곤에 복수 관객만큼의 텍스쳐를 붙여 나타낸다. 예를 들면, 도 8에서 A∼D, A′∼D′, A″∼D″는 12매의 구형의 폴리곤을 도시하고, 각 폴리곤이 스탠드 깊이 방향으로 진행할수록 높아지는 상태를 모방하여 적층한 가상 공간에서의 데이타 구조를 도시한다. 폴리곤 A∼D, A′∼D′, A″∼D″의 각각은, 1매의 폴리곤으로, 예를 들면 3열(=m′)×4행(=n) 분의 복수의 관객을 나타낸다. 1매째의 폴리곤A 뒤, (깊이 방향)에 가상적으로 위치하는 2매째의 폴리곤 B는 예를 들면 1열만 올라간 상태를 초기 상태로 하고, 3매째의 폴리곤 C는 예를 들면 1열만 올라간 상태를 초기 상태로 하고, 또한 4매째의 폴리곤 D는 예를 들면 1열만 올라간 상태를 초기 상태로 하고 있다. 이 때문에, A∼D, A′∼D′, A″∼D″의 12매의 폴리곤에 의해, 스탠드에 진을 치고, 예를 들면 「14열×4행」의 관객을 나타낸다.
12 매의 폴리곤 A∼D, A′∼D ′, A″∼D″ 중, 예를 들면 최초의 4매의 폴리곤 A∼D가 관객의 도안적으로 서로 관련하고, 그 다음 4매의 폴리곤 A′∼D′가 관객의 도안적으로 서로 관련하고, 마지막 4매의 폴리곤 A″∼D″가 관객의 도안적으로 서로 관련하고 있다. 동시에, 12의 매의 폴리곤 A∼D, A′∼D′, A″∼D″의 1, 5, 9매째의 3매의 폴리곤 A, A′, A″가 동일하게 움직여지는 동일한 오브젝트 OB1을 구성하고 있다. 마찬가지로, 2, 6, 10매째의 3매의 폴리곤 B, B′, B″가 동일하게 움직여지는 동일한 오브젝트 OB2를 구성하고 있다. 마찬가지로, 3, 7, 11매째의 3매의 폴리곤C, C′, C″가 동일한 오브젝트 OB3을, 4, 8, 12매째의 3매의 폴리곤 D, D′, D″가 동일한 오브젝트 OB4를 구성하고 있다. 오브젝트마다의 관객의 도안은 관련하지 않아도 된다. 즉, 본 발명의 관객 데이타는, 복수개의 폴리곤이 상호 가상 공간 상에서 분리되면서도, 동일한 오브젝트를 형성하는 점에 하나의 특징이 있다. 또, 오브젝트마다의 관객의 도안은 관련시키지 않아도 된다.
이와 같이 구성되는 데이타에 대해, 도 9에 도시된 관객 거동 제어의 처리가 CPU(1)에 의해 실시된다. 즉, CPU(1)는 전체의 관객 데이타의 폴리곤 중, 그 거동을 제어하는 폴리곤군을 결정한다(S41). 이에 따라, 가상 카메라(시점)로부터 보이는 관객 중, 예를 들면 자기가 응원하는 팀측에 진을 친 관객의 폴리곤의 군(예를 들면 도 10의 12매의 폴리곤 A∼D, A′∼D′, A″∼D″) 중 어느 하나가 선택된다. 여기서, 복수의 폴리곤군을 선택해도 물론 좋다.
이어서, CPU(1)는 결정(선택)한 폴리곤군을 움직이게 하는 거동 패턴을 선택한다(S42). 이 거동 패턴으로서는, 여기서는 1군 혹은 복수군의 폴리곤 각각을 상하(세로) 방향으로 움직이게 하고, 또는 좌우(가로) 방향으로 움직이게 하는 패턴이 준비되어 있다. 이 거동 패턴이 선택되면, CPU(1)는 선택한 거동 패턴을 따라 1군 혹은 복수군의 폴리곤 각각을 움직이게 하는 처리를 행한다(S43a, ···, S43n).
이 폴리곤이 움직이는 방법의 한 예를 도 10 ∼ 도 17에 도시한다. 이들 도면의 폴리곤군은 1군을 예시하고 있고, 도 8과 동일한 데이타 구성을 구비한다. 폴리곤을 움직이게 하는 전의 상태가 도 10의 상태로 하면, 이 상태로부터 예를 들면 프레임 갱신마다, 도 11, 도 12, 도 13, 도 14, 도 15, 도 16에서 도시하는 폴리곤 위치의 상태로 순차적으로 움직이고, 복수개 프레임 후에는 일순하여 다시 도 17에서 도시된 폴리곤 위치의 상태(도 10과 동일한 폴리곤 위치의 상태)로 복귀한다.
구체예에서는, 도 11에 도시된 최초의 프레임 갱신시에는, 최초의 오브젝트 OB1을 형성하기 바로 전부터 1, 5, 9번째의 3개의 폴리곤 A, A′, A″를 가상 공간에서 상측 방향으로 올린다(up). 도 12에 도시된 그 다음 프레임 갱신시에는, 오브젝트 OB1의 3개의 폴리곤 A, A′, A″를 더욱 상측 방향으로 올림과(up) 동시에, 2번째의 오브젝트 OB2를 형성하는 2, 6, 10번째의 3개의 폴리곤 B, B′, B″를 상측 방향으로 올린다(up). 도 13에 도시된 그 다음 프레임 갱신시에는, 오브젝트 OB1의 폴리곤 A, A′, A″를 가상 공간에서 하측 방향으로 내림과(down) 동시에, 2번째의 오브젝트 OB2의 폴리곤 B, B′, B″를 더욱 상측 방향으로 올리고, 또한 3번째의 오브젝트 OB3을 형성하는 3, 7, 11번째의 3개의 폴리곤 C, C′, C″를 상측 방향으로 올린다(up). 도 14에 도시된 그 다음 프레임 갱신시에는, 2번째의 오브젝트 OB2의 폴리곤 B, B′, B″및 3번째의 오브젝트 OB3의 폴리곤 C, C′, C″를 하측 방향으로 내림과(down) 함께, 오브젝트 OB4의 3개의 폴리곤 D, D′, D″를 상측 방향으로 올린다(up). 그리고, 도 15에 도시된 그 다음 프레임 갱신시에는, 3번째의 오브젝트 OB3의 폴리곤 C, C′, C″, 및 오브젝트 OB4의 폴리곤 D, D′, D″를 하측 방향으로 내린다(down). 그 다음 프레임 갱신시에는, 지연되어 내려가지 시작한 오브젝트 OB4의 3개의 폴리곤 D, D′, D″를 하측 방향으로 더욱 내린다(down). 이에 따라, 도 17에 도시된 바와 같이, 일순하여 최초의 폴리곤 위치 상태로 복귀한다. 폴리곤을 좌우 방향으로 움직일 때도 동일하다.
그리고, CPU(1)는 1군 혹은 복수군의 폴리곤 각각을 움직이게 할 때마다(예를 들면, 도 10으로부터 도 11에 이르는 상태), 가상 카메라로부터 보이는 만큼의 관객 데이타를 VDP(5)에 지정한다(S44). 이 후, 다시 스텝 S41의 처리로 복귀하여, 프레임 갱신마다 상술한 거동 패턴의 제어 처리를 반복한다. 또, 이 관객의 거동 제어의 처리는 복수의 표시 프레임마다 행하도록 함으로써, 이러한 처리를 추출하여, 간소화할 수도 있다. 또한, 이 관객의 거동 제어의 처리는, 특정한 모드시(예를 들면, 골을 넣을 때)에 행하도록 해도 좋다. 또, 3차원 가상 공간 내의 표시체는, 가상 공간 내의 소정의 가상 카메라 시점(플레이어에 의해 이동될 수 있음.)으로부터 표시 화면에 대해 투시 변환되어 표시된다. 또한, 가상 카메라의 위치, 투영 센터에 상당하는 시점과, 캐릭터의 시선 제어에서의 시점과는, 만약을 위해, 다른 것을 지적해둔다.
이 결과, 복수의 폴리곤을 하나의 오브젝트로서 관련시키고, 또한 이러한 복수의 오브젝트의 각 폴리곤을 횡단적으로 그룹화하여 인터리브하고, 관련한 도안을 그룹마다 텍스쳐로 부여하고 있으므로, 오브젝트 단위로 각 폴리곤을 움직이게 하는 것만으로, 끊임없이 움직이는 관객의 다채로운 거동을 보다 리얼하게 표현할 수 있다. 오브젝트 단위로 움직이므로, 그 소프트 프로그램의 커맨드수가 적어지는 등, 그 설계를 간단화할 수 있다. 또한, 거동 제어 자체도 간단해져, 제어를 위한 연산 부하가 적어진다. 관객 개개를 폴리곤으로 표시하는 경우에 비교하여 손색이 없는 리얼한 거동을 표현하면서, 취급하는 데이타량은 각별히 적게 끝난다. 따라서, 관객 데이타를 저장해두는 메모리의 용량이 적어도 된다. 당연히, 동화상적으로 관객의 거동을 표시하는 경우보다도, 데이타수가 적고, 또한 보다 리얼하게 현장감을 갖고 표현할 수 있다.
계속해서, 상술한 포그 제어의 처리를 도 18∼도 21을 이용하여 설명한다. 이 포그 제어는, 상술된 바와 같이 칼라치를 갖는 일종의 마스크 데이타를 화상 데이타 상에 중첩하는 처리이다. 이에 따라, 종래의 휘도 데이타에 따라서만 하루의 일조 변화에 따르는 밝기의 변화를 화면에 반영하는 것만으로는 얻을 수 없어, 보다 리얼한 화면 표현을 얻고자 하는 것이다.
이 처리는 CPU(1)에 의해, 예를 들면 도 18에 도시된 바와 같이 실행된다. 또, 이 도 18의 처리를 VDP(50에서 역행시켜도 된다.
CPU(1)는, 우선 현재의 시각, 즉 플레이어(유희자)가 게임 장치를 조작하고 있는 표준 시각을 실제 시간 클럭(13)으로부터 판독한다(S51). 계속해서, 그 시각이 미리 정해진, 낮, 저녁, 밤의 기준이 되는 시간대로부터 벗어나 있는지의 여부를 판단한다 (S52). 이 낮, 저녁, 밤의 기준 시간대는, 예를 들면 도 19와 마찬가지로 정해져 있다. 예를 들면, 대낮의 기준 시간 대로는 비교적 길게 6 : 00∼16 : 30을, 저녁의 기준 시간대로는 17 : 00∼18 : 30에, 야간의 기준 시간대로는 19 : 30∼5 : 30에 각각 설정되어 있다. 여기서, 대낮의 기준 시간대를 길게 하는 것은, 아침 경에 플레이하는 유희자와 저녁쯤에 플레이하는 유희자 사이에서, 화면의 밝기가 영향을 주어 게임 결과에 차가 생기지 않도록 하기 위한 것이다.
스텝 S52의 판단으로 예로 될 때에는, 낮, 저녁, 밤의 기준 시간대 별로 미리 설정되어 있는 포그 데이타의 파라메터값을 ROM(2)으로부터 판독한다(S53). 이 파라메터로서는, 적색, 청색, 녹색의 포그의 칼라 코드, 오프셋값(포그의 농도를 나타냄), 및 농도(깊이에 대한 포그가 낀 상태)의 3개이고, 기준 시간대에 대해서는 그것의 파라메타치가 적당한 값으로 되도록 미리 결정되어 있다.
이어서, CPU(1)는 포그 데이타를 연산하고, 그 데이타를 마스크 데이타로서 VDP(5)로 출력시킨다(S54, S55).
한편, 스텝 S52에서 아니오로 할 때에는, 현재의 시각과 기준 시간 대의 편차를 계산한다(S56). 예를 들면, 시각이 아침 5 : 45이었다고 한다면, 밤의 기준 시간대와 낮과는 정확히, 중간에서 15분의 편차가 있다.
이어서, CPU(1)는 편차가 있는 시각을 사이에 두어 존재하는 2개의 기준 시간대의 포그 데이타의 파라메터값(R, G, B의 칼라 코드, 오프셋값, 농도)를 각각 판독한다(S57). 시각이 예를 들면 5 : 45이었다고 한다면, 야간과 대낮의 기준 시간대의 파라메터값이 각각 판독된다.
그리고, 오프셋값 및 농도에 대한 파라메터값의 보간 연산이 행해진다(S58). 예를 들면, 시각이 예를 들면 5 : 45인 경우, 오프셋값 및 농도는 정확히, 야간과 대낮의 기준 시간대의 오프셋값 및 농도의 1/2의 평균값이 된다. 시각이 어느 한 기준 시간대에 보다 가까운 경우, 그 가까운 만큼의 부가가 이루어져, 평균화(보간) 된다.
이와 같이 시각이 기준 시간대로부터 벗어나는 경우라도, 보간 연산에 의해 오프셋값과 농도가 결정되고, 상술된 바와 같이 포그 데이타가 연산되고, 출력된다(S54, S55).
이 결과, 플레이어(유희자)가 게임을 행할 때의 시각에 상정된 일조 상태에 따라 포그가 낀 화상이 리얼 타임에 표시된다. 예를 들면, 저녁에 게임을 행하는 경우, 경기장 밖의 배경 부분에는 거므스름한 포그가 끼어져있다(도 20의 사선 참조). 또한, 예를 들면 야간에 게임을 행하는 경우, 배경에 달이 떠있다고 하면, 거므스름한 포그와 달빛에 빛나는 황금색을 띤 포그가 배경에 드리워져 있다(도 21의 사선 참조).
이 때문에, 종래와 마찬가지로 단순히 휘도치만의 제어로, 경기장 및 그 주위를 표시하는 화상의 일조 상태(물리적 밝기)를 표현하는 경우와는 달리, 보다 리얼하게 광원의 밝기나 스펙트의 변화를 표현할 수 있다. 특히, 칼라의 포그 데이타를 덮고 있기 때문에, 예를 들면 달이 떠 있는 부분 등, 국소적인 밝기의 조정도 용이하게 가능하다. 또한, 본 실시 형태에서는 예를 들면 아침 놀, 저녁 놀이 생기는 기준 시간대사이의 미묘한 밝기도, 대낮, 저녁, 야간 중 2개의 기준 시간대를 사용한 보간 파라메터로부터 처리할 수 있다.
즉, 낮, 저녁, 밤의 가장 게임에 알맞은 칼라 상태에 대응한 칼라 상태를 미리 작성해두어 게임을 행하는 시각에 맞는 칼라 상태를 낮/저녁, 저녁/밤, 혹은 밤/낮의 기준값 사이에서 보간(구체적으로는, 칼라의 혼합 처리 ; 2개의 기준값 사이에서 보간을 한 휘도치를 부가해도 됨)하여 칼라 상태를 결정한다. 이 때문에, 단순히 휘도치만으로 조정하는 경우와 마찬가지로 화면이 어두어져 조작이 어려워지는 경우도 없다. 칼라 조정의 개시점(한쪽 기준값)과 종착점(다른 한쪽 기준값)이나 미리 결정되어 있고, 게임에 알맞은 상태가 셋트되어 있기 때문에, 어느 시간에 어레이해도 화면의 칼라 상태에 따른 유리/불리가 생기지 않는다. 즉, 게임이라는 특수성 때문에, 「시간의 변화에 따른 칼라 변화」를 연출한 후에, 「플레이하는 시간대에 따라 유리/불리가 생겨 불공정감이 생기지 않음」이라는 것이 중요하고, 본 실시 형태의 장치는 이에 따를 수 있다. 이와 같이, 경기장이나 그 주변을 둘러싼 환경의 밝기 표현에 대해 현장감에 우수한 화상을 제공할 수 있다.
상술한 캐릭터의 시선 제어, 관객의 거동 제어, 및 포그 제어는 반드시 3개 동시에 실행하지 않아도 된다. 어느 하나 또는 2개의 제어를 행하도록 해도 된다.
이어서, 본 발명의 제2 실시 형태에 대해 도 23 ∼ 도 58을 참조하면서 설명한다.
도 23은, 본 발명의 다른 실시 형태에 따른 화상 처리 장치를 이용한 비디오 게임기의 외관도이다. 이 도면에서, 비디오 게임기 본체(50)는 대략 박스형을 이루고, 그 내부에는 게임 처리용의 기판등이 설치되어 있다. 또한 비디오 게임기 본체(50)의 전방면에는, 2개의 커넥터(60a)가 설치되어 있고, 이들 커넥터(60a)에는 게임 조작용의 PAD(60b)가 케이블(60c)을 통해 접속되어 있다. 2명의 유희자가 게임을 즐기는경우에는, 2개의 PAD(60b)가 사용된다.
비디오 게임기 본체(50)의 상부에는, ROM 카트리지 접속용의 카트리지 (I/F50a), CD-ROM 판독용의 CD-ROM 드라이브(50b)가 설치되어 있다. 비디오 게임기 본체(50)의 배면에는, 도시되지 않았지만, 비디오 출력 단자 및 오디오 출력 단자가 설치되어 있다. 이 비디오 출력 단자는 케이블(70a)을 통해 TV 수상기(80)의 비디오 입력 단자에 접속됨과 동시에, 오디오 출력 단자는 케이블(70b)을 통해 TV 수상기(80)의 오디오 입력 단자에 접속되어 있다. 이러한 비디오 게임기에서 사용자가 PAD(60b)를 조작함으로써, TV 수상기(80)에 투영해낸 화면을 혼합하면서 게임을 행할 수 있다.
도 24는, 본 실시 형태에 따른 TV 게임기의 개요를 나타내는 블럭도이다. 이 화상 처리 장치는, 장치 전체의 제어를 행하는 CPU 블럭(51), 게임 화면의 표시 제어를 행하는 비디오 블럭(52), 효과음 등을 생성하는 사운드 블럭(53), CD-ROM의 판독을 행하는 서브 시스템(54) 등에 의해 구성되어 있다.
CPU 블럭(51)은, SCU(System Control Unit : 100), 메인 CPU(101), RAM(102), ROM(103), 카트리지(I/F50a), 서브 CPU(104), CPU 버스(103)등에 의해 구성되어 있다. 메인 CPU(101)는, 장치 전체의 제어를 행하는 것이다. 이 메인 CPU(101)는, 내부에 DSP(Digital Signal Processor)와 동일한 연산 기능을 구비하고, 어플리케이션 소프트를 고속으로 실행 가능하다. RAM(102)은, 메인 CPU(101)의 워크 영역으로서 사용되는 것이다. ROM(103)에는, 초기화 처리용의 이니셜 프로그램 등이 기록되어 있다. SCU(100)는, 버스 105, 106, 107을 제어함으로써, 메인 CPU(101), VDP(120, 130), DSP(140), CPU(141) 등 사이에서의 데이타 입출력을 원활하게 행하는 것이다. 또한, SCU(100)는 내부에 DMA 컨트롤러를 구비하고, 게임 중의 스프라이트 데이타를 비디오 블럭(52) 내의 VRAM으로 전송할 수 있다. 이에 따라, 게임등의 어플리케이션 소프트를 고속으로 실행하는 것이 가능하다. 카트리지(I/F50a)는, ROM 카트리지의 형태에서 공급되는 어플리케이션 소프트를 입력하기 위한 것이다.
서브 CPU(104)는, SMPC(System Manager & Peripheral Control)라고 하는 것으로, 메인 CPU(101)로부터의 요구에 따라, PAD(60b)로부터 주변 장치 데이타를 커넥터(60a)를 통해 수집하는 기능등을 구비하고 있다. 메인 CPU(101)는 서브 CPU(104)로부터 수취한 주변 장치 데이타에 기초하여 처리를 행하는 것이다. 커넥터(60a)에는, PAD, 죠이스틱, 키보드등 중 임의의 주변 장치가 접속 가능하다. 서브 CPU(104)는, 커넥터(60a) (본체측 단자)에 접속된 주변 장치의 종류를 자동적으로 인식하고, 주변 장치의 종류에 따른 통신 방식에 따라 주변 장치 데이타등을 수집하는 기능을 구비하고 있다.
비디오 블럭(52)은, 비디오 게임의 폴리곤 데이타로 이루어지는 캐릭터 등의 묘화를 행하는 VDP(Video Display Processor : 120), 배경 화면의 묘화, 폴리곤 화상 데이타 및 배경 화상의 합성, 클립핑 처리등을 행하는 VDP(130)을 구비하고 있다. VDP(120)는 VRAM(121) 및 프레임 버퍼(122, 123)에 접속되어 있다. 비디오 게임기의 캐릭터를 나타내는 폴리곤의 묘화 데이타는 메인 CPU(101)로부터 SCU(100)를 통해 VDP(120)으로 보내지고, VRAM(121)에 기록된다. VRAM(121)에 기록된 묘화 데이타는, 예를 들면 16 또는 8비트/pixel의 형식으로 묘화용의 프레임 버퍼(122 또는 123)로 묘화된다. 묘화된 프레임 버퍼(122 또는 123)의 데이타는 VDP(130)로 보내진다. 묘화를 제어하는 정보는, 메인 CPU(101)로부터 SCU(100)를 통해 VDP(120)로 부여된다. 그리고, VDP(120)는 이 지시에 따라 묘화 처리를 실행한다.
VDP(130)는, VRAM(131)에 접속되고, VDP(130)로부터 출력된 화상 데이타는 메모리(132)를 통해 인코더(160)로 출력되는 구성으로 되어 있다. 인코더(160)는, 이 화상 데이타에 동기 신호등을 부가함으로써 영상 신호를 생성하고, TV 수상기(80)로 출력한다. 이에 따라, TV 수상기(80)에 게임의 화면이 표시된다.
사운드 블럭(53)은, PCM 방식 혹은 FM 방식에 따라 음성 합성을 행하는 DSP(140)와, 이 DSP(140)의 제어등을 행하는 CPU(141)에 의해 구성되어 있다. DSP(140)에 의해 생성된 음성 데이타는, D/A 컨버터(170)에 의해 2채널의 신호로 변환된 후에 스피커(80b)로 출력된다.
서브 시스템(54)은, CD-ROM 드라이브(50b), CD/F(180), CPU(181), MPEG AUDIO(182), MPEG VIDEO(183) 등에 의해 구성되어 있다. 이 서브 시스템(54)은, CD-ROM의 형태에서 공급되는 어플리케이션 소프트의 판독, 동화상의 재생등을 행하는 기능을 구비하고 있다. CD-ROM 드라이브(50b)는 CD-ROM으로부터 데이타을 판독하는 것이다. CPU(181)은, CD-ROM 드라이브(50b)의 제어, 판독된 데이타의 오류 정정등의 처리를 행하는 것이다. CD-ROM으로부터 판독된 데이타는, CD I/F(180), 버스(106), SCU(100)를 통해 메인 CPU(101)로 공급되고, 어플리케이션 소프트로서 이용된다. 또한, MPEG AUDIO(182), MPEG VIDEO(183)는, MPEG 규격(Motion Picture Expert Group)에 의해 압축된 데이타를 복원하는 디바이스이다. 이들 MPEG AUDIO(182), MPEG VIDEO(183)를 이용하여 CD-ROM에 기록된 MPEG 압축 데이타의 복원을 행함에 따라, 동화상의 재생을 행하는 것이 가능해진다.
도 25는, 컴퓨터 시스템 내에 형성되는 3D의 가상 게임 공간에서, 게임의 일례로서, 축구·게임을 행하는 경우를 설명하는 설명도이다.
동일 도면에서, 축구 코트가 3D 가상 공간의 x-z 평면에 형성된다. 코트의 길이 방향(좌우 방향)은 x 축 방향으로, 코트의 짧은 방향(깊이 방향)은 y 축 방향으로, 높이 방향은 z 축 방향으로 각각 정해져 있다. 이 코트 상에, 도시하지 않은 각 선수의 오브젝트가 배치되고, 유희자는 입력 장치에 의해 주인공인 선수의 움직임을 제어한다. 그라운드에는, 라인 오브젝트가 그려져, 축구·코트가 형성되어 있다. 이 가상 게임 공간에, 시야 내의 모습을 좌표 변환등을 행하여 2차원의 모니터 화면에 표시하기 위한 가상 카메라(시점)가 배치되고, 게임이 중계된다.
도 26 및 도 27은, 본 발명의 주목을 설명하는 설명도이다. 도 26에서, 그라운드에는 라인을 형성하기 위한 폴리곤(이하, 라인·폴리곤이라고 함)의 조합에 따라 라인·오브젝트가 배치되고, 도 25에 도시된 바와 같은 선으로 그어진 축구 코트가 형성된다. 이 라인은, 게임 공간의 카메라 위치가 상측으로부터 내려다 보는 각도에 있을 때는, 화면에 잘 표시되지만, 카메라의 상하 방향(y 축 방향)의 각도가, 수평 방향으로 근접함에 따라 화면중에 차지하는 라인의 면적은 감소하고, 점점 모니터 화면에 비치지 않게 된다. 또한, 라인·폴리곤과 카메라가 상대하는 상태, 즉 라인·폴리곤의 법선 벡터와 카메라의 시선 벡터가 평행해지는 경우라도, 시점 위치를 충분히 멀리한 경우에는, 상기 3차원 가상 공간을 좌표 변환한 2차원 투영 화면에서는, 라인·폴리곤이 너무 가늘어져 표시되지 않는 경우가 있을 수 있다. 라인(혹은 코트) 내에서 게임을 행하는 것을 전제로 하는 게임에서는, 이것은 문제점이다.
그래서, 본 발명에서는, 모니터 화면에 라인이 비추기 힘들어지는 조건 하에서는, 라인 폴리곤의 일부의 정점의 위치 좌표를 변경하고, 카메라에 비치는 면적이 증가하도록 한다. 즉, 카메라와의 상대적인 관계에서, 그라운드 상에 배치된 라인·폴리곤의 카메라로부터 봤을 때 내측 방향에 위치하는 정점의 높이 위치를 도 27에 도시된 바와 같이, 조금 올려 카메라에 비추는 라인·폴리곤의 면적이 증가하도록 한다.
도 28은, 이러한 처리를 행하는 알고리즘을 설명하는 플로우차트이다.
우선, 가상 게임 공간에 배치된 각 오브젝트를 관찰하는 카메라의 시야 내에, 라인·폴리곤(혹은 라인·오브젝트)이 존재하면, 도시하지 않은 프로그램에 의해 대응하는 플래그가 설정된다. 이것이, 메인 프로그램(도시하지 않음) 중에서 판별되면, 라인 소실 방지 처리가 실행된다(S102, 예).
우선, 라인·폴리곤의 정점이 카메라로부터 봐서, 안에 위치할지 앞에 위치할지를 판별한다. 여기에는, 도 29에 도시된 바와 같이, 카메라와 정점 P1 사이, 카메라와 정점 P3 사이의 각 거리(11 및 12)를 계산하여, 양거리의 대소에 따라 정점의 내측·앞을 판별하는 방법이 있다.
또한, 도 30에 도시된 바와 같은, 정점 P1, P3의 각도 θ1, θ3과 카메라의 각도 φ1, φ3의 비교에 의해, 정점 P1, P3의 안·앞을 판별하는 방법이 있다. 양방법 중 어느 하나가 본 실시 형태에 사용 가능하지만, 후자의 방법은 전자의 방법에 비교하여 하드웨어에서의 연산량이 적게 끝나는 이점이 있다.
그래서, 이하에 진술하는 스텝 S104∼S110의 라인 폴리곤의 정점의 내측·앞의 판별로는, 후자의 각도의 비교에 따른 방법으로 설명한다.
상기 장면에서 배치되는 오브젝트군을 나타내는 도시하지 않은 오브젝트 테이블로부터 하나의 라인·폴리곤의 데이타를 판독한다(S104). 도 31은, 라인·폴리곤의 데이타의 예를 도시하고, 폴리곤의 각 정점 P1 ∼ P4의 데이타에는, 예를 들면 월드 좌표계의 좌표값(xn, zn)에 더해, 미리 정점의 내측 앞의 판별용으로 정해진 각도치등이 대응되어 있다.
이어서, 도 30에 도시된 바와 같이 카메라의 월드 좌표계(x-z 평면)에서의 현재의 위치와, 이 카메라 위치로부터 본 라인·폴리곤의 정점 Pn 방향의 각도 φn을 판독한다. 각도 φn은, 라인·폴리곤의 정점 Pn의 좌표와, 카메라 위치의 좌표로부터 삼각 함수에 의해, 구할 수 있다(S106).
이어서, 라인·폴리곤의 정점과 카메라 각도와의 비교를 행한다(S108). 예를 들면, 도 30에서 미리 정점 P1로 설정된 각도는 90도, 또한 미리 정점 P3에 설정된 각도는 270도로 한다. 카메라와 정점 P1을 연결하는 시선 벡터의 x축으로부터의 각도 φ1이 120도일 때, 120도-90도=30도<90도(여기서, 90도는 이 경우의 판별 기준값)이므로(S108), 라인의 내측의 엣지의 정점으로 판별된다(S110).
또한, 카메라와 정점 P3을 연결하는 시선 벡터의 x 축으로부터의 각도 φ3이 150도일 때, 150도-270도=ABS(-120도)>90도(여기서, 90도는 이 경우에 이용되는 판별 기준값, ABS는 절대치) 이므로(S108), 라인의 앞의 엣지의 정점으로 판별된다(S110).
정점 Pn이 라인·오브젝트 앞의 엣지일 때는, 정점 Pn에 대해서는, 높이 조정을 행하지 않고, 다음 라인 폴리곤 정점의 데이타의 판독을 행한다(S110, 아니오).
정점 Pn이 라인·오브젝트 앞의 엣지일 때는(S110, 예), 정점 Pn까지의 거리가 10m 이하인지의 여부를 판별한다. 10m이하일 때(S112, 예), 즉 카메라가 라인에 근접하고 있을 때는, 통상 화면에 라인이 비치는 상태이므로, 정점 Pn에 대해서는 높이 조정을 행하지 않고, 다음 라인 폴리곤 정점의 데이타의 판독을 행한다 (S112, 아니오).
정점 Pn까지의 거리가 10m이상일 때(S112, 아니오), 즉 통상 카메라가 라인으로부터 떨어져 있는 상태일 때는, 라인이 보이기 힘든 상태에 있으므로, 라인 안의 엣지의 정점 Pn의 좌표 데이타의 y 축 방향(높이 방향)의 값을 소정치 증가시키고, 라인·폴리곤 안의 엣지를 그라운드로부터 올린다(S114). 이러한 처리를, 화면 중의 모든 라인·폴리곤의 각 정점에 대해 행한다(S116).
이 결과, 가상 게임 공간에 배치된 라인·오브젝트의 내측의 엣지는, 도 27에 도시된 바와 같이 상승하고, 카메라로부터 잘 보이게 된다.
이어서, 제3 발명 실시 형태에 대해 설명한다. 제3 발명은, 게임 필드(축구 그라운드)를 소정의 영역으로 나누고, 볼이 위치하는 영역을 판단하고, 볼의 진행 방향(플레이어가 보고 싶은 방향)이 잘 보이도록 카메라 앵글을 조정하는 것이다.
도 32 ∼ 도 34는, 플레이어의 이동 방향과 상기 방향으로 이동할 때에 바람직한 카메라의 방향을 설명하는 것이다.
우선, 카메라는 도 25에 도시된 바와 같이, 기본적으로 사이드 라인을 따라 움직이고, 플레이어 방향을 향한다. 물론, 카메라는 필드 내로 들어 와 게임을 쫓을 수 있다.
유희자가 제어하는 플레이어가 x-y 평면의 내측 앞방향(Z 축 방향)으로 이동하는 경우(도 32(a)), 카메라를 z 축 방향으로 향하게 한다(동일 도(b)).
유희자가 제어하는 플레이어가 x-y 평면의 좌측 방향(-X 축 방향)으로 이동하는 경우(도 33(a)), 카메라를 z 축 방향으로부터 소정 각도, 예를 들면 -15도 방향을 향하여 볼 진행 방향의 영역의 화면 표시를 늘린다(동도(b)). 여기서, z 축으로부터 시계 방향(플러스 방향)으로 측정한 각도를 플러스의 값으로, 반시계 방향(마이너스 방향)으로 측정한 각도를 마이너스의 값으로 나타내고 있다.
유희자가 제어하는 플레이어가 x-y 평면의 우측 방향(x 축 방향)으로 이동하는 경우(도 34(a)), 카메라를 z 축 방향으로부터 소정 각도, 예를 들면 진행 방향으로 15도 향하게 하여, 볼 진행 방향의 영역의 화면 표시를 늘린다(동도(b)).
이러한, 카메라 각도의 조정과 게임 필드의 영역을 조합하여, 카메라의 시점 방향을 정하는 예를 도 35 및 도 36의 플로우차트를 참조하여 설명한다.
우선, 도시하지 않은 메인 프로그램 중에서 정해진 소정의 타이밍(조건)으로, 카메라의 좌우 각도 조정의 본 루틴이 실행되고, 카메라의 주시점이 플레이어측에 있는지를 판단한다(S132).
플레이어측에 있을 때(S132, 플레이어측), 주시점이 축구 코트의 페널티 영역으로부터 소정 거리, 예를 들면 8m이내인지의 여부를 판별한다(S134). 8m 이내일 때(S134, 예)는, 페널티 영역 근방에서는, 상대편·자기편의 선수가 모이고, 패스나 슛의 기회가 높아지므로(도 37), 페널티 영역 근방의 상황이 잘 보이도록 카메라를 z 축에 대해 -15도정도 기울인다(S136, 도 38).
페널티 영역으로부터 8m이상 떨어져 있을 때(S134, 아니오)는, 플레이어의 진행 방향을 판단한다(S138). 플레이어가 앞 방향으로 이동하는 경우(도 39) 및 내측 방향으로 이동하는 경우(도 40)에는, x-z 평면에서의 카메라의 플레이어에 대한 각도를 0도로 한다(S140, 도 41). 플레이어가 좌측 방향으로 이동하는 경우(도 42)에는, 카메라의 플레이어에 대한 각도가 z 축으로부터 -15도 방향의 각도가 되도록 한다 (S142, 도 43). 플레이어가 우측 방향으로 이동하는 경우(도 44)는, 카메라의 플레이어에 대한 각도가 z 축으로부터 15도 방향의 각도가 되도록 한다(S144, 도 45).
이어서, 카메라의 주시점의 위치가 볼에 있을 때(S132, 볼측), 볼과 플레이어사이의 거리가, 소정 거리, 예를 들면 15m 이상 떨어져 있는지가 판단된다(S146). 15m이상 떨어져 있을 때(S146, 예, 도 46), 볼로부터 플레이어를 향하는 시선 벡터가 z축으로부터 20도의 각도가 되도록, 카메라의 각도를 정한다(S154, 도 47). 또한, z축에 대해 플레이어와 볼의 위치가 반대가 되는 경우에는, 볼로부터 플레이어를 향하는 시선 벡터가 z 축으로부터 -20도의 각도가 되도록, 카메라의 각도를 정한다 (S154, 도 48).
볼과 플레이어 사이의 거리가, 소정 거리, 예를 들면 15m이상 떨어지지 않을 때(S146, 아니오)에는, 카메라의 주시점이 페널티 영역으로부터 8m이내인지의 여부가 판별된다(S148). 카메라의 주시점이 페널티 영역으로부터 8m이내인 경우(S148, 예, 도 49), 카메라의 시선 벡터를 z축에 대해 -15도의 각도로 설정한다(도 50). 또, 도 48에 도시된 바와 같이 볼과 플레이어의 위치가 반대일 때는, 카메라의 방향을 z 축으로부터 15도의 방향으로 정한다.
또한, 볼과 플레이어사이의 거리가 15m이내로서, 카메라의 주시점이 페널티 영역으로부터 8m이내가 아닌 경우(S148, 아니오, 도 51), 카메라의 시선 벡터를 볼에 대해 0도(z 축에 대해 0도)의 각도로 설정한다(도 52). 이들 처리를 끝내고, 메인 프로그램으로 복귀한다.
또, 사이드 라인을 따라 카메라가 움직일 때에, z 축 방향으로부터의 카메라의 각도를 지나치게 크게 하면, 유희자가 패드나 죠이스틱등의 입력 장치에서 x 방향 및 z 방향의 플레이어의 이동을 입력하는 경우에, 화면의 플레이어의 움직임 방향과 직접 대응하지 않게 되어 조작하기 어렵게 되는 경우가 있다. 이 때문에, 15도 정도의 카메라 각도가 좋다.
이와 같이 함으로써, 플레이어의 게임 필드의 영역에 비해 x-z 평면에서의 카메라 앵글이 조정되고, 볼의 진행 방향이 잘 보이도록 이루어진다.
이어서, 카메라의 상하 방향(y 축 방향)의 각도 조정에 대해 설명한다. 도 53은, 카메라의 상하 방향의 각도 조정을 행하는 처리를 설명하는 플로우차트이고, 도시하지 않은 메인 프로그램으로 정해지는 소정의 타이밍(소정 조건)으로 실행된다. 카메라의 높이 위치는, 이것에 한정되는 것이 아니지만, 통상 10m 정도의 높이로 설정된다. 본 루틴에서는, 도 54에 도시된 바와 같이, 이 카메라가 게임 필드를 내려다보는 각도를 게임 영역에 따라 설정한다. 즉, 카메라의 주시점의 위치를 판별한다(S162). 주시점이 플레이어에게 있을 때(S162, 플레이어), 주시점이 페널티 영역 부근에 있는지의 여부를 판별한다(S164). 주시점이 페널티 영역 부근에 없는 경우에는(S164, 아니오), 비교적 넓은 범위를 보이기 위해, 카메라의 시선 벡터가 z 축 방향으로부터 -8도의 방향이 되도록 카메라의 방향을 정한다(S166). 여기서, 카메라가 하향인 경우를 마이너스의 각도, 상향의 경우를 플러스의 각도, 수평을 0도로서 나타낸다. 또한, 주시점이 페널티 영역 부근에 있는 경우에는(S164, 예), 카메라의 시선 벡터가 z 축 방향으로부터 -11도의 방향이 되도록 카메라의 방향을 정한다(S168). 이에 따라, 보다 카메라가 내려다 보게 되고, 보다 입체감, 깊이감이 있는 화상을 얻을 수 있다.
주시점이 볼에 있을 때(S162, 볼), 주시점이 페널티 영역 부근에 있는지의 여부를 판별한다(S170). 주시점이 페널티 영역 부근에 없는 경우에는(S170, 아니오), 카메라의 시선 벡터가 z축 방향으로부터 -11도의 방향이 되도록 카메라등의 방향을 정한다 (S166). 또한, 주시점이 페널티 영역 부근에 있는 경우에는(S170, 예), 카메라의 시선 벡터가 z축 방향으로부터 -13도의 방향이 되도록 카메라의 방향을 정한다(S174).
이들 처리가 끝나면 메인 프로그램으로 복귀된다.
도 55는, 카메라의 줌 조정을 설명하는 플로우차트이다. 메인 프로그램에서, 카메라의 줌 조정을 행해야되는 것이 판단되면, 본 루틴으로 이행한다.
우선, 카메라의 주시점이 페널티 영역 부근에 있는지의 여부를 판단한다(S182). 페널티 영역 부근에 있는 경우는, 카메라가 주시점으로부터 소정 거리까지 떨어지도록 카메라를 당겨, 줌·다운을 행한다 (S184). 이에 따라, 페널티 영역 전체가 바라볼 수 있게 된다.
카메라의 주시점이 페널티 영역 부근에 없고(S182, 아니오), 플레이어가 화면의 밖에 있을 때(S186, 예), 화면 내에 플레이어를 비추도록, 줌·다운을 행한다 (S188). 도 56에 도시된 바와 같이, 플레이어가 화면 내에 존재하고(S186, 아니오), 또한 플레이어가 화면의 3/4 이내로 들어가는 경우는(S190, 예), 카메라가 주시점으로부터 소정 거리까지 근접하도록 카메라를 이동시키는, 줌업을 행한다(S190). 이에 따라, 일정한 범위가 보이는 상태에서 플레이어를 클로우즈 업하는 것이 가능해진다. 또한, 플레이어가 화면에 비추어지지만, 화면의 3/4 이내에는 들어가지 않는 경우에는(S190, 아니오), 카메라와 주시점과의 거리를 유지한다(S194).
도 57은, 상술한 라인·폴리곤과 마찬가지로, 화면으로부터 소멸하는 것을 방지해야 할 것을 표시할 수 있도록 한 다른 예를 설명하는 플로우차트이다.
동일 도면에서는, 미리 소실을 방지하도록 폴리곤의 데이타에 소실 방지력의 대상인 것을 도시하는 속성 데이타가 첨부되어 있다. 가상 카메라의 시야 내의 오브젝트군을 화면 표시할 때에, 컴퓨터 시스템에 의해 시야 내에 소실 방지 대상의 폴리곤이 존재하는지의 여부가 판별된다(S202).
소실 방지 대상의 폴리곤, 예를 들면 라인·폴리곤이 존재하는 경우(S202, 예), 폴리곤의 소실 방지 프로그램을 실행한다. 즉, 도 58에 도시된 바와 같이, 카메라의 주시점과 카메라의 위치로부터 단위 시선 벡터를 구한다(S204). 소실 방지대상의 폴리곤의 데이타로부터 단위 법선 벡터를 구한다 (S206). 단위 시선 벡터와 단위 법선 벡터가 이루는 각도를 구한다. 이것은, 단위 시선 벡터와 단위 법선 벡터의 내적으로서 요구하는 것이 가능하다 (S208). 이 각도가 소정의 각도가 되도록, 폴리곤의 정점의 좌표값을 조정한다(S210). 시야 내의 소실 방지 대상이 되는 각 폴리곤에 대해 스텝204로부터 스텝210의 처리를 행한다. 여기서, 스텝202는 소실 방지 실행 수단에 스텝 204∼208은 각도 산출 수단에, 스텝 310은 폴리곤 경사 수단에 대응한다.
이와 같이 해도, 게임에 불가결한 라인등이 꺼지지 않도록 하는 것이 가능해진다.
또, 본 발명은 축구 게임에 한정되는 것이 아니고, 그라운드나 코트에 라인이 그려지는, 테니스, 야구, 농구, 배구, 럭비, 아메리칸 폿볼 등, 여러가지 게임에 적용 가능하다.
이와 같이 함으로써, 영역이나 표시 상태에 따라 카메라의 줌 조정이 이루어진다.
이상 설명한 바와 같은, 화상 처리 장치 및 화면의 표시 방법을 컴퓨터 시스템에 실현하는 프로그램은, 정보 기록 매체, 예를 들면 CD-ROM, DVD-ROM, ROM 카세트 등에 기억되어 제공된다.
제8로부터 제17도에서 설명한 실시 형태에서, 경기장을 향하는 관객, 즉 게임 공간인 3차원 가상 공간 내에 표시되는 표시체의 일례를 갖는 텍스쳐를 A 내지 D″ 각각의 폴리곤면에 붙여진 형태는 특히 한정되지 않는다. 예를 들면, 폴리곤면에 맵핑되는 텍스쳐 중, 관객을 모방한 표시체 이외의 배경 부분을 투명 비트의 텍스쳐로 하고, 표시체의 부분을 불투명 비트의 텍스쳐로 할 수 있다.
제59도는 이 텍스쳐의 모식도이다. 관객인 표시체(300) 및 필요하면 그 주위부분(301)도 포함시켜 불투명 피트의 텍스쳐 영역으로 한다. 그 이외의 부분, 예를 들면 배경 부분(302)을 투명 비트의 텍스쳐 영역으로 한다. 제60도는, 다른 관객의 형태에 관계되는 텍스쳐의 예이다. 배경(302)은 마찬가지로, 투명 비트이고, 캐릭터(304)는 불투명 비트이다. 이 텍스쳐는, 제59도의 텍스쳐가 붙여진 폴리곤 이외의 폴리곤에 접착되고, 제59도의 텍스쳐가 붙여진 폴리곤의 앞, 즉 보다 가상 시점측에 제60도의 텍스쳐가 붙여진 폴리곤을 배치한다. 제61도는, 이들 텍스쳐가 제8 내지 17도에 도시된 바와 같이 중첩, 즉 중복된 상태를 나타내는 것이다. 제59도의 투명한 배경 부분에 제60도의 캐릭터(304)가 거듭 표시된다. 따라서, 제59와 제60도의 폴리곤이 중첩되어 표시되면, 양방의 텍스쳐의 관객이 합성, 합체, 혹은 중첩되어 화면에 표시된다. 또, 각각의 폴리곤의 캐릭터인 관객끼리 중복되면 3차원 공간에서 아래쪽의 관객, 즉 우선도가 낮은 폴리곤의 관객은 우선도가 높은 폴리곤의 관객의 아래가 되어 화면에는 표시되지 않게 된다.
이러한 텍스쳐가 붙여진 복수의 폴리곤을 제8도 내지 제17도와 마찬가지로, 복수의 폴리곤을 그 중합 방향으로 직교 혹은 이 이외에 교차하는 면을 따라, 혹은 3차원 공간 내에서 폴리곤 A 내지 D″을 향하는 가상 카메라를 따라 교차하는 방향, 혹은 그 중합 방향으로 교차하는 방향으로 움직이게 함에 따라 관객의 움직임을 상기 실시 형태의 경우와 마찬가지로 재현 또는 시뮬레이트할 수 있다. 제62도 및 제63도는 제59도에서 설명한 폴리곤(400)과 제60도에서 설명한 폴리곤(402)을 중복하고, 제62도는 폴리곤(400)을 위로 움직이게 하고, 제63도는 폴리곤(402)을 위로 움직이게 한 경우이다.
이와 같이, 본 발명에 따르면 축구 경기장에서의 관객과 같이 다수의 표시체가 요동하는 움직임, 혹은 다수의 표시체로 이루어지는 군의 움직임, 다수의 표시체를 복수의 블럭으로 나눠, 각 블럭을 제어된 상태에서 움직이게 하는 것이 적합한 경우(동물이나 곤충의 군의 움직임)에서, 그 움직임을 보다 효율적으로 만들어내는 것이 가능해진다. 이러한 움직임은, 특정한 모드일 때, 예를 들면 축구 게임의 경우, 선수가 놓은 볼이 골인된 경우에 생기도록 한다. 또, 반복하겠지만, 여기서 설명한 텍스쳐는 배경(구름, 파도 등) 및 관객등의 캐릭터를 포함시킨 그림의 데이타라도 되는 것은 물론이다. 또한, 제59도의 배경 부분을 투명 텍스쳐로 구성되는 것에 대신하여, 단일색의 텍스쳐로 하고, 제60도의 캐릭터를, 이 단일색으로 구별할 수 있는 빛깔의 텍스쳐로 구성해도 좋다. 또한, 제60도의 배경 부분을 단일색의 텍스쳐로 하고, 제59도의 배경 부분은 투명색으로 한 상태에서, 제59도의 캐릭터 중 적어도 윤곽을 상기 단일색이외로 하는 것도 가능하다. 또한, 제8도 내지 제17도의 경우에는 각 폴리곤을 가상 공간형 경사 상측에 서서히 위치하도록 배치했지만, 이것에 한하지 않고, 거의 평탄면에 각 폴리곤을 배치하도록 할 수 있다.
또한, 상술된 실시예에 따르면, 캐릭터에 게임을 통해 관계를 갖는 목표체와 상기 캐릭터 사이의 거리등의 상호 관계 또는 게임 내용에 관한 관계가 소정 조건을 합치한다고 판단될 때, 캐릭터의 시선을 목표체를 향하게 하도록 했으므로, 예를 들면 축구 게임에서 캐릭터가 볼을 드리블하면서 공격을 하는 경우, 사전에 차내는 지대나 자기편 선수를 찾기 위해, 다른 쪽을 보는(바라보는) 동작을 행하므로, 실제의 축구 경기자의 거동을 보다 리얼하게 시뮬레이트할 수 있고, 보다 자연스러운 움직임이 되어, 리얼감 및 현장감을 향상시킬 수 있다.
또한, 이 시점 제어는, 1) 게임중의 작전을 세우는 방법, 게임의 난이도에도 영향을 끼칠 수 있게 된다, 2) 볼 게임의 경우, 볼을 가지고 있는 캐릭터의 행동으로부터 볼이 전송되는 (되어야하는) 선이나 주위의 상황을 파악할 수 있고, 조작의 용이함등의 효과도 얻을 수 있다.
또한, 실시예에 따르면, 복수의 관객을 모방한 텍스쳐를 개개로 접착시킨 복수매의 폴리곤을 가상적으로 중합시키고, 이 복수매의 폴리곤을 그 중합 방향으로 교차하는 방향을 따라 움직이도록 했으므로, 관객 개개의 다채로운 움직임(보다 리얼한 거동)을 표현할 수 있고, 소프트 프로그램의 설계를 간단화시키고, 연산 부하를 감소시키고, 메모리 용량의 소량화를 가능하게 하는 등, 이들의 요구를 동시에 거의 만족시키고, 또한 게임의 현장감을 고조시킬 수 있게 된다.
또한, 실시예에 따르면, 플레이어가 게임을 행하는 시각을 검지하고, 이 시각에 따라 화상의 화면 칼라를, 미리 게임에 알맞도록 조정한 화면 칼라로부터 보완하여 구하도록 했으므로, 게임을 행하는 시간에 맞춰 화면 칼라를 변화시키는 연출을 가한 후에, 화면 칼라를 항상 게임의 지장이 되지 않도록 유지할 수 있다. 또한, 종래와 마찬가지로 휘도만으로 화면 칼라 상태를 조정할 때의 문제점을 회피할 수 있고, 표시 화면의 칼라 상태와 하루 안의 밝기의 변화를 안정적이고 또한 정밀도 좋게 적합시키고, 게임의 현장감을 높일 수 있다.
다른 실시예에 따르면, 3차원 가상 공간 내에서 전개되는 게임에서, 카메라위치에 의해 보기 힘들게 되는 가상 공간 내의 폴리곤을 발생하도록 하므로, 예를 들면 그라운드에 그려진 라인의 오브젝트가 화상 처리에 의해 소멸하는 일이 없어 상태가 좋다.
또한, 다른 실시예에 따르면, 게임의 영역이나 오브젝트의 이동 방향에 따라 카메라 위치, 카메라의 방향, 시야 범위등이 조정되는 게임 장치를 얻는 것이 가능해지고, 유희자가 게임을 행하기 쉬운 화면을 얻을 수 있다.
이상과 같이, 본 발명에 따른 화상 처리 장치는, 가상 공간에서 행해지는 시뮬레이션(예를 들면, 게임)을 관찰자(예를 들면, 유희자)에 의해 현장감을 갖고, 보기 쉽게 표시하는 것이 가능해진다. 특히, 비디오(혹은 텔레비젼) 게임 장치에 이용하기에 적합하다.

Claims (34)

  1. 가상 3차원 공간에서 경기자를 모방한 캐릭터의 거동을 화상 표시하는 화상 처리 장치에 있어서,
    상기 캐릭터에 게임을 통해 관계를 갖는 목표체와 상기 캐릭터 사이의 상호 위치 관계 또는 게임 내용에 관한 관계가 소정 조건에 합치하는 소정 상태인지의 여부를 판단하는 판단 수단과, 이 판단 수단이 상기 소정 상태를 판단했을 때, 상기 캐릭터의 시선을 상기 목표체를 향하게 하는 시선 제어 수단을 구비한 것을 특징으로 하는 화상 처리 장치.
  2. 제1항에 있어서, 상기 게임은 축구 게임이고, 상기 목표체는 상기 축구 게임의 볼(ball)인 것을 특징으로 하는 화상 처리 장치.
  3. 제1항에 있어서, 상기 시선 제어 수단은, 상기 캐릭터의 머리 부분의 회전에 이어 상기 캐릭터의 몸통부 및 허리부를 회전 제어하는 수단을 포함하는 것을 특징으로 하는 화상 처리 장치.
  4. 제1항에 있어서, 상기 판단 수단은, 상기 가상 3차원 공간에서의 상기 캐릭터와 상기 목표체의 좌표값을 기초로 당해 캐릭터로부터 목표체까지의 각도를 계산하는 수단을 포함하는 것을 특징으로 하는 화상 처리 장치.
  5. 제1항에 있어서, 상기 목표체는 복수개이고, 상기 판단 수단은 상기 복수개의 목표체 중 어디에 시선을 향해야할지를 상기 게임의 상황에 따라 판정하는 판정 수단을 포함하는 것을 특징으로 하는 화상 처리 장치.
  6. 가상 3차원 공간에서 경기자를 모방한 캐릭터의 거동을 화상 표시하는 화상 처리 방법에 있어서,
    상기 캐릭터에게 게임을 통해 관계를 갖는 목표체와 당해 캐릭터 사이의 상호 위치 관계 또는 게임 내용에 관한 관계가 소정 조건을 합치하는 소정 상태인지의 여부를 판단하고, 그 소정 상태가 판단되었을 때, 상기 캐릭터의 시선을 상기 목표체를 향하게 하는 것을 특징으로 한 화상 처리 방법.
  7. 가상 3차원 공간에서 경기자를 모방한 캐릭터의 거동을 화상 표시하는 화상 처리 방법에 있어서,
    상기 캐릭터에게 제1 거동을 실행시키고 있는 동안에 소정 조건이 성립했는지의 여부를 판단하고, 상기 소정 조건이 성립했을 때에는, 상기 캐릭터에게 제2 거동을 실행시키고, 이로써 유희자에게 게임의 진행 상황의 정보를 암시하는 것을 특징으로 한 화상 처리 방법.
  8. 가상 3차원 공간에서 표시체의 거동을 화상 표시하는 화상 처리 장치에 있어서,
    복수의 표시체를 텍스쳐를 개개에 부착하는 복수매의 폴리곤에 있어서 가상적으로 중첩시킨 복수매의 폴리곤과, 이 복수매의 폴리곤을 그 중첩 방향과 교차하는 면을 따라 움직이게 하는 폴리곤 요동 수단을 구비한 것을 특징으로 하는 화상 처리 장치.
  9. 제8항에 있어서, 상기 복수매의 폴리곤은, 복수개의 오브젝트 각각을 형성하는 복수매의 폴리곤이 오브젝트순으로 인터리브된 상태에서 가상적으로 중첩시키고 있고, 상기 폴리곤 요동 수단은 상기 복수개의 오브젝트를 오브젝트마다 동기하고 또한 연동하여 주기적으로 움직이게 하는 수단인 것을 특징으로 하는 화상 처리 장치.
  10. 제9항에 있어서, 상기 움직이는 방향은, 상기 폴리곤의 상하 방향 또는 좌우 방향인 것을 특징으로 하는 화상 처리 방법.
  11. 가상 3차원 공간에서 표시체의 거동을 화상 표시하는 화상 처리 방법에 있어서,
    복수의 표시체를 모방한 텍스쳐를 개개에 부착하는 복수매의 폴리곤을 가상적으로 중첩시키고, 이 복수매의 폴리곤을 그 중첩 방향과 교차하는 방향을 따라 움직이게 하는 것을 특징으로 하는 화상 처리 방법.
  12. 가상 3차원 공간에서의 게임을 시뮬레이트해 화상 표시하는 화상 처리 장치에 있어서,
    플레이어가 상기 게임을 행하는 시각을 검지하는 검지 수단과, 이 검지 수단에 의해 검지되는 시각에 따라 상기 화상의 화면 칼라를 조정하는 조정 수단을 구비한 것을 특징으로 하는 화상 처리 장치.
  13. 제12항에 있어서, 상기 조정 수단은, 게임에 적당한 상태로 설정된 적어도 두개의 기준 시간대의 화면 칼라의 값을 각각 기준값으로서 기억하는 기억 수단과, 상기 검지 수단에 의해 검지되는 시각이 상기 기준 시간대 중 어느 하나에 들어있을 때에는, 상기 기준값 중 어느 쪽인가 상당하는 쪽으로부터 게임의 표시 화면에 마스크하는 데이타를 생성시킴과 동시에, 상기 시각이 상기 기준 시간대 중 어디에도 들어있지 않을 때에는, 상기 적어도 2개의 기준값 중의 당해 시각의 시간적 전후에 있는 2개의 기준값을 기초해 보간한 화면 칼라 상태의 정보로부터 상기 마스크하는 데이타를 생성하는 데이타 생성 수단을 구비하는 것을 특징으로 하는 화상 처리 장치.
  14. 가상 3차원 공간에서의 게임을 시뮬레이트해 화상 표시하는 화상 처리 방법에 있어서,
    플레이어가 상기 게임을 행하는 시각을 검지하고, 이 시각에 따라 상기 화상의 화면 칼라를 조정하는 것을 특징으로 한 화상 처리 방법.
  15. 가상 3차원 공간 내의 생물을 모방한 표시체를, 소정의 시점에서 투시 변환하여 표시 화면에 표시하는 화상 표시 방법에 있어서, 상기 가상 공간 내에 설정된 가상점의 위치와 상기 표시체의 위치를 비교하는 스텝, 상기 비교 결과가 프로그램으로 정해진 소정의 조건과 합치하는지의 여부를 판정하는 스텝과, 상기 비교 결과가 상기 소정의 조건과 합치했을 경우에, 상기 가상점을 상기 표시체의 주시점으로 하는 스텝을 갖는 것을 특징으로 하는 화상 표시 방법.
  16. 가상 3차원 공간 내의 생물을 모방한 표시체를, 소정의 시점에서 투시변환하여 표시 화면에 표시하는 화상 표시 방법에 있어서, 상기 가상 공간 내에 설정된 복수의 가상점의 위치와, 상기 표시체의 위치를 비교하는 스텝과, 상기 비교 결과에 따라 상기 표시체의 주시점이 되는 상기 가상점을 선택하는 스텝을 갖는 것을 특징으로 하는 화상 표시 방법.
  17. 컴퓨터 시스템 내에 형성되는 가상 공간에 오브젝트를 배치하고, 입력 조작으로 정해진 룰(rule)에 따라 상기 오브젝트의 움직임을 제어하면서 게임을 전개하고, 상기 가상 공간 내의 모습을 가상 카메라에서 본 화면으로서 표시하는 화상 처리 장치에 있어서,
    상기 가상 공간 내의 기준이 되는 기준 평면 상에 배치되는 폴리곤,
    상기 폴리곤과 상기 가상 카메라 상호간의 위치 관계를 판별하는 판별 수단, 및
    판별 결과에 대응하여 상기 가상 카메라로부터 보이는 상기 폴리곤의 면적이 늘어나도록 상기 폴리곤을 경사시키는 폴리곤 경사 수단
    을 구비하는 것을 특징으로 하는 화상 처리 장치.
  18. 제17항에 있어서, 상기 기준 평면은 그라운드이고, 상기 폴리곤은 상기 그라운드상에 배치되는 라인을 형성하는 폴리곤인 것을 특징으로 하는 화상 처리 장치.
  19. 제17항에 있어서, 상기 폴리곤은 사각형이고, 상기 폴리곤 경사 수단은, 상기 폴리곤의 상호 대향하는 변 중 한쪽 변에 속하는 정점의 좌표값을 변경하는 것을 특징으로 하는 화상 처리 장치.
  20. 컴퓨터 시스템 내에 형성되는 가상 공간에 오브젝트를 배치하고, 입력 조작과 정해진 룰에 따라 상기 오브젝트의 움직임을 제어하면서 게임을 전개하고, 상기 가상 공간 내의 모습을 가상 카메라에서 본 화면으로서 표시하는 화상 처리 장치에 있어서,
    상기 오브젝트가 상기 가상 공간에서의 특정한 영역 내에 존재하는지의 여부를 판별하는 판별 수단,
    상기 판별 결과를 기초로 상기 가상 카메라의 각도를 조정하는 카메라 각도 조정 수단
    을 구비하는 것을 특징으로 하는 화상 처리 장치.
  21. 제20항에 있어서, 상기 카메라 각도 조정 수단은, 상기 판별 결과와 상기 오브젝트의 이동 방향을 기초로 상기 가상 카메라의 각도를 조정하는 것을 특징으로 하는 화상 처리 장치.
  22. 제20항 또는 제21항에 있어서, 상기 카메라 각도 조정 수단은, 상기 가상 공간에서의 좌우 방향 및 상하 방향 중 적어도 어느 한 방향에 있어서의 상기 가상 카메라의 각도 조정을 행하는 것을 특징으로 하는 화상 처리 장치.
  23. 컴퓨터 시스템 내에 형성되는 가상 공간에 오브젝트를 배치하고, 입력 조작과 정해진 룰을 따라 상기 오브젝트의 움직임을 제어하면서 게임을 전개하고, 상기 가상 공간 내의 모습을 가상 카메라에서 본 화면으로서 표시하는 화상 처리 장치에 있어서,
    상기 오브젝트가 상기 가상 공간에서의 특정한 영역 내에 존재하는지의 여부를 판별하는 판별 수단,
    상기 판별 결과를 기초로 상기 가상 카메라의 시야 범위를 조정하는 줌(zoom) 조정 수단,
    을 구비하는 것을 특징으로 하는 화상 처리 장치.
  24. 복수의 폴리곤으로 이루어지는 3차원 형상 모델로 구성된 가상 공간을 임의의 위치의 가상 카메라에서 본 2차원 화상으로 변환하여, 표시 장치에 표시하는 화상 생성 표시 수단을 갖는 화상 처리 장치에 있어서,
    상기 가상 카메라의 방향을 나타내는 시선 벡터와, 상기 가상 공간 내에 배치된 소정의 폴리곤의 면의 방향을 나타내는 법선 벡터가 이루는 각도를 산출하는 각도 산출 수단,
    상기 각도 산출 수단의 산출된 각도가 소정의 값이 되도록, 상기 폴리곤의 정점의 좌표값을 변경하는 폴리곤 경사 수단
    을 구비하는 것을 특징으로 하는 화상 처리 장치.
  25. 복수의 폴리곤으로 이루어지는 3차원 형상 모델로 구성된 가상 공간을 임의의 시점에서 본 2차원 화상을 생성하여, 표시 장치에 표시하는 화상 생성 표시 수단을 갖는 화상 처리 장치에 있어서,
    상기 폴리곤은, 폴리곤의 소실 방지 프로그램을 동작시키기 위한 데이타를 포함하는, 소실 방지의 속성을 갖는 소실 방지 폴리곤을 포함하고,
    상기 소실 방지 프로그램은, 상기 소실 방지 폴리곤과 상기 시점과의 상호 위치 관계를 판별하는 위치 판별 수단과, 상기 위치 판별 수단의 판별 결과에 따라, 상기 소실 방지 폴리곤의 정점의 좌표값을 변경하는 좌표값 변경 수단을 포함하며,
    상기 표시 장치에 묘화되는 폴리곤이 상기 소실 방지 폴리곤일 경우에 상기 소실 방지 프로그램을 실행하는 소실 방지 실행 수단
    을 더 구비하는 것을 특징으로 하는 화상 처리 장치.
  26. 컴퓨터 시스템을 청구항 제1 ∼ 5, 8, 9, 12, 13, 17 ∼ 25항중 어느 한항에 기재된 화상 처리 장치로서 기능시키는 프로그램을 기록한 정보 기록 매체.
  27. 가상 3차원 공간 내의 모습을 카메라에서 본 화면으로서 표시하는 화상 처리 장치에 있어서,
    상기 가상 3차원 공간 내의 기준이 되는 기준면에 배치되는 폴리곤과,
    상기 폴리곤과 상기 가상 카메라 상호간의 위치 관계를 판별하는 판별 수단,
    상기 판별 수단의 판별 결과에 대응하여 상기 폴리곤의 가상 카메라에서 보이는 면적이 증가하도록, 상기 폴리곤을 경사시키는 폴리곤 경사 수단
    을 구비하는 것을 특징으로 하는 화상 처리 장치.
  28. 가상 3차원 공간 내의 모습을 가상 카메라에서 본 화면으로서 표시하는 화상 처리 장치에 있어서, 상기 가상 3차원 공간 내의 기준이 되는 기준 평면 상에 배치되는 폴리곤과, 상기 폴리곤과 상기 가상 카메라 상호간의 위치 관계를 판별하는 판별하는 판별 수단과,
    상기 판별 수단의 판별 결과에 대응하여 상기 폴리곤의 상기 가상 카메라에 대해 앞측의 정점을 중심으로 상기 폴리곤의 상기 가상 카메라에 대해 내측의 정접을 상기 기준면으로부터 상승되도록, 상기 폴리곤을 경사시키는 폴리곤 경사 수단을 구비하는 것을 특징으로 하는 화상 처리 장치.
  29. 제27항 또는 제28항에 기재된 화상 처리 장치를 구비하고, 상기 가상 3차원 공간 내에 오브젝트를 배치하고, 유희자의 입력 조작 및 소정의 룰에 따라 상기 오브젝트를 제어하여 게임을 진행하는 것을 특징으로 하는 게임기.
  30. 제29항에 있어서, 상기 게임은 기준면상에 형성되는 게임 필드에 오브젝트가 배치되는 게임이고, 상기 폴리곤은 상기 게임 필드상에 그려진 선을 형성하는 폴리곤인 것을 특징으로 하는 게임 장치.
  31. 상기 가상 3차원 공간 내의 모습을 가상 카메라에서 본 화면으로서 표시하는 화상 처리 장치에 있어서,
    상기 가상 3차원 공간 내에 배치되는 폴리곤과,
    상기 폴리곤과 상기 가상 카메라와의 상호간의 위치 관계를 판별하는 판별 수단과,
    상기 판별 수단의 판별 결과에 대응하여 상기 폴리곤의 가상 카메라에서 보이는 면적이 증가하도록 상기 폴리곤을 경사시키는 폴리곤 경사 수단
    을 구비하는 것을 특징으로 하는 화상 처리 장치.
  32. 제27항, 제28항 또는 제31항에 있어서, 상기 폴리곤은 선을 나타내는 폴리곤인 것을 특징으로 하는 화상 처리 장치.
  33. 제31항에 기재된 화상 처리 장치를 구비하고, 상기 가상 3차원 공간 내에 오브젝트를 배치하고, 유희자의 입력 조작 및 소정의 룰에 따라 상기 오브젝트를 제어하여 게임을 진행하는 것을 특징으로 하는 게임 장치.
  34. 제33항에 있어서, 상기 게임은 오브젝트가 평면상에 배치되는 게임이고, 상기 폴리곤은 상기 평면상에 그려진 선을 형성하는 폴리곤인 것을 특징으로 하는 게임 장치.
KR1019980708368A 1997-02-18 1998-02-18 화상처리장치및화상처리방법 KR100300832B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP9034163A JP2955989B2 (ja) 1997-02-18 1997-02-18 ゲーム装置
JP97-034163 1997-02-18
JP3408997 1997-02-18
JP97-034089 1997-02-18
PCT/JP1998/000677 WO1998035734A1 (fr) 1997-02-18 1998-02-18 Dispositif et procede pour le traitement des images

Publications (2)

Publication Number Publication Date
KR20000064948A true KR20000064948A (ko) 2000-11-06
KR100300832B1 KR100300832B1 (ko) 2002-10-19

Family

ID=26372888

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980708368A KR100300832B1 (ko) 1997-02-18 1998-02-18 화상처리장치및화상처리방법

Country Status (8)

Country Link
US (3) US6989829B2 (ko)
EP (2) EP0901803B1 (ko)
KR (1) KR100300832B1 (ko)
CN (2) CN1188193C (ko)
DE (1) DE69833482T2 (ko)
ES (1) ES2260830T3 (ko)
HK (1) HK1081135A1 (ko)
WO (1) WO1998035734A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100889786B1 (ko) * 2001-05-21 2009-03-20 가부시키가이샤 세가 화상처리장치 및 게임장치
KR20170081964A (ko) * 2016-01-05 2017-07-13 한국전자통신연구원 공간 구조 인식을 통한 증강 현실 장치 및 그 방법

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1188193C (zh) * 1997-02-18 2005-02-09 世嘉股份有限公司 图像处理装置及图像处理方法
US6712703B2 (en) 1998-11-19 2004-03-30 Nintendo Co., Ltd. Video game apparatus and information storage medium for video game
US6612930B2 (en) 1998-11-19 2003-09-02 Nintendo Co., Ltd. Video game apparatus and method with enhanced virtual camera control
JP2000153061A (ja) * 1998-11-19 2000-06-06 Nintendo Co Ltd ビデオゲーム装置およびビデオゲーム用情報記憶媒体
JP2000153063A (ja) * 1998-11-19 2000-06-06 Nintendo Co Ltd ビデオゲーム装置およびビデオゲーム用情報記憶媒体
TW452748B (en) * 1999-01-26 2001-09-01 Ibm Description of video contents based on objects by using spatio-temporal features and sequential of outlines
US7085995B2 (en) * 2000-01-26 2006-08-01 Sony Corporation Information processing apparatus and processing method and program storage medium
AU781859B2 (en) * 2000-01-26 2005-06-16 Sony Corporation Information processing device and processing method and program storing medium
US7685534B2 (en) * 2000-02-16 2010-03-23 Jlb Ventures Llc Method and apparatus for a three-dimensional web-navigator
JP3594915B2 (ja) * 2001-08-03 2004-12-02 株式会社ナムコ プログラム、情報記憶媒体及びゲーム装置
US6705945B2 (en) * 2001-10-10 2004-03-16 Sony Computer Entertainment America Inc. Providing game information via characters in a game environment
US6952207B1 (en) * 2002-03-11 2005-10-04 Microsoft Corporation Efficient scenery object rendering
US20030227453A1 (en) * 2002-04-09 2003-12-11 Klaus-Peter Beier Method, system and computer program product for automatically creating an animated 3-D scenario from human position and path data
JP4079358B2 (ja) * 2002-12-06 2008-04-23 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム制御方法、及びプログラム
DE10325382A1 (de) * 2003-05-30 2004-12-23 Karl Storz Gmbh & Co. Kg Verfahren und Vorrichtung zum Visualisieren von medizinischen Patientendaten auf einer medizinischen Anzeigeeinheit
US7420574B2 (en) * 2004-04-16 2008-09-02 Autodesk, Inc. Shape morphing control and manipulation
US7064761B2 (en) 2004-05-10 2006-06-20 Pixar Techniques for animating complex scenes
JP4474640B2 (ja) * 2004-05-11 2010-06-09 株式会社セガ 画像処理プログラム、ゲーム処理プログラムおよびゲーム情報処理装置
JP2006018476A (ja) * 2004-06-30 2006-01-19 Sega Corp 画像の表示制御方法
JP2006060652A (ja) * 2004-08-23 2006-03-02 Fuji Photo Film Co Ltd デジタルスチルカメラ
KR100612874B1 (ko) * 2004-11-22 2006-08-14 삼성전자주식회사 스포츠 동영상의 요약 방법 및 장치
JP4488996B2 (ja) * 2005-09-29 2010-06-23 株式会社東芝 多視点画像作成装置、多視点画像作成方法および多視点画像作成プログラム
JP4706966B2 (ja) * 2005-12-06 2011-06-22 株式会社セガ 画像生成プログラム、画像処理装置
JP5025950B2 (ja) * 2005-12-12 2012-09-12 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システムおよび情報処理方法
JP4125758B2 (ja) * 2006-02-27 2008-07-30 株式会社スクウェア・エニックス ビデオゲーム処理装置、ビデオゲーム処理方法、およびビデオゲーム処理プログラム
CN100437608C (zh) * 2006-04-30 2008-11-26 珠海市西山居软件有限公司 游戏中虚拟人物作交互动作的装置和方法
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
JP4707034B2 (ja) * 2006-07-07 2011-06-22 株式会社ソニー・コンピュータエンタテインメント 画像処理方法、入力インタフェース装置
WO2008021091A2 (en) * 2006-08-11 2008-02-21 Packetvideo Corp. 'system and method for delivering interactive audiovisual experiences to portable devices'
US20080231627A1 (en) * 2007-03-20 2008-09-25 Robert Allen Shearer Using Ray Tracing to Enhance Artificial Intelligence Character Behavior
JP4929061B2 (ja) * 2007-06-04 2012-05-09 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法及びプログラム
JP4964057B2 (ja) * 2007-08-08 2012-06-27 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法及びプログラム
US9126116B2 (en) 2007-09-05 2015-09-08 Sony Computer Entertainment America Llc Ranking of user-generated game play advice
US9108108B2 (en) 2007-09-05 2015-08-18 Sony Computer Entertainment America Llc Real-time, contextual display of ranked, user-generated game play advice
GB2454681A (en) * 2007-11-14 2009-05-20 Cybersports Ltd Selection of animation for virtual entity based on behaviour of the entity
CN101593362B (zh) * 2008-05-26 2012-09-05 新奥特(北京)视频技术有限公司 一种图形的路径构建方法
GB2465538B (en) * 2008-08-01 2013-03-13 Sony Corp Method and apparatus for generating an event log
JP4498449B2 (ja) * 2008-08-22 2010-07-07 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法及びプログラム
US8914854B2 (en) * 2008-09-11 2014-12-16 International Business Machines Corporation User credential verification indication in a virtual universe
US8412662B2 (en) * 2009-06-04 2013-04-02 Motorola Mobility Llc Method and system of interaction within both real and virtual worlds
US11647243B2 (en) 2009-06-26 2023-05-09 Seagate Technology Llc System and method for using an application on a mobile device to transfer internet media content
US20120210205A1 (en) 2011-02-11 2012-08-16 Greg Sherwood System and method for using an application on a mobile device to transfer internet media content
JP5050094B2 (ja) * 2010-12-21 2012-10-17 株式会社東芝 映像処理装置及び映像処理方法
US8798777B2 (en) 2011-03-08 2014-08-05 Packetvideo Corporation System and method for using a list of audio media to create a list of audiovisual media
RU2479040C1 (ru) * 2011-12-23 2013-04-10 Владимир Евгеньевич Афоньшин Способ тактической подготовки команды в игровых видах спорта
US9833707B2 (en) 2012-10-29 2017-12-05 Sony Interactive Entertainment Inc. Ambient light control and calibration via a console
CN105204805B (zh) * 2015-09-15 2018-08-03 网易(杭州)网络有限公司 一种基于高度变化的3d动态路标显示方法和显示装置
JP7314475B2 (ja) * 2016-11-11 2023-07-26 セイコーエプソン株式会社 ロボット制御装置、及び、ロボット制御方法
CN106570914B (zh) * 2016-11-15 2020-01-14 华南理工大学 一种移植二维图像中角色的姿态的方法
KR101931564B1 (ko) 2017-03-03 2018-12-24 한국과학기술원 영상 정합을 이용한 영상 처리 장치 및 방법
US10561942B2 (en) 2017-05-15 2020-02-18 Sony Interactive Entertainment America Llc Metronome for competitive gaming headset
JP6223617B1 (ja) * 2017-05-26 2017-11-01 株式会社テクテック 仮想地図表示システム、プログラム及び方法
US10128914B1 (en) 2017-09-06 2018-11-13 Sony Interactive Entertainment LLC Smart tags with multiple interactions
CN108159701B (zh) * 2017-12-27 2021-02-12 网易(杭州)网络有限公司 游戏角色显示位置的调整方法、装置、处理器及终端
CN110009714A (zh) * 2019-03-05 2019-07-12 重庆爱奇艺智能科技有限公司 在智能设备中调整虚拟角色眼神的方法及装置
CN111311523B (zh) * 2020-03-26 2023-09-05 北京迈格威科技有限公司 图像处理方法、装置、系统和电子设备
JP7233399B2 (ja) * 2020-06-23 2023-03-06 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE8801043D0 (sv) * 1988-03-22 1988-03-22 Orjan Strandberg Genimator
US6054991A (en) * 1991-12-02 2000-04-25 Texas Instruments Incorporated Method of modeling player position and movement in a virtual reality system
JPH05249953A (ja) 1991-12-03 1993-09-28 Toshiba Corp 画像表示装置
JP2914823B2 (ja) 1992-05-27 1999-07-05 株式会社ハドソン 奥行き表現方法
US5363297A (en) * 1992-06-05 1994-11-08 Larson Noble G Automated camera-based tracking system for sports contests
JP2807608B2 (ja) * 1992-12-29 1998-10-08 株式会社ナムコ ソーティング処理装置、これを用いた画像合成装置及びソーティング処理方法
JP2539153B2 (ja) 1993-03-19 1996-10-02 インターナショナル・ビジネス・マシーンズ・コーポレイション 仮想会議システム用端末装置及び仮想会議システム
JP2888723B2 (ja) 1993-03-26 1999-05-10 株式会社ナムコ 3次元ゲーム装置及び画像合成方法
US5347306A (en) 1993-12-17 1994-09-13 Mitsubishi Electric Research Laboratories, Inc. Animated electronic meeting place
JP3496205B2 (ja) * 1993-12-21 2004-02-09 株式会社セガ ゲーム機における球技ゲームでの視点変更方法
KR100393504B1 (ko) * 1994-06-20 2003-10-30 가부시키가이샤 세가 오브젝트방향제어방법및장치
EP1138358B1 (en) 1994-06-28 2004-01-21 Sega Corporation Game apparatus and method of playing game
JPH0884861A (ja) 1994-09-14 1996-04-02 Taito Corp Tvボールゲーム
EP0707288B1 (en) * 1994-10-14 2003-08-27 Canon Kabushiki Kaisha Image processing method and apparatus
JP3431320B2 (ja) 1994-12-01 2003-07-28 株式会社ナムコ 3次元ゲーム装置及び画像合成方法
JP3538248B2 (ja) * 1994-12-02 2004-06-14 株式会社ナムコ 画像合成装置及び画像合成方法
JP3651943B2 (ja) * 1994-12-09 2005-05-25 オリンパス株式会社 アイコン作成方法及び動画用のコマ作成方法
ES2239326T3 (es) * 1995-01-19 2005-09-16 Sega Enterprises, Ltd. Metodo de procesamiento de imagen y procesador de imagen.
JP3442181B2 (ja) * 1995-02-17 2003-09-02 株式会社ナムコ 3次元ゲーム装置及び画像合成方法
US6768563B1 (en) * 1995-02-24 2004-07-27 Canon Kabushiki Kaisha Image input system
JPH08257238A (ja) 1995-03-24 1996-10-08 Taito Corp ビデオゲーム機
US5651104A (en) * 1995-04-25 1997-07-22 Evans & Sutherland Computer Corporation Computer graphics system and process for adaptive supersampling
US6542155B1 (en) * 1995-04-27 2003-04-01 Kabushiki Kaisha Sega Enterprises Picture processing device, picture processing method, and game device and storage medium using the same
JP3141737B2 (ja) * 1995-08-10 2001-03-05 株式会社セガ 仮想画像生成装置及びその方法
JP3461980B2 (ja) * 1995-08-25 2003-10-27 株式会社東芝 高速描画方法および装置
JPH09153146A (ja) * 1995-09-28 1997-06-10 Toshiba Corp 仮想空間表示方法
JP3544268B2 (ja) * 1995-10-09 2004-07-21 任天堂株式会社 三次元画像処理装置およびそれを用いた画像処理方法
JP2000506637A (ja) * 1995-10-13 2000-05-30 ロウズバロ,ジェイムズ,ビー. 生物アニメーションおよびシミュレーション技術
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
US5990896A (en) * 1996-09-30 1999-11-23 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Rapid and efficient terrain surface finding system
US6280323B1 (en) * 1996-11-21 2001-08-28 Konami Co., Ltd. Device, method and storage medium for displaying penalty kick match cursors in a video soccer game
US5953077A (en) * 1997-01-17 1999-09-14 Fox Sports Productions, Inc. System for displaying an object that is not visible to a camera
CN1188193C (zh) 1997-02-18 2005-02-09 世嘉股份有限公司 图像处理装置及图像处理方法
US20020049690A1 (en) * 2000-06-16 2002-04-25 Masanori Takano Method of expressing crowd movement in game, storage medium, and information processing apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100889786B1 (ko) * 2001-05-21 2009-03-20 가부시키가이샤 세가 화상처리장치 및 게임장치
KR20170081964A (ko) * 2016-01-05 2017-07-13 한국전자통신연구원 공간 구조 인식을 통한 증강 현실 장치 및 그 방법

Also Published As

Publication number Publication date
WO1998035734A1 (fr) 1998-08-20
EP0901803A4 (en) 2001-02-28
EP0901803B1 (en) 2006-02-15
CN1217668A (zh) 1999-05-26
US6989829B2 (en) 2006-01-24
US7737968B2 (en) 2010-06-15
DE69833482T2 (de) 2006-10-12
CN1640519B (zh) 2010-06-09
US20090115781A1 (en) 2009-05-07
CN1188193C (zh) 2005-02-09
CN1640519A (zh) 2005-07-20
US20050239547A1 (en) 2005-10-27
ES2260830T3 (es) 2006-11-01
EP1642624A2 (en) 2006-04-05
KR100300832B1 (ko) 2002-10-19
EP1642624A3 (en) 2007-02-28
US20010040575A1 (en) 2001-11-15
DE69833482D1 (de) 2006-04-20
HK1081135A1 (en) 2006-05-12
EP0901803A1 (en) 1999-03-17
US7532211B2 (en) 2009-05-12

Similar Documents

Publication Publication Date Title
KR100300832B1 (ko) 화상처리장치및화상처리방법
US8172678B2 (en) Image processing for a game
US6746331B1 (en) Assisting a player to contact an object by adjusting timing
JP3529138B2 (ja) 画像処理装置、画像処理方法及びこれを用いたゲーム装置並びに記憶媒体
US7573479B2 (en) Graphics processing device, graphics processing method, game machine, and storage medium
JPWO2004045734A1 (ja) ゲーム画像処理プログラム及び記憶媒体
EP2253358B1 (en) Game device, game device control method, program, information storage medium
JPH10290886A (ja) 画像処理装置および画像処理方法
JP4502678B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2009129167A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2006061717A (ja) ゲーム画像の表示制御プログラム及びゲーム装置並びに記憶媒体
JP2898578B2 (ja) シミュレーション装置及び画像合成方法
JP3052933B2 (ja) 画像処理装置および画像処理方法
JP4079358B2 (ja) ゲーム装置、ゲーム制御方法、及びプログラム
JP2006263321A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2007054656A (ja) 画像処理装置および画像処理方法
JP3912658B2 (ja) 画像処理装置、画像処理方法及びこれを用いたゲーム装置並びに記憶媒体
JP2012190146A (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
JP2002273029A (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: 20120608

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee