KR20230089519A - 비디오 게임들을 위한 엿보기-방지 시스템 - Google Patents

비디오 게임들을 위한 엿보기-방지 시스템 Download PDF

Info

Publication number
KR20230089519A
KR20230089519A KR1020220055373A KR20220055373A KR20230089519A KR 20230089519 A KR20230089519 A KR 20230089519A KR 1020220055373 A KR1020220055373 A KR 1020220055373A KR 20220055373 A KR20220055373 A KR 20220055373A KR 20230089519 A KR20230089519 A KR 20230089519A
Authority
KR
South Korea
Prior art keywords
pov
character
person
characters
player
Prior art date
Application number
KR1020220055373A
Other languages
English (en)
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 KR20230089519A publication Critical patent/KR20230089519A/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
    • 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
    • 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/70Game security or game management aspects
    • A63F13/75Enforcing rules, e.g. detecting foul play or generating lists of cheating players
    • 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5252Changing parameters of virtual cameras using two or more virtual cameras concurrently or sequentially, e.g. automatically switching between fixed virtual cameras when a character changes room or displaying a rear-mirror view in a car-driving game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/837Shooting of targets
    • 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/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/538Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for performing operations on behalf of the game client, e.g. rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Processing Or Creating Images (AREA)

Abstract

당면한 기술의 다양한 양태들은 비디오 게임에서 캐릭터의 렌더링을 방지하기 위한 시스템들, 방법들, 및 머신-판독가능 매체들에 관한 것이다. 방법은 제1 캐릭터가 1인칭 관점(POV)에서 렌더링되는 것에 관한 액션을 수신하는 것을 포함하고, 액션은 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경되도록 한다. 방법은 제1 캐릭터의 POV가 변경되어야 한다는 것을 검출하는 것을 포함한다. 방법은 1인칭 POV에서 제1 캐릭터의 관측 시야(FOV)의 외부에 있고 3인칭 POV에서 제1 캐릭터의 FOV 내에 있을 캐릭터들을 결정하는 것을 포함한다. 방법은 제1 캐릭터의 POV를 1인칭 POV로부터 3인칭 POV로 변경하는 것을 포함한다. 방법은 제1 캐릭터의 3인칭 POV에서 비디오 게임의 렌더링을 야기시키는 것을 포함하고, 렌더링은 다른 캐릭터들의 렌더링을 방지한다.

Description

