KR100469820B1 - 화면 갱신 방법 및 그 시스템 - Google Patents

화면 갱신 방법 및 그 시스템 Download PDF

Info

Publication number
KR100469820B1
KR100469820B1 KR1020040049556A KR20040049556A KR100469820B1 KR 100469820 B1 KR100469820 B1 KR 100469820B1 KR 1020040049556 A KR1020040049556 A KR 1020040049556A KR 20040049556 A KR20040049556 A KR 20040049556A KR 100469820 B1 KR100469820 B1 KR 100469820B1
Authority
KR
South Korea
Prior art keywords
image
resource data
update
buffer
frame rate
Prior art date
Application number
KR1020040049556A
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=35782049&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR100469820(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 엔에이치엔(주) filed Critical 엔에이치엔(주)
Priority to KR1020040049556A priority Critical patent/KR100469820B1/ko
Application granted granted Critical
Publication of KR100469820B1 publication Critical patent/KR100469820B1/ko
Priority to PCT/KR2005/002018 priority patent/WO2006001679A1/en
Priority to US11/571,356 priority patent/US8035649B2/en
Priority to US13/228,325 priority patent/US9076356B2/en
Priority to US14/731,006 priority patent/US10105599B2/en
Priority to US15/980,248 priority patent/US10376787B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/23Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/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
    • 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/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • 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/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
    • A63F13/5375Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen for graphically or textually suggesting an action, e.g. by displaying an arrow indicating a turn in a 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/822Strategy games; Role-playing games
    • 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/85Providing additional services to players
    • A63F13/87Communicating with other players during game play, e.g. by e-mail or chat
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
    • A63F13/95Storage media specially adapted for storing game information, e.g. video game cartridges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/203Image generating hardware
    • 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/30Features 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 output arrangements for receiving control signals generated by the game device
    • A63F2300/303Features 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 output arrangements for receiving control signals generated by the game device for displaying additional data, e.g. simulating a Head Up Display
    • A63F2300/305Features 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 output arrangements for receiving control signals generated by the game device for displaying additional data, e.g. simulating a Head Up Display for providing a graphical or textual hint to the player
    • 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/30Features 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 output arrangements for receiving control signals generated by the game device
    • A63F2300/308Details of the user interface
    • 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/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
    • A63F2300/5553Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history user representation in the game field, e.g. avatar
    • 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/57Features 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 game services offered to the player
    • A63F2300/572Communication between players during game play of non game information, e.g. e-mail, chat, file transfer, streaming of audio and streaming of video
    • 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/65Methods for processing data by generating or executing the game program for computing the condition of a game character
    • 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/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/807Role playing or strategy games
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory

Abstract

본 발명은 화면 갱신 방법 및 그 시스템에 관한 것으로, 더욱 상세하게는 두 종류의 이미지를 갱신 주기를 각각 달리 하여, 각각 다른 이미지 갱신 방법으로 생성하고 상기 두 종류의 이미지를 합성하여 화면을 갱신하는 화면 갱신 방법 및 그 시스템에 관한 것이다.
본 발명에 따른 화면 갱신 방법은 제1 이미지 갱신 이벤트가 발생하는 경우, 소정의 기본 기록 공간으로부터 상기 제1 이미지 갱신 이벤트와 연관된 이미지 리소스 데이터를 식별하는 제1 단계; 상기 식별된 이미지 리소스 데이터를 복수의 버퍼를 포함하는 버퍼 공간에 로딩하는 제2 단계 - 상기 이미지 리소스 데이터는 프레임 단위로 상기 버퍼에 순환적으로 각각 로딩됨 -; 상기 버퍼에 로딩된 이미지 리소스 데이터를 버퍼 별로 순차적으로 렌더링하여 제1 프레임 레이트로 제1 이미지를 생성하는 제3 단계; 제2 이미지 갱신 이벤트가 발생하는 경우, 제2 프레임 레이트로 상기 제2 이미지 갱신 이벤트와 연관된 제2 이미지를 생성하는 제4 단계; 상기 제1 이미지 및 상기 제2 이미지를 합성하여 전체 이미지를 생성하는 제5 단계; 및 상기 전체 이미지를 소정의 표시 수단에 디스플레이 하는 제6 단계를 포함하고, 상기 제1 프레임 레이트는 상기 제2 프레임 레이트보다 작은 것을 특징으로 한다.

Description

화면 갱신 방법 및 그 시스템{METHOD AND SYSTEM FOR RENEWING SCREEN}
본 발명은 화면 갱신 방법 및 그 시스템에 관한 것으로, 더욱 상세하게는 두 종류의 이미지를 갱신 주기를 각각 달리 하여, 각각 다른 이미지 갱신 방법으로 생성하고 상기 두 종류의 이미지를 합성하여 화면을 갱신하는 화면 갱신 방법 및 그 시스템에 관한 것이다.
최근, 2차원 그래픽 기반의 네트워크 게임을 넘어, 3차원 그래픽을 기반으로 하는 다양한 종류의 네트워크 게임 서비스의 제공이 점차 확대되고 있다. 3차원 그래픽 기반의 네트워크 게임 서비스를 제공하기 위해서는 실시간 렌더링을 통한 화면 갱신이 필수적이다.
실시간 렌더링(real-time rendering)은 이미지 리소스 데이터로부터 실시간으로 이미지를 생성하여 화면을 갱신하는 것이다. 일반적으로 실시간 렌더링은 15[frame/s] 이상의 갱신 속도로 이미지를 갱신하여, 상기 이미지를 보는 사용자가 상호 작용감을 느낄 수 있을 정도의 갱신 속도로 이미지를 갱신하는 것을 의미한다. 특히, 네트워크 게임 서비스에서는 게이머에게 자연스러운 게임 화면을 제공하기 위해, 30[frame/s] 정도의 빠른 갱신 속도를 갖는 게임 화면을 제공하고자 하는 경우가 많다.
그런데, 3차원 이미지를 실시간으로 렌더링하는 경우, 특히 게임 화면에서와같이 고속의 갱신 속도로 3차원 이미지를 실시간으로 렌더링하는 경우, 단위 시간마다 처리해야 하는 이미지 리소스 데이터의 용량이 큰 것은 물론, 비디오 프로세서(GPU)가 처리해야 하는 계산량도 대폭 증가하기 때문에, 30[frame/s] 정도의 갱신 속도를 유지하기 위한 방법에 많은 관심이 모아지고 있다.
그런데, 게임 화면을 구성하는 이미지를 생성하는 경우, 상기 이미지를 생성하는 과정은 다수의 단계로 구분될 수 있으며, 이러한 각 단계는 시계열적으로 수행되어야 하는 경우도 있지만 각 단계가 병렬적으로 수행되는 경우도 있다.
이미지를 생성하기 위해 필요한 단계가 A 단계, B 단계 및 C 단계로 구성되고, A 단계가 끝나지 않으면 B 단계가 수행되지 않지만, C 단계는 A 단계 또는 B 단계와 무관하게 병렬적으로 수행되는 경우를 예로 들면, C 단계는 계산량이 많지 않아 단시간 내에 수행 완료되었으나, A 단계가 완료되지 않아서 상기 이미지를 생성하지 못하는 경우가 발생할 수 있다. 즉, 상기 A 단계 및 B 단계가 상기 이미지의 갱신 속도를 결정한다.
예를 들면, 다수의 게이머가 네트워크를 통하여 접속하여 게임을 하는 3D MMORPG(Massively Multi-player Online Role Playing Game)에 있어서, 플레이어 캐릭터의 이동과 같이 3D 오브젝트를 갱신시켜야 하는 과정은 A 단계와 같이 계산량이 많은 단계에 포함되고, 게이머가 채팅창에 채팅 텍스트를 입력하는 경우 그 내용을 게임 화면 상에 디스플레이 하기 위한 과정은 C 단계와 같이 계산량이 많지 않고 비디오 프로세서가 빠르게 처리할 수 있는 단계에 포함된다.
이때, 플레이어 캐릭터의 이동 과정 및 채팅 텍스트의 내용은 "하나의 이미지" 상에서 디스플레이 되기 때문에, 채팅 텍스트의 내용을 디스플레이 하기 위한 C 단계가 빠르게 처리 완료되었다 하더라도, 플레이어 캐릭터의 이동을 디스플레이 하기 위한 A 단계가 처리 완료되기까지 채팅 텍스트의 내용도 갱신되지 않기 된다.
따라서, 실시간 렌더링이 정상적으로 처리되지 않고, 이미지 리소스 데이터의 병목 현상이 발생하거나 또는 실시간 렌더링을 위한 계산량이 급격히 증가하여 랙 현상 등이 발생하는 경우에는 C 단계의 완료에도 불과하고 A 단계의 지연으로 인해 게이머에게 부자연스러운 게임 화면, 심하게는 정지 화면이 제공되는 문제가 있다.
본 발명은 상기와 같은 종래 기술을 개선하기 위해 안출된 것으로서, 별개의 프로세스에 의해 각각 서로 다른 방식으로 각각 생성될 수 있는 두 종류 이상의 이미지를 갱신 속도를 달리하여 각각 생성한 후 상기 두 종류 이상의 이미지를 합성하여 전체 이미지를 갱신하는 화면 갱신 방법 및 시스템을 제공하는 것을 목적으로 한다.
또한, 본 발명은 하나의 전체 이미지를 구현하기 위해 처리해야 할 각 과정을 갱신 속도 별로 분리하여 각각 독립적으로 처리하도록 함으로써, 가장 느린 과정에 맞추어 전체 이미지의 갱신 속도가 함께 느려지는 것을 방지할 수 있는 화면 갱신 방법 및 시스템을 제공하는 것을 목적으로 한다.
또한, 본 발명은 게임 화면을 갱신함에 있어서, 채팅 텍스트의 내용을 디스플레이 하거나, 마우스 포인트의 위치 이동을 디스플레이 하는 것과 같이 게이머의요청에 빨리 응답할 필요성이 보다 큰 이미지 부분은 보다 빠른 갱신 속도로 갱신되도록 할 수 있고, 3D 이미지의 생성 과정에서 랙이 발생되더라도 이러한 이미지 부분의 갱신에는 영향이 없도록 하는 화면 갱신 방법 및 시스템을 제공하는 것을 목적으로 한다.
도 1은 본 발명에 따른 화면 갱신 방법을 수행하는 시스템의 네트워크 연결을 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 화면 갱신 방법의 일례를 도시한 흐름도이다.
도 3은 본 발명의 일실시예에 따른 제1 이미지의 일례를 도시한 도면이다.
도 4는 본 발명의 일실시예에 따른 제2 이미지의 일례를 도시한 도면이다.
도 5는 본 발명의 일실시예에 따른 화면 갱신 시스템을 도시한 블록도이다.
도 6은 본 발명에 따른 화면 갱신 방법을 수행하는 데 채용될 수 있는 범용 컴퓨터 장치의 내부 블록도이다.
<도면의 주요 부분에 대한 부호의 설명>
500: 화면 갱신 시스템
501: 기본 기록 공간
502: 식별 수단
503: 로딩 수단
504: 제1 이미지 생성 수단
505: 제2 이미지 생성 수단
506: 디스플레이 수단
상기의 목적을 달성하고, 상술한 종래 기술의 문제점을 해결하기 위하여, 본 발명에 화면 갱신 방법은 제1 이미지 갱신 이벤트가 발생하는 경우, 소정의 기본 기록 공간으로부터 상기 제1 이미지 갱신 이벤트와 연관된 이미지 리소스 데이터를 식별하는 제1 단계, 상기 식별된 이미지 리소스 데이터를 복수의 버퍼를 포함하는 버퍼 공간에 로딩하는 제2 단계 - 상기 이미지 리소스 데이터는 프레임 단위로 상기 버퍼에 순환적으로 각각 로딩됨 -, 상기 버퍼에 로딩된 이미지 리소스 데이터를 버퍼 별로 순차적으로 렌더링하여 제1 프레임 레이트로 제1 이미지를 생성하는 제3 단계, 제2 이미지 갱신 이벤트가 발생하는 경우, 제2 프레임 레이트로 상기 제2 이미지 갱신 이벤트와 연관된 제2 이미지를 생성하는 제4 단계, 상기 제1 이미지 및 상기 제2 이미지를 합성하여 전체 이미지를 생성하는 제5 단계, 및 상기 전체 이미지를 소정의 표시 수단에 디스플레이 하는 제6 단계를 포함하고, 상기 제1 프레임 레이트는 상기 제2 프레임 레이트보다 작은 것을 특징으로 한다.
또한, 본 발명의 일측에 따르면, 이미지 리소스 데이터를 저장하기 위한 기본 기록 공간, 제1 이미지 갱신 이벤트가 발생하는 경우, 상기 기본 기록 공간으로부터 상기 제1 이미지 갱신 이벤트와 연관된 이미지 리소스 데이터를 식별하는 식별 수단, 상기 식별된 이미지 리소스 데이터를 복수의 버퍼를 포함하는 버퍼 공간에 프레임 단위로 각 버퍼에 순차적으로 로딩하는 로딩 수단, 상기 버퍼에 로딩된 이미지 리소스 데이터를 버퍼 별로 순차적으로 렌더링하여 제1 프레임 레이트로 제1 이미지를 생성하는 제1 이미지 생성 수단, 제2 이미지 갱신 이벤트가 발생하는 경우 제2 프레임 레이트로 상기 제2 이미지 갱신 처리 이벤트와 연관된 제2 이미지를 생성하는 제2 이미지 생성 수단, 및 상기 제1 이미지 및 상기 제2 이미지를 합성하여 전체 이미지를 생성하고, 상기 전체 이미지를 소정의 표시 수단에 디스플레이 하는 디스플레이 수단을 포함하고, 상기 제1 프레임 레이트는 상기 제2 프레임 레이트보다 작은 것을 특징으로 한다.
**본 명세서에 사용된 용어의 정리**
1) 제1 이미지
본 명세서에서 제1 이미지는 소정의 제1 프레임 레이트로 생성되는 이미지로서 소정의 이미지 리소스 데이터의 로딩, 상기 이미지 리소스 데이터를 렌더링하는 과정을 통하여 생성되는 이미지이다. 즉, 일반적인 실시간 렌더링을 통하여 생성되는 3-D 이미지를 예로 들 수 있다.
2) 제2 이미지
본 명세서에서 제2 이미지는 소정의 제2 프레임 레이트로 생성되는 이미지로서, 제1 이미지에 비해 상대적으로 빠른 시간 내에 생성될 수 있는 이미지를 의미한다. 예를 들면, 제2 이미지는 사용자의 채팅 텍스트 입력에 따라 화면 상에 채팅 내용을 디스플레이 하기 위한 이미지, 또는 사용자의 마우스 이동에 따라 화면 상에 마우스 포인트를 디스플레이 하기 위한 이미지 등을 포함한다.
3) 제1 프레임 레이트 및 제2 프레임 레이트
상기와 같이 제2 이미지는 제1 이미지에 비해 상대적으로 빠른 시간 내에 생성될 수 있으므로, 통상 제2 갱신 주기는 제1 갱신 주기에 비해 짧다. 예를 들면, 제2 이미지는 60[frame/s]의 갱신 속도로, 제1 이미지는 30[frame/s]의 갱신 속도로 갱신되도록 상기 제1 프레임 레이트 및 상기 제2 프레임 레이트가 결정될 수 있다.
4) 버퍼에 순차적으로 로딩
본 명세서에서 프로세서 수단은 기본 기록 공간으로부터 이미지 리소스 데이터를 복수의 버퍼에 순환적으로 로딩한다. 예를 들면, 제1 버퍼 및 제2 버퍼라는 두 개의 버퍼를 사용하는 경우, 제1 버퍼 → 제2 버퍼 → 제1 버퍼 → …와 같이 이미지 리소스 데이터는 각 버퍼에 순차적으로 로딩되며, 이를 "순환적으로 로딩"된다는 용어로 표현한다.
5) 이미지 리소스 데이터
화면 갱신을 위한 렌더링(Rendering) 처리에 이용되는 데이터, 예를 들어, 플레이어 캐릭터, NPC(Non-Player Character)의 동적 캐릭터 및 산, 강 등 게임의 배경 화면을 구성하는 정적 캐릭터를 구현하기 위해 사용되는 모든 데이터를 포함한다.
이하 첨부된 도면을 참조하여 화면 갱신 방법 및 화면 갱신 시스템을 상세히설명하기로 한다.
도 1은 본 발명에 따른 화면 갱신 방법을 수행하는 화면 갱신 시스템의 네트워크 연결을 도시한 도면이다. 이하, 화면 갱신 시스템이 게임 화면을 갱신하는 경우에 대해 예를 들어 설명하나 본 발명은 게임 화면뿐만 아니라 실시간 렌더링을 이용하여 화면을 갱신하는 모든 경우에 적용될 수 있다.
화면 갱신 시스템(100)은 소정의 게임 영역에 대한 이미지 갱신 이벤트가 발생하는 경우, 상기 이미지 갱신 이벤트와 연관된 이미지를 생성하여 화면을 갱신하기 위한 장치이다. 이러한 화면 갱신 시스템(100)은 플레이어 캐릭터의 위치에 따라 이미지 리소스 데이터에 대한 다양한 이미지 구현을 요구하는 RPG 게임, 특히 광대역의 게임 영역에서 다수의 게이머가 온라인을 통해 동시적으로 게임을 진행하는 MMORPG(Massively Multi-player Online Role Playing Game)를 구동하는 단말 수단(125)에서 구현될 수 있다. 본 실시예에서는 온라인 기반의 RPG 게임 상에서 본 발명의 화면 갱신 시스템(100)이 구현되는 경우를 예시하여 설명하고 있지만, 이외에 디스플레이 수단으로의 이미지 구현과 관련된 모든 이미지 구현 분야에서 적용될 수 있음을 본 발명이 속하는 당업자에게 명백하다 할 것이다. 또한, 화면 갱신 시스템(100)은 단말 수단(125)의 내부 또는 외부에 무관하게 구현될 수 있으나, 본 실시예에서는 설명의 편의를 위해 게이머(120)가 보유하는 소정의 단말 수단(125)의 내부에 설치되어 소정의 게임 영역에 대한 이미지를 갱신하는 경우를 예시하여 설명한다.
온라인 게임 서버(110)는 게이머(120)의 단말 수단(125)과 통신망(130)으로연결되며, 게이머(120)에게 온라인으로 게임 서비스를 제공하는 역할을 수행하는, MMORPG와 관련된 게임 서비스 서버를 의미할 수 있다. 온라인 게임 서버(110)에서의 게임 서비스는, 게임 관련 프로그램을 설치한 단말 수단(125)을 이용하여 게이머(120)가 온라인 게임 서버(110)에 접속하는 경우, 소정의 게임 진행 데이터 또는 게임 패치를 단말 수단(125)으로 전송하고, 전송된 게임 진행 데이터 또는 게임 패치에 의해 구동되는 상기 게임 관련 프로그램을 통해 제공될 수 있다. 또한, 온라인 게임 서버(110)는 이러한 게임 환경에서 게이머(120)에게 소정의 플레이어 캐릭터에 대한 동작 제어 권한을 부여하며, 게이머(120)로 하여금 상기 플레이어 캐릭터에 대해 독자적인 동작 제어를 가능하게 함으로써 본격적인 게임 서비스가 제공되도록 한다.
게이머(120)는 통신망(130)을 통하여 화면 갱신 시스템(100)과 연결되며, 통신망(130)과의 접속을 위한 단말 수단(125)를 보유할 수 있다. 게이머(120)는 게임 진행을 위한 플레이어 캐릭터의 동작 제어, 마우스 이동, 아이템 선택 등을 수행하고, 상기 게이머의 동작에 따라 화면 갱신 시스템(100)으로부터 갱신된 이미지를 제공 받을 수 있다.
단말 수단(125)는 데스크탑 PC, 노트북 PC, PDA, 이동통신 단말기 등과 같이 메모리 수단을 구비하고 마이크로 프로세서를 탑재함으로써 연산 능력을 갖춘 단말기로 유무선 통신망에서 접속할 수 있는 장치를 통칭한다.
도 2는 본 발명의 일실시예에 따른 화면 갱신 방법의 일례를 도시한 흐름도이다. 본 실시예에 따른 화면 갱신 방법은 화면 갱신 시스템(100)에 의해 수행된다.
먼저, 단계(201)에서 게이머는 제1 이미지 갱신 이벤트를 발생시킨다. 상기 제1 이미지는 게임상의 3차원의 이미지를 표현하기 위해 이미지 리소스 데이터를 렌더링하여 생성된다. 이하, 도 3을 참조하여 제1 이미지 및 제1 이미지 갱신 이벤트에 대해 보다 구체적으로 설명한다.
도 3은 본 발명의 일실시예에 따른 제1 이미지의 일례를 도시한 도면이다.
상기 제1 이미지는 게임 상에서 플레이어 캐릭터(301), NPC(Non-Player Character)(302), 동적 배경(303) 등 게임 상에서 3차원으로 디스플레이 되는 이미지를 나타내며, 상기 제1 이미지 갱신 이벤트는 상기 제1 이미지(301, 302, 303)에 대한 위치의 이동 또는 전투 액션 등 3차원 이미지의 동작 변화를 위한 화면 갱신 요청에 의해 발생한다.
이러한 화면 갱신 요청은 렌더링 처리에 소요되는 시간이 제2 이미지에 비해 상대적으로 긴 제1 이미지 즉, 이미지 갱신 주기가 상대적으로 긴 제1 이미지에 대한 화면 갱신 요청을 의미한다. 예를 들어, 게임 진행 중 플레이어 캐릭터(301) 및 NPC(302)간의 전투가 발생하는 경우 또는 플레이어 캐릭터 간의 전투가 발생하는 경우 플레이어 캐릭터(301) 및 NPC(302)의 동작 변화에 따라 화면을 갱신해야 하는 경우 제1 이미지에 대한 제1 이미지 갱신 이벤트가 발생한다.
화면 갱신 시스템(100)은 제1 이미지 갱신 이벤트가 발생하는 경우, 단계(202)에서 소정의 기본 기록 공간으로부터 상기 제1 이미지 갱신 이벤트와 연관된 이미지 리소스 데이터를 식별한다. 본 단계(202)는 화면 갱신이 요구되는 이미지 리소스 데이터를, 기본 기록 공간에서 인지되도록 하는 과정이다. 여기서, 이미지 갱신 이벤트는 게임 상에서 플레이어 캐릭터의 위치가 변경되는 것과 연관하여 발생될 수 있다.
다음으로, 단계(203)에서 상기 식별된 이미지 리소스 데이터를 복수의 버퍼를 포함하는 버퍼 공간에 로딩한다. 상기 이미지 리소스 데이터는 프레임 단위로 상기 버퍼에 순환적으로 각각 로딩된다. 한 프레임의 제1 이미지는 후술하는 바와 같은 하나의 전체 이미지를 생성하기 위해 사용된다.
본 실시예에서는 이미지 리소스 데이터를 로딩하기 위한 버퍼 공간이 두 개의 제1 버퍼 및 제2 버퍼를 포함하는 경우를 예로 들어 설명한다. 한편, 실시예에 따라 3개 이상의 버퍼를 포함하는 버퍼 공간이 채택될 수도 있다. 또한, 기본 기록 공간 및 버퍼 공간은 물리적 또는 논리적으로 구별되는 기록 장치에 의해 구현될 수 있다.
화면 갱신 시스템(100)은 상기와 같이 식별된 이미지 리소스 데이터를 제1 버퍼 및 제2 버퍼에 프레임 단위로 순차적으로 로딩한다. 예를 들어, 1번 프레임 내지 30번 프레임까지의 순차적으로 30프레임의 제1 이미지를 각각 생성하는 경우, 1번 프레임에 대응하는 이미지 리소스 데이터를 제1 버퍼에 로딩하면 2번 프레임에 대응하는 이미지 리소스 데이터는 제2 버퍼에 로딩될 수 있다. 후술하는 바와 같이 제1 버퍼에 로딩된 이미지 리소스 데이터를 이용하여 제1 이미지가 생성된 후, 상기 제1 버퍼에는 다시 3번 프레임에 대응하는 이미지 리소스 데이터가 로딩된다. 이와 같이 각 프레임에 대응하는 이미지 리소스 데이터는 순차적으로 제1 버퍼와제2 버퍼에 반복적으로 로딩된다.
즉, 1번 프레임부터 30번 프레임까지의 이미지 리소스 데이터가 제1 버퍼 및 제2 버퍼를 번갈아 가며 차례대로 로딩되어 차례대로 렌더링 처리가 되도록 하여 연속적으로 제1 이미지가 갱신되는 것을 보장하여 게이머에게 자연스러운 게임 화면을 제공하고자 한다.
단계(204)에서 화면 갱신 시스템(100)은 상기 버퍼 공간에 로딩된 이미지 리소스 데이터를 버퍼 별로 순차적으로 렌더링하여 제1 프레임 레이트로 제1 이미지를 생성한다. 단계(204)는 상기 제1 이미지 갱신 이벤트가 지속되는 동안, 예를 들면 플레이어 캐릭터의 이동의 경우, 게이머가 원하는 위치까지 상기 플레이어 캐릭터가 이동될 때까지 반복된다. 한편, 상기와 같이 생성된 제1 이미지는 후술하는 바와 같이 생성된 제2 이미지와 함께 게임 화면을 구성한다.
상기 제1 프레임 레이트는 상기 제1 이미지가 생성/갱신되는 속도와 관련되어 있으며, 예를 들면, 30[frame/s]가 선택될 수 있다. 3차원 이미지의 실시간 렌더링 처리를 위한 계산에는 2차원 및 텍스트를 처리하는데 비해 상대적으로 많은 시간이 소요되기 때문에 PC 등 일반적인 개인 사용자들이 사용하는 컴퓨터 정도의 사양을 갖는 단말 수단(125)에서 제1 이미지를 30[frame/s] 이상의 프레임 레이트로 갱신하는 것은 현재의 기술로서는 어려움이 있으나, 30[frame/s] 정도의 갱신 속도만 보장된다면 게이머는 충분히 자연스러운 게임 화면을 제공 받게 된다.
한편, 제1 이미지 갱신 이벤트가 발생하는 동안은 화면 갱신 시스템(100)은 버퍼 공간에 로딩된 이미지 리소스 데이터를 지속적으로 렌더링하여 제1 이미지를프레임 단위로 각각 생성/갱신한다.
특히, 화면 갱신 시스템(100)은 복수의 버퍼 중 제1 버퍼에 로딩된 1번 프레임에 대응하는 이미지 리소스 데이터를 렌더링하여 1번 프레임에 대응하는 제1 이미지를 생성하고 상기 생성된 제1 이미지가 디스플레이 하는 동안, 제2 버퍼에 로딩된 2번 프레임에 대응하는 이미지 리소스 데이터를 렌더링하여 2번 프레임에 대응하는 제1 이미지를 생성한다. 상기 2번 프레임에 대응하는 제1 이미지는 상기 1번 프레임에 대응하는 제1 이미지를 대체하는 방식으로 제1 이미지가 갱신된다.
다음으로, 단계(205)에서 상기 게이머는 제2 이미지 갱신 이벤트를 발생시킨다. 제2 이미지 갱신 이벤트에 따라 생성되는 제2 이미지는 제1 이미지에 비해 빠른 속도로 생성될 수 있는 이미지이며, 어떤 경우에는 상기 제2 이미지는 렌더링 처리 없이 생성될 수도 있다. 이하, 도 4를 참조하여 제2 이미지 및 제2 이미지 갱신 이벤트에 대해 보다 구체적으로 설명한다.
도 4는 본 발명의 일실시예에 따른 제2 이미지의 일례를 도시한 도면이다. 상기 제2 이미지는 게이머에 의한 마우스 포인트의 이동, 채팅창(401)의 대화(채팅 텍스트)의 입력, 아이템 선택 창(403) 등의 게이머 인터페이스 입력 또는 게이머가 게임을 진행하기 위해 소유한 아이템의 상태 정보를 나타내는 공간인 인벤토리(Inventory) 창(402)과 연관된 입력에 따라 변화하는 이미지를 나타낸다. 이러한 제2 이미지(401, 402, 403)는 이미지를 갱신하기 위한 렌더링 처리에 소요되는 시간이 거의 없거나 또는 렌더링 처리가 필요하지 않은 이미지 즉, 이미지 갱신 주기를 매우 짧게 선정할 수 있는 이미지이다.
단계(206)에서 화면 갱신 시스템(100)은 제2 프레임 레이트로 상기 제2 이미지 갱신 이벤트에 따라 제2 이미지를 생성한다. 단계(206)는 상기 제2 이미지 갱신 이벤트가 지속되는 동안 반복된다.
예를 들어, 게이머가 인벤토리 창(402)에 포함되어 있는 아이템을 선택하는 경우 제2 이미지 갱신 이벤트가 발생되며, 화면 갱신 시스템(100)은 아이템 선택을 위한 마우스 이동, 선택된 아이템의 표시 등과 연관된 이미지 리소스 데이터를 상기 버퍼 공간으로 로딩하지 않고 바로 제2 이미지를 생성하여 게임 화면에 반영한다.
상기 제2 프레임 레이트는 상기 제2 이미지를 생성하여 갱신하는 갱신 속도와 관련이 있으며 단위 시간당 디스플레이 되는 프레임의 수로서 측정된다.
제2 이미지의 경우, 상기 버퍼 수단에 로딩되는 과정 없이 생성되며 제2 이미지를 생성하기 위해 필요한 계산량이 많지 않기 때문에 제1 이미지에 비해 빠른 속도로 생성될 수 있다. 상기 제2 이미지는 렌더링 처리가 필요하지 않거나, 필요하더라도 그 계산량이 많지 않은 이미지므로 제1 이미지보다 상대적으로 높은 프레임 레이트로 실시간 갱신될 수 있다. 따라서, 제2 프레임 레이트는 제1 프레임 레이트보다 큰 [60frame/s]로 선정할 수 있다. 또한, 제2 이미지 갱신 이벤트가 발생하는 동안은 지속적으로 제2 이미지가 생성/갱신되어 게임 화면 상에 실시간으로 반영될 수 있다.
단계(207)에서 화면 갱신 시스템(100)은 상기 제1 이미지 및 상기 제2 이미지를 합성하여 전체 이미지를 생성한다. 이때, 상기 제1 이미지 및 상기 제2 이미지를 합성하는 방법으로서, 상기 제1 이미지와 상기 제2 이미지를 중첩하는 방법을 사용할 수 있다. 예를 들면, 도 4에서 제2 이미지(401, 402, 및 403)은 해당 영역 외의 영역은 블랭크 상태이고, 제2 이미지를 제1 이미지 상에 중첩하는 경우 상기 블랭크 영역에 제2 이미지가 디스플레이 되도록 하는 가장 간단한 합성 방법이 채택될 수 있다.
또한, 하나의 전체 이미지를 구성하는 영역을 제1 영역과 제2 영역으로 구별하고 제1 이미지는 제1 영역에만, 제2 이미지는 제2 영역에만 디스플레이 되도록 하는 합성 방법이 사용될 수도 있다.
상기 제1 이미지 및 상기 제2 이미지는 상술한 바와 같이 별개의 프로세스를 통하여 각각 독립적으로 생성되기 때문에, 전체 이미지는 제1 이미지만 갱신되는 경우, 또는 제2 이미지만 갱신되는 경우에도 매번 갱신된다. 또한, 본 실시예에 따르면, 전체 이미지는 제1 이미지만 갱신되는 경우 제1 프레임 레이트로 갱신되고, 제2 이미지만 갱신되는 경우에는 제2 프레임 레이트로 갱신되고, 제1 이미지 및 제2 이미지가 동시에 갱신되는 경우에는 전체 이미지는 제1 프레임 레이트로 갱신되는 영역과 제2 프레임 레이트로 갱신되는 영역이 각각 존재하게 된다.
제1 이미지 갱신 이벤트 및 제2 이미지 갱신 이벤트가 동시에 발생하는 경우, 예를 들면 NPC가 접근하는 경우와 게이머가 채팅 창에 채팅 텍스트를 입력하는 경우, 제1 이미지는 60[frame/s]의 갱신 속도로, 제2 이미지는 제1 이미지의 갱신 속도에 비해 느린 갱신 속도(30[frame/s])로 생성되므로, 1번 프레임의 제1 이미지가 렌더링 처리 되고 있는 동안 제2 이미지는 이미 생성되어 전체 이미지 상에 바로 적용된다.
상기 제2 이미지가 상기 전체 이미지에 이미 적용된 후, 렌더링 처리가 완료된 제1 이미지를 전체 이미지에 적용하며, 이러한 과정을 통해 전체 이미지가 갱신된다.
마지막으로, 단계(208)에서 화면 갱신 시스템(100)은 상기와 같이 생성된 전체 이미지를 단말 수단(125)의 표시 수단에 디스플레이 한다.
이러한 본 발명에 따른 화면 갱신 시스템(100)과 종래기술을 비교해 보면 본 발명에 따른 화면 갱신 방법의 장점이 분명하게 드러난다. 종래기술에 따른 화면 갱신 시스템은 보다 빨리 처리할 수 있는 C 단계(예를 들면 채팅 텍스트의 내용 표시)과 보다 시간이 걸리는 A 단계(예를 들면 플레이어 캐릭터의 이동)를 모두 처리해야 하는 경우에는 A 단계와 C 단계가 모두 종료되어야만 게임 화면을 갱신할 수 있기 때문에 시간이 걸리는 A 단계의 처리 속도에 따라 선정된 갱신 속도로 갱신된다.
반면 본 실시예에 따르면 A 단계, 즉 제1 이미지를 생성하는 과정과 C 단계, 즉 제2 이미지를 생성하는 과정은 각각 독립적으로 처리되기 때문에, 제2 이미지만을 갱신하고 제1 이미지는 갱신할 필요가 없는 경우에는 전체 이미지, 즉 게임 화면의 갱신 속도는 C 단계의 처리 속도에 의해 결정되므로, 더 빠르게 갱신 가능하다.
특히, 실시간 렌더링 처리 과정에서 랙이 발생하는 경우, 즉 A 단계를 수행하는 과정에서 장애가 발생하여 정상적으로 A 단계를 처리할 수 없는 경우에도, 종래기술은 전체 이미지를 생성하는데 장애가 발생하나, 본 실시예에 따르면 정상적으로 C 단계를 처리하여 제2 이미지를 생성하고 제2 이미지의 갱신은 전체 이미지에 반영할 수 있으므로 게이머에게 화면 갱신 요청 중 일부 요청에 대한 응답은 제공할 수 있게 된다.
채팅 텍스트의 내용이 제대로 디스플레이 되지 않거나, 마우스 포인트의 이동 속도가 급격하게 느려지는 경우와 같이 제2 이미지가 제대로 갱신되지 않는 경우에 게이머들이 더욱 답답함을 느낀다는 점에서, 비록 제1 이미지는 랙 현상에 의해 30[frame/s] 이하의 갱신 속도로 제공하더라도 제2 이미지는 정상적인 갱신 속도로 제공하는 것의 의미가 크다.
또한, 상술한 실시예에서는 제1 이미지와 제2 이미지와 같이 두 종류의 이미지를 각각 생성하여 갱신하는 경우에 대해 설명했으나, 본 발명의 범위는 제1 이미지, 제2 이미지 및 제3 이미지와 같이 두 종류 이상의 이미지를 선정하고 각 이미지를 서로 상이한 갱신 속도로 각각 생성하여 합성함으로써 전체 이미지를 생성하는 구성을 모두 포함한다고 할 것이다.
도 5은 본 발명의 또 다른 실시예에 따른 화면 갱신 시스템을 도시한 블록도이다.
도 5에서 도시한 바와 같이, 화면 갱신 시스템(100, 500)은 기본 기록 공간(501), 식별 수단(502), 로딩 수단(503), 제1 이미지 생성 수단(504), 제2 이미지 생성 수단(505), 디스플레이 수단(506)을 포함한다.
기본 기록 공간(501)은 이미지 리소스 데이터를 저장하기 위한 장치로서, 화면 갱신 이벤트를 위한 렌더링 처리에 요구되는 이미지 리소스 데이터를 저장하기 위한 논리적 또는 물리적 기록 장치이다.
식별 수단(502)은 제1 이미지 갱신 이벤트가 발생하는 경우, 기본 기록 공간(501)으로부터 상기 제1 이미지 갱신 이벤트와 연관된 이미지 리소스 데이터를 식별한다. 예를 들면, 플레이어 캐릭터가 소정의 방향으로 이동하는 경우 이동할 영역에 해당하는 이미지 리소스 데이터를 식별한다.
로딩 수단(503)은 식별 수단(502)에서 식별된 이미지 리소스 데이터를 복수의 버퍼를 포함하는 버퍼 공간에 프레임 단위로 각 버퍼에 순차적으로 로딩한다.
제1 이미지 생성 수단(504)은 각 버퍼에 로딩된 이미지 리소스 데이터를 버퍼 별로 순차적으로 판별하여 렌더링함으로써 제1 이미지를 생성한다. 제1 이미지 생성 수단(504)은 제1 프레임 레이트로 제1 이미지를 생성하고, 제1 이미지 갱신 이벤트가 지속되는 동안 상기 제1 이미지를 생성하여 갱신하는 과정을 반복적으로 수행한다.
제2 이미지 생성 수단(505)은 제2 이미지 갱신 이벤트가 발생하는 경우, 상기 제2 이미지 갱신 이벤트와 연관된 제2 이미지를 생성한다. 제2 이미지 생성 수단(505)은 제2 프레임 레이트로 제2 이미지를 생성하여, 제2 이미지 갱신 이벤트가 지속되는 동안 상기 제2 이미지를 생성하여 갱신하는 과정을 반복적으로 수행한다. 상기 제2 이미지는 렌더링 처리가 필요하지 않거나, 필요한 경우에도 그 계산량이 많지 않아 제2 이미지를 생성하기 위해 필요한 시간이 제1 이미지에 비해 상대적으로 적은 이미지이다. 따라서, 제2 프레임 레이트는 제1 프레임 레이트에 비해 상당히 큰 값으로 설정 가능하다.
디스플레이 수단(506)은 상기 제1 이미지 및 상기 제2 이미지를 합성하여 전체 이미지를 생성하고, 상기 전체 이미지를 모니터 등과 같은 단말 수단(125)의 표시 장치에 디스플레이 한다. 예를 들면, 상기 전체 이미지는 제1 이미지 및 제2 이미지를 중첩하여 생성될 수 있다.
이와 같이 생성되는 전체 이미지에 있어서, 제1 이미지는 제1 프레임 레이트로, 제2 이미지는 제2 프레임 레이트와 같이 별개의 갱신 속도로 갱신되기 때문에, 채팅 텍스트 내용을 표시하는 등의 제2 이미지는 제1 이미지에 비해 훨씬 빠른 속도로 전체 이미지에 반영된다.
또한, 본 발명의 실시예들은 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독 가능 매체를 포함한다. 상기 컴퓨터 판독 가능 매체에 기록되는 프로그램은 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
도 6은 본 발명에 따른 화면 갱신 방법을 수행하는 데 채용될 수 있는 범용 컴퓨터 장치의 내부 블록도이다.
컴퓨터 장치(600)는 램(RAM: Random Access Memory)(620)과 롬(ROM: Read Only Memory)(630)을 포함하는 주기억장치와 연결되는 하나 이상의 프로세서(610)를 포함한다. 프로세서(610)는 중앙처리장치(CPU)로 불리기도 한다. 본 기술분야에서 널리 알려져 있는 바와 같이, 롬(630)은 데이터(data)와 명령(instruction)을 단방향성으로 CPU에 전송하는 역할을 하며, 램(620)은 통상적으로 데이터와 명령을 양방향성으로 전송하는 데 사용된다. 램(620) 및 롬(630)은 컴퓨터 판독 가능 매체의 어떠한 적절한 형태를 포함할 수 있다. 대용량 기억장치(Mass Storage)(640)는 양방향성으로 프로세서(610)와 연결되어 추가적인 데이터 저장 능력을 제공하며, 상기된 컴퓨터 판독 가능 기록 매체 중 어떠한 것일 수 있다. 대용량 기억장치(640)는 프로그램, 데이터 등을 저장하는데 사용되며, 통상적으로 주기억장치보다 속도가 느린 하드 디스크와 같은 보조기억장치이다. CD 롬(660)과 같은 특정 대용량 기억장치가 사용될 수도 있다. 프로세서(610)는 비디오 모니터, 트랙볼, 마우스, 키보드, 마이크로폰, 터치스크린 형 디스플레이, 카드 판독기, 자기 또는 종이 테이프 판독기, 음성 또는 필기 인식기, 조이스틱, 또는 기타 공지된 컴퓨터 입출력장치와 같은 하나 이상의 입출력 인터페이스(650)와 연결된다. 마지막으로, 프로세서(610)는 네트워크 인터페이스(670)를 통하여 유선 또는 무선 통신 네트워크에 연결될 수 있다. 이러한 네트워크 연결을 통하여 상기된 방법의 절차를 수행할 수 있다. 상기된 장치 및 도구는 컴퓨터 하드웨어 및 소프트웨어 기술 분야의 당업자에게 잘 알려져 있다.
상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있다.
이하, 본 발명에서 사용된 렌더링(Rendering)에 대해 개략적으로 설명한다. 렌더링은 이미지를 생성하는 기법 중 하나로서, 예를 들면 색상과 농도의 변화 등과 같은 3차원 질감을 표현함으로써 사실적인 그래픽 이미지를 생성하기 위해 렌더링이 사용될 수 있다.
실시간 렌더링(real-time rendering)은 컴퓨터 상에서 신속하게 이미지들을 만들어 내는 것으로 컴퓨터 그래픽스에서 사용자와의 상호 작용이 가장 활발한 영역 중 하나이다.이미지가 표시되는 속도는 초당 프레임 수(Frames per second:fps) 단위로 측정될 수 있으며, 상술한 바와 같이 초당 15프레임 이상 정도의 속도로 이미지가 표시되는 경우 실시간 렌더링이라고 할 수 있을 것이다. 반대로, 사용자들은 초당 75프레임 이상이 되면 그 이후에는 속도 차이를 거의 느끼지 못하므로 이미지 표시 속도를 무작정 높일 필요도 없다.
실시간 렌더링은, 이미지로 그려지는 물체의 1) 시각적 외양을 좋게 하는 것과 2) 사용자가 적절한 상호 작용감(interactivity)를 느낄 수 있을 정도의 속도로 이미지를 생성하여 표시하는 것을 주된 목적으로 하고 있으며 이를 위한 다양한 기법들이 사용될 수 있다. 특히 후자의 경우는 가속화 알고리즘(acceleration algorithms)에 의해 구현될 수 있다.
예를 들면, 실시간 렌더링은 시각적 외양을 좋게 하기 위해 물질(material)과 빛(light)의 정의를 내리고, 안티앨리어싱(anti-aliasing)이나 감마 보정(gamma correction), 고급 조명 처리(advanced lighting), 셰이딩(shading) 등을 통하여 화질을 향상시키는 기법을 사용한다.
또한, 실시간 렌더링은 가속화 알고리즘으로서 텍스처 처리(texturing)를 사용할 수 있다. 텍스처 처리는 물체의 표면 상에 이미지를 입히는 방식으로 수행된다. 또 다른 가속화 알고리즘의 예는 선별(culling)과 파이프라인 최적화(pipeline optimization) 기법 등에서 사용된다.
이상 렌더링에 대해 개략적으로 설명했으나, 렌더링에 사용될 수 있는 기법들은 이에 한정되는 것은 아니다. 즉, 본 발명에 따른 화면 갱신 시스템은 종래의 렌더링 기법은 물론 새로 연구 개발된 렌더링 기법을 모두 사용하여 렌더링을 수행할 수 있으며, 이러한 경우에도 모두 본 발명의 범위에 속함은 당연하다.
현재 "양질의 이미지를 상호 작용감이 좋게 느껴질 수 있는 속도로, 렌더링 처리하는 시스템의 부하를 무리하게 커지는 것을 방지"하면서 렌더링을 수행할 수 있는 다양한 렌더링 기법들이 빠른 속도로 연구되고 있으며, 상기와 같은 조건이 서로 상보적인 경우 해당 시스템의 목적이나 사양, 환경 등에 따라 시스템 설계자에 의해 적절한 기법이 선택될 수 있다.
지금까지 본 발명에 따른 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서는 여러 가지 변형이 가능함은 물론이다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며, 후술하는 특허 청구의 범위뿐 아니라 이 특허 청구의 범위와 균등한 것들에 의해 정해져야 한다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허 청구 범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.
본 발명에 따르면, 별개의 프로세스에 의해 각각 서로 다른 방식으로 각각 생성될 수 있는 두 종류 이상의 이미지를 갱신 속도를 달리하여 각각 생성한 후 상기 두 종류 이상의 이미지를 합성하여 전체 이미지를 갱신하는 화면 갱신 방법 및 시스템이 제공된다.
또한, 본 발명에 따르면, 하나의 전체 이미지를 구현하기 위해 처리해야 할 각 과정을 갱신 속도 별로 분리하여 각각 독립적으로 처리하도록 함으로써, 가장 느린 과정에 맞추어 전체 이미지의 갱신 속도가 함께 느려지는 것을 방지할 수 있는 화면 갱신 방법 및 시스템이 제공된다.
또한, 본 발명에 따르면, 게임 화면을 갱신함에 있어서, 채팅 텍스트의 내용을 디스플레이 하거나, 마우스 포인트의 위치 이동을 디스플레이 하는 것과 같이 게이머의 요청에 빨리 응답할 필요성이 보다 큰 이미지 부분은 보다 빠른 갱신 속도로 갱신되도록 할 수 있고, 3D 이미지의 생성 과정에서 랙이 발생되더라도 이러한 이미지 부분의 갱신에는 영향이 없도록 하는 화면 갱신 방법 및 시스템이 제공된다.