비디오 게임들을 위한 엿보기-방지 시스템{ANTI-PEEK SYSTEM FOR VIDEO GAMES}
비디오 게임들은 가상적 대화형 환경에서 다른 사람들과 플레이하고, 협력하고, 경쟁하기 위한 참가 방식을 제공한다. "1인칭 슈터(First Person Shooter)들" 또는 "FPS"로서 보편적으로 공지된 1인칭 관점(point of view)(POV) 슈터들은 플레이어들이 다양한 게임 모드들에서 협력적으로 그리고 경쟁적으로 플레이할 수 있는 인기 있는 게임 장르이다. e스포츠(esports)의 성장 및 상승으로, FPS 장르에서의 경쟁적인 게이밍이 인기를 얻고 있다. 이 유형들의 비디오 게임들의 경쟁적인 본질로 인해, 일부 플레이어들은 활용을 위하여 의도되지 않았던 게임내 특징들을 활용함으로써 불공정한 장점을 얻는 것을 시도할 수 있다.
본 개시내용의 하나의 실시예에 따르면, 비디오 게임에서 비디오 게임 캐릭터(character)의 렌더링을 방지하기 위한 컴퓨터로 구현된 방법이 제공된다. 방법은 제1 캐릭터가 1인칭 관점(POV)에서 렌더링(render)되는 것에 대응하는 액션을 수신하는 단계 - 액션은 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭(third-person) POV로 변경되도록 하는 유형임 - 를 포함한다. 방법은 수신된 액션에 적어도 부분적으로 기초하여, 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경되어야 한다는 것을 검출하는 단계를 포함한다. 방법은 1인칭 POV에서 제1 캐릭터의 관측 시야(field of view)(FOV)의 외부에 있고 3인칭 POV에서 제1 캐릭터의 FOV 내에 있을 하나 이상의 다른 캐릭터들을 결정하는 단계를 포함한다. 방법은 제1 캐릭터의 POV를 1인칭 POV로부터 3인칭 POV로 변경하는 단계를 포함한다. 방법은 제1 캐릭터의 3인칭 POV에서 비디오 게임의 렌더링을 야기시키는 단계 - 렌더링은 결정하는 것에 기초하여 하나 이상의 다른 캐릭터들의 렌더링을 방지함 - 를 포함한다.
본 개시내용의 하나의 실시예에 따르면, 프로세서 및 저장된 명령들을 포함하는 메모리를 포함하는 시스템이 제공되고, 저장된 명령들은, 프로세서에 의해 실행될 때, 프로세서로 하여금, 비디오 게임에서 비디오 게임 캐릭터의 렌더링을 방지하기 위한 방법을 수행하게 한다. 방법은 제1 캐릭터가 1인칭 관점(POV)에서 렌더링되는 것에 대응하는 액션을 수신하는 단계 - 액션은 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경되도록 하는 유형임 - 를 포함한다. 방법은 수신된 액션에 적어도 부분적으로 기초하여, 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경되어야 한다는 것을 검출하는 단계를 포함한다. 방법은 1인칭 POV에서 제1 캐릭터의 관측 시야(FOV)의 외부에 있고 3인칭 POV에서 제1 캐릭터의 FOV 내에 있을 하나 이상의 다른 캐릭터들을 결정하는 단계를 포함한다. 방법은 제1 캐릭터의 POV를 1인칭 POV로부터 3인칭 POV로 변경하는 단계를 포함한다. 방법은 제1 캐릭터의 3인칭 POV에서 비디오 게임의 렌더링을 야기시키는 단계 - 렌더링은 결정하는 것에 기초하여 하나 이상의 다른 캐릭터들의 렌더링을 방지함 - 를 포함한다.
본 개시내용의 하나의 실시예에 따르면, 명령들(예컨대, 저장된 명령들의 시퀀스(sequence)들)을 포함하는 비-일시적 컴퓨터-판독가능 저장 매체가 제공되고, 명령들은, 프로세서에 의해 실행될 때, 프로세서로 하여금, 비디오 게임에서 비디오 게임 캐릭터의 렌더링을 방지하기 위한 방법을 수행하게 한다. 방법은 제1 캐릭터가 1인칭 관점(POV)에서 렌더링되는 것에 대응하는 액션을 수신하는 단계 - 액션은 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경하게 하는 유형임 - 를 포함한다. 방법은 수신된 액션에 적어도 부분적으로 기초하여, 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경되어야 한다는 것을 검출하는 단계를 포함한다. 방법은 1인칭 POV에서 제1 캐릭터의 관측 시야(FOV)의 외부에 있고 3인칭 POV에서 제1 캐릭터의 FOV 내에 있을 하나 이상의 다른 캐릭터들을 결정하는 단계를 포함한다. 방법은 제1 캐릭터의 POV를 1인칭 POV로부터 3인칭 POV로 변경하는 단계를 포함한다. 방법은 제1 캐릭터의 3인칭 POV에서 비디오 게임의 렌더링을 야기시키는 단계 - 렌더링은 결정하는 것에 기초하여 하나 이상의 다른 캐릭터들의 렌더링을 방지함 - 를 포함한다.
본 개시내용의 하나의 실시예에 따르면, 명령들을 저장하기 위한 수단, 저장된 명령들을 실행하기 위한 수단을 포함하는 시스템이 제공되고, 저장된 명령들은, 수단에 의해 실행될 때, 수단으로 하여금, 비디오 게임에서 비디오 게임 캐릭터의 렌더링을 방지하기 위한 방법을 수행하게 한다. 방법은 제1 캐릭터가 1인칭 관점(POV)에서 렌더링되는 것에 대응하는 액션을 수신하는 단계 - 액션은 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경되도록 하는 유형임 - 를 포함한다. 방법은 수신된 액션에 적어도 부분적으로 기초하여, 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경되어야 한다는 것을 검출하는 단계를 포함한다. 방법은 1인칭 POV에서 제1 캐릭터의 관측 시야(FOV)의 외부에 있고 3인칭 POV에서 제1 캐릭터의 FOV 내에 있을 하나 이상의 다른 캐릭터들을 결정하는 단계를 포함한다. 방법은 제1 캐릭터의 POV를 1인칭 POV로부터 3인칭 POV로 변경하는 단계를 포함한다. 방법은 제1 캐릭터의 3인칭 POV에서 비디오 게임의 렌더링을 야기시키는 단계 - 렌더링은 결정하는 것에 기초하여 하나 이상의 다른 캐릭터들의 렌더링을 방지함 - 를 포함한다.
임의의 특정한 엘리먼트 또는 액트(act)의 논의를 용이하게 식별하기 위하여, 참조 번호에서의 가장 중요한 숫자 또는 숫자들은 그 엘리먼트가 최초로 속되는 도면 번호를 지칭한다.
도 1a는 본 개시내용의 어떤 양태들에 따른, 비디오 게임에서 비디오 게임 캐릭터의 렌더링을 방지하기 위한 예시적인 도면을 예시한다.
도 1b는 본 개시내용의 어떤 양태들에 따른, 비디오 게임에서 비디오 게임 캐릭터의 렌더링을 방지하기 위한 예시적인 도면을 예시한다.
도 1c는 본 개시내용의 어떤 양태들에 따른, 비디오 게임에서 비디오 게임 캐릭터의 렌더링을 방지하기 위한 예시적인 도면을 예시한다.
도 2a는 본 개시내용의 어떤 양태들에 따른, 엿보기-방지(anti-peek) 시스템이 디스에이블(disable)될 때의 예시적인 1인칭 관점(POV)을 예시한다.
도 2b는 본 개시내용의 어떤 양태들에 따른, 엿보기-방지 시스템이 디스에이블될 때의 예시적인 3인칭 관점(POV)을 예시한다.
도 2c는 본 개시내용의 어떤 양태들에 따른, 엿보기-방지 시스템이 인에이블(enable)될 때의 예시적인 1인칭 관점(POV)을 예시한다.
도 2d는 본 개시내용의 어떤 양태들에 따른, 엿보기-방지 시스템이 인에이블될 때의 예시적인 3인칭 관점(POV)을 예시한다.
도 3은 하나 이상의 다른 구현예들에 따라, 비디오 게임 상대방의 렌더링을 방지하도록 구성된 시스템을 예시한다.
도 4는 본 개시내용의 어떤 양태들에 따른, 비디오 게임 상대방의 렌더링을 방지하기 위한 예시적인 흐름도를 예시한다.
도 5는 당면한 기술의 양태들이 구현될 수 있는 예시적인 컴퓨터 시스템(예컨대, 클라이언트 및 서버의 둘 모두를 표현함)을 예시하는 블록도이다.
하나 이상의 구현예들에서, 각각의 도면에서의 도시된 컴포넌트들의 전부가 요구되지 않을 수 있고, 하나 이상의 구현예들은 도면에서 도시되지 않는 추가적인 컴포넌트들을 포함할 수 있다. 컴포넌트들의 배열 및 유형에서의 변형들은 당면한 개시내용의 범위로부터 이탈하지 않으면서 행해질 수 있다. 추가적인 컴포넌트들, 상이한 컴포넌트들, 또는 더 적은 컴포넌트들이 당면한 개시내용의 범위 내에서 사용될 수 있다.
당면한 개시내용은 1인칭 POV 멀티플레이어 게임에서의 렌더링 활용들을 방지하기 위한 "엿보기-방지(anti-peek)" 시스템들 및 방법들을 제공한다. 엿보기-방지 특징은 카메라 뷰(camera view)를 3인칭 POV으로 일시적으로 전환하거나 변경하는 액션들을 포함하는 온라인 멀티플레이어 1인칭 POV 비디오 게임들의 공정성 및 경쟁적 무결성을 유지하거나 증가시키는 것을 목적으로 한다.
양태에서, 플레이어의 캐릭터 이외의 일부 플레이어 캐릭터들 또는 그 부분들은 그 캐릭터들이 플레이어의 캐릭터의 1인칭 POV에 대응하는 관측 시야(FOV) 내로부터 가시적이지 않을 때에 렌더링되는 것이 방지된다. 예를 들어, 3인칭 POV에 대응하는 FOV 내로부터 가시적일(예컨대, 렌더링되거나 디스플레이됨) 그 플레이어의 캐릭터 이외의 캐릭터(예컨대, 상대방 플레이어에 대응하는 상대방 캐릭터 또는 비-플레이어 캐릭터(non-player character)(NPC))는, 액션이 카메라 뷰 또는 시각이 (예컨대, 1인칭으로부터 3인칭으로) 변경되도록 할 때, 그 다른 캐릭터가 플레이어의 캐릭터의 1인칭 POV의 FOV 내에 있지 않을 경우에 렌더링되지 않을 수 있다. 이러한 방식으로, 다른 캐릭터 및/또는 다른 캐릭터에 대응하는 다른 플레이어는 시각이 변경될 때에 불공정하게 가시적으로 되지 않을 수 있다.
1인칭 멀티플레이어 비디오 게임은 카메라 시각이 3인칭 뷰(third-person view)로 일시적으로 스위칭하게 하는 액션들을 포함할 수 있다. 예를 들어, 게임 액션은 하나 이상의 플레이어들의 카메라 시각이 애니메이션(animation)의 기간(예컨대, 액션의 기간) 동안에 1인칭으로부터 3인칭으로 스위칭하게 하는 애니메이션을 포함할 수 있다.
이것은 예를 들어, 플레이어가 그 캐릭터(예컨대, 플레이어-제어된 캐릭터)로 하여금, 또 다른 플레이어-제어된 캐릭터 및/또는 또 다른 플레이어로부터의(또는 또 다른 플레이어-제어된 캐릭터 및/또는 또 다른 플레이어에 의해 보여지지 않은 채로 유지하기 위한) 그 캐릭터 커버를 제공하는 객체 근처에서 이모트(emote)를 수행하게 할 때에 그러하다. 플레이어들은 그 캐릭터들을 노출시키지 않으면서 코너들 주위에서 엿보고 게임 액션, 상대방들, 또는 객체들을 보기 위하여 이 게임 역학(mechanic)을 오용하거나 활용하는 것이 가능할 수 있다. 이것은 특히, 경쟁적인 플레이에서 상당한 문제인 불공정한 시각적 장점을 그 플레이어들에게 제공한다. 그러므로, 불공정한 장점을 위하여 이러한 게임내 액션들의 활용을 방지하는 것이 바람직하다.
양태들에 따르면, 엿보기-방지 특징은 1인칭 게임에서, 게임 액션이 카메라 뷰 또는 시각이 1인칭으로부터 3인칭으로 스위칭하게 할 때마다 트리거링될 수 있다. 예를 들어, 게임 액션은 카메라 뷰가 1인칭 POV로부터 3인칭 POV로 스위칭하게 하는 애니메이션을 포함할 수 있다. 예시적인 구현예에서, 캐릭터에 의한 게임 액션은 플레이어의 캐릭터에 의해 수행된 이모트, 제스처(gesture), 및/또는 다른 애니메이션을 포함할 수 있고, 따라서, 카메라는 그 자신의 캐릭터가 3인칭 POV에서 게임 액션을 수행하는 것을 플레이어가 볼 수 있도록 뷰들을 스위칭할 수 있다.
엿보기-방지 특징은 또한, 피니셔(finisher)들, 부활하는 팀동료들, 전개/재전개, 비행, 리스포닝(respawning), 및 3인칭 시각 최신 비디오 게임들에서 전형적으로 디스플레이되는 본 기술분야에서의 통상의 기술자들에게 공지된 다른 유사한 액션들을 포함하지만, 이것으로 제한되지 않는 것과 같은, 2 이상의 플레이어들의 캐릭터들을 수반하는 일시적인 카메라 뷰 변경을 야기시키는 다른 게임 액션들을 위하여 사용될 수 있다.
일부 실시예들에 따르면, 카메라 뷰에서의 변경을 야기시키는 액션은 팀동료 또는 상대방 플레이어 및/또는 캐릭터와 같은 제2 플레이어 및/또는 캐릭터의 액션들을 포함할 수 있다. 예시적인 구현예에서, 제2 플레이어 및/또는 캐릭터의 액트(예컨대, 액션)는 제1 플레이어 및/또는 캐릭터가 3인칭 시각 뷰에 진입하게 할 수 있다. 제2 플레이어 및/또는 캐릭터의/와의 액션들 또는 상호작용들이 제1 플레이어 및/또는 캐릭터가 3인칭 시각 뷰에 진입하게 하는 일부 예들은, 제1 캐릭터가 쓰러지고 팀동료에 의해 직접적으로 부활될 때(예컨대, 두 플레이어들 및/또는 캐릭터들은 3인칭 뷰로 들어감), 제1 플레이어가 쓰러지고 팀동료에 의해 간접적으로 부활될 때(예컨대, 부활하는 제1 플레이어는 3인칭 뷰로 들어감), 및 제1 캐릭터가 쓰러지고 적 플레이어가 피니셔를 수행할 때의 사례들을 포함한다. 양태에서, 마무리 제거 이동(finishing elimination move)은 쓰러진 캐릭터가 게임플레이(gameplay)로부터 제거되게 할 수 있고, 두 플레이어들 및/또는 캐릭터들은 3인칭 뷰로 들어갈 수 있다(예컨대, 이 상황의 역이 마찬가지로 적용됨).
일부 실시예들에서, 카메라 뷰가 또 다른 플레이어 및/또는 캐릭터를 위하여 변경되게 하는 하나의 플레이어 및/또는 캐릭터에 의한 일부 액션들은 캐릭터들 중의 하나가 또 다른 것의 1인칭 POV의 FOV의 외부에 있더라도 두 캐릭터 모델들이 렌더링되도록 구성될 수 있다. 예를 들어, 하나의 캐릭터가 스텔스 제거(stealth elimination)를 수행하기 위하여 후방으로부터 또 다른 캐릭터에 다가가거나 접근할 경우에, 플레이어 및/또는 캐릭터의 어느 것도 불공정한 장점을 얻지 않을 것이므로, 게임 또는 엿보기-방지 특징은 두 플레이어들 및/또는 캐릭터들이 그 사례에서 서로를 지각하는 것을 허용하도록 구성될 수 있다. 이와 같이, 불공정한 장점을 제공하지 않는 하나 이상의 플레이어들 및/또는 캐릭터들을 위하여 카메라 시각 변경들을 야기시키는 일부 액션들은 엿보기-방지 특징으로 구성되거나 엿보기-방지 특징으로 연관될 필요가 없다.
비디오 게임의 캐릭터들 또는 플레이어 캐릭터들은 게임플레이 액션들 또는 커맨드들을 용이하게 하거나 수행하도록 구성된 제어가능한 캐릭터 모델들을 지칭할 수 있다. 비-플레이어 캐릭터(NPC)들은 플레이어에 의해 제어되지 않는 캐릭터 모델들을 지칭할 수 있다. 일부 실시예들에서, NPC들은 하나 이상의 플레이어들 또는 플레이어 캐릭터들에 대한 동맹들 및/또는 상대방들(예컨대, 적들)일 수 있다.
게임플레이 세션(들)의 플레이어 객체들은 게임플레이 또는 다른 게임내 액션들을 용이하게 하거나 가능하게 하기 위하여 이용된 제어가능한 객체들 또는 모델들을 지칭할 수 있다. 플레이어 객체들은 예를 들어, 본 기술분야에서의 통상의 기술자들에게 공지된 차량들, 선박들, 항공기, 배들, 타일(tile)들, 카드(card)들, 주사위, 저당물(pawn)들, 및 유사한 다른 게임내 항목들일 수 있다.
단순화를 위하여, 플레이어 캐릭터들 및 플레이어 객체들은 일부 실시예들에서 플레이어 캐릭터들로서 본 명세서에서 집합적으로 지칭된다. 본 명세서에서 이용된 바와 같이, "제어가능한"은 플레이어 또는 사용자에 의한 것과 같이, 제어되고, 명령되고, 및/또는 지시(예컨대, 이동되고, 수정되는 등)될 수 있고 및/또는 이와 같이 구성되는 특성을 지칭한다는 것이 이해되어야 한다.
본 개시내용에서 설명된 바와 같이, 비디오 게임을 플레이하는 컴퓨팅 디바이스 상의 또는 컴퓨팅 디바이스의 "사용자"는 비디오 게임의 "플레이어" 또는 "상대방"을 지칭하거나 이와 동의어인 것이 이해되어야 한다. 일부 실시예들에서, "플레이어" 및 "상대방"은 비디오 게임에서 서로에 대하여 경쟁하고 있는 별도의 사용자들이다.
관점(POV)은 주어진 카메라 또는 캐릭터로부터와 같은 시각 또는 가시선(line-of-sight)을 지칭한다. 관측 시야(FOV)는 POV에 대한 시야각을 지칭하고 및/또는 이러한 시야각에 대응한다. 이와 같이, 각각의 POV는 적어도 하나의 대응하는 FOV를 가진다. 일부 실시예들에서, 다수의 POV들 및 FOV들은 비디오 게임에서의 이용 또는 참조를 위하여 구성될 수 있다. 단순화를 위하여, 용어들 POV 및 FOV는 캐릭터 또는 객체가 뷰, 시각, 또는 가시선 내에 있다는 것을 의미하기 위하여 상호 교환가능하게 이용될 수 있다.
플레이어의 캐릭터의 "캐릭터 눈(character eye)"은 캐릭터의 POV를 지칭할 수 있다. 캐릭터 눈에 대응하는 FOV는 일부 실시예들에서, 게임의 설정들 내에서 플레이어에 의해 설정된 "플레이어 관측 시야(FOV)"에 대응할 수 있다. 예를 들어, 게임이 게임의 옵션들 또는 설정들 내에서 FOV 옵션을 포함할 경우에, 캐릭터 눈은 플레이어에 의해 설정된 FOV와 정합하도록 구성될 수 있어서, 엿보기-방지 특징은 설정된 FOV와 대응한다. 일부 실시예들에서, 캐릭터 눈의 FOV는 게임을 플레이어에게 렌더링하기 위하여 카메라 또는 시각에 의해 이용된 FOV와는 상이할 수 있고 및/또는 별도일 수 있다.
"카메라"는 디스플레이하기 위하여 렌더링하기 위한 POV를 제공하는 게임 객체를 지칭한다. 일부 실시예들에서, 다수의 카메라들은 시각들을 제공하거나, 스위칭하거나, 변경하기 위하여 비디오에 의해 사용될 수 있다. 일부 실시예들에서, 카메라는 단독형 게임 객체이어서, 그것은 기능하기 위한 또 다른 게임 객체와 연관되는 것을 요구하지 않는다. 일부 실시예들에서, 카메라는 또 다른 게임 객체와 연관될 수 있다. 일부 실시예들에서, 게임 객체는 또한, 카메라의 유형일 수 있다.
예를 들어, 캐릭터 눈은 일부 실시예들에서 카메라의 유형과 연관될 수 있거나, 카메라의 유형을 포함할 수 있거나, 카메라의 유형일 수 있다. 이와 같이, 1인칭 POV를 플레이어에게 제공하는 캐릭터 눈 및 카메라는 일부 실시예들에서, 별도의 게임 객체들, 또는 동일한 게임 객체일 수 있다.
이와 같이, 개시된 시스템은 컴퓨터 기술에 결부된 전통적인 비디오 게임들에서의 문제, 즉, 다른 플레이어들에 대하여 불공정한 장점을 얻기 위하여 게임내 역학들의 불공정한 사용을 방지하는 기술적 문제를 다룬다. 개시된 시스템은 컴퓨터 기술에 또한 근거를 둔 해결책을 제공함으로써, 즉, 비디오 게임 상대방 캐릭터(예컨대, 상대방-제어된 캐릭터)의 렌더링과 연관된 활용들을 방지하기 위한 기법을 제공함으로써 이 기술적 문제를 해결한다. 개시된 시스템은 주 플레이어의 캐릭터 이외의 캐릭터들의 렌더링을 위한 것과 같은, 시스템 자원들의 비용을 감소시키기 때문에, 개시된 시스템은 또한, 컴퓨터 자체의 기능을 개선시킨다.
설명에서는, 본 개시내용의 완전한 이해를 제공하기 위하여, 여러 특정 세부사항들이 기재된다. 그러나, 본 개시내용의 실시예들은 이 특정 세부사항들의 일부 없이 실시될 수 있다는 것이 본 기술분야에서의 통상의 기술자들에게 분명할 것이다. 다른 사례들에서, 널리-공지된 구조들 및 기법들은 개시내용을 모호하도록 하지 않기 위하여 상세하게 도시되지 않았다.
도 1a는 본 개시내용의 어떤 양태들에 따른, 비디오 게임 상대방(102)의 렌더링을 방지하기 위한 예시적인 오버헤드 뷰(overhead view) 도면(100)을 예시한다. 예시된 바와 같이, 상대방-제어된 캐릭터(102)(예컨대, 상대방) 및 플레이어-제어된 캐릭터(104)(예컨대, 플레이어)는 비디오 게임 시합에 참가할 수 있다. 예를 들어, 비디오 게임은 1인칭 슈터와 같은 1인칭 POV 비디오 게임일 수 있고, 상대방(102)은 플레이어(104)를 제어하는 제1 플레이어와는 상이한 제2 플레이어에 의해 제어될 수 있다. 상대방(102) 및 플레이어(104)는 각각 장벽(120)에 인접하게 위치결정될 수 있다. 예를 들어, 장벽(120)은 또 다른 캐릭터의 존재를 가릴 수 있는 벽, 바위, 관목, 나무, 문, 코너, 건물, 또는 임의의 다른 객체/장애물과 같은 게임내 환경적 특징을 포함할 수 있다.
양태들에 따르면, 플레이어(104)가 비디오 게임의 1인칭 POV로부터 상대방(102)을 볼 수 없도록, 상대방(102)은 장벽(120) 후방에 은닉/위치결정될 수 있다. 서로의 뷰에 들어오기 위하여, 상대방(102) 및/또는 플레이어(104) 중의 어느 하나는 가시선(110)이 장벽(120)의 임의의 부분과 교차하지 않도록 이동할 필요가 있을 것이다. 예를 들어, 가시선(110)은 플레이어(104)가 그들의 전방에서 볼 수 있는 것의 정면 뷰를 표현할 수 있다. 양태들에 따르면, 플레이어(104)의 정면 뷰는 정면 관측 시야(FOV)를 포함할 수 있어서, 정면 FOV는 플레이어(104)의 전방에서 180 도 이하의 뷰 너비(view span)를 포함한다. 예를 들어, 정면 뷰는 플레이어(104)의 전방에 직접적으로 있는 것(예컨대, 유사한 다른 것들 중에서, 무기의 범위, 십자선(crosshair), 중점(centered dot))을 포함할 수 있고, 전방 FOV는 최대 180 도의 주변 뷰를 포함할 수 있다. 일부 실시예들에서, 플레이어(104)의 전방 FOV는 디스플레이하기 위하여 렌더링된 카메라 시각 또는 카메라 뷰에 대응한다.
양태들에 따르면, 플레이어(104)는 카메라(106)가 1인칭 POV로부터 3인칭 POV로 스위칭하게 할 수 있는 게임 액션을 수행할 수 있다. 예를 들어, 이모트는 플레이어의 캐릭터(104)에 의해 수행되는 제스처, 댄스, 이동, 또는 유사한 다른 애니메이션을 포함할 수 있지만, 이것으로 제한되지는 않는다. 이모트의 수행 동안에, 카메라(106)는 플레이어(104)가 3인칭 POV로부터 그 자신의 제스처를 볼 수 있도록 뷰들을 스위칭할 수 있다.
도 1a에서 예시된 바와 같이, 카메라(106)가 게임내 액션(예컨대, 이모트)을 캡처하기 위하여 빠져나오는 그러한 방식으로, 상대방(102) 및 플레이어(104)가 장벽(120)에 인접하게 위치될 경우에, 상대방(102)이 플레이어(104)의 가시선(110) 내에 있지 않더라도, 플레이어(104)가 상대방(102)을 보는 것이 가능할 수 있는 상황들이 있을 수 있다. 플레이어(104)가 이러한 방식으로 장벽(120) 주위에서 불공정하게 엿보는 것을 방지하기 위하여, 엿보기-방지 특징은 이러한 상황들에서 상대방(102)의 렌더링을 방지하기 위하여 트리거링될 수 있다.
양태들에 따르면, 플레이어(104)의 가시선(110)과 카메라 가시선(112) 사이의 비교는 상대방(102)을 렌더링할 것인지 여부를 결정하기 위하여 수행될 수 있다. 예를 들어, 도 1a에서, 상대방(102)은 플레이어(104)의 가시선(110) 내에 있지 않다. 그러나, 플레이어(104)가 이모트를 수행할 경우에, 상대방(102)은 카메라 가시선(112) 내에 있을 것이다. 그러므로, 플레이어(104)에 의한 장벽(120) 주위에서의 불공정한 엿보기를 방지하기 위하여, 엿보기-방지 특징은 이모트가 수행되고 있는 동안에 상대방(102)의 렌더링을 디스에이블/방지할 수 있다. 이러한 방식으로, 상대방(102)은 플레이어(104)로부터 은닉된 채로 유지될 것이고, 플레이어(104)가 장벽(120) 주위에서 엿보기 위하여 이모트의 게임내 액션을 활용하는 것을 방지할 것이다.
구현예에서, 카메라 가시선(112)은 카메라 FOV(108)(예컨대, 3인칭 FOV) 내의 어딘가에 있을 수 있다. 일부 실시예들에서, 카메라 FOV(108)는 다양한 시야각들을 지원한다. 예를 들어, 카메라 FOV(108)는 또한, 180 도 이하의 FOV 너비(130)를 포함할 수 있다.
도 1b는 본 개시내용의 어떤 양태들에 따른, 비디오 게임 상대방(102)의 렌더링을 방지하기 위한 또 다른 예시적인 오버헤드 뷰 도면(140)을 예시한다. 예시된 바와 같이, 플레이어(104)는 가시선(110)이 장벽(120)의 임의의 부분과 교차하지 않도록 이동하였고 및/또는 이러한 위치에 있다. 이 시나리오에서, 상대방(102)은 카메라(106)가 3인칭 POV로 빠져나오는 상황들에서 렌더링될 것이다. 이것은 상대방(102)이 이미 플레이어(104)의 뷰에 있기 때문이고, 따라서, 상대방(102)을 렌더링함으로써 얻어진 임의의 불공정한 장점이 없을 것이다.
도 1c는 본 개시내용의 어떤 양태들에 따른, 비디오 게임 상대방(102)의 렌더링을 방지하기 위한 또 다른 예시적인 오버헤드 뷰 도면(150)을 예시한다. 예시된 바와 같이, 상대방(102)은 가시선(110)이 장벽(120)의 임의의 부분과 교차하지 않도록 이동하였고 및/또는 이러한 위치에 있다. 이 시나리오에서, 상대방(102)은 카메라(106)가 3인칭 POV로 빠져나오는 상황들에서 렌더링될 것이다. 이것은 상대방(102)이 이미 플레이어(104)의 뷰에 있기 때문이고, 따라서, 상대방(102)을 렌더링함으로써 얻어진 임의의 불공정한 장점이 없을 것이다.
양태들에 따르면, 상대방(102) 및/또는 플레이어(104)의 각각은 도 1a 내지 도 1c에서 예시된 바와 같이, 서로 및/또는 장벽(120)에 관련하여 일정한 모션 중일 수 있다. 예를 들어, 상대방(102) 및/또는 플레이어(104)가 도 1a 내지 도 1c, 그리고 그 다음으로 다시 도 1c로부터 도 1a로 예시된 바와 같이 그 개개의 포지션들로부터 전후로 이동하는 상황들에서, 엿보기-방지 시스템은 상대방(102)이 플레이어(104)의 가시선(110) 내에 있는지 여부에 따라 온(on) 및 오프(off)를 트리거링할 수 있다. 그 결과, 상대방(102) 및 플레이어(104)가 어떻게 서로에 관련하여 지속적으로 이동할 수 있는지에 따라, 상대방(104)은 렌더링되는 것과 및/또는 렌더링되는 것이 방지되는 것 사이에서 교대할 수 있다.
양태들에 따르면, 엿보기-방지 특징은 캐릭터 눈(예컨대, 가시선(110))과 카메라 눈(예컨대, 카메라 FOV(108) 내에 있는 카메라 가시선(112)) 사이를 구별함으로써 기능할 수 있다. 엿보기-방지 특징이 트리거링될 때, 카메라 눈의 관측 시야 내의 임의의 다른 캐릭터들이 식별되고, 그 시점에서, 엿보기-방지 특징은 3인칭으로 토글(toggle)되었고, 평가를 위하여 그 다른 캐릭터들을 리스트에 추가한다. 궁극적으로, 다수의 트레이스(trace)들은 캐릭터 눈으로부터, 평가 리스트 상의 다른 캐릭터들의 각각의 캐릭터의 상이한 신체 일부분들(예컨대, 유사한 다른 것들 중에서, 가슴, 머리, 팔뚝)로 수행될 수 있다. 리스트 상의 다른 캐릭터들 중의 하나에 대한 모든 트레이스들이 실패하여, 그 신체 일부분들의 각각이 캐릭터 눈으로부터 가시적이지 않다는 것을 의미할 경우에, 그 다른 캐릭터는 렌더링되지 않는다. 그렇지 않을 경우에, 이들은 렌더링된다. 구현예에서, 트레이스들은 각각의 캐릭터의 각각의 신체 일부분으로부터 취해질 수 있다.
양태들에 따르면, 렌더링 결정은 또한, 전체 캐릭터가 아니라 개별적인 신체 일부분들에 대하여 수행될 수 있다. 예를 들어, 엿보기-방지 특징은 또한, 3인칭 뷰로부터 적어도 부분적으로 가시적인 임의의 다른 캐릭터들이 리스트에 추가되도록 할 수 있다. 캐릭터 눈으로부터 리스트 상의 다른 캐릭터들의 각각의 캐릭터의 상이한 신체 일부분들로의 트레이스들이 수행될 수 있고, 캐릭터 눈으로부터 가시적이지 않은 신체 일부분들은 이들이 렌더링되지 않도록 표시될 수 있다.
양태들에 따르면, 엿보기-방지 특징은 또한, 유사한 다른 것들 중에서, 그 그림자들, 감시 드론들, 정문들, 덫(trap)들과 같은, 다른 캐릭터들의 존재를 표시하는 것들의 렌더링을 방지하기 위하여 사용될 수 있다. 이들이 3인칭 뷰로부터 가시적이지만, 이와 다르게 그 1인칭 뷰로부터 캐릭터에 의해 가시적이지 않을 경우에, 이들은 불공정한 장점을 방지하도록 도시되고/렌더링되지 않는다.
추가적인 양태들에 따르면, 엿보기-방지 특징은 또한, 유사한 다른 것들 중에서, 피니셔들, 부활하는 팀동료들, 전개/재전개, 비행을 포함하지만, 이것으로 제한되지 않는 것과 같은, 일시적인 카메라 뷰 변경을 야기시킬 수 있는 다른 게임 액션들을 위하여 사용/트링거링될 수 있다.
구현예에서, 엿보기-방지 특징은 게임플레이에서의 어떤 시간의 주기들 동안에 비디오 게임 시스템에 의해 자동적으로 턴온 또는 턴오프될 수 있다. 예를 들어, 엿보기-방지 특징은 시합이 시작되기 전에(예컨대, 사전게임 동안에) 및/또는 시합이 종료된 후에 턴오프될 수 있다.
양태에 따르면, 엿보기-방지 특징이 트리거링될 때, 플레이어(104)가 이동하더라도, 플레이어(104)가 상대방을 여전히 보지 않도록, 가시선(110)은 단단하게 록킹될 수 있다. 양태에 따르면, 엿보기-방지 특징은 단지 상대방들이 아니라, 동맹들을 포함하는 모든 다른 캐릭터들에 적용할 수 있다.
게임 캐릭터들(예컨대, 플레이어-제어된 캐릭터들)을 참조하여 이용될 때, "보는 것(seeing)"은 캐릭터의 FOV로부터 비차단되는 것을 표시하도록 의도된다는 것이 이해된다.
도 2a는 본 개시내용의 어떤 양태들에 따른, 엿보기-방지 시스템이 디스에이블될 때의 예시적인 1인칭 관점(POV)(200)을 예시한다. 예시된 바와 같이, 1인칭 POV로부터, 장벽(210)은 장벽(210)의 후방에 있는 것의 플레이어의 뷰를 차단한다. 플레이어는 게임내 메뉴(208)로부터 선택될 수 있는 이모트(206)(예컨대, 어퍼컷 제스처 또는 다른 것)를 수행하도록 선택할 수 있다. 도 2b에서 이하에 예시되는 바와 같이, POV는 플레이어가 이모트(206)를 수행할 때에 1인칭으로부터 3인칭으로 변경된다.
도 2b는 본 개시내용의 어떤 양태들에 따른, 엿보기-방지 시스템이 디스에이블될 때의 예시적인 3인칭 관점(POV)(220)을 예시한다. 예시된 바와 같이, 상대방(202) 및 플레이어(204)는 장벽(210)에 인접하게 위치결정된다. 가시선(예컨대, 가시선(110))은 장벽(210)과 교차하는 것으로 결정될 수 있다.
예를 들어, 도 2a에서 예시된 바와 같이, 상대방(202)(예컨대, 캐릭터 모델)의 부분은 1인칭 POV로부터 가시적이지 않고, 그러므로, 상대방은 가시선 내에 있지 않다. 그러므로, 플레이어(204)가 (예컨대, 이모트(206)를 실행/수행하는 것을 통해) 카메라가 1인칭 POV로부터 3인칭 POV로 스위칭하게 할 경우에, 상대방(202)은 공정성 및 경쟁적 무결성을 유지하기 위하여 렌더링되지 않아야 한다. 그러나, 엿보기-방지 특징이 턴오프되므로(예컨대, 디스에이블됨), 상대방은 렌더링되어, 플레이어(204)에 대한 불공정한 장점을 야기시킨다.
도 2c는 본 개시내용의 어떤 양태들에 따른, 엿보기-방지 시스템이 인에이블될 때의 예시적인 1인칭 관점(POV)(230)을 예시한다. 예시된 바와 같이, 1인칭 POV로부터, 장벽(210)은 장벽(210)의 후방에 있는 것의 플레이어의 뷰를 차단한다. 플레이어는 게임내 메뉴(208)로부터 선택될 수 있는 이모트(206)(예컨대, 어퍼컷 제스처 또는 다른 것)를 수행하도록 선택할 수 있다. 도 2d에서 이하에 예시되는 바와 같이, POV는 플레이어가 이모트(206)를 수행할 때에 1인칭으로부터 3인칭으로 변경된다.
도 2d는 본 개시내용의 어떤 양태들에 따른, 엿보기-방지 시스템이 인에이블될 때의 예시적인 3인칭 관점(POV)(240)을 예시한다. 위에서 논의된 바와 같이, 가시선(예컨대, 가시선(110))이 장벽(210)과 교차하는지 여부가 결정될 수 있다. 예를 들어, 도 2c에서 예시된 바와 같이, 장벽(210)은 장벽(210)의 후방에 있는 것의 플레이어의 뷰를 차단하고, 그러므로, 상대방들(임의의 것이 있다면)은 가시선 내에 있지 않을 것이다. 그러므로, 플레이어(204)가 (예컨대, 이모트(206)를 실행/수행하는 것을 통해) 카메라가 1인칭 POV로부터 3인칭 POV로 스위칭하게 할 경우에, 상대방(202)은 렌더링되지 않아야 한다. 그러므로, 엿보기-방지 특징이 턴온되므로(예컨대, 인에이블됨), 상대방(하나가 있다면)은 렌더링되지 않는다. 이러한 방식으로, 플레이어(204)에 대한 잠재적인 불공정한 장점은 방지/제거되고, 이것은 비디오 게임의 경쟁 및 유희를 개선시킨다.
도 3은 엿보기-방지 특징의 하나 이상의 다른 구현예들에 따라, 비디오 게임 상대방의 렌더링을 방지하도록 구성된 시스템(300)을 예시한다. 일부 구현예들에서, 시스템(300)은 하나 이상의 컴퓨팅 플랫폼들(302)을 포함할 수 있다. 컴퓨팅 플랫폼(들)(302)은 클라이언트/서버 아키텍처, 피어-투-피어(peer-to-peer) 아키텍처, 및/또는 다른 아키텍처들에 따라 하나 이상의 원격 플랫폼들(304)과 통신하도록 구성될 수 있다.
일부 실시예들에서, 원격 플랫폼(들)(304)은 컴퓨팅 플랫폼(들)(302)을 통해 및/또는 클라이언트/서버 아키텍처, 피어-투-피어 아키텍처, 및/또는 다른 아키텍처들에 따라 다른 원격 플랫폼들과 통신하도록 구성될 수 있다. 일부 실시예들에서, 원격 플랫폼(들)(304) 및 컴퓨팅 플랫폼(들)(302)은 유사한 컴퓨팅 디바이스들일 수 있고, 302를 참조하여 예시된 이러한 예시적인 하드웨어 및/또는 소프트웨어(예컨대, 스토리지(326), 프로세서(328), 명령들(306) 등)는 또한 또는 대안적으로, 원격 플랫폼(들)(304)에 포함될 수 있다. 일부 실시예들에서, 컴퓨팅 플랫폼(들)(302) 및/또는 원격 플랫폼들(304)은 클라이언트/서버 아키텍처에서 게임 클라이언트 및/또는 게임 서버일 수 있고, 여기서, 서버는 하나 이상의 플레이어 클라이언트 디바이스들이 엿보기-방지 특징들을 포함하는 비디오 게임에서 플레이하거나 이에 참여하는 것을 가능하게 한다.
컴퓨팅 플랫폼(들)(302)은 머신-판독가능 명령들(306)을 포함할 수 있고 머신-판독가능 명령들(306)을 실행하도록 구성될 수 있다. 일부 실시예들에서, 머신-판독가능 명령들(306)은 그 중에서도, 비디오 게임 또는 그 부분을 포함하고 및/또는 이를 구성하는 소프트웨어를 포함한다. 이와 같이, 머신-판독가능 명령들(306)은 그 중에서도, 엿보기-방지 특징을 포함하는 게임플레이를 용이하게 하기 위한 하나 이상의 명령 모듈들을 포함할 수 있다.
일부 실시예들에서, 명령들(306)은 수신 모듈(308), 검출 모듈(310), 방지 모듈(312), 렌더링 모듈(314), 결정 모듈(316), 추가 모듈(318), 생성 모듈(320), 및/또는 출력 모듈(322), 및/또는 다른 명령 모듈들과 같은 하나 이상의 컴퓨터 프로그램 모듈들을 포함한다.
수신 모듈(308)은 1인칭 POV에서의 그 전통적인 디스플레이와 반대로, 제1 캐릭터(예컨대, 제1 플레이어에 의한 플레이어-제어된 캐릭터)가 3인칭 관점(POV)에서 렌더링되거나 디스플레이되게 하는 액션을 수신하도록 구성될 수 있다.
검출 모듈(310)은 수신된 액션이 비디오 게임의 하나 이상의 플레이어들 또는 캐릭터들의 1인칭 POV 또는 카메라 시각이 3인칭 POV로 변경되도록 한다는 것을 검출하도록 구성될 수 있다.
방지 모듈(312)은 캐릭터, 객체, 또는 환경이 플레이어와 연관된 캐릭터의 1인칭 POV(예컨대, 캐릭터 눈)에 대응하는 가시성 범위 또는 가시선 외부에 있을 때, 또 다른 캐릭터(예컨대, 제2 플레이어에 의한 또 다른 플레이어-제어된 캐릭터, 여기서, 제2 플레이어는 제1 플레이어의 상대방일 수 있음), 객체, 환경 등의 렌더링을 방지하도록 구성될 수 있다.
렌더링 모듈(314)은 제1 플레이어에 의해 제어된 주 캐릭터의 1인칭 관측 시야(FOV) 내에 있는 1인칭 POV 비디오 게임에서의 객체들 및 캐릭터들을 렌더링하도록 구성될 수 있다.
결정 모듈(316)은 상대방이 주 캐릭터의 1인칭 관측 시야(FOV) 내에서 가시적이지 않은 것으로 결정하도록 구성될 수 있다. 결정 모듈(316)은 또한, POV가 1인칭 POV로부터 3인칭 POV로 변경될 때, 상대방이 주 캐릭터의 3인칭 FOV 내에서 가시적일 것으로 결정하도록 구성될 수 있다.
추가 모듈(318)은 상대방이 주 캐릭터의 1인칭 POV로부터 가시적일지 여부의 평가를 위하여 상대방을 리스트에 추가하도록 구성될 수 있다.
일부 실시예들에서, 캐릭터의 관측 시야 중에서의(예컨대, 플레이어의 캐릭터의 캐릭터 눈으로부터 또는 그 중에서의) 다수의 트레이스들(또는 "레이(ray)들" 또는 "레이캐스트(raycast)들")의 생성 또는 캐스팅(casting)이 수행된다. 이 트레이스들은 하나 이상의 상대방 캐릭터들의 임의의 부분들(예컨대, 신체 일부분들)이 플레이어의 캐릭터의 가시선 내에 있는지를 식별하기 위하여 이용될 수 있다. 이와 같이, 트레이스가 하나 이상의 상대방 캐릭터의 임의의 부분과 교차하거나 이와 충돌하지 않을 때, 방지 모듈(312)은 근처의 상대방 캐릭터가 플레이어의 캐릭터의 FOV 또는 가시선 외부에 있는 것으로 결정할 수 있다. 일부 실시예들에서, 트레이스들 또는 레이들의 캐스팅은 별도의 모듈로서 구현될 수 있다.
궁극적으로, 머신-판독가능 명령들(306) 중에서의 방지 모듈(312) 또는 다른 모듈은 상대방 캐릭터, 객체, 환경 등의 렌더링을 생략하거나 방지하기 위하여 렌더러(renderer) 또는 렌더링 파이프라인(rendering pipeline)에 대한 명령들을 명령하거나 제공할 수 있다.
그러므로, 일부 실시예들에서, 상대방은 상대방의 임의의 신체 일부분(및/또는 객체, 환경 등의 일부분/부분)이 플레이어의 캐릭터의 1인칭 관측 시야(FOV) 내에서 가시적일 경우에 렌더링되고, 그렇지 않을 경우에는 렌더링되지 않는다. 일부 실시예들에서, 방지 모듈들(312)은 임의의 신체 일부분(및/또는 객체, 환경 등의 일부분/부분)의 검출 시에 전체 상대방 캐릭터를 렌더링하지 않기 위하여, 캐릭터의 신체 일부분들의 어느 특정 부분들(및/또는 객체, 환경 등의 일부분/부분)이 렌더링되어야 하는지와, 어느 것이 렌더링되지 않아야 하는지를 표시할 수 있다.
궁극적으로, 방지 모듈(312)은 상대방 캐릭터가 플레이어의 캐릭터의 FOV 외부에 있고 카메라 뷰가 1인칭으로부터 3인칭 뷰로 변경될 때에 디스플레이하기 위하여 렌더링되지 않아야 한다는 것을 식별함으로써, 공정성 및 경쟁적 무결성을 유지하는 것을 돕는다. 그러나, 상대방 캐릭터가 플레이어의 캐릭터의 FOV 내에서 이동할 경우에, 상대방 캐릭터는 액션의 기간 및/또는 상대방 캐릭터가 (예컨대, 시각 변경을 야기시키는 액션의 기간 내에서) 플레이어의 캐릭터의 FOV에서 유지되는 기간에 대하여 그 이후에 렌더링될 수 있다.
일부 실시예들에서, 방지 모듈(312)은 게임 객체들 또는 상대방 캐릭터의 존재의 표시자들을 참작하고 이를 모니터링하지는 않는다. 예를 들어, 이러한 표시들은 그림자, 덫, 정문, 감시 드론, 또는 다른 게임내 객체들, 오버레이(overlay)들, 통지들, 또는 유사한 촉구들 중의 적어도 하나를 포함할 수 있다. 일부 실시예들에서, 방지 모듈(312)은 게임 객체들 또는 상대방 캐릭터의 존재의 표시자들을 참작하고 이를 모니터링하도록 구성될 수 있다.
일부 실시예들에서, 머신-판독가능 명령들(306)은 가상적 대화형 환경들 및 호기심 에이전트(curiosity agent)들과 같은, 비디오 게임의 특징들을 지원하고 용이하게 하는 기초적인 프레임워크들 및 소프트웨어를 제공하는 비디오 게임 클라이언트 컴포넌트들(예컨대, 게임 엔진, 게임플레이 시스템들, 및 게임 자산들)을 포함할 수 있다.
일부 실시예들에서, 게임 엔진은 비디오 게임을 작동시키는 기초적인 소프트웨어 프레임워크이다. 게임 엔진은 그 중에서도, 렌더러, 시뮬레이터(simulator), 및 스트림 계층(stream layer)을 포함한다. 렌더러는 그래픽의 생성을 관리하는 그래픽 프레임워크이다. 일부 실시예들에서의 본 명세서에서 이용된 바와 같이, 시뮬레이터는 게임플레이 객체들, 엔티티들, 캐릭터들, 조명, 가스들, 및 다른 게임 자산들 또는 유사한 효과들의 애니메이션들 및/또는 상호작용들을 위하여 부분적으로 이용된 물리학 및 다른 대응하는 역학에 대응하는 시뮬레이션 양태들을 관리하는 프레임워크를 지칭한다. 스트림 계층은 그래픽 및 애니메이션들이 실행시간에 생성되도록 하기 위한 보편적인 실행 스트림을 제공함으로써, 렌더러 및 시뮬레이터가 서로에 독립적으로 작동하는 것을 허용하는 소프트웨어 계층이다. 일부 실시예들에서, 게임 엔진은 오디오 재생을 스트림 계층의 보편적인 실행 또는 시뮬레이터와 직접적으로 동기화하는 오디오 엔진을 포함한다.
게임플레이 시스템들은 비디오 게임의 게임플레이 로직 및 다른 특징들을 용이하게 하고 관리하기 위하여 게임 엔진과 함께 이용될 수 있다. 이와 같이, 게임플레이 시스템들은 그 중에서도 게임 엔진을 지원할 수 있는 소프트웨어 컴포넌트들 또는 모듈들일 수 있다. 예를 들어, 게임플레이 시스템들은 소프트웨어 개발 키트(Software Development Kit)(SDK)들, 애플리케이션 프로그램 인터페이스(Application Program Interface)(API)들, 및 그 중에서도, 추가적인 그래픽, 오디오, 또는 통신 지원을 제공하는 것, 서비스 접속들을 확립하고 유지하는 것, 인가(authorization)들을 수행하는 것, 속임수-방지(anti-cheat) 및 사기-방지(anti-fraud) 검출을 제공하는 것과 같은 다양한 기능성을 가능하게 하는 쉼(shim)들 및/또는 동적으로 링크된 라이브러리(Dynamically Linked Library)(DLL)들과 같은 소프트웨어 라이브러리들을 포함할 수 있다.
일부 실시예들에서, 게임 엔진 및/또는 게임플레이 시스템들은 게임플레이 세션을 생성하기 위하여 게임 자산들을 참조할 수 있다. 게임 자산들은 게임플레이(게임플레이 세션)을 위한 가상적 대화형 환경들뿐만 아니라, 메뉴들 및 통지들, 및 유사한 다른 것들에 대응하거나 이들을 생성하기 위하여 이용될 수 있는 디지털 자산들이다. 일부 실시예들에서, 게임 자산들은 게임 객체들, 텍스처(texture)들, 지형 맵(terrain map)들, 기하구조 스크립트(geometry script)들, 애니메이션 파일들, 오디오 파일들, 캐릭터 모델들, 비디오 파일들, 폰트 라이브러리들, 시각적 효과들, 및 유사한 비디오 게임들의 다른 디지털 자산들을 포함할 수 있다.
이와 같이, 머신-판독가능 명령들(306)은 비디오 게임이 수신 모듈(308), 검출 모듈(310), 및 방지 모듈(312)과 함께, 디스플레이하기 위하여 렌더링되도록 하여 특징-방지(anti-feature) 특징을 가능하게 하기 위하여, 다른 컴포넌트들 및 모듈들 중에서 비디오 게임 클라이언트 컴포넌트들을 사용할 수 있다. 일부 실시예들에서, 모듈들(308, 310, 및/또는 312) 중의 하나 이상은 본 기술분야에서 통상의 기술자에게 공지된 바와 같이, 렌더러 및/또는 게임 엔진 내에서, 렌더링 파이프라인 또는 그래픽 파이프라인 중에 포함될 수 있거나, 이들에 통신가능하게 결합될 수 있다.
그러므로, 일부 실시예들에서, 엿보기-방지 특징은 렌더링 파이프라인 또는 그 명령들에 영향을 줄 수 있거나, 이들을 수정할 수 있거나, 또는 그렇지 않을 경우에 이들에 대한 변경들을 야기시킬 수 있다. 이와 같이, (전술된 바와 같은) 엿보기-방지 특징을 소환하는 캐릭터와 연관된 플레이어의 렌더링 파이프라인은 엿보기-방지 특징이 인에이블될 때, 렌더링을 방지하도록 명령될 수 있거나, 상대방을 렌더링하는 것을 못하도록 명령들이 보류되게 할 수 있다.
일부 구현예들에서, 컴퓨팅 플랫폼(들)(302), 원격 플랫폼(들)(304), 및/또는 외부 자원들(324)은 하나 이상의 전자 통신 링크들을 통해 동작적으로 링크될 수 있다. 예를 들어, 이러한 전자 통신 링크들은 적어도 부분적으로, 인터넷 및/또는 다른 네트워크들과 같은 네트워크를 통해 확립될 수 있다. 이것은 제한적이도록 의도되지 않고, 이 개시내용의 범위는 컴퓨팅 플랫폼(들)(302), 원격 플랫폼(들)(304), 및/또는 외부 자원들(324)이 일부 다른 통신 매체들을 통해 동작적으로 링크될 수 있는 구현예들을 포함한다는 것이 인식될 것이다.
주어진 원격 플랫폼(304)은 컴퓨터 프로그램 모듈들을 실행하도록 구성된 하나 이상의 프로세서들을 포함할 수 있다. 컴퓨터 프로그램 모듈들은 주어진 원격 플랫폼(304)과 연관된 전문가 또는 사용자가 시스템(300) 및/또는 외부 자원들(324)과 인터페이싱하는 것을 가능하게 하고, 및/또는 원격 플랫폼(들)(304)으로 인해 본 명세서에서 기인한 다른 기능성을 제공하도록 구성될 수 있다. 비-제한적인 예로서, 주어진 원격 플랫폼(304) 및/또는 주어진 컴퓨팅 플랫폼(302)은 서버, 데스크톱 컴퓨터, 랩톱 컴퓨터, 핸드헬드 컴퓨터, 태블릿 컴퓨팅 플랫폼, 넷북(NetBook), 스마트폰, 게이밍 콘솔, 및/또는 다른 컴퓨팅 플랫폼들 중의 하나 이상을 포함할 수 있다.
외부 자원들(324)은 시스템(300) 외부의 정보의 소스들, 시스템(300)과 함께 참여하는 외부 엔티티들, 및/또는 다른 자원들을 포함할 수 있다. 일부 구현예들에서, 외부 자원들(324)로 인해 본 명세서에서 기인한 기능성의 일부 또는 전부는 시스템(300) 내에 포함된 자원들에 의해 제공될 수 있다.
컴퓨팅 플랫폼(들)(302)은 전자 스토리지(326), 하나 이상의 프로세서들(328), 및/또는 다른 컴포넌트들을 포함할 수 있다. 컴퓨팅 플랫폼(들)(302)은 네트워크 및/또는 다른 컴퓨팅 플랫폼들과의 정보의 교환을 가능하게 하기 위한 통신 라인들 또는 포트들을 포함할 수 있다. 도 3에서의 컴퓨팅 플랫폼(들)(302)의 예시는 제한적이도록 의도되지 않는다. 컴퓨팅 플랫폼(들)(302)은 컴퓨팅 플랫폼(들)(302)으로 인해 본 명세서에서 기인한 기능성을 제공하기 위하여 함께 동작하는 복수의 하드웨어, 소프트웨어, 및/또는 펌웨어 컴포넌트들을 포함할 수 있다. 예를 들어, 컴퓨팅 플랫폼(들)(302)은 컴퓨팅 플랫폼(들)(302)으로서 함께 동작하는 컴퓨팅 플랫폼들의 클라우드에 의해 구현될 수 있다.
전자 스토리지(326)는 정보를 전자적으로 저장하는 비-일시적 저장 매체들을 포함할 수 있다. 전자 스토리지(326)의 전자 저장 매체들은 컴퓨팅 플랫폼(들)(302)과 일체적으로(예컨대, 실질적으로 비-분리가능함) 제공되는 시스템 스토리지 및/또는 예를 들어, 포트(예컨대, 유사한 다른 것들 중에서, USB 포트, 파이어와이어(firewire) 포트) 또는 드라이브(예컨대, 유사한 다른 것들 중에서, 디스크 드라이브)를 통해 컴퓨팅 플랫폼(들)(302)에 분리가능하게 접속가능한 분리가능한 스토리지 중의 하나 또는 둘 모두를 포함할 수 있다. 전자 스토리지(326)는 광학적 판독가능 저장 매체들(예컨대, 유사한 다른 것들 중에서, 광학 디스크들), 자기적 판독가능 저장 매체들(예컨대, 유사한 다른 것들 중에서, 자기 테이프, 자기 하드 드라이브, 플로피 드라이브), 전기적 전하-기반 저장 매체들(예컨대, 유사한 다른 것들 중에서, EEPROM, RAM), 솔리드-스테이트 저장 매체들(예컨대, 유사한 다른 것들 중에서, 플래시 드라이브), 및/또는 다른 전자적 판독가능 저장 매체들 중의 하나 이상을 포함할 수 있다. 전자 스토리지(326)는 하나 이상의 가상적 저장 자원들(예컨대, 클라우드 스토리지, 가상적 사설 네트워크, 및/또는 다른 가상적 저장 자원들)을 포함할 수 있다. 전자 스토리지(326)는 소프트웨어 알고리즘들, 프로세서(들)(328)에 의해 결정된 정보, 컴퓨팅 플랫폼(들)(302)으로부터 수신된 정보, 원격 플랫폼(들)(304)으로부터 수신된 정보, 및/또는 컴퓨팅 플랫폼(들)(302)이 본 명세서에서 설명된 바와 같이 기능하는 것을 가능하게 하는 다른 정보를 저장할 수 있다.
프로세서(들)(328)는 컴퓨팅 플랫폼(들)(302)에서의 정보 프로세싱 능력들을 제공하도록 구성될 수 있다. 이와 같이, 프로세서(들)(328)는 디지털 프로세서, 아날로그 프로세서, 정보를 프로세싱하도록 설계된 디지털 회로, 정보를 프로세싱하도록 설계된 아날로그 회로, 상태 머신, 및/또는 정보를 전자적으로 프로세싱하기 위한 다른 메커니즘들 중의 하나 이상을 포함할 수 있다. 프로세서(들)(328)는 단일 엔티티로서 도 3에서 도시되지만, 이것은 오직 예시적인 목적들을 위한 것이다. 일부 구현예들에서, 프로세서(들)(328)는 복수의 프로세싱 유닛들을 포함할 수 있다. 이 프로세싱 유닛들은 동일한 디바이스 내에서 물리적으로 위치될 수 있거나, 프로세서(들)(328)는 협력하여 동작하는 복수의 디바이스들의 프로세싱 기능성을 표현할 수 있다. 프로세서(들)(328)는 모듈들(308, 310, 312, 314, 316, 318, 320, 및/또는 322) 및/또는 다른 모듈들을 실행하도록 구성될 수 있다. 프로세서(들)(328)는 소프트웨어, 하드웨어, 펌웨어, 소프트웨어, 하드웨어, 및/또는 펌웨어의 일부 조합, 및/또는 프로세서(들)(328) 상에서 프로세싱 능력들을 구성하기 위한 다른 메커니즘들에 의해 모듈들(308, 310, 312, 314, 316, 318, 320, 및/또는 322) 및/또는 다른 모듈들을 실행하도록 구성될 수 있다. 본 명세서에서 이용된 바와 같이, 용어 "모듈"은 모듈로 인해 기인한 기능성을 수행하는 임의의 컴포넌트 또는 컴포넌트들의 세트를 지칭할 수 있다. 이것은 프로세서 판독가능 명령들의 실행 중인 하나 이상의 물리적 프로세서들, 프로세서 판독가능 명령들, 회로부, 하드웨어, 저장 매체들, 또는 임의의 다른 컴포넌트들을 포함할 수 있다.
모듈들(308, 310, 312, 314, 316, 318, 320, 및/또는 322)은 단일 프로세싱 유닛 내에서 구현되는 것으로서 도 3에서 예시되지만, 프로세서(들)(328)가 다수의 프로세싱 유닛들을 포함하는 구현예들에서는, 모듈들(308, 310, 312, 314, 316, 318, 320, 및/또는 322) 중의 하나 이상이 다른 모듈들로부터 원격으로 구현될 수 있다는 것이 인식되어야 한다. 이하에서 설명된 상이한 모듈들(308, 310, 312, 314, 316, 318, 320, 및/또는 322)에 의해 제공된 기능성의 설명은 예시적인 목적들을 위한 것이고, 제한적이도록 의도되지 않는데, 그 이유는 모듈들(308, 310, 312, 314, 316, 318, 320, 및/또는 322) 중의 임의의 것이 설명되는 것보다 더 많거나 더 적은 기능성을 제공할 수 있기 때문이다. 예를 들어, 모듈들(308, 310, 312, 314, 316, 318, 320, 및/또는 322) 중의 하나 이상은 제거될 수 있고, 그 기능성의 일부 또는 전부는 모듈들(308, 310, 312, 314, 316, 318, 320, 및/또는 322)의 다른 것들에 의해 제공될 수 있다. 또 다른 예로서, 프로세서(들)(328)는 모듈들(308, 310, 312, 314, 316, 318, 320, 및/또는 322) 중의 하나로 인해 이하에서 기인한 기능성의 일부 또는 전부를 수행할 수 있는 하나 이상의 추가적인 모듈들을 실행하도록 구성될 수 있다.
본 명세서에서 설명된 기법들은 물리적 컴퓨팅 디바이스(들)에 의해 수행되는 방법(들)으로서; 컴퓨팅 디바이스(들)에 의해 실행될 때, 방법(들)의 수행을 야기시키는 명령들을 저장하는 하나 이상의 비-일시적 컴퓨터-판독가능 저장 매체들로서; 또는 방법(들)의 수행을 야기시키는 하드웨어 및 소프트웨어의 조합으로 구체적으로 구성되는 물리적 컴퓨팅 디바이스(들)로서 구현될 수 있다.
도 4는 개시내용의 어떤 양태들에 따른, 비디오 게임에서의 비디오 게임 캐릭터의 렌더링을 방지하기 위한 예시적인 흐름도(예컨대, 프로세스(400))를 예시한다. 설명적 목적들을 위하여, 예시적인 프로세스(400)는 도 1 내지 도 3을 참조하여 본 명세서에서 설명된다. 또한, 설명적인 목적들을 위하여, 예시적인 프로세스(400)의 단계들은 직렬로 또는 선형적으로 발생하는 것으로서 본 명세서에서 설명된다. 그러나, 예시적인 프로세스(400)의 다수의 인스턴스(instance)들은 병렬로 발생할 수 있다. 당면한 기술의 설명의 목적들을 위하여, 프로세스(400)는 도 1 내지 도 3을 참조하여 논의될 것이다.
단계(402)에서는, 제1 캐릭터가 1인칭 관점(POV)에서 렌더링되는 것에 대응하는 액션이 수신된다. 예를 들어, 액션은 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경되도록 하는 유형일 수 있다.
단계(404)에서는, 수신된 액션에 적어도 부분적으로 기초하여, 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경되어야 한다는 것이 검출된다.
단계(406)에서, 하나 이상의 다른 캐릭터들은 1인칭 POV에서 제1 캐릭터의 관측 시야(FOV)의 외부에 있는 것으로 결정되고, 3인칭 POV에서 제1 캐릭터의 FOV 내에 있을 것이다.
단계(408)에서, 제1 캐릭터의 POV는 1인칭 POV로부터 3인칭 POV로 변경된다.
단계(410)에서, 비디오 게임은 제1 캐릭터의 3인칭 POV에서 렌더링되게 된다. 예를 들어, 렌더링은 결정하는 것에 기초하여, 하나 이상의 다른 캐릭터들의 렌더링을 방지할 수 있다.
예를 들어, 도 1 내지 도 3과 관련하여 위에서 설명된 바와 같이, 단계(402)에서는, 제1 캐릭터가 1인칭 관점(POV)에서 렌더링되는 것에 대응하는 액션(예컨대, 이모트(206))이 수신된다. 예를 들어, 액션은 (예컨대, 도 2a 및 도 2c에서 예시된 바와 같이) 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경되도록 하는 유형일 수 있다. 단계(404)에서는, 수신된 액션에 적어도 부분적으로 기초하여, 제1 캐릭터의 POV가 1인칭 POV로부터 3인칭 POV로 변경되어야 한다는 것이 (예컨대, 검출 모듈(310)을 통해) 검출된다. 단계(406)에서, 하나 이상의 다른 캐릭터들(예컨대, 상대방(102, 202))은 1인칭 POV에서 제1 캐릭터의 관측 시야(FOV)의 외부에 있는 것으로 결정되고, 3인칭 POV에서 제1 캐릭터의 FOV 내에 있을 것이다. 단계(408)에서, 제1 캐릭터의 POV는 1인칭 POV로부터 3인칭 POV로 변경된다. 단계(410)에서, 비디오 게임은 제1 캐릭터의 3인칭 POV에서 렌더링되게 된다. 예를 들어, 렌더링은 결정하는 것에 기초하여, 하나 이상의 다른 캐릭터들의 렌더링을 방지할 수 있다.
양태에 따르면, 하나 이상의 다른 캐릭터들이 1인칭 POV에서 제1 캐릭터의 FOV 외부에 있고 3인칭 POV에서 제1 캐릭터의 FOV 내에 있을 것으로 결정하는 것은 1인칭 POV에서 제1 캐릭터의 FOV 중에서 트레이스의 세트를 캐스팅하는 것을 더 포함한다. 프로세스(400)는 트레이스들 세트 캐스트가 충돌하지 않는 하나 이상의 다른 캐릭터들을 식별하는 것을 더 포함할 수 있다.
양태에 따르면, 제1 캐릭터는 제1 컴퓨팅 디바이스를 통해 제1 플레이어에 의해 제어되고, 하나 이상의 다른 캐릭터들은 하나 이상의 다른 컴퓨팅 디바이스들을 통해 하나 이상의 다른 플레이어들에 의해 제어된다.
양태에 따르면, 제1 캐릭터의 FOV는 0 도로부터 180 도까지의 범위를 포함한다.
양태에 따르면, 액션은 제1 플레이어와는 상이한 제2 플레이어의 이모트 또는 액트 중의 적어도 하나를 포함한다.
양태에 따르면, 하나 이상의 다른 캐릭터들은 하나 이상의 다른 캐릭터들의 임의의 부분이 트레이스들의 세트 캐스트 중으로부터의 트레이스와 충돌할 때에 렌더링되는 것이 더 이상 방지되지 않는다.
양태에 따르면, 하나 이상의 다른 캐릭터들에 관련된 표시들은 렌더링되지 않는다.
양태에 따르면, 액션은 2 이상의 캐릭터들의 POV가 1인칭 POV로부터 3인칭 POV로 변경되도록 한다.
양태에 따르면, 프로세스(400)는 제1 플레이어에 의해 제어된 주 캐릭터의 1인칭 관측 시야(FOV) 내에 있는 1인칭 POV 비디오 게임에서의 객체들 및 캐릭터들을 렌더링하는 것을 더 포함한다.
양태에 따르면, 프로세스(400)는 상대방이 주 캐릭터의 1인칭 관측 시야(FOV) 내에서 가시적이지 않은 것으로 결정하는 것을 더 포함한다.
양태에 따르면, 프로세스(400)는 POV가 1인칭 POV로부터 3인칭 POV로 변경될 때, 상대방이 주 캐릭터의 3인칭 FOV 내에서 가시적일 것으로 결정하는 것을 더 포함한다.
양태에 따르면, 상대방은 제1 플레이어와는 상이한 제2 플레이어에 의해 제어된다.
양태에 따르면, 주 캐릭터의 1인칭 관측 시야(FOV)는 90 내지 100도(예컨대, 180 도 이하)의 범위를 포함할 수 있다.
양태에 따르면, 액션은 적어도 이모트, 제스처, 댄스, 또는 다른 것을 포함할 수 있다. 액션은 또한, 제1 플레이어와는 상이한 제2 플레이어의 액트를 포함할 수 있다. 양태들에 따르면, 제2 플레이어의 액트(예컨대, 액션)은 제1 플레이어가 3인칭 시각 뷰에 진입하게 할 수 있다. 제2 플레이어의/와의 액션들 또는 상호작용들이 제1 플레이어가 3인칭 시각 뷰에 진입하게 하는 일부 예들은, 제1 플레이어가 쓰러지고 팀동료에 의해 직접적으로 부활될 때(예컨대, 두 플레이어들은 3인칭 뷰로 들어감), 제1 플레이어가 쓰러지고 팀동료에 의해 간접적으로 부활될 때(예컨대, 부활하는 제1 플레이어는 3인칭 뷰로 들어감), 및 제1 플레이어가 쓰러지고 적 플레이어가 피니셔를 수행할 때의 사례들을 포함한다. 양태에서, 마무리 제거 이동은 쓰러진 플레이어가 게임플레이(gameplay)로부터 제거되게 할 수 있고, 두 플레이어들은 3인칭 뷰로 들어갈 수 있다(예컨대, 이 상황의 역이 마찬가지로 적용됨).
양태에 따르면, 상대방은 상대방의 임의의 신체 일부분이 주 캐릭터의 1인칭 관측 시야(FOV) 내에서 가시적일 경우에 렌더링된다.
양태에 따르면, 프로세스(400)는 상대방이 주 캐릭터의 1인칭 POV로부터 가시적일지 여부의 평가를 위하여 상대방을 리스트에 추가하는 것을 더 포함한다.
양태에 따르면, 프로세스(400)는 상대방이 주 캐릭터에게 가시적인지 여부를 결정하기 위하여 주 캐릭터의 관측 시야(FOV)로부터 상대방의 상이한 신체 일부분들로의 다수의 트레이스들을 생성하는 것을 더 포함한다.
양태에 따르면, 상대방에 관련된 표시들은 렌더링되지 않는다. 예를 들어, 표시들은 유사한 다른 것들 중에서, 그림자, 덫, 정문, 감시 드론 중의 적어도 하나를 포함할 수 있다.
본 명세서에서의 원래의 출원인은 지속적으로 진화하는 분야에서의 그 유용성 및 관련성에 기초하여 어느 기술들을 이용하고 및/또는 상품화할 것인지와, 그것 및 그 플레이어들 및 사용자들을 위하여 최상인 것을 결정한다는 것이 이해되어야 한다. 따라서, 그것은 본 명세서에서 설명된 시스템들 및 방법들이 원래의 출원인에 의해 아직 이용되고 및/또는 상품화되지 않았고 및/또는 더 이후에 이용되고 및/또는 상품화되지 않을 경우일 수 있다. 또한, 본 명세서에서 설명된 시스템들 및 방법들의 원래의 출원인에 의한, 만약 존재한다면, 구현예 및 이용이 그 프라이버시 정책(privacy policy)들에 따라 수행된다는 것이 이해되어야 한다. 이 정책들은 플레이어 프라이버시를 존중하고 우선순위화하도록 의도되고, 개개의 관할권들의 정부 및 법적 요건들을 충족시키거나 초월하는 것으로 믿어진다. 이 시스템들 및 방법들의 이러한 구현예 또는 이용이 사용자 개인적 정보의 프로세싱을 가능하게 하거나 요구하는 한도까지, 이러한 프로세싱은 (i) 프라이버시 정책들에서 개요 서술된 바와 같이; (ii) 적절한 고지를 제공하는 것, 또는 요구될 경우에, 개개의 사용자의 동의를 획득하는 것을 포함하지만, 이것으로 제한되지는 않는 유효한 법적 메커니즘에 따라; 그리고 (iii) 플레이어 또는 사용자의 프라이버시 설정들 또는 선호도들에 따라 수행된다. 원래의 출원인은 본 명세서에서 설명된 시스템들 및 방법들이, 다른 엔티티들에 의해 구현되거나 이용될 경우에, 플레이어들 및 사용자 프라이버시를 존중하기 위한 그 목적과 일치하는 프라이버시 정책들 및 실무들과 호응하는 것을 의도한다는 것이 또한 이해되어야 한다.
도 5는 당면한 기술의 양태들이 구현될 수 있는 예시적인 컴퓨터 시스템(500)을 예시하는 블록도이다. 어떤 양태들에서, 컴퓨터 시스템(500)은 또 다른 엔티티 내로 통합되거나 다수의 엔티티들에 걸쳐 분산된 전용 서버에서, 하드웨어, 또는 소프트웨어 및 하드웨어의 조합을 이용하여 구현될 수 있다.
컴퓨터 시스템(500)(예컨대, 서버 및/또는 클라이언트)은 정보를 통신하기 위한 버스(508) 또는 다른 통신 메커니즘, 및 정보를 프로세싱하기 위하여 버스(508)와 결합된 프로세서(502)를 포함한다. 예로서, 컴퓨터 시스템(500)은 하나 이상의 프로세서들(502)로 구현될 수 있다. 프로세서(502)는 범용 마이크로프로세서, 마이크로제어기, 디지털 신호 프로세서(Digital Signal Processor)(DSP), 애플리케이션 특정 집적 회로(Application Specific Integrated Circuit)(ASIC), 필드 프로그래밍가능 게이트 어레이(Field Programmable Gate Array)(FPGA), 프로그래밍가능 로직 디바이스(Programmable Logic Device)(PLD), 제어기, 상태 머신, 게이팅된 로직, 개별 하드웨어 컴포넌트들, 또는 정보의 계산들 또는 다른 조작들을 수행할 수 있는 임의의 다른 적당한 엔티티일 수 있다.
컴퓨터 시스템(500)은 하드웨어에 추가적으로, 제기 중인 컴퓨터 프로그램을 위한 실행 환경을 생성하는 코드, 예컨대, 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 오퍼레이팅 시스템, 또는 랜덤 액세스 메모리(Random Access Memory)(RAM), 플래시 메모리, 판독-전용 메모리(Read-Only Memory)(ROM), 프로그래밍가능 판독-전용 메모리(Programmable Read-Only Memory)(PROM), 소거가능 PROM(Erasable PROM)(EPROM), 레지스터들, 하드 디스크, 분리가능 디스크, CD-ROM, DVD, 또는 프로세서(502)에 의해 실행되어야 할 정보 및 명령들을 저장하기 위하여 버스(508)에 결합된 임의의 다른 적당한 저장 디바이스와 같은 포함된 메모리(504) 내에 저장된 것들 중의 하나 이상의 조합을 구성하는 코드를 포함할 수 있다. 프로세서(502) 및 메모리(504)는 특수 목적 로직 회로부에 의해 보충될 수 있거나 특수 목적 로직 회로부 내에 편입될 수 있다.
명령들은 메모리(504) 내에 저장될 수 있고, 하나 이상의 컴퓨터 프로그램 제품들, 예컨대, 컴퓨터 시스템(500)에 의한 실행을 위하여 또는 컴퓨터 시스템(500)의 동작을 제어하기 위하여 컴퓨터-판독가능 매체 상에서 인코딩되고, 본 기술분야에서의 통상의 기술자들에게 널리-공지된 임의의 방법에 따르면, 데이터-지향 언어들(예컨대, SQL, dBase), 시스템 언어들(예컨대, C, 오브젝티브-C(Objective-C), C++, 어셈블리), 아키텍처 언어들(예컨대, 자바(Java), .NET), 및 애플리케이션 언어들(예컨대, PHP, 루비(Ruby), 펄(Perl), 파이썬(Python))과 같은 컴퓨터 언어들을 포함하지만, 이것으로 제한되지는 않는 컴퓨터 프로그램 명령들의 하나 이상의 모듈들에서 구현될 수 있다. 명령들은 또한, 어레이 언어(array language)들, 양태-지향 언어(aspect-oriented language)들, 어셈블리 언어들, 저작 언어(authoring language)들, 커맨드 라인 인터페이스 언어(command line interface language)들, 컴파일링된 언어(compiled language)들, 동시 언어(concurrent language)들, 중괄호 언어(curly-bracket language)들, 데이터흐름 언어(dataflow language)들, 데이터-구조화된 언어(data-structured language)들, 선언 언어(declarative language)들, 에소테릭 언어(esoteric language)들, 확장 언어(extension language)들, 4세대 언어(fourth-generation language)들, 함수 언어(functional language)들, 대화형 모드 언어(interactive mode language)들, 해독된 언어(interpreted language)들, 반복 언어(iterative language)들, 리스트-기반 언어(list-based language)들, 소규모 언어(little language)들, 로직-기반 언어(logic-based language)들, 머신 언어(machine language)들, 매크로 언어(macro language)들, 메타프로그래밍 언어(metaprogramming language)들, 멀티패러다임 언어(multiparadigm language)들, 수치 해석(numerical analysis), 비-영어-기반 언어(non-English-based language)들, 객체-지향 클래스-기반 언어(object-oriented class-based language)들, 객체-지향 프로토타입-기반 언어(object-oriented prototype-based language)들, 오프-사이드 규칙 언어(off-side rule language)들, 절차 언어(procedural language)들, 반사 언어(reflective language)들, 규칙-기반 언어(rule-based language)들, 스크립팅 언어(scripting language)들, 스택-기반 언어(stack-based language)들, 동기 언어(synchronous language)들, 구문 처리 언어(syntax handling language)들, 시각적 언어(visual language)들, 워스 언어(wirth language)들, 및 xml-기반 언어(xml-based language)들과 같은 컴퓨터 언어들로 구현될 수 있다. 메모리(504)는 또한, 프로세서(502)에 의해 실행되어야 할 명령들의 실행 동안에 임시적인 변수 또는 다른 중간 정보를 저장하기 위하여 이용될 수 있다.
본 명세서에서 논의된 바와 같은 컴퓨터 프로그램은 반드시 파일 시스템에서의 파일에 대응하지는 않는다. 프로그램은 다른 프로그램들 또는 데이터(예컨대, 마크업 언어 문서에서 저장된 하나 이상의 스크립트들)를 유지하는 파일의 부분에서, 논의 중인 프로그램에 전용인 단일 파일에서, 또는 다수의 조정된 파일들(예컨대, 하나 이상의 모듈들, 서브프로그램들, 또는 코드의 부분들을 저장하는 파일들)에서 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에서 위치되거나 다수의 사이트들에 걸쳐 분산되고, 통신 네트워크에 의해 상호접속되는 하나의 컴퓨터 상에서, 또는 다수의 컴퓨터들 상에서 실행되도록 설치될 수 있다. 이 명세서에서 설명된 프로세스들 및 로직 흐름들은 입력 데이터에 대해 동작함으로써, 그리고 출력을 생성함으로써, 기능들을 수행하기 위한 하나 이상의 컴퓨터 프로그램들을 실행하는 하나 이상의 프로그래밍가능 프로세서들에 의해 수행될 수 있다.
컴퓨터 시스템(500)은 정보 및 명령들을 저장하기 위하여 버스(508)에 결합된, 자기 디스크 또는 광학 디스크와 같은 데이터 저장 디바이스(506)를 더 포함한다. 컴퓨터 시스템(500)은 입력/출력 모듈(510)을 통해 다양한 디바이스들에 결합될 수 있다. 입력/출력 모듈(510)은 임의의 입력/출력 모듈일 수 있다. 예시적인 입력/출력 모듈들(510)은 USB 포트들과 같은 데이터 포트들을 포함한다. 입력/출력 모듈(510)은 통신 모듈(512)에 접속되도록 구성된다. 예시적인 통신 모듈들(512)은 이더넷 카드들 및 모뎀들과 같은 네트워킹 인터페이스 카드들을 포함한다. 어떤 양태들에서, 입력/출력 모듈(510)은 입력 디바이스(514) 및/또는 출력 디바이스(516)와 같은 복수의 디바이스들에 접속하도록 구성된다. 예시적인 입력 디바이스들(514)은 키보드 및 포인팅 디바이스, 예컨대, 마우스 또는 트랙볼을 포함하고, 이들에 의해, 사용자는 컴퓨터 시스템(500)에 대한 입력을 제공할 수 있다. 촉각 입력 디바이스, 시각적 입력 디바이스, 오디오 입력 디바이스, 또는 뇌-컴퓨터 인터페이스 디바이스와 같은 다른 종류들의 입력 디바이스들(514)은 마찬가지로 사용자와의 상호작용을 제공하기 위하여 이용될 수 있다. 예를 들어, 사용자에게 제공된 피드백은 임의의 형태의 센서류 피드백, 예컨대, 시각적 피드백, 청각적 피드백, 또는 촉각적 피드백일 수 있고; 사용자로부터의 입력은 음향, 스피치, 촉각, 또는 뇌파 입력을 포함하는 임의의 형태로 수신될 수 있다. 예시적인 출력 디바이스들(516)은 정보를 사용자에게 디스플레이하기 위하여, LCD(liquid crystal display)(액정 디스플레이) 모니터와 같은 디스플레이 디바이스들을 포함한다.
본 개시내용의 하나의 양태에 따르면, 위에서 설명된 게이밍 시스템들은 프로세서(502)가 메모리(504) 내에 포함된 하나 이상의 명령들의 하나 이상의 시퀀스들을 실행하는 것에 응답하여, 컴퓨터 시스템(500)을 이용하여 구현될 수 있다. 이러한 명령들은 데이터 저장 디바이스(506)와 같은 또 다른 머신-판독가능 매체로부터 메모리(504)로 판독될 수 있다. 주 메모리(504) 내에 포함된 명령들의 시퀀스들의 실행은 프로세서(502)가 본 명세서에서 설명된 프로세스 단계들을 수행하게 한다. 멀티-프로세싱 배열에서의 하나 이상의 프로세서들은 또한, 메모리(504) 내에 포함된 명령들의 시퀀스들을 실행하기 위하여 채용될 수 있다. 대안적인 양태들에서, 하드-와이어링된(hard-wired) 회로부는 본 개시내용의 다양한 양태들을 구현하기 위하여 소프트웨어 명령들 대신에 또는 이러한 소프트웨어 명령들과 조합하여 이용될 수 있다. 따라서, 본 개시내용들의 양태들은 하드웨어 회로부 및 소프트웨어의 임의의 특정 조합으로 제한되지는 않는다.
이 명세서에서 설명된 발명요지의 다양한 양태들은 예컨대, 데이터 서버와 같은, 백 엔드 컴포넌트를 포함하거나, 미들웨어 컴포넌트, 예컨대, 애플리케이션 서버를 포함하거나, 프론트 엔드 컴퓨터, 예컨대, 사용자가 이 명세서에서 설명된 요지의 구현예와 상호작용할 수 있는 그래픽 사용자 인터페이스 또는 웹 브라우저를 가지는 클라이언트 컴퓨터를 포함하는 컴퓨팅 시스템에서, 또는 하나 이상의 이러한 백 엔드, 미들웨어, 또는 프론트 엔드 컴포넌트들의 임의의 조합에서 구현될 수 있다. 시스템의 컴포넌트들은 디지털 데이터 통신의 임의의 형태 또는 매체, 예컨대, 통신 네트워크에 의해 상호접속될 수 있다. 통신 네트워크는 예를 들어, LAN, WAN, 인터넷 등 중의 임의의 하나 이상을 포함할 수 있다. 또한, 통신 네트워크는 예를 들어, 버스 네트워크, 성형 네트워크(star network), 링 네트워크, 메쉬 네트워크, 성형-버스 네트워크, 트리 또는 계층적 네트워크 등을 포함하는 다음의 네트워크 토폴로지들 중의 임의의 하나 이상을 포함할 수 있지만, 이것으로 제한되지는 않는다. 통신 모듈들은 예를 들어, 모뎀들 또는 이더넷 카드들일 수 있다.
컴퓨터 시스템(500)은 클라이언트들 및 서버들을 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로로부터 원격이고, 전형적으로 통신 네트워크를 통해 상호작용한다. 클라이언트 및 서버의 관계는 개개의 컴퓨터들 상에서 작동되고 서로에 대한 클라이언트-서버 관계를 가지는 컴퓨터 프로그램들에 의해 발생한다. 컴퓨터 시스템(500)은 예를 들어, 그리고 제한 없이, 데스크톱 컴퓨터, 랩톱 컴퓨터, 또는 태블릿 컴퓨터일 수 있다. 컴퓨터 시스템(500)은 또한, 또 다른 디바이스, 예를 들어, 그리고 제한 없이, 이동 전화, PDA, 이동 오디오 플레이어, 글로벌 위치결정 시스템(Global Positioning System)(GPS) 수신기, 비디오 게임 콘솔, 및/또는 텔레비전 셋톱 박스에서 내장될 수 있다.
본 명세서에서 이용된 바와 같은 용어 "머신-판독가능 저장 매체" 또는 "컴퓨터-판독가능 매체"는 실행을 위하여 명령들을 프로세서(502)에 제공하는 것에 참여하는 임의의 매체 또는 매체들을 지칭한다. 이러한 매체는 비-휘발성 매체들, 휘발성 매체들, 및 송신 매체들을 포함하지만, 이것으로 제한되지는 않는 다수의 형태들을 취할 수 있다. 비-휘발성 매체들은 예를 들어, 데이터 저장 디바이스(506)와 같은 광학 또는 자기 디스크들을 포함한다. 휘발성 매체들은 메모리(504)와 같은 동적 메모리를 포함한다. 송신 매체들은 버스(508)를 포함하는 배선들을 포함하는, 동축 케이블, 구리 배선, 및 광 섬유들을 포함한다. 머신-판독가능 매체들의 보편적인 형태들은 예를 들어, 플로피 디스크, 플렉시블 디스크, 하드 디스크, 자기 테이프, 임의의 다른 자기 매체, CD-ROM, DVD, 임의의 다른 광학 매체, 펀치 카드(punch card)들, 종이 테이프, 홀(hole)들의 패턴들을 갖는 임의의 다른 물리적 매체, RAM, PROM, EPROM, FLASH EPROM, 임의의 다른 메모리 칩 또는 카트리지, 또는 컴퓨터가 판독할 수 있는 임의의 다른 매체를 포함한다. 머신-판독가능 저장 매체는 머신-판독가능 저장 디바이스, 머신-판독가능 저장 기판, 메모리 디바이스, 머신-판독가능 전파된 신호에 영향을 주는 성분의 조성, 또는 이들 중의 하나 이상의 조합일 수 있다.
사용자 컴퓨팅 시스템(500)은 게임 데이터를 판독하고 게임을 제공하므로, 정보는 게임 데이터로부터 판독될 수 있고, 메모리(504)와 같은 메모리 디바이스 내에 저장될 수 있다. 추가적으로, 네트워크, 버스(508), 또는 데이터 스토리지(506)를 통해 액세스된 메모리(504) 서버들로부터의 데이터는 메모리(504) 내로 판독될 수 있고 로딩될 수 있다. 데이터는 메모리(504)에서 발견되는 것으로서 설명되지만, 데이터는 메모리(504) 내에 저장되어야 할 필요가 없고, 프로세서(502)에 액세스가능하거나 데이터 스토리지(506)와 같은 몇몇 매체들 사이에 분산된 다른 메모리 내에 저장될 수 있다는 것이 이해될 것이다.
본 명세서에서 이용된 바와 같이, 일련의 항목들을 선행하는 어구 "~의 적어도 하나(at least one of)"는 리스트의 각각의 멤버(예컨대, 각각의 항목)가 아니라, 리스트를 전체로서 수식하고, 용어들 "및(and)" 또는 "또는(or)"은 항목들 중의 임의의 것을 분리하기 위한 것이다. 어구 "~의 적어도 하나"는 적어도 하나의 항목의 선택을 요구하는 것이 아니라; 오히려, 어구는 항목들 중의 임의의 하나의 항목의 적어도 하나, 및/또는 항목들의 임의의 조합의 적어도 하나, 및/또는 항목들의 각각의 항목의 적어도 하나를 포함하는 의미를 허용한다. 예로서, 어구들 "A, B, 및 C 중의 적어도 하나(at least one of A, B, and C)" 또는 "A, B, 또는 C 중의 적어도 하나(at least one of A, B, or C)"는 A 단독, B 단독, 또는 C 단독; A, B, 및 C의 임의의 조합; 및/또는 A, B, 및 C의 각각 중의 적어도 하나를 각각 지칭한다.
용어들 "포함하다(include)", "가지다(have)" 등이 설명 또는 청구항들에서 이용되는 한도까지, 이러한 용어는 "포함한다(comprise)"가 청구항에서 전환어(transitional word)로서 채용될 때에 해석되는 바와 같이, 용어 "포함한다(comprise)"와 유사한 방식으로 포괄적인 것으로 의도된다. 단어 "예시적(exemplary)"은 "예, 사례, 또는 예시로서 작용함"을 의미하기 위하여 본 명세서에서 이용된다. "예시적"으로서 본 명세서에서 설명된 임의의 실시예는 다른 실시예들에 비해 바람직하거나 유익한 것으로 반드시 해석되어야 하는 것은 아니다.
단수에서의 엘리먼트에 대한 참조는 구체적으로 이와 다르게 기재되지 않으면, "하나 및 오직 하나(one and only one)"가 아니라, 오히려 "하나 이상(one or more)"을 의미하도록 의도되지는 않는다. 본 기술분야에서의 통상의 기술자들에게 공지되거나 더 이후에 공지되는 이 개시내용의 전반에 걸쳐 설명된 다양한 구성들의 엘리먼트들에 대한 모든 구조적 및 기능적 등가물들은 참조에 의해 본 명세서에 명백히 편입되고, 당면한 기술에 의해 망라되도록 의도된다. 또한, 본 명세서에서 개시된 어떤 것도 이러한 개시내용이 위의 설명에서 명시적으로 인용되는지 여부에 관계없이 공중에게 헌정되도록 의도되지는 않는다.
이 명세서는 많은 세부사항들을 포함하지만, 이들은 청구될 수 있는 것의 범위에 대한 제한들로서 해석되어야 하는 것이 아니라, 오히려, 발명요지의 특정한 구현예들의 설명들로서 해석되어야 한다. 별도의 실시예들의 맥락에서 이 명세서에서 설명되는 어떤 특징들은 또한, 단일 실시예에서 조합으로 구현될 수 있다. 반대로, 단일 실시예의 맥락에서 설명되는 다양한 특징들은 또한, 다수의 실시예들에서 별도로 또는 임의의 적당한 하위조합으로 구현될 수 있다. 또한, 특징들은 어떤 조합들로 작동하고 심지어 이와 같이 초기에 청구되는 것으로서 위에서 설명될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우들에는, 조합으로부터 삭제될 수 있고, 청구된 조합은 하위조합 또는 하위조합의 변형에 관한 것일 수 있다.
이 명세서의 발명요지는 특정한 양태들의 측면에서 설명되었지만, 다른 양태들이 구현될 수 있고 다음의 청구항들의 범위 내에 있다. 예를 들어, 동작들은 특정한 순서로 도면들에서 도시되어 있지만, 이것은 바람직한 결과들을 달성하기 위하여, 이러한 동작들이 도시된 특정한 순서로 또는 순차적인 순서로 수행되거나, 모든 예시된 동작들이 수행될 것을 요구하는 것으로서 이해되어야 하는 것은 아니다. 청구항들에서 기재된 액션들은 상이한 순서로 수행될 수 있고, 바람직한 결과들을 여전히 달성할 수 있다. 하나의 예로서, 동반 도면들에서 도시된 프로세스들은 바람직한 결과들을 달성하기 위하여 도시된 특정한 순서 또는 순차적인 순서를 반드시 요구하지는 않는다. 어떤 상황들에서는, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 또한, 위에서 설명된 양태들에서의 다양한 시스템 컴포넌트들의 분리는 모든 양태들에서 이러한 분리를 요구하는 것으로서 이해되지 않아야 하고, 설명된 프로그램 컴포넌트들 및 시스템들은 단일 소프트웨어 제품에서 일반적으로 함께 통합될 수 있거나 다수의 소프트웨어 제품들로 패키징될 수 있다는 것이 이해되어야 한다. 다른 변형들은 다음의 청구항들의 범위 내에 있다.

Claims (20)

  1. 비디오 게임에서 비디오 게임 캐릭터의 렌더링을 방지하기 위한 컴퓨터로 구현된 방법으로서,
    제1 캐릭터가 1인칭(first-person) 관점(point of view)(POV)에서 렌더링되는 것에 대응하는 액션을 수신하는 단계 - 상기 액션은 상기 제1 캐릭터의 상기 POV가 상기 1인칭 POV로부터 3인칭(third-person) POV로 변경되도록 하는 유형임 -;
    상기 수신된 액션에 적어도 부분적으로 기초하여, 상기 제1 캐릭터의 상기 POV가 상기 1인칭 POV로부터 3인칭 POV로 변경되어야 한다는 것을 검출하는 단계;
    상기 1인칭 POV에서 상기 제1 캐릭터의 관측 시야(field of view)(FOV)의 외부에 있고 상기 3인칭 POV에서 상기 제1 캐릭터의 상기 FOV 내에 있을 하나 이상의 다른 캐릭터들을 결정하는 단계;
    상기 제1 캐릭터의 상기 POV를 상기 1인칭 POV로부터 3인칭 POV로 변경하는 단계;
    상기 제1 캐릭터의 3인칭 POV에서 상기 비디오 게임의 렌더링을 야기시키는 단계 - 상기 렌더링은 상기 결정하는 것에 기초하여 상기 하나 이상의 다른 캐릭터들의 렌더링을 방지함 -
    를 포함하는, 컴퓨터로 구현된 방법.
  2. 제1항에 있어서, 상기 1인칭 POV에서 상기 제1 캐릭터의 상기 FOV의 외부에 있고 상기 3인칭 POV에서 상기 제1 캐릭터의 상기 FOV 내에 있을 상기 하나 이상의 다른 캐릭터들을 결정하는 단계는:
    상기 1인칭 POV에서 상기 제1 캐릭터의 상기 FOV 중에서 트레이스(trace)의 세트를 캐스팅하는 단계; 및
    상기 트레이스들의 세트 캐스트가 충돌하지 않는 상기 하나 이상의 다른 캐릭터들을 식별하는 단계를 포함하는, 컴퓨터로 구현된 방법.
  3. 제1항에 있어서, 상기 제1 캐릭터는 제1 컴퓨팅 디바이스를 통해 제1 플레이어에 의해 제어되고, 상기 하나 이상의 다른 캐릭터들은 하나 이상의 다른 컴퓨팅 디바이스들을 통해 하나 이상의 다른 플레이어들에 의해 제어되는, 컴퓨터로 구현된 방법.
  4. 제1항에 있어서, 상기 제1 캐릭터의 상기 FOV는 0 도로부터 180 도까지의 범위를 포함하는, 컴퓨터로 구현된 방법.
  5. 제1항에 있어서, 상기 액션은 제1 플레이어와는 상이한 제2 플레이어의 이모트(emote) 또는 액트(act) 중의 적어도 하나를 포함하는, 컴퓨터로 구현된 방법.
  6. 제2항에 있어서, 상기 하나 이상의 다른 캐릭터들은 상기 하나 이상의 다른 캐릭터들의 임의의 부분이 상기 트레이스들의 세트 캐스트 중으로부터의 트레이스와 충돌할 때에 렌더링되는 것이 더 이상 방지되지 않는, 컴퓨터로 구현된 방법.
  7. 제1항에 있어서, 상기 하나 이상의 다른 캐릭터들에 관련된 표시들은 렌더링되지 않는, 컴퓨터로 구현된 방법.
  8. 제1항에 있어서, 상기 액션은 2 이상의 캐릭터들의 상기 POV가 상기 1인칭 POV로부터 상기 3인칭 POV로 변경되도록 하는, 컴퓨터로 구현된 방법.
  9. 비디오 게임에서 비디오 게임 캐릭터의 렌더링을 방지하기 위한 시스템으로서,
    프로세서; 및
    저장된 명령들을 포함하는 메모리
    를 포함하고,
    상기 명령들은, 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금:
    제1 캐릭터가 1인칭 관점(POV)에서 렌더링되는 것에 대응하는 액션을 수신하는 것 - 상기 액션은 상기 제1 캐릭터의 상기 POV가 상기 1인칭 POV로부터 3인칭 POV로 변경되도록 하는 유형임 -;
    상기 수신된 액션에 적어도 부분적으로 기초하여, 상기 제1 캐릭터의 상기 POV가 상기 1인칭 POV로부터 3인칭 POV로 변경되어야 한다는 것을 검출하는 것;
    상기 1인칭 POV에서 상기 제1 캐릭터의 관측 시야(FOV)의 외부에 있고 상기 3인칭 POV에서 상기 제1 캐릭터의 상기 FOV 내에 있을 하나 이상의 다른 캐릭터들을 결정하는 것;
    상기 제1 캐릭터의 상기 POV를 상기 1인칭 POV로부터 3인칭 POV로 변경하는 것;
    상기 제1 캐릭터의 3인칭 POV에서 상기 비디오 게임의 렌더링을 야기시키는 것 - 상기 렌더링은 상기 결정하는 것에 기초하여 상기 하나 이상의 다른 캐릭터들의 렌더링을 방지함 -
    을 수행하게 하는, 시스템.
  10. 제9항에 있어서, 명령들의 저장된 시퀀스들을 더 포함하고, 상기 명령들의 저장된 시퀀스들은, 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금:
    상기 1인칭 POV에서 상기 제1 캐릭터의 상기 FOV 중에서 트레이스의 세트를 캐스팅하는 것; 및
    상기 트레이스들의 세트 캐스트가 충돌하지 않는 상기 하나 이상의 다른 캐릭터들을 식별하는 것을 수행하게 하는, 시스템.
  11. 제9항에 있어서, 상기 제1 캐릭터는 제1 컴퓨팅 디바이스를 통해 제1 플레이어에 의해 제어되고, 상기 하나 이상의 다른 캐릭터들은 하나 이상의 다른 컴퓨팅 디바이스들을 통해 하나 이상의 다른 플레이어들에 의해 제어되는, 시스템.
  12. 제9항에 있어서, 상기 제1 캐릭터의 상기 FOV는 0 도로부터 180 도까지의 범위를 포함하는, 시스템.
  13. 제9항에 있어서, 상기 액션은 제1 플레이어와는 상이한 제2 플레이어의 이모트 또는 액트 중의 적어도 하나를 포함하는, 시스템.
  14. 제10항에 있어서, 상기 하나 이상의 다른 캐릭터들은 상기 하나 이상의 다른 캐릭터들의 임의의 부분이 상기 트레이스들의 세트 캐스트 중으로부터의 트레이스와 충돌할 때에 렌더링되는 것이 더 이상 방지되지 않는, 시스템.
  15. 제9항에 있어서, 상기 하나 이상의 다른 캐릭터들에 관련된 표시들은 렌더링되지 않는, 시스템.
  16. 제9항에 있어서, 상기 액션은 2 이상의 캐릭터들의 상기 POV가 상기 1인칭 POV로부터 상기 3인칭 POV로 변경되도록 하는, 시스템.
  17. 저장된 명령들을 포함하는 비-일시적 컴퓨터-판독가능 저장 매체로서,
    상기 명령들은, 하나 이상의 프로세서들에 의해 실행될 때, 상기 하나 이상의 프로세서들로 하여금, 비디오 게임에서 비디오 게임 캐릭터의 렌더링을 방지하기 위한 방법을 수행하게 하고, 상기 방법은:
    제1 캐릭터가 1인칭 관점(POV)에서 렌더링되는 것에 대응하는 액션을 수신하는 단계 - 상기 액션은 상기 제1 캐릭터의 상기 POV가 상기 1인칭 POV로부터 3인칭 POV로 변경되도록 하는 유형임 -;
    상기 수신된 액션에 적어도 부분적으로 기초하여, 상기 제1 캐릭터의 상기 POV가 상기 1인칭 POV로부터 3인칭 POV로 변경되어야 한다는 것을 검출하는 단계;
    상기 1인칭 POV에서 상기 제1 캐릭터의 관측 시야(FOV)의 외부에 있고 상기 3인칭 POV에서 상기 제1 캐릭터의 상기 FOV 내에 있을 하나 이상의 다른 캐릭터들을 결정하는 단계;
    상기 제1 캐릭터의 상기 POV를 상기 1인칭 POV로부터 3인칭 POV로 변경하는 단계;
    상기 제1 캐릭터의 3인칭 POV에서 상기 비디오 게임의 렌더링을 야기시키는 단계 - 상기 렌더링은 상기 결정하는 것에 기초하여 상기 하나 이상의 다른 캐릭터들의 렌더링을 방지함 -
    를 포함하는, 비-일시적 컴퓨터-판독가능 저장 매체.
  18. 제17항에 있어서, 상기 1인칭 POV에서 상기 제1 캐릭터의 상기 FOV 중에서 트레이스의 세트를 캐스팅하고; 그리고
    상기 트레이스들의 세트 캐스트가 충돌하지 않는 상기 하나 이상의 다른 캐릭터들을 식별하도록 추가로 구성된, 비-일시적 컴퓨터-판독가능 저장 매체.
  19. 제17항에 있어서, 상기 제1 캐릭터는 제1 컴퓨팅 디바이스를 통해 제1 플레이어에 의해 제어되고, 상기 하나 이상의 다른 캐릭터들은 하나 이상의 다른 컴퓨팅 디바이스들을 통해 하나 이상의 다른 플레이어들에 의해 제어되는, 비-일시적 컴퓨터-판독가능 저장 매체.
  20. 제17항에 있어서, 상기 제1 캐릭터의 상기 FOV는 0 도로부터 180 도까지의 범위를 포함하는, 비-일시적 컴퓨터-판독가능 저장 매체.