Claims (8)

  1. 화면 갱신 방법에 있어서,
    제1 이미지 갱신 이벤트가 발생하는 경우, 소정의 기본 기록 공간으로부터 상기 제1 이미지 갱신 이벤트와 연관된 이미지 리소스 데이터를 식별하는 제1 단계;
    상기 식별된 이미지 리소스 데이터를 복수의 버퍼를 포함하는 버퍼 공간에 로딩하는 제2 단계- 상기 이미지 리소스 데이터는 프레임 단위로 상기 버퍼에 순환적으로 각각 로딩됨 -;
    상기 버퍼에 로딩된 이미지 리소스 데이터를 버퍼 별로 순차적으로 판별하고 판별된 이미지 리소스 데이터를 렌더링하여 제1 프레임 레이트로 제1 이미지를 생성하는 제3 단계;
    제2 이미지 갱신 이벤트가 발생하는 경우, 제2 프레임 레이트로 상기 제2 이미지 갱신 이벤트와 연관된 제2 이미지를 생성하는 제4 단계;
    상기 제1 이미지 및 상기 제2 이미지를 합성하여 전체 이미지를 생성하는 제5 단계; 및
    상기 전체 이미지를 소정의 표시 수단에 디스플레이 하는 제6 단계
    를 포함하고
    상기 제1 프레임 레이트는 상기 제2 프레임 레이트보다 작은 것을 특징으로 하는 화면 갱신 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 제3 단계는 상기 제1 이미지 갱신 이벤트가 지속되는 동안 반복되고,
    상기 제4 단계는 상기 제2 이미지 갱신 이벤트가 지속되는 동안 반복되는 것을 특징으로 하는 화면 갱신 방법.
  4. 제1항에 있어서,
    상기 제1 이미지는 3차원 네트워크 게임 상에서 플레이어 캐릭터, NPC(Non-Player Character), 또는 동적 배경을 표시하기 위한 3차원 오브젝트를 포함하는 이미지이고,
    상기 제2 이미지는 마우스 포인트, 채팅 텍스트를 포함하는 채팅창, 또는 아이템 상태 정보를 포함하는 아이템 선택 창과 연관된 사용자 인터페이스 입력을 표시하기 위한 이미지인 것을 특징으로 하는 화면 갱신 방법.
  5. 제1항에 있어서,
    상기 제5 단계는,
    상기 제1 이미지 및 상기 제2 이미지를 중첩하여 전체 이미지를 생성하는 단계를 포함하는 것을 특징으로 하는 화면 갱신 방법.
  6. 제1항을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  7. 화면 갱신 시스템에 있어서,
    이미지 리소스 데이터를 저장하기 위한 기본 기록 공간;
    제1 이미지 갱신 이벤트가 발생하는 경우, 상기 기본 기록 공간으로부터 상기 제1 이미지 갱신 이벤트와 연관된 이미지 리소스 데이터를 식별하는 식별 수단;
    상기 식별된 이미지 리소스 데이터를 복수의 버퍼를 포함하는 버퍼 공간에 프레임 단위로 각 버퍼에 순차적으로 로딩하는 로딩 수단;
    상기 버퍼에 로딩된 이미지 리소스 데이터를 버퍼 별로 순차적으로 판별하고 판별된 이미지 리소스 데이터를 렌더링하여 제1 프레임 레이트로 제1 이미지를 생성하는 제1 이미지 생성 수단;
    제2 이미지 갱신 이벤트가 발생하는 경우 제2 프레임 레이트로 상기 제2 이미지 갱신 처리 이벤트와 연관된 제2 이미지를 생성하는 제2 이미지 생성 수단; 및
    상기 제1 이미지 및 상기 제2 이미지를 합성하여 전체 이미지를 생성하고, 상기 전체 이미지를 소정의 표시 수단에 디스플레이 하는 디스플레이 수단
    을 포함하고
    상기 제1 프레임 레이트는 상기 제2 프레임 레이트 보가 작은 것을 특징으로 하는 화면 갱신 시스템.
  8. 삭제
KR1020040049556A 2004-06-29 2004-06-29 화면 갱신 방법 및 그 시스템 KR100469820B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020040049556A KR100469820B1 (ko) 2004-06-29 2004-06-29 화면 갱신 방법 및 그 시스템
PCT/KR2005/002018 WO2006001679A1 (en) 2004-06-29 2005-06-28 Method and system for renewing screen
US11/571,356 US8035649B2 (en) 2004-06-29 2005-06-28 Method and system for renewing screen
US13/228,325 US9076356B2 (en) 2004-06-29 2011-09-08 Method and system for renewing screen
US14/731,006 US10105599B2 (en) 2004-06-29 2015-06-04 Method and system for renewing screen
US15/980,248 US10376787B2 (en) 2004-06-29 2018-05-15 Method and system for renewing screen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040049556A KR100469820B1 (ko) 2004-06-29 2004-06-29 화면 갱신 방법 및 그 시스템

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020040049687A Division KR20060000732A (ko) 2004-06-29 2004-06-29 화면 갱신 방법 및 그 시스템

Publications (1)

Publication Number Publication Date
KR100469820B1 true KR100469820B1 (ko) 2005-02-03

Family

ID=35782049

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040049556A KR100469820B1 (ko) 2004-06-29 2004-06-29 화면 갱신 방법 및 그 시스템