KR1020220055373A 2021-12-13 2022-05-04 비디오 게임들을 위한 엿보기-방지 시스템 KR20230089519A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/549,776 US11623145B1 (en) 2021-12-13 2021-12-13 Anti-peek system for video games
US17/549,776 2021-12-13

Publications (1)

Publication Number Publication Date
KR20230089519A true KR20230089519A (ko) 2023-06-20

Family

ID=85804990

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220055373A KR20230089519A (ko) 2021-12-13 2022-05-04 비디오 게임들을 위한 엿보기-방지 시스템

Country Status (2)

Country Link
US (2) US11623145B1 (ko)
KR (1) KR20230089519A (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230310995A1 (en) * 2022-03-31 2023-10-05 Advanced Micro Devices, Inc. Detecting personal-space violations in artificial intelligence based non-player characters

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6155926A (en) * 1995-11-22 2000-12-05 Nintendo Co., Ltd. Video game system and method with enhanced three-dimensional character and background control
US6712703B2 (en) * 1998-11-19 2004-03-30 Nintendo Co., Ltd. Video game apparatus and information storage medium for video game
US7470195B1 (en) * 2003-01-28 2008-12-30 Microsoft Corporation Camera control for third-person console video game
US7789741B1 (en) * 2003-02-28 2010-09-07 Microsoft Corporation Squad vs. squad video game
JP4355512B2 (ja) * 2003-04-17 2009-11-04 任天堂株式会社 画像処理装置および画像処理プログラム
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
US7775882B2 (en) * 2006-06-12 2010-08-17 Kabushiki Kaisha Sega Game apparatus for changing a visual point position of a virtual camera in conjunction with an attack by and enemy character
WO2008044708A1 (en) * 2006-10-13 2008-04-17 Kabushiki Kaisha Sega Doing Business As Sega Corporation Electronic play device, control method for electronic play device and game program
US8834245B2 (en) * 2007-08-17 2014-09-16 Nintendo Co., Ltd. System and method for lock on target tracking with free targeting capability
JP4489800B2 (ja) * 2007-08-30 2010-06-23 株式会社スクウェア・エニックス 画像生成装置及び方法、並びにプログラム及び記録媒体
US8342926B2 (en) * 2008-07-13 2013-01-01 Sony Computer Entertainment America Llc Game aim assist
JP5525250B2 (ja) * 2009-12-08 2014-06-18 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームの表示方法及びゲームシステム
JP2011212347A (ja) * 2010-03-31 2011-10-27 Namco Bandai Games Inc プログラム、情報記憶媒体、端末及びネットワークシステム
JP5227431B2 (ja) * 2011-01-14 2013-07-03 株式会社スクウェア・エニックス ネットワークゲームシステム、ゲーム装置及びプログラム
JP5951957B2 (ja) * 2011-10-27 2016-07-13 任天堂株式会社 ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
JP5959047B2 (ja) * 2012-04-04 2016-08-02 任天堂株式会社 表示制御システム、表示制御方法、表示制御プログラム、および表示制御装置
US9421461B2 (en) * 2013-12-26 2016-08-23 Microsoft Technology Licensing, Llc Player avatar movement assistance in a virtual environment

Also Published As

Publication number Publication date
US11623145B1 (en) 2023-04-11
US20230277930A1 (en) 2023-09-07

Similar Documents

Publication Publication Date Title
KR102292931B1 (ko) 객체를 제어하는 방법 및 장치
JP2023538962A (ja) 仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム
US10933327B2 (en) Network-based video game editing and modification distribution system
CN112295230B (zh) 虚拟场景中虚拟道具的激活方法、装置、设备及存储介质
Kyaw et al. Unity 4. x Game AI programming
JP7447296B2 (ja) 仮想道具のインタラクティブ処理方法、装置、電子機器及びコンピュータプログラム
US20230033530A1 (en) Method and apparatus for acquiring position in virtual scene, device, medium and program product
CN112138385B (zh) 虚拟射击道具的瞄准方法、装置、电子设备及存储介质
CN114377396A (zh) 一种游戏数据的处理方法、装置、电子设备及存储介质
US20230124014A1 (en) Image display method and apparatus, device and storage medium
US20230277930A1 (en) Anti-peek system for video games
Aversa Unity Artificial Intelligence Programming: Add powerful, believable, and fun AI entities in your game with the power of Unity
CN114130006B (zh) 虚拟道具的控制方法、装置、设备、存储介质及程序产品
CN115645923A (zh) 游戏交互方法、装置、终端设备及计算机可读存储介质
CN113018862A (zh) 虚拟对象的控制方法、装置、电子设备及存储介质
Abdollahi et al. Intelligent Android Game using Reinforcement Learning to Change the Enemy's Behavior
Orçun A preliminary study for the development of a real-time strategy game:Gallipoli Wars
Qiu et al. Design and Implementation of “Winning Luding Bridge” Immersion FPS Game Based on Unity3D Technology
Jetsonen Development of online game prototype with Unity engine: Multiplayer solutions
WO2023231557A1 (zh) 虚拟对象的互动方法、装置、设备、存储介质及程序产品
Bodi Agency in and around videogames
Ahmad An Overview Study of Game Engines
Trigueros Miravalls Application of Unity Netcode for GameObjects in the production of an online multiplayer fighting game in 3D
Coutinho Roblox Services
Guba Cube Fighter