Country Status (3)

Country Link
US (4) US8035649B2 (ko)
KR (1) KR100469820B1 (ko)
WO (1) WO2006001679A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160001550A (ko) * 2014-06-27 2016-01-06 주식회사 디지털프로그 반복순환 구조의 게임 장면 구현 및 동작 방법

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100469820B1 (ko) 2004-06-29 2005-02-03 엔에이치엔(주) 화면 갱신 방법 및 그 시스템
US8808087B2 (en) * 2007-02-22 2014-08-19 Sony Corporation Game device, game control method, and game control program
US9424767B2 (en) * 2012-06-18 2016-08-23 Microsoft Technology Licensing, Llc Local rendering of text in image
US20150355827A1 (en) * 2012-12-19 2015-12-10 Willem Morkel Van Der Westhuizen User control of the trade-off between rate of navigation and ease of acquisition in a graphical user interface
EP2770712B1 (en) * 2013-02-20 2020-04-15 Samsung Electronics Co., Ltd. Method and electronic device for synchronizing of user interfaces between two terminals
CN107087073B (zh) * 2017-04-27 2020-06-02 北京小米移动软件有限公司 终端控制方法及装置
CN111866419B (zh) * 2019-04-24 2022-05-31 杭州海康微影传感科技有限公司 热成像图像显示方法、装置及热成像设备

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6410322A (en) * 1987-07-03 1989-01-13 Sharp Kk Display device for picture information
US5351067A (en) 1991-07-22 1994-09-27 International Business Machines Corporation Multi-source image real time mixing and anti-aliasing
DE69215155T2 (de) 1991-07-26 1997-06-19 Sun Microsystems Inc Gerät mit schneller Kopierung zwischen Rasterpuffern in einem Anzeigesystem mit Doppel-Pufferspeichern
KR100295712B1 (ko) 1994-03-11 2001-11-14 미다라이 후지오 컴퓨터디스플레이시스템컨트롤러
AUPM701394A0 (en) * 1994-07-22 1994-08-18 Monash University A graphical display system
KR0135571B1 (ko) 1994-10-26 1998-04-23 송원오 펙테노톡신 ⅱ(pectenotoxin ⅱ)의 추출방법 및 이를 이용한 항암제
US6147695A (en) * 1996-03-22 2000-11-14 Silicon Graphics, Inc. System and method for combining multiple video streams
KR19980015968A (ko) 1996-08-24 1998-05-25 김광호 서로 다른 갱신주기를 가지는 영상신호를 합성하기위한 장치
JPH11195132A (ja) 1997-10-31 1999-07-21 Hewlett Packard Co <Hp> テクスチャマッピング用バッファ、3次元グラフィクス処理装置、3次元グラフィクス処理システム、3次元グラフィクス処理方法および処理プログラムが記憶された記憶媒体
US6075532A (en) * 1998-03-23 2000-06-13 Microsoft Corporation Efficient redrawing of animated windows
US6487565B1 (en) * 1998-12-29 2002-11-26 Microsoft Corporation Updating animated images represented by scene graphs
KR100354824B1 (ko) 1999-11-22 2002-11-27 신영길 시간 일관성을 이용한 실시간 렌더링 방법 및 렌더링 장치
US7450114B2 (en) 2000-04-14 2008-11-11 Picsel (Research) Limited User interface systems and methods for manipulating and viewing digital documents
KR20010110841A (ko) 2000-06-08 2001-12-15 김남태 윈도우 씨이용 그래픽 엔진을 사용하는 그래픽실행장치 및그 그래픽엔진이 기록된 판독 가능한 기록매체
WO2002039195A1 (en) * 2000-11-07 2002-05-16 Holographic Imaging Llc Improved method of producing a computer generated hologram
US6840861B2 (en) * 2000-11-20 2005-01-11 Kent Wilcoxson Jordan Method and apparatus for interactive real time distributed gaming
US7034791B1 (en) * 2000-12-14 2006-04-25 Gary Odom Digital video display employing minimal visual conveyance
US6888550B2 (en) * 2001-07-19 2005-05-03 International Business Machines Corporation Selecting between double buffered stereo and single buffered stereo in a windowing system
US7589737B2 (en) * 2001-10-31 2009-09-15 Hewlett-Packard Development Company, L.P. System and method for communicating graphics image data over a communication network
US6931151B2 (en) * 2001-11-21 2005-08-16 Intel Corporation Method and apparatus for modifying graphics content prior to display for color blind use
JP4082591B2 (ja) * 2003-05-20 2008-04-30 インターナショナル・ビジネス・マシーンズ・コーポレーション データ編集装置及びプログラム
US20050137015A1 (en) * 2003-08-19 2005-06-23 Lawrence Rogers Systems and methods for a role-playing game having a customizable avatar and differentiated instant messaging environment
GB0322045D0 (en) * 2003-09-20 2003-10-22 Koninkl Philips Electronics Nv A network-based gaming system
US7868890B2 (en) * 2004-02-24 2011-01-11 Qualcomm Incorporated Display processor for a wireless device
KR100469820B1 (ko) * 2004-06-29 2005-02-03 엔에이치엔(주) 화면 갱신 방법 및 그 시스템
US7856602B2 (en) * 2005-04-20 2010-12-21 Apple Inc. Updatable menu items

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160001550A (ko) * 2014-06-27 2016-01-06 주식회사 디지털프로그 반복순환 구조의 게임 장면 구현 및 동작 방법
KR101586655B1 (ko) 2014-06-27 2016-01-19 주식회사 디지털프로그 반복순환 구조의 게임 장면 구현 및 동작 방법

Also Published As

Publication number Publication date
US10105599B2 (en) 2018-10-23
US8035649B2 (en) 2011-10-11
US10376787B2 (en) 2019-08-13
US20150268816A1 (en) 2015-09-24
US20080136831A1 (en) 2008-06-12
US9076356B2 (en) 2015-07-07
WO2006001679A1 (en) 2006-01-05
US20180296917A1 (en) 2018-10-18
US20120240059A1 (en) 2012-09-20

Similar Documents

Publication Publication Date Title
JP4503073B2 (ja) ゲーム画面を更新するためのオブジェクトをローディングするイメージリソースローディングシステム及びイメージリソースローディング方法
US10376787B2 (en) Method and system for renewing screen
JP5706241B2 (ja) 画像生成プログラム、画像生成装置、画像生成システム及び画像生成方法
JP2010022646A (ja) プログラム、情報記憶媒体および画像生成システム
US11847720B2 (en) System and method for performing a Z pre-pass phase on geometry at a GPU for use by the GPU when rendering the geometry
US20210241414A1 (en) System and method for efficient multi-gpu rendering of geometry by pretesting against screen regions using configurable shaders
EP4100138A1 (en) System and method for efficient multi-gpu rendering of geometry by region testing while rendering
KR20060000732A (ko) 화면 갱신 방법 및 그 시스템
JP2010134671A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4394211B2 (ja) 画像生成システム及び情報記憶媒体
US11961159B2 (en) Region testing of geometry while rendering for efficient multi-GPU rendering
US11869114B2 (en) Efficient multi-GPU rendering by testing geometry against screen regions before rendering using a pretest GPU
US11605148B2 (en) System and method for efficient multi-GPU rendering of geometry by pretesting against screen regions using prior frame information
JP2022188633A (ja) 情報処理装置、プログラム、及びゲーム画像生成方法
Boutsikas Decoupling Shading from Rendering Rate: An Analysis on Object Space Shading
Zafft Phantasm: A Game Engine A Major Qualifying Project Report Submitted to the faculty of the
Kovalcík Occlusion Culling in Dynamic Scenes

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
A302 Request for accelerated 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: 20111228

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20131224

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20141231

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20151216

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20170116

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20171227

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20181226

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20200103

Year of fee payment: 16