KR102108244B1 - 이미지 처리 방법 및 장치 - Google Patents

이미지 처리 방법 및 장치 Download PDF

Info

Publication number
KR102108244B1
KR102108244B1 KR1020187018499A KR20187018499A KR102108244B1 KR 102108244 B1 KR102108244 B1 KR 102108244B1 KR 1020187018499 A KR1020187018499 A KR 1020187018499A KR 20187018499 A KR20187018499 A KR 20187018499A KR 102108244 B1 KR102108244 B1 KR 102108244B1
Authority
KR
South Korea
Prior art keywords
interaction
normal map
ripple
target
image frame
Prior art date
Application number
KR1020187018499A
Other languages
English (en)
Other versions
KR20180088876A (ko
Inventor
웨이보 지에
Original Assignee
텐센트 테크놀로지(센젠) 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CN201610209641.7A external-priority patent/CN105913471B/zh
Priority claimed from CN201610210562.8A external-priority patent/CN105912234B/zh
Application filed by 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 filed Critical 텐센트 테크놀로지(센젠) 컴퍼니 리미티드
Publication of KR20180088876A publication Critical patent/KR20180088876A/ko
Application granted granted Critical
Publication of KR102108244B1 publication Critical patent/KR102108244B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/603D [Three Dimensional] animation of natural phenomena, e.g. rain, snow, water or plants
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • 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/25Output arrangements for video game devices
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/02Non-photorealistic rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/663Methods for processing data by generating or executing the game program for rendering three dimensional images for simulating liquid objects, e.g. water, gas, fog, snow, clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/08Bandwidth reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/21Collision detection, intersection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/24Fluid dynamics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Architecture (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)

Abstract

이미지 처리 방법 및 장치에 대해 개시한다. 이미지 처리 방법은, 제1 대상의 상호작용 공간이 제2 대상이 위치하는 제1 평면과 교차하는 현재 이미지 프레임에서 상호작용 영역을 획득하는 단계 - 제2 대상 중의 목표 대상은 상호작용 공간에 위치함 - ; 상기 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵을 생성하는 단계 - 상기 노멀 맵에 복수의 리플(ripple)이 표시됨 - ; 상기 복수의 리플 중 제1 목표 리플을 사용해서, 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 목표 대상을 이동시키는 단계 - 제1 목표 리플은 목표 대상에 대응함 - 를 포함한다. 본 발명은 제1 대상이 제2 대상과 상호작용할 때 제2 대상의 디스플레이 효과가 상대적으로 낮은 종래 기술에서의 기술적 문제점을 해결한다. 또한, 상호작용 영역을 상이한 레벨로 분할함으로써, 상호작용 영역에 대응하는 상호작용 맵은 상이한 정밀도를 가지며, 따라서 실시간 풀-스크린 업데이트 동작에 참여하는 픽셀 수를 감소시켜 비디오 메모리 오버헤드를 상당히 감소시키며 성능을 향상시킨다.

Description

이미지 처리 방법 및 장치
본 출원은 2016년 4월 6일 중국특허청에 출원되고 발명의 명칭이 "이미지 처리 방법 및 장치"인 중국특허출원 제201610209641.7호 및 2016년 4월 6일 중국특허청에 출원되고 발명의 명칭이 "가상 시나리오 상호작용 방법 및 장치"인 중국특허출원 제201610210562.8호에 대한 우선권을 주장하는 바이며, 상기 문헌들은 본 명세서에 원용되어 포함된다.
본 출원은 이미지 처리 분야에 관한 것이며, 특히 이미지 처리 방법 및 장치에 관한 것이다.
온라인 게임에서 게임 플레이어는 게임 플레이어와 게임 시나리오 사이에 있는 메인 게임 인터페이스에 표시되는 상호작용 효과에 대해 종종 염려한다. 예를 들어, 게임 플레이어가 잔디 위를 걸을 때, 잔디가 흔들리고 번지는 애니메이션 효과가 있으면 게임 플레이어는 게임에서 더 재미있을 수 있다. 온라인 게임의 가상 시나리오에서 잔디에 대한 인터랙티브 렌더링은 게임 렌더링의 매우 중요한 부분이다. 잔디가 플레이어와 상호작용할 수 없다면 플레이어는 생기를 느낄 수 없다. 플레이어가 잔디를 가로지르거나 마법을 걸 때, 잔디가 현실감 있는 상호작용(즉, 앞서 말한 흔들림 및 번짐) 효과를 얻을 수 있다면 게임 플레이어는 매우 강한 피드백을 얻을 수 있으므로 게임 플레이어는 이 게임 세계가 게임 플레이어에 의해 영향을 받는 것으로 믿게 하여 플레이어의 몰입감을 증가시킨다.
예를 들어, 온라인 게임: FarCry 및 Wushu의 Age와 같은 게임에서 잔디는 플레이어가 움직일 때 인터랙티브 애니메이션 효과를 얻을 수 있다. 그렇지만, 초소형 잔디는 상호작용 효과를 달성하고 여러 게임 플레이어 간의 상호작용만 지원한다. 또한, 그 효과는 매우 강하며, 플레이어가 잔디 위에서 움직일 때 번짐 현상을 나타내지 않는다.
현재, 온라인 게임에서 잔디의 상호 작용 효과를 구현하는 주된 방법은 중앙 처리 장치(CPU)를 이용하여 플레이어와 잔디 엔티티의 교차점을 감지하고, 감지 결과에 따라 상호작용 시 잔디가 영향을 받고 버텍스 버퍼를 잠근 다음 상호작용 중에 영향을 받은 잔디를 하나씩 렌더링한다.
기존 기술 솔루션의 단점은 주로 두 가지 측면에서 구체화된다: 효율성이 상대적으로 낮기 때문에 대규모 상호작용을 구현할 수 없고, 룩앤필(look and feel) 측면에서 잔디의 흔들림(swing) 애니메이션이 충분히 자연스럽지 않으므로 게임 플레이어가 움직일 때 생기는 번짐 애니메이션 효과를 시뮬레이션할 수 없다.
효율이 상대적으로 낮다는 것은 다수의 게임 플레이어(예를 들어, 200명의 게임 플레이어)와 잔디가 있을 때 구체화된다. 이 경우, 전술한 해결책은 잔디 및 게임 플레이어의 부드럽고 사실적인 상호작용 애니메이션 효과를 성취할 수 없다. 예를 들어, 게임 플레이어의 수를 N, 잔디의 양을 M이라고 하면, 이 경우, 우선 N*M회의 교차 검출을 할 필요가 있고, 그러한 동작은 많은 수의 게임 플레이어가 있을 때 크게 영향을 미친다. 상호작용 중에 영향을 받는 잔디의 각각의 블레이드에는 해당 버텍스 스트림이 필요하며 이로 인해 많은 비디오 메모리 오버 헤드가 발생한다. 각각의 프레임에서 상호작용 중에 업데이트하기 위해서는 영향을 받는 잔디의 각각의 블레이드의 버텍스 스트림을 잠글 필요가 있으며 이 역시 많은 CPU 오버헤드의 원인이 된다. 상호작용 동안 영향을 받는 잔디의 각각의 블레이드의 버텍스 정보는 완전히 동일하지 않으므로 즉석 렌더링 방법을 사용하여 잔디를 한 번에 그릴 수 없으므로 한 개씩 그려지며 드로콜(drawcall)의 양이 늘어나 성능을 저하시킨다.
또한, 기존 가상 시나리오의 이미지는 하나의 상호작용 맵을 사용하여 구현되며 상호작용 맵의 크기는 2048*2048과 같이 매우 크다. 사용된 상호작용 맵은 가상 시나리오의 전체 상호작용 영역을 포함하며, 전체 상호작용 영역의 해당 정밀도는 단위 면적마다 균등하다. 그렇지만, 상호작용 맵의 크기가 과도하게 크고 계산해야 하는 픽셀의 수량이 상호작용 맵의 크기에 비례하기 때문에 상호작용 맵에 해당하는 값도 매우 커서 가상 시나리오의 성능에 중요한 영향을 미친다. 예를 들어, 가상 시나리오가 시작된 후 프레임 속도가 급격히 감소한다.
전술한 문제점들에 대해, 유효한 해결책이 현재 제안되지 않았다.
본 출원의 실시예는 제1 대상이 제2 대상과 상호작용할 때 제2 대상의 디스플레이 효과가 상대적으로 낮은 기존 기술에서의 기술적 문제점을 해결하기 위한 이미지 처리 방법 및 장치를 제공한다.
본 출원의 실시예의 관점에 따라, 이미지 처리 방법이 제공되며, 상기 이미지 처리 방법은: 제1 대상의 상호작용 공간이 제2 대상이 위치하는 제1 평면과 교차하는 현재 이미지 프레임에서 상호작용 영역을 획득하는 단계 - 제2 대상 중의 목표 대상은 상호작용 공간에 위치함 - ; 상기 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵을 생성하는 단계 - 상기 노멀 맵에 복수의 리플이 표시됨 - ; 및 상기 복수의 리플 중 제1 목표 리플을 사용해서, 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 목표 대상을 이동시키는 단계 - 제1 목표 리플은 목표 대상에 대응함 - 를 포함한다.
본 출원의 실시예의 다른 관점에 따라, 이미지 처리 장치가 제공되며, 상기 이미지 처리 장치는: 제1 대상의 상호작용 공간이 제2 대상이 위치하는 제1 평면과 교차하는 현재 이미지 프레임에서 상호작용 영역을 획득하도록 구성되어 있는 제1 획득 유닛 - 제2 대상 중의 목표 대상은 상호작용 공간에 위치함 - ; 상기 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵을 생성하도록 구성되어 있는 생성 유닛 - 상기 노멀 맵에 복수의 리플(ripple)이 표시됨 - ; 및 상기 복수의 리플 중 제1 목표 리플을 사용해서, 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 목표 대상을 이동시키도록 구성되어 있는 이동 유닛 - 제1 목표 리플은 목표 대상에 대응함 - 을 포함한다.
본 출원의 이 실시예에서, 제1 대상이 제2 대상과 상호작용할 때 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵이 생성되고, 목표 대상은 제1 대상에 대응하는 제1 목표 리플을 사용해서 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 이동되므로, 노멀 맵을 사용해서 목표 대상의 위치를 조정하는 목적이 달성되며, 제2 대상의 위치가 물결 애니메이션의 노멀 맵에 따라 변할 수 있다는 기술적 효과를 구현하고, 제1 대상이 제2 대상과 상호작용할 때 제2 대상의 디스플레이 효과가 상대적으로 낮은 기존 기술의 기술적 문제점을 해결한다.
본 출원에 따르면, 서로 다른 레벨의 상호작용 맵은 가상 시나리오에서 이미지의 원근 뷰 및 클로즈 뷰를 형성하므로 이미지의 원근 뷰는 고정밀 상호작용 맵을 사용해서 형성될 수 있고 이미지의 원격 뷰는 저정밀 상호작용 맵을 사용해서 형성될 수 있어, 원격 뷰 상호작용 영역에 대응하는 상호작용 맵의 고정밀로 인해 야기되는 불필요한 낭비 및 비디오 메모리 소모를 회피하며 이에 의해 실시간 풀 스크린 업데이트 동작 중에 픽셀의 수량을 감소하며 비디오 메모리 오버헤드를 확실하게 감소시키고 성능을 향상시킨다.
또한, 부드러운 전이는 대응하는 상호작용 맵의 정밀도에 따라 인접하는 상호작용 영역 사이의 정밀도로 수행되어, 상호작용 영역 사이의 정밀도가 균일하지 않고, 상호작용 영역이 서로 교차하는 가장자리 영역은 정밀도 변이를 가지는 단점을 극복하며, 이에 의해 상호작용 정밀도를 향상시킨다. 실시예에서, 인접하는 상호작용 영역 간의 부드러운 전이는 인접하는 상호작용 영역 간의 선형 보간에 의해 실현될 수 있다.
여기서 설명된 첨부 도면은 본 발명에 대해 더 많이 이해할 수 있게 하고 본 출원의 부분을 구성한다. 본 출원의 예시적 실시예 및 그에 관한 설명은 본 발명을 설명하는 데 사용되고 본 발명에 대해 어떠한 부적절한 제한을 구성하지 않는다. 도면에서:
도 1은 본 출원의 실시예에 따른 하드웨어 환경에 대한 아키텍처 도면이다.
도 2는 본 출원의 실시예에 따른 이미지 처리 방법에 대한 흐름도이다.
도 3은 본 출원의 실시예에 따른 게임 플레이어의 선택적 상호작용 공간에 대한 개략적인 도면이다.
도 4는 본 출원의 실시예에 따른 제1 이미지 프레임의 선택적 물결 높이 이미지에 대한 개략적인 도면이다.
도 5는 본 출원의 실시예에 따른 선택적 픽셀 확산에 대한 개략적인 도면이다.
도 6은 본 출원의 실시예에 따른 제1 이미지 프레임의 물결 높이 이미지의 선택적 노멀 맵에 대한 개략적인 도면이다.
도 7은 본 출원의 실시예에 따른 이미지 처리 장치에 대한 개략적인 도면이다.
도 8은 본 출원의 실시예에 따른 단말의 하드웨어 구조도이다.
본 출원의 솔루션을 당업자가 더 종합적으로 이해할 수 있도록 하기 위해, 이하에서는 본 출원의 실시예에 첨부된 도면을 참조하여 본 출원의 실시예의 기술적 솔루션에 대해 명확하고 완전하게 설명한다. 당연히, 설명된 실시예는 본 출원의 모든 실시예가 아닌 일부에 지나지 않는다. 당업자가 창조적 노력 없이 본 출원의 실시예에 기초하여 획득하는 모든 다른 실시예는 본 출원의 보호 범위 내에 있게 된다.
본 출원의 명세서, 청구범위 및 첨부된 도면에서, "제1" 및 "제2" 등과 같은 용어는 유사한 대상을 구별하기 위해 사용된 것이지 특정한 순서를 설명하는 것이 아님을 이해해야 한다. 이 방식으로 사용된 데이터는 적절한 경우에 서로 교환될 수 있으므로 여기서 설명되는 본 출원의 실시예는 여기서 설명된 순서와는 다른 순서로 실현될 수 있다. 또한, "구비하다", "포함하다" 또는 이의 임의의 다른 변형과 같은 용어는 배제 없는 포함을 망라하도록 의도된 것이며, 이에 따라, 단계 또는 유닛의 목록을 포함하는 프로세스, 방법, 시스템, 제품, 또는 장치는 이러한 유닛들에 반드시 제한되는 것이 아니라, 명시적으로 열거하지 않거나 이러한 프로세스, 방법, 시스템, 제품, 또는 장치에 내재하는 다른 요소를 포함할 수 있다.
기술적 용어의 해석
GPU: 비디오 카드이고, 영문 명칭은 graphic processing unit이다.
인터랙티브 렌더링: 플레이어는 게임 세계의 요소들과 상호작용하여 요소의 형상과 모양 및 느낌을 변경하여 플레이어가 게임 세계를 변경하거나 영향을 받을 수 있다고 생각하게 만들 수 있다.
버텍스 버퍼: 모델의 버텍스 정보 스트림을 저장하고, 위치, 텍스처, 좌표, 접선 및 공간 벡터와 같은 데이터를 포함한다.
드로콜(Drawcall): 엔진이 데이터를 준비하고 GPU에 데이터를 알리는 프로세스를 1회 drawcall이라고 한다.
인스턴트 렌더링: GPU는 모델 데이터가 동일한 시나리오에서 복수의 모델 예를 한 번에 완성한다.
물결 애니메이션 모델: 높이 이미지가 상호작용에 영향을 받은 다음, 높이 이미지는 약화되어 주위로 확산되어 사실적인 물결 애니메이션을 생성한다.
버텍스 섭동(Vertex perturbation): 버텍스 모델은 버텍스 텍스처를 사용하거나 임의적으로 오프셋되어 모델 버텍스가 동적으로 변화하는 것처럼 보인다.
실시예 1
본 출원의 이 실시예에 따라, 이미지 처리 방법이 제공된다.
선택적으로, 이 실시예에서, 이미지 처리 방법은 도 1에 도시된 바와 같이 서버(104) 및 단말(102)을 포함하는 하드웨어 환경에 적용 가능하다. 도 1은 본 출원의 실시예에 따른 하드웨어 환경에 대한 아키텍처 도면이다. 도 1에 도시된 바와 같이, 서버(104)는 네트워크를 사용해서 단말(102)에 연결된다. 네트워크는 광대역 네트워크, 메트로폴리탄 영역 네트워크 및 로컬 영역 네트워크를 포함하되 이에 제한되지 않으며, 단말(102)은 컴퓨터, 이동 전화, 태블릿 컴퓨터 등이지만 이에 제한되지 않는다.
도 2는 본 출원의 실시예에 따른 이미지 처리 방법에 대한 흐름도이다. 도 2에 도시된 바와 같이, 이미지 처리 방법은 다음의 단계를 포함한다:
단계 S202. 제1 대상의 상호작용 공간이 제2 대상이 위치하는 제1 평면과 교차하는 현재 이미지 프레임에서 상호작용 영역을 획득하며, 제2 대상 중의 목표 대상은 상호작용 공간에 위치한다.
예를 들어, 제1 대상은 게임의 게임 플레이어, 게임 스킬, 게임 특수 효과 등일 수 있고, 제2 대상은 모달리티(modality)가 제1 대상에 의해 쉽게 영향받는 대상, 예를 들어, 잔디, 꽃, 또는 안개일 수 있다. 제1 평면은 잔디가 위치하는 그라운드와 같이, 제2 대상이 위치하는 평면이다.
온라인 게임에서, 상호작용을 수행할 필요가 있는 액터(즉, 제1 대상)은 적어도 하나의 노드에 바운딩되어야 하고, 상호작용 노드는 서로 다른 구성에 따라 크기가 서로 다르거나 범위가 서로 다른 상호작용 공간을 생성할 수 있다. 도 3에 도시된 바와 같이, 도 3에 도시된 화이트 볼은 상호작용 공간이다.
가상 시나리오에서 이미지의 상호작용은 상호작용 노드를 사용해서 트리거링될 수 있고, 상호작용에 의해 야기되는 추가의 임팩트가 가상 시나리오에서의 이미지의 실시간 업데이트에 따라 업데이트된다. 상호작용에 의해 야기되는 임팩트는 요소 근처의 상호작용 노드에 의해 트리거링되는 액션의 임팩트이다. 상호작용 노드가 가상 시나리오의 이미지 내의 요소와 교차할 때 생성되는 상호작용 포인트가 상호작용 노드에 대응하는 구성 정보에 따라 획득된다. 각각의 상호작용 노드는 대응하는 구성 정보를 가지며, 구성 정보는 생성된 상호작용을 제어하는 데 사용되는데, 예를 들어, 상호작용 범위를 제어하는 데 사용된다. 일례에서, 상호작용 노드는 포인트에 바운드되는 볼일 수 있고, 그 볼을 사용해서 상호작용 노드가 가상 시나리오의 다른 요소와 교차하는 것으로 결정되어, 이러한 기반에서, 상호작용 노드가 다른 요소와 교차할 때 야기되는 다른 요소에 대한 임팩트를 획득한다. 이미지 내의 상호작용 노드에 의해 트리거링되는 모션이 검출되면, 이동하는 상호작용 노드가 요소와 교차할 때 생기는 상호작용 포인트가 획득되므로, 다른 요소에 대해 현재 트리거링되는 상호작용의 임팩트를 상호작용 포인트를 사용해서 정밀하게 업데이트한다.
상호작용 노드는 각각의 플레이어와 논-플레이 캐릭터(non-play character, NPC)에 디폴트로 부가되며, 상호작용 노드는 게임 스킬 및 게임 특수 효과의 요구사항에 따라 구성된다. 제1 대상의 상호작용 공간이 잔디가 위치하는 그라운드와 교차할 때 상호작용 영역이 형성된다. 상호작용 공간이 볼이면, 상호작용 공간과 제1 평면이 교차하여 원형 섹션이 획득된다.
단계 S204. 상기 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵(normal map)을 생성하며, 상기 노멀 맵에 복수의 리플(ripple)이 표시된다.
구체적으로, 원형 섹션에 대응하는 물결 애니메이션의 노멀 맵이 상호작용 영역(예를 들어, 원형 섹션)에 따라 생성될 수 있고, 노멀 맵이 복수의 리플(즉, 물결)을 포함한다. 물결 애니메이션의 생성된 노멀 맵은 원형 섹션에 적용될 수 있고, 생성된 노멀 맵 내의 물결의 수량은 현재 이미지 프레임 내의 원형 섹션에 의해 표시될 물결의 수량이다.
단계 S206. 복수의 리플 중 제1 목표 리플을 사용해서, 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 목표 대상을 이동시키며, 제1 목표 리플은 목표 대상에 대응한다.
목표 대상은 노멀 맵의 임팩트 하에서 이동하는 대상이고, 예를 들어, 상호작용 영역 내의 잔디의 일부 또는 전부일 수 있다. 예를 들어, 상호작용 영역 내의 2개의 잔디 원이 있고, 제1 잔디 원은 제1 목표 리플에 의해 현재 이미지 프레임 내의 대응하는 위치로 이동하도록 동요된다. 대응하는 위치는 노멀 맵 내의 제1 목표 리플의 리플 위치를 사용해서 결정될 수 있다. 제2 잔디 원은 노멀 맵 내의 제1 목표 리플에 의해 제1 잔디 원이 이동하는 위치로 이동하도록 동요되지 않는다. 제1 잔디 원은 목표 대상이고, 제1 목표 리플은 노멀 맵 내의 복수의 리플 중 제1 잔디 원을 동요하기 위한 리플이다.
본 출원의 이 실시예에서, 제1 대상이 제2 대상과 상호작용할 때 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵이 생성되고, 목표 대상은 제1 대상에 대응하는 제1 목표 리플을 사용해서 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 이동되므로, 노멀 맵을 사용해서 목표 대상의 위치를 조정하는 목적이 달성되며, 제2 대상의 위치가 물결 애니메이션의 노멀 맵에 따라 변할 수 있다는 기술적 효과를 구현하고, 제1 대상이 제2 대상과 상호작용할 때 제2 대상의 디스플레이 효과가 상대적으로 낮은 기존 기술의 기술적 문제점을 해결한다.
이미지 프레임에 대응하는 노멀 맵을 사용해서 각각의 이미지 프레임을 조정한 후, 복수의 조정된 이미지 프레임이 지속적으로 표시될 때 애니메이션 효과가 표시될 수 있다. 예를 들어, 게임에서, 게임 캐릭터가 잔디를 횡단할 때, 게임 캐릭터에 의해 동요되는 잔디의 요동 효과가 표시되고, 게임 캐릭터가 움직일 때, 물 리플을 한 방향으로 확산시키는 것과 유사한 번짐 효과(smearing effect)가 형성될 수 있다.
특정한 예에서, 이 이미지 처리 방법은 매직 블레이드(The Magic Blade)와 같은 온라인 게임에 적용될 수 있고, 상호작용 영역 내의 목표 대상은 The Magic Blade의 게임 엔진을 사용해서 렌더링된다. 예를 들어, 게임 캐릭터가 The Magic Blade의 임의의 가상 시나리오에서 걷는다. 가상 시나리오는 잔디밭이다. 게임 캐릭터가 잔디밭을 걸을 때, 게임 캐릭터의 상호작용 영역(예를 들어, 도 3에 도시된 볼)이 잔디밭이 위치하는 그라운드(즉, 제1 평면)와 교차하여 교차 영역을 획득한다. The Magic Blade의 온라인 게임 클라이언트는 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵을 생성하므로 상호작용 영역 내의 제1 목표 리플에 대응하는 잔디가 복수의 리플 중 제1 목표 리플을 사용해서 현재 이미지 프레임 내의 대응하는 위치로 이동한다. 이 대응하는 위치는 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치이다. 캐릭터가 잔디밭을 걸을 때 형성되는 잔디의 흔들림 효과나 캐릭터가 잔디밭을 지나갈 때 형성되는 번짐 효과는 복수의 이미지 프레임에 의해 연속적인 애니메이션이 형성될 때 온라인 게임의 디스플레이 인터페이스에 표시될 수 있으므로 게임 플레이어와 가상 시나리오 간의 상호작용이 증가하고, 시뮬레이션 가상 시나리오ㄴ는 더 현실감이 있고 이에 의해 게임이 더 재미있게 된다.
본 출원의 이 실시예에서, 제1 대상에 의한 목표 대상의 요동은 CPU에 의해 구현되지 않고, 물결 애니메이션의 노멀 맵을 사용하여 비디오 카드(GPU)의 버텍스 쉐이더(vertex shader)에 의해 구현되어 디스플레이 데이터 처리 효율을 향상시킨다는 것에 유의해야 한다.
본 출원의 이하의 실시예에서는 설명을 쉽게 하기 위해 제1 대상이 게임 캐릭터이고 목표 대상이 잔디밭인 예를 사용해서 설명한다.
선택적으로, 상기 복수의 리플 중 제1 목표 리플을 사용해서, 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 목표 대상을 이동시키는 단계는: 물결 애니메이션의 노멀 맵에 따라 목표 대상을 제1 모달리티에서 제2 모달리티로 조정하는 단계를 포함하며, 제2 모달리티의 목표 대상의 버텍스는 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치에 위치한다.
본 출원의 이 실시예에서, 제1 대상과 목표 대상 간의 교차는 제1 대상의 액션이 목표 대상의 모달리티에 영향을 미친다는 의미이다. 예를 들어, 게임 캐릭터가 잔디밭을 걸을 때 잔디와 상호교차하고, 이 상호작용은 잔디에 대한 모달리티 변화를 유발한다. 구체적으로, 잔디가 전후좌우로 흔들리거나 높아지거나 낮아진다. 예를 들어, 게임 캐릭터가 잔디 위를 걸을 때 게임 캐릭터의 양측의 잔디는 구부려진 상태로부터(제2 모달리티에서) 직립 상태로(제1 모달리티로) 변한다. 즉, 잔디는 제1 모달리티에서 제2 모달리티로 조정된다. 게임 캐릭터가 잔디 위를 걸을 때 근처 잔디와 접촉하지 않아도 근처 잔디의 모달리티가 영향을 받기 때문에 제1 대상과 목표 대상 간의 상호작용이 제1 대상이 접촉하게 되는 대상과 함께 반드시 수행된다는 것에 유의해야 한다.
게임 캐릭터가 물 위를 걸을 때나 물과 접촉하게 될 때 연속적으로 변하는 리플이 수면 상에 나타난다. 게임 캐릭터가 잔디 위를 걸을 때나 통과할 때 수면 상의 리플의 변화는 잔디의 모달리티의 변화와 상관관계를 가진다는 것을 게임 캐릭터는 인식할 수 있을 것이다. 그러므로 본 출원의 이 실시예에서, 제1 대상이 상호작용하는 목표 대상이 물결 애니메이션의 노멀 맵을 사용해서 요동하게 되므로 목표 대상은 제1 모달리티에서 제2 모달리티로 조정되고 목표 대상이 물 리플의 동적 변화와 유사하는 효과를 달성한다.
선택적으로, 상기 물결 애니메이션의 노멀 맵에 따라 목표 대상을 제1 모달리티에서 제2 모달리티로 조정하는 단계는 구체적으로: 상기 노멀 맵의 복수의 리플의 제1 컴포넌트 및 제2 컴포넌트의 값 범위를 획득하는 단계 - 제1 컴포넌트는 노멀 맵의 X축 방향의 컴포넌트이고, 제2 컴포넌트는 노멀 맵의 Y축 방향의 컴포넌트임 - ; 상기 노멀 맵의 Z축 방향의 목표 대상의 제3 컴포넌트를 획득하는 단계; 제1 컴포넌트 및 제2 컴포넌트에 따라, X축 및 Y축이 위치하는 평면 상의 목표 대상의 버텍스 좌표의 제1 오프셋 거리 및 제1 오프셋 방향을 결정하고, 제3 컴포넌트에 따라, Z축 상의 목표 대상의 제2 오프셋 거리 및 제2 오프셋 방향을 결정하는 단계 - 상기 제1 오프셋 거리는 상기 값 범위 내에 있음 - ; 및 목표 대상의 버텍스 좌표가 제1 오프셋 방향으로 제1 오프셋 거리만큼 오프셋되고 제2 오프셋 방향으로 제2 오프셋 거리만큼 오프셋되도록 제어하는 단계이다.
본 출원의 이 실시예에서, 목표 대상의 버텍스는 비디오 카드(GPU)에 의해 생성된 물결 애니메이션의 노멀 맵의 관련 맵 정보를 사용해서 요동될 수 있으므로 목표 대상은 제1 모달리티에서 제2 모달리티로 변한다. 구체적으로, 노멀 맵에 포함된 복수의 리플 중 X축 방향과 Y축 방향의 컴포넌트(즉, 제1 컴포넌트)의 값 범위와 컴포넌트(즉, 제2 컴포넌트)의 값 범위가 먼저 획득될 수 있고, 목표 대상의 Z축 방향의 프로젝션 높이(즉, 제3 컴포넌트)가 획득된다. 그런 다음, X축과 Y축이 위치하는 평면 상의 제1 오프셋 거리 및 제1 오프셋 방향이 X축 방향의 컴포넌트와 Y축 방향의 컴포넌트에 따라 결정된다. 즉, 목표 대상이 왼쪽 또는 오른쪽으로 오프셋되는지 그리고 앞 또는 뒤로 오프셋되는지가 결정되고, 왼쪽 또는 오른쪽으로의 거리 오프셋 및 앞 또는 뒤로의 거리 오프셋이 결정되며, Z축 상의 각각의 목표 대상의 프로젝션 높이가 결정되어 Z축 상의 목표 대상의 제2 오프셋 거리 및 제2 오프셋 방향이 결정된다. 목표 대상이 Z축 상에서 상대적으로 작은 프로젝션 높이를 가지면 노멀 맵이 목표 대상에 대해 상대적으로 작은 요동을 유발한다는 것을 나타낸다. 즉, 목표 대상의 제1 오프셋 거리 및 제2 오프셋 거리는 상대적으로 작다. 즉, 목표 대상은 상대적으로 작은 오프셋 진폭을 가진다. 목표 대상이 Z축 상에서 상대적으로 큰 프로젝션 높이를 가지면 노멀 맵이 목표 대상에 대해 상대적으로 큰 요동을 유발한다는 것을 나타낸다. 즉, 목표 대상의 제1 오프셋 거리 및 제2 오프셋 거리는 상대적으로 크다. 즉, 목표 대상은 상대적으로 큰 오프셋 진폭을 가진다. 구체적으로, 목표 대상이 상대적으로 길면 목표 대상은 환경에 의한 급격한 흔들림에 대해 쉽게 영향을 받고, 목표 대상이 상대적으로 짧으면 목표 대상이 환경에 의한 급격한 흔들림에 대해 영향을 덜 받는 것으로 이해될 수 있다. 이 출원에서, 전술한 방법을 사용해서 목표 대상은 제1 모달리티에서 제2 모달리티로 조정되므로 목표 대상이 제1 목표 대상으로서 오프셋되는 영향은 더 사실적으로 표시될 수 있다.
목표 대상의 요동 값(즉, 제1 오프셋 거리, 제2 오프셋 거리, 제1 오프셋 방향 및 제2 오프셋 방향)이 결정된 후, 목표 대상의 버텍스 좌표는 제1 오프셋 방향으로 제1 오프셋 거리만큼 오프셋되고 제2 오프셋 방향으로 제2 오프셋 거리만큼 오프셋되도록 제어된다. 복수의 이미지 프레임이 온라인 게임 인터페이스 상에 연속적으로 표시될 때, 물결 애니메이션은 애니메이션 속성을 가지기 때문에, 목표 대상이 물결 애니메이션의 노멀 맵을 사용해서 요동할 때 목표 대상은 또한 물결 애니메이션의 애니메이션 효과와 유사한 애니메이션 효과를 가질 수 있으므로 제1 대상에 의해 요동할 때 목표 대상에 의한 흔들림 효과가 더 사실적으로 표시될 수 있고, 목표 대상이 제1 대상에 의해 통과할 때 형성되는 번짐 효과는 게임 인터페이스 상에 표시될 수 있다.
제1 컴포넌트의 값 범위는 [-1, 1]일 수 있고, 제2 컴포넌트의 값 범위도 [-1, 1]일 수 있는 것에 유의해야 한다. 제1 컴포넌트 및 제2 컴포넌트의 값 범위는 [-1, 1]로 설정되므로, 목표 대상은 전후좌우로 흔들릴 수 있다.
선택적으로, 노멀 맵의 복수의 리플의 제1 컴포넌트 및 제2 컴포넌트의 값 범위를 획득하는 단계는 구체적으로: 상기 노멀 맵 내의 복수의 리플 중 최외각 계층의 리플의 X축 방향 상의 최댓값 및 최솟값, 및 최외각 계층의 리플의 Y축 방향 상의 최댓값 및 최솟값을 획득하는 단계; X축 방향의 최댓값 및 최솟값이 미리 설정된 값이고 Y축 방향 상의 최댓값 및 최솟값이 미리 설정된 값이 될 수 있도록, X축 및 Y축 상의 복수의 리플 각각의 좌표를 조정하는 단계; 및 상기 미리 설정된 값이 나타내는 범위를 상기 값 범위로 결정하는 단계이다.
전술한 설명으로부터 제1 컴포넌트의 값 범위는 [-1, 1]일 수 있고, 제2 컴포넌트의 값 범위도 [-1, 1]일 수 있을 알 수 있다. 구체적으로, 제1 컴포넌트 및 제2 컴포넌트의 값 범위를 [-1, 1]로 설정하는 방법은: 먼저 노멀 맵의 최외각 계층에서의 리플의 X축 방향 및 Y축 방향의 최댓값 및 최솟값을 획득하고; 물결 애니메이션의 노멀 맵; 그런 다음 X축 방향 상의 각각의 리플의 최댓값의 값이 미리 설정된 값(예를 들어, 1의 값)보다 크지 않고, X축 방향 상의 각각의 리플의 최솟값의 값이 미리 설정된 값(예를 들어, -1의 값)보다 작지 않고, Y축 방향 상의 각각의 리플의 최댓값의 값이 미리 설정된 값(예를 들어, 1의 값)보다 크지 않고, Y축 방향 상의 각각의 리플의 최솟값의 값이 미리 설정된 값(예를 들어, -1의 값)보다 크지 않도록, X축 방향 및 Y축 방향 상의 각각의 리플의 좌표의 값을 조정하는 단계이다.
복수의 이미지 프레임이 게임 인터페이스 상에 연속적으로 표시될 때, 생성된 물결 애니메이션이 애니메이션 특징을 가지기 때문에, 생성된 물결 애니메이션의 노멀 맵이 목표 대상의 버텍스 좌표를 유도하는 데 사용되면 물결 애니메이션과 유사한 애니메이션 효과가 생성되므로, 게임 시뮬레이션 효과는 더 사실적이고, 제1 대상에 의해 요동할 때의 목표 대상의 흔들림 효과 및 제1 대상이 움직일 때 형성되는 목표 대상의 번짐 효과가 사실적으로 표시될 수 있다.
온라인 게임에서, 복수의 게임 캐릭터 또는 (제1 대상에 대응하는) 특수 효과 등이 잔디(목표 대상)와 상호작용할 때, 복수의 게임 캐릭터 또는 특수 효과에 의해 요동되는 잔디는 이 출원에서 제공하는 방법을 사용해서 인스턴트 렌더링에 의해 처리될 수 있으며, 복수의 게임 캐릭터 또는 특수 효과에 의해 요동되는 잔디는 제1 모달리티에서 제2 모달리티로 조정된다. 이 출원에서 제공하는 방법은 복수의 플레이어(예를 들어 200명의 플레이어)와 잔디 간의 시뮬레이션 상호작용을 지원할 수 있고, 동시에 복수의 플레이어와 상호작용하는 잔디에 대한 모달리티 처리를 완료한다. 또한, 본 출원의 이 실시예에서, 가상 시나리오의 모든 목표 대상은 동일한 버텍스 버퍼를 사용하고, 버텍스 버퍼는 각각의 목표 대상의 버텍스 좌표 또는 각각의 목표 대상의 위치 정보와 같은 정보를 기록한다.
선택적으로, 상기 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵을 생성하는 단계는 구체적으로: 현재 이미지 프레임에 대응하는 제1 이미지 프레임 이전의 이미지 프레임의 물결 애니메이션 높이 이미지에 기초해서, 제1 이미지 프레임의 물결 애니메이션 높이 이미지의 수위(water level)를 결정하는 단계 - 상기 제1 이미지 프레임은 물결 애니메이션의 이미지 프레임이고, 상기 수위는 제1 이미지 프레임의 물결 애니메이션 높이 이미지에서 복수의 리플 중 최고 수위임 - ; 상기 수위에 따라 현재 이미지 프레임의 물결 애니메이션 높이 이미지를 생성하는 단계; 및 상기 현재 이미지 프레임의 물결 애니메이션 높이 이미지에 따라 물결 애니메이션의 노멀 맵을 생성하는 단계이다. 일례에서, 높이 데이터는 높이 이미지를 사용해서 운송되며, 대응하는 포맷은 RGBA16f일 수 있다.
본 출원의 이 실시예에서, 물결 애니메이션의 노멀 맵은 물결 상호작용 알고리즘을 사용해서 생성되며, 그런 다음 목표 대상은 물결 애니메이션의 생성된 노멀 맵을 사용해서 제1 모달리티에서 제2 모달리티로 조정된다. 물결 상호작용 알고리즘은 GPU를 사용해서 구현된다. GPU를 사용해서 물결 상호작용 알고리즘을 구현하면 물결 상호작용 효율을 향상시킬 수 있고 더 직접적이며 CPU에 의한 대량의 계산에 의해 야기되는 낮은 상호작용 효율을 피한다.
구체적으로, 물결 상호작용 알고리즘은 총 4단계를 포함하며, 각각은 다음과 같다: 단계 1. 이전 이미지 프레임의 물결 애니메이션 높이 이미지를 카피하고, 이 높이 이미지를 제1 이미지 프레임의 물결 높이 이미지의 초기 높이로 사용한다. 단계 2. 상호작용 노드에 따라 제1 이미지 프레임의 물결 높이 이미지의 높이 데이터를 생성한다. 단계 3. 확산 및 감쇄를 수행한다. 단계 4. 노멀을 생성한다. 이하에서는 단계 1 내지 단계 4를 상세히 설명한다.
단계 1: 제1 이미지 프레임 이전의 이전 이미지 프레임의 물결 애니메이션 높이 이미지를, 제1 이미지 프레임의 물결 애니메이션 높이 이미지의 초기 높이로서, 제1 이미지 프레임의 물결 애니메이션 높이 이미지에 풀-스크린으로 카피하며, 여기서 제1 이미지 프레임의 물결 애니메이션의 리플의 수량은 현재 이미지 프레임의 물결 애니메이션의 노멀 맵의 리플의 수량에 대응한다.
단계 2: 제1 대상(예를 들어, 게임 캐릭터, 스킬 또는 특수 효과)을 상호작용 노드로서 사용하고, 상호작용 노드의 구성 파라미터의 값에 따라 제1 이미지 프레임의 수위를 조정하여 제1 이미지 프레임의 수위 데이터를 생성한다. 또한, 제1 이미지 프레임의 물결 애니메이션 높이 이미지를 수위에 따라 생성할 수 있다. 도 4에 도시된 바와 같이, 도 4는 제1 이미지 프레임의 물결 높이 이미지이다. 구성 파라미터는 디폴트 값으로 설정될 수도 있고 기술자에 의해 설정될 수도 있다.
단계 3. 제2 목표 리플의 수위를 중심인 수위로 사용하여 제2 목표 리플을 확산시켜 복수의 확산된 리플을 획득하며, 여기서 복수의 확산된 리플의 높이는 중심으로부터 바깥쪽으로 점차 감소한다. 이 수위는 제1 이미지 프레임의 물결 애니메이션 높이 이미지 내의 복수의 리플 중 가장 높은 레벨이다. 물결 애니메이션 내의 물 리플이 확산할 때, 각각의 리플은 수위가 가장 높은 수위인 물 리플(즉, 제2 목표 리플)로부터 확산되고, 복수의 리플의 높이는 수위가 가장 높은 수위인 물 리플(즉, 제2 목표 리플)로부터 바깥쪽으로 점차 감소한다.
제2 목표 리플을 확산시키는 단계를 구체적으로: 제2 목표 리플 내의 각각의 픽셀을 인접 픽셀로 확산시키는 단계일 수 있다는 것에 유의해야 한다. 구체적으로, 확산 분포가 도 5에 도시되어 있으며, (i, j)는 현재 처리될 픽셀을 나타내고, 확산은 픽셀 포인트로부터 둘러싸인 픽셀, 예를 들어 (i-1, j) 및 (i+1, j)의 픽셀로 수행된다.
본 출원의 이 실시예에서, 제1 이미지 프레임 내의 픽셀 (i, j)의 높이는 이하의 식을 사용해서 계산될 수 있고 픽셀 (i, j)는 제1 이미지 프레임 내의 임의의 픽셀 포인트이다:
Figure 112018063758046-pct00001
여기서
Figure 112018063758046-pct00002
는 제1 이미지 프레임 이전의 이미지 프레임 내의 픽셀 (i, j)의 높이이고,
Figure 112018063758046-pct00003
는 제1 이미지 프레임 내의 픽셀 (i, j)의 높이이고,
Figure 112018063758046-pct00004
는 제1 이미지 프레임 내의 픽셀 (i-1, j-1)의 높이이고,
Figure 112018063758046-pct00005
는 제1 이미지 프레임 내의 픽셀 (i-1, j+1)의 높이이고,
Figure 112018063758046-pct00006
는 제1 이미지 프레임 내의 픽셀 (i+1, j+1)의 높이이고,
Figure 112018063758046-pct00007
는 제1 이미지 프레임 내의 픽셀 (i-1, j)의 높이이고,
Figure 112018063758046-pct00008
는 제1 이미지 프레임 내의 픽셀 (i+1, j)의 높이이고,
Figure 112018063758046-pct00009
는 제1 이미지 프레임 내의 픽셀 (i, j+1)의 높이이다.
전술한 방법을 사용해서 복수의 확산된 리플을 획득한 후, 복수의 확산된 리플의 높이는 중심으로부터 바깥쪽으로 점차 감소한다. 즉, 각각의 리플의 높이는 중심으로부터 바깥쪽으로 점차 감소한다.
단계 4: 제1 이미지 프레임의 감쇄된 물결 애니메이션 높이 이미지에 따라 노멀 맵을 생성한다. 노멀 맵 및 수면의 노멀은 혼합된 다음 수면에 적용되어, 사실적인 물결 애니메이션을 생성한다. 도 6에 도시된 바와 같이, 도 6은 제1 이미지 프레임의 물결 애니메이션의 노멀 맵이다. 복수의 이미지 프레임이 연속적으로 재생되면, 물결의 애니메이션 특징이 실현될 수 있다.
특정한 예에서, 게임 설계자는 게임 캐릭터, 스킬, 특수 효과 등의 상호작용 범위 및 잔디를 30m로 설정하며 픽셀을 256×256으로 설정한다. 게임 설계자는 유형이 NV GTX 560Ti인 비디오 카드를 사용해서 테스트를 수행하고 200개의 게임 캐릭터가 잔디와 상호작용할 때 프로세싱 레이트를 테스트한다. 200개의 게임 캐릭터가 잔디와 상호작용할 때의 테스트로부터 잔디의 애니메이션 효과를 획득하는 데 걸리는 시간이 총 0.2ms보다 낮다는 것을 알 수 있다.
본 출원에서 제공하는 이미지 처리 방법은 GPU에 완전하게 기초한다. 각각의 이미지 프레임에서, 상호작용 정보는 맵에 렌더링되는 물결 높이 이미지로 사용되고, 물결 애니메이션 높이 이미지는 감쇄되고 그런 다음 둘러싸인 영역으로 확산되어 대응하는 노멀 맵을 생성한다. 노멀 맵은 목표 대상의 버텍스 쉐이더를 사용해서 액세스되고 목표 대상의 버텍스 위치는 노멀 맵의 x 컴포넌트 및 y 컴포넌트를 사용해서 요동된다. 생성된 물결은 애니메이션 특징을 가지기 때문에, 목표 대상의 버텍스를 유도하는 데 물결이 사용되면 대응하는 애니메이션 역시 생성된다. 애니메이션은 시력이 우수하며, 목표 대상의 흔들리는 애니메이션과 플레이어가 움직일 때 생기는 번짐을 시뮬레이트하는 데 매우 탁월하다.
본 출원의 관점에 따르면, 방법은: 상이한 레벨의 상호작용 영역에 대응하는 상호작용 맵이 상이한 정밀도를 가질 수 있도록, 상호작용 영역과 뷰포인트 간의 거리에 따라, 상기 상호작용 영역을 상이한 레벨의 상호작용 영역으로 분할하는 단계를 더 포함한다. 예를 들어, 상호작용 영역은 클로즈 뷰(close-view) 상호작용 영역과 원격 뷰(remote-view) 상호작용 영역으로 분할되고, 클로즈 뷰 상호작용 영역에 대응하는 상호작용 맵 및 원격 뷰 상호작용 영역에 대응하는 상호작용 맵은 뷰포인트가 서로 다르기 때문에 상이한 정밀도를 가진다. 클로즈 뷰 상호작용 영역은 고정밀 상호작용 맵을 사용하고 원격 뷰 상호작용 영역은 상대적으로 저정밀 상호작용 맵을 사용한다.
여기서, 복수의 상호작용 영역은 가상 시나리오의 이미지에 분산되고, 각각의 상호작용 영역은 대응하는 상호작용 맵(예를 들어, 높이 이미지 및/또는 노멀 맵)을 가진다. 뷰포인트, 즉, 이미지 내용을 촬영하기 위한 카메라와 관련해서, 보다 근접한 상호작용 영역은 이미지의 클로즈 뷰를 형성하고, 더 먼 상호작용 영역은 이미지의 원격 뷰를 형성한다. 거리 임계값은 미리 설정된다. 뷰포인트에 대한 거리가 거리 임계값보다 작은 상호작용 영역은 이미지의 클로즈 뷰로 고려되고, 비디오에 대한 거리가 거리 임계값보다 큰 상호작용 영역은 이미지의 원격 뷰로 고려된다. 여기서, 클로즈 뷰는 매우 고정밀의 상호작용 맵을 요구하며 원격 뷰는 원근으로 인해 고정밀의 상호작용 맵을 요구하지 않는다. 그러므로 서로 다른 레벨의 상호작용 맵은 가상 시나리오에서 이미지의 원근 뷰 및 클로즈 뷰를 형성하므로 이미지의 원근 뷰는 고정밀 상호작용 맵을 사용해서 형성될 수 있고 이미지의 원격 뷰는 저정밀 상호작용 맵을 사용해서 형성될 수 있어, 원격 뷰 상호작용 영역에 대응하는 상호작용 맵의 고정밀로 인해 야기되는 불필요한 낭비 및 비디오 메모리 소모를 회피하며 이에 의해 실시간 풀 스크린 업데이트 동작 중에 픽셀의 수량을 감소하며 비디오 메모리 오버헤드를 확실하게 감소시키고 성능을 향상시킨다.
본 출원의 다른 관점에 따르면, 방법은: 물결 애니메이션 높이 이미지에 운송되는 갱신된 높이 데이터를 제1 상호작용 버퍼에 로딩하는 단계를 더 포함하며, 여기서 상기 상이한 레벨의 상호작용 영역에 대응하는 높이 데이터는 제1 상호작용 버퍼의 상이한 채널에 저장된다. 예를 들어, 클로즈 뷰 상호작용 영역에 대응하는 높이 데이터는 제1 상호작용 버퍼의 레드 채널 및 그린 채널에 저장되고, 원격 뷰 상호작용 영역에 대응하는 높이 데이터는 제1 상호작용 버퍼의 블루 채널 및 알파 채널에 저장된다. 이 방법에서, 높이 데이터는 분류되고 저장되어 후속의 동작 속도를 향상시키는 데 일조하고 성능 오버헤드를 감소시킨다. 이 출원의 관점에 따르면, 높이 감쇄 및 확산 동작이 수행될 때, 제1 상호작용 버퍼의 상이한 채널에 저장된 높이 데이터는 개별적으로 계산될 수 있다. 예를 들어, 레드 채널 및 그린 채널에 저장된 높이 데이터와 블루 채널 및 알파 채널에 저장된 높이 데이터는 개별적으로 계산될 수 있으며, 이에 의해 시스템 성능을 완전히 사용하고 시스템 오버헤드를 상당히 감소시킨다.
본 출원의 다른 관점에 따르면, 노멀 정보가 높이 데이터에 따라 생성된 후, 방법은: 제1 상호작용 버퍼와는 다른 제2 상호작용 버퍼에 노멀 정보를 로딩하는 단계를 더 포함하며, 상기 상이한 레벨의 상호작용 영역에 대응하는 노멀 정보는 제2 상호작용 버퍼의 다른 채널에 저장된다. 예를 들어, 클로즈 뷰 상호작용 영역에 대응하는 노멀 정보는 제2 상호작용 버퍼의 레드 채널 및 그린 채널에 저장되고, 원격 뷰 상호작용 영역에 대응하는 노멀 정보는 블루 채널 및 알파 채널에 저장된다.
가상 시나리오의 데이터의 렌더링은 높이 데이터의 렌더링 및 현재 트리거링된 상호작용과 일치하면서 사실적인 반사 효과를 가지는 가상 시나리오의 이미지를 얻기 위한 노멀 업데이트를 포함한다.
이 출원의 관점에 따르면, 방법은: 높이 데이터에 따라, 각각의 레벨의 상호작용 영역과 일치하는 높이 이미지를 출력하는 단계, 및 이 높이 이미지를 사용해서 현재 이미지 프레임을 렌더링하는 단계를 더 포함한다.
높이 데이터는 미리 설정된 포맷으로 출력되어 각각의 레벨의 상호작용 영역과 일치하는 높이 이미지를 획득한다. 각각의 높이 이미지는 가상 시나리오로 렌더링되어 각각의 픽셀의 실시간 높이 업데이트를 실현한다. 일례에서, 높이 데이터는 RGBA16F 포맷의 높이 이미지로서 출력된다.
이 출원의 다른 관점에 따르면, 노멀 맵은 노멀 정보에 따라 출력되고, 노멀 맵 및 가상 시나리오의 노멀은 혼합된 다음 가상 시나리오에 적용되어, 가상 시나리오에 제공되고 실시간으로 업데이트된 이미지를 획득한다. 노멀 정보에 대해서, 노멀 맵은 또한 그에 상응해서 미리 설정된 포맷으로 출력될 수 있다. 바람직한 실시예에서, 노멀 맵은 RGBA 포맷의 노멀 정보를 운송한다.
예를 들어, 물 상호작용 동안, 노멀 맵 및 수면의 노멀이 혼합된 다음 수면에 적용되어 사실적인 물결 효과를 달성한다.
본 출원의 다른 관점에 따르면, 방법은: 대응하는 상호작용 맵의 정밀도에 따라 상이한 레벨의 상호작용 영역에서 인접하는 상호작용 영역 사이의 정밀도에 대해 부드러운 전이(smooth transition)를 수행하는 단계를 더 포함한다.
여기서, 가상 시나리오의 이미지는 복수의 상호작용 맵을 사용해서 형성된다. 그러므로 이미지는 복수의 상호작용 영역을 포함하고 각각의 상호작용 영역은 하나의 상호작용 맵에 대응한다. 가상 시나리오에서 제공되는 이미지에서, 상호작용 맵은 상이한 정밀도를 가질 수 있다. 결론적으로, 부드러운 전이는 인접하는 상호작용 영역 사이의 정밀도로 수행되어, 상호작용 영역 사이의 정밀도가 균일하지 않고, 상호작용 영역이 서로 교차하는 가장자리 영역은 정밀도 변이(precision mutation)를 가지는 단점을 극복하며, 이에 의해 상호작용 정밀도를 향상시킨다. 실시예에서, 인접하는 상호작용 영역 간의 부드러운 전이는 인접하는 상호작용 영역 간의 선형 보간에 의해 실현될 수 있다.
전술한 프로세스에서, 복수의 상호작용 맵은 가상 시나리오의 이미지가 여러 정밀도를 가질 수 있도록 하는 데 사용되어, 클로즈 뷰 상호작용 영역의 상호작용 맵의 정밀도를 향상시키면서 상호작용 맵의 크기를 성공적으로 감소시킴으로써, 상호작용 맵의 정밀도가 완전하게 사용되며, 이에 의해 성능 오버헤드를 상당히 감소시키고 상호작용 범위를 증가시킨다.
전술한 프로세스를 사용해서 물 상호작용을 구현하는 예에서, 기존의 물 상호작용은 매우 작은 상호작용 스케일을 가지며, 단지 몇 명의 플레이어 사이의 상호작용을 지원하여 효율이 매우 낮다. 주원인은 사용된 상호작용 맵이 매우 큰 크기를 가지며, 이것은 성능에 대해 치명적인 임팩트를 가진다는 점이다. 그렇지만, 전술한 프로세스를 사용해서, 물 상호작용의 성능 및 수량이 상당히 향상된다. 복수의 작은 크기의 상호작용 맵이 사용되어 성능을 상당히 향상시킨다. 상호작용 맵의 크기가 감소하여도 상호작용 맵의 수량이 향상된다. 상호작용 맵은 거리에 따라 상이한 레벨로 분할되며, 3차원 렌더링은 일반적으로 원근 투영을 사용한다. 그러므로 클로즈 뷰는 고정밀도를 유지하고 원격 뷰의 정밀도는 상당히 감소될 수 있으며, 따라서 이에 상응해서 상호작용 범위도 향상된다. 예를 들어, 2개의 레벨로 커버되는 상호작용 범위는 단지 하나의 상호작용 맵에 대응하는 상호작용 범위보다 훨씬 크다.
또한, 기존의 가상 시나리오의 상호작용 맵의 크기는 1024*1024이고, 2개의 레벨의 상호작용 맵이 사용되며, 각각의 상호작용 맵의 크기는 512*512이다. 이 방법에서, 제공된 클로즈 뷰의 정밀도가 표시된다. 비디오 메모리에 있어서, 기존의 가상 시나리오 상호작용의 상호작용에서, 2개의 필요한 상호작용 버퍼의 크기는 1024*1024이고, 12mb의 비디오 메모리를 점유한다. 2개의 레벨의 상호작용 맵이 사용된 후, 2개의 상호작용 버퍼의 크기는 512*512이고, 5.2mb의 비디오 메모리를 점유하여, 비디오 메모리의 오버헤드를 절반으로 감소한다. 성능은 상당히 향상되면서 비디오 메모리 오버헤드는 감소된다.
설명을 간단하게 하기 위해, 전술한 방법 실시예는 일련의 액션 조합으로 표시된다는 것에 유의해야 한다. 그렇지만, 당업자는 본 출원에 따라 일부의 단계가 다른 시퀀스로 수행될 수도 있고 동시에 수행될 수도 있기 때문에 본 출원은 설명된 액션 시퀀스에 제한되지 않는다는 것을 이해해야 한다. 또한, 당업자는 본 출원에서 설명된 모든 실시예는 바람직한 실시예이고 관련 액션 및 모듈은 본 출원에서 반드시 필요로 하지 않는다는 것도 알아야 한다.
이전이 실시예의 설명을 통해, 당업자는 전술한 실시예에 따른 방법은 필요한 범용 하드웨어 플랫폼과 하드웨어 또는 소프트웨어만으로 구현될 수 있다는 것을 이해할 수 있을 것이다. 그렇지만, 대부분의 경우, 소프트웨어 및 필요한 범용 하드웨어 플랫폼을 사용하는 것이 바람직하다. 이러한 이해를 바탕으로, 본 출원의 필수적인 기술적 솔루션 또는 종래기술에 기여하는 부분은 소프트웨어 제품의 형태로 실현될 수 있다. 컴퓨터 소프트웨어 제품은 저장 매체(예를 들어 리드-온리 메모리/랜덤 액세스 메모리(ROM/RAM), 자기디스크 또는 광디스크)에 저장되고, 본 출원의 실시예에 설명된 방법을 수행하도록 단말 장치(이것은 이동 전화, 컴퓨터, 서버, 또는 네트워크 장치 등이 될 수 있다)에 명령하는 수개의 명령어를 포함한다.
실시예 2
본 출원의 이 실시예에 따르면, 전술한 처리 방법을 실시하는 이미지 처리 장치가 추가로 제공된다. 이미지 처리 장치는 주로 이 출원의 실시예에서의 전술한 내용에 제공된 이미지 처리 방법을 수행하도록 구성된다. 이하에서는 구체적으로 본 출원의 이 실시예에서의 이미지 처리 장치를 설명한다.
도 7은 본 출원의 실시예에 따른 이미지 처리 장치에 대한 개략적인 도면이다. 도 7에 도시된 바와 같이, 이미지 처리 장치는 주로: 제1 획득 유닛(71), 생성 윤시(73) 및 이동 유닛(75)을 포함한다.
제1 획득 유닛(71)은 제1 대상의 상호작용 공간이 제2 대상이 위치하는 제1 평면과 교차하는 현재 이미지 프레임에서 상호작용 영역을 획득하도록 구성되어 있으며, 제2 대상 중의 목표 대상은 상호작용 공간에 위치한다.
생성 유닛(73)은 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵을 생성하도록 구성되어 있으며, 상기 노멀 맵에 복수의 리플이 표시된다.
구체적으로, 원형 섹션에 대응하는 물결 애니메이션의 노멀 맵은 상호작용 영역(예를 들어, 원형 섹션)에 따라 생성될 수 있고, 노멀 맵은 복수의 리플(즉, 물 리플)을 포함한다. 생성된 물결 애니메이션의 노멀 맵은 원형 섹션에 적용될 수 있고 생성된 노멀 맵 내의 물 리플의 수량은 현재 이미지 프레임 내의 원형 섹션에 의해 표시되는 데 필요한 물 리플의 수량이다.
이동 유닛(75)은 복수의 리플 중 제1 목표 리플을 사용해서, 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 목표 대상을 이동시키도록 구성되어 있으며, 제1 목표 리플은 목표 대상에 대응한다.
본 출원의 이 실시예에서, 제1 대상이 제2 대상과 상호작용할 때 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵이 생성되고, 목표 대상은 제1 대상에 대응하는 제1 목표 리플을 사용해서 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 이동되므로, 노멀 맵을 사용해서 목표 대상의 위치를 조정하는 목적이 달성되며, 제2 대상의 위치가 물결 애니메이션의 노멀 맵에 따라 변할 수 있다는 기술적 효과를 구현하고, 제1 대상이 제2 대상과 상호작용할 때 제2 대상의 디스플레이 효과가 상대적으로 낮은 기존 기술의 기술적 문제점을 해결한다.
선택적으로, 상기 이동 유닛은 상기 물결 애니메이션의 노멀 맵에 따라 목표 대상을 제1 모달리티에서 제2 모달리티로 조정하도록 구성되어 있는 조정 서브유닛을 포함하며, 제2 모달리티의 목표 대상의 버텍스는 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치에 위치한다.
선택적으로, 상기 조정 서브유닛은: 상기 노멀 맵의 복수의 리플의 제1 컴포넌트 및 제2 컴포넌트의 값 범위를 획득하도록 구성되어 있는 제1 획득 모듈 - 제1 컴포넌트는 노멀 맵의 X축 방향의 컴포넌트이고, 제2 컴포넌트는 노멀 맵의 Y축 방향의 컴포넌트임 - ; 상기 노멀 맵의 Z축 방향의 목표 대상의 제3 컴포넌트를 획득하도록 구성되어 있는 제2 획득 모듈; 제1 컴포넌트 및 제2 컴포넌트에 따라, X축 및 Y축이 위치하는 평면 상의 목표 대상의 버텍스 좌표의 제1 오프셋 거리 및 제1 오프셋 방향을 결정하고, 제3 컴포넌트에 따라, Z축 상의 목표 대상의 제2 오프셋 거리 및 제2 오프셋 방향을 결정하도록 구성되어 있는 제1 결정 모듈 - 상기 제1 오프셋 거리는 상기 값 범위 내에 있음 - ; 및 목표 대상의 버텍스 좌표가 제1 오프셋 방향으로 제1 오프셋 거리만큼 오프셋되고 제2 오프셋 방향으로 제2 오프셋 거리만큼 오프셋되도록 제어하도록 구성되어 있는 제어 모듈을 포함한다.
선택적으로, 상기 제1 획득 모듈은: 상기 노멀 맵 내의 복수의 리플 중 최외각 계층의 리플의 X축 방향 상의 최댓값 및 최솟값, 및 최외각 계층의 리플의 Y축 방향 상의 최댓값 및 최솟값을 획득하도록 구성되어 있는 획득 서브모듈; X축 방향의 최댓값 및 최솟값이 미리 설정된 값이고 Y축 방향 상의 최댓값 및 최솟값이 미리 설정된 값이 될 수 있도록, X축 및 Y축 상의 복수의 리플 각각의 좌표를 조정하도록 구성되어 있는 조정 서브모듈; 및 상기 미리 설정된 값이 나타내는 범위를 상기 값 범위로 결정하도록 구성되어 있는 결정 서브모듈을 포함한다.
선택적으로, 상기 생성 유닛은: 현재 이미지 프레임에 대응하는 제1 이미지 프레임 이전의 이미지 프레임의 물결 애니메이션 높이 이미지에 기초해서, 제1 이미지 프레임의 물결 애니메이션 높이 이미지의 수위를 결정하도록 구성되어 있는 제2 결정 모듈 - 상기 제1 이미지 프레임은 물결 애니메이션의 이미지 프레임이고, 상기 수위는 제1 이미지 프레임의 물결 애니메이션 높이 이미지에서 복수의 리플 중 최고 수위임 - ; 상기 수위에 따라 현재 이미지 프레임의 물결 애니메이션 높이 이미지를 생성하도록 구성되어 있는 제1 생성 모듈; 및 상기 현재 이미지 프레임의 물결 애니메이션 높이 이미지에 따라 물결 애니메이션의 노멀 맵을 생성하도록 구성되어 있는 제2 생성 모듈을 포함한다.
선택적으로, 상기 제1 생성 모듈은 제2 목표 리플의 수위를 중심인 수위로 사용하여 제2 목표 리플을 확산시켜서 복수의 확산 리플을 획득하도록 구성되어 있는 확산 및 감쇄 서브모듈을 포함하며, 상기 복수의 확산 리플의 높이는 중심에서 바깥쪽으로 점차 감소한다.
도 7에 도시된 이미지 처리 장치는 상이한 레벨의 상호작용 영역에 대응하는 상호작용 맵이 상이한 정밀도를 가질 수 있도록, 상호작용 영역과 뷰포인트 간의 거리에 따라, 상기 상호작용 영역을 상이한 레벨의 상호작용 영역으로 분할하도록 구성되어 있는 상호작용 영역 분할 유닛을 더 포함한다. 예를 들어, 상호작용 영역은 클로즈 뷰 상호작용 영역과 원격 뷰 상호작용 영역으로 분할되고, 클로즈 뷰 상호작용 영역에 대응하는 상호작용 맵 및 원격 뷰 상호작용 영역에 대응하는 상호작용 맵은 뷰포인트가 서로 다르기 때문에 상이한 정밀도를 가진다. 클로즈 뷰 상호작용 영역은 고정밀 상호작용 맵을 사용하고 원격 뷰 상호작용 영역은 상대적으로 저정밀 상호작용 맵을 사용한다.
이미지 처리 장치는 제1 상호작용 버퍼 및 제2 상호작용 버퍼를 더 포함한다. 본 출원의 관점에 따르면, 갱신된 높이 데이터가 제1 상호작용 버퍼에 로딩되고, 상이한 레벨의 상호작용 영역에 대응하는 높이 데이터는 제1 상호작용 버퍼의 상이한 채널에 저장된다. 예를 들어, 클로즈 뷰 상호작용 영역에 대응하는 높이 데이터는 제1 상호작용 버퍼의 레드 채널 및 그린 채널에 저장되고, 원격 뷰 상호작용 영역에 대응하는 높이 데이터는 제1 상호작용 버퍼의 블루 채널 및 알파 채널에 저장된다.
확산 및 감쇄 서브모듈이 높이 감쇄 및 확산 동작을 수행할 때, 제1 상호작용 버퍼의 상이한 채널에 저장된 높이 데이터는 개별적으로 계산될 수 있다. 예를 들어, 레드 채널 및 그린 채널에 저장된 높이 데이터와 블루 채널 및 알파 채널에 저장된 높이 데이터는 개별적으로 계산될 수 있다.
노멀 정보가 높이 데이터에 따라 생성된 후, 제1 상호작용 버퍼와는 다른 제2 상호작용 버퍼에 노멀 정보가 로딩될 수 있으며, 상기 상이한 레벨의 상호작용 영역에 대응하는 노멀 정보는 제2 상호작용 버퍼의 다른 채널에 저장된다. 예를 들어, 클로즈 뷰 상호작용 영역에 대응하는 노멀 정보는 제2 상호작용 버퍼의 레드 채널 및 그린 채널에 저장되고, 원격 뷰 상호작용 영역에 대응하는 노멀 정보는 블루 채널 및 알파 채널에 저장된다.
이 출원의 관점에 따라, 이미지 처리 장치는: 높이 이미지 렌더링 유닛을 더 포함할 수 있다. 높이 이미지 렌더링 유닛은 높이 데이터에 따라, 각각의 레벨의 상호작용 영역에 일치하는 높이 데이터를 출력하고, 상기 높이 이미지를 사용해서 현재 이미지 프레임를 렌더링하도록 구성되어 있다.
이 출원의 다른 관점에 따라, 이미지 처리 장치는: 정밀도 평활화 유닛을 더 포함한다. 정밀도 평활화 유닛은 대응하는 상호작용 맵의 정밀도에 따라 상기 상이한 레벨의 상호작용 영역에서 인접하는 상호작용 영역 사이의 정밀도에 대해 부드러운 전이(smooth transition)를 수행하도록 구성되어 있다.
여기서, 가상 시나리오의 이미지는 복수의 상호작용 맵을 사용해서 형성된다. 그러므로 이미지는 복수의 상호작용 영역을 포함하고 각각의 상호작용 영역은 하나의 상호작용 맵에 대응한다. 가상 시나리오에서 제공되는 이미지에서, 상호작용 맵은 상이한 정밀도를 가질 수 있다. 결론적으로, 부드러운 전이는 인접하는 상호작용 영역 사이의 정밀도로 수행되어, 상호작용 영역 사이의 정밀도가 균일하지 않은 단점을 극복하며, 상호작용 영역이 서로 교차하는 가장자리 영역은 정밀도 변이를 가지며, 이에 의해 상호작용 정밀도를 향상시킨다. 실시예에서, 인접하는 상호작용 영역 간의 부드러운 전이는 인접하는 상호작용 영역 간의 선형 보간에 의해 실현될 수 있다.
실시예 3
본 출원의 실시예에 따르면, 전술한 이미지 처리 방법을 수행하기 위한 이동 전화가 제공된다. 도 8에 도시된 바와 같이, 이동 전화는 주로: 프로세서(401), 디스플레이(402), 데이터 인터페이스(403), 메모리(404) 및 네트워크 인터페이스(405)를 포함한다.
디스플레이(402)는 주로 이미지, 예를 들어, 게임 인터페이스를 표시하도록 구성되어 있다. 게임 인터페이스는 게임 캐릭터 또는 특수 효과, 및 게임 캐릭터 또는 특수 효과과 상호작용하는 잔디밭을 포함한다.
데이터 인터페이스(403)는 사용자가 입력하는 게임 제어 명령을 데이터 전송에 의해 프로세서(401)에 전송하도록 주로 구성되어 있다.
메모리(404)는 실시예 1에 설명된 방법을 수행하기 위한 명령 및 관련 데이터, 예를 들어, 게임에서 물결 애니메이션 효과를 가지는 대상(예를 들어, 잔디밭) 및 사용자의 게임 프로세스와 같은 정보를 저장하도록 주로 구성되어 있다.
네트워크 인터페이스(405)는 프로세서(401)와의 네트워크 통신을 수행하며, 이미지 상호작용 렌더링을 위한 데이터를 제공하도록 주로 구성되어 있다.
프로세서(401)는 이하의 동작:
제1 대상의 상호작용 공간이 제2 대상이 위치하는 제1 평면과 교차하는 현재 이미지 프레임에서 상호작용 영역을 획득하는 단계 - 제2 대상 중의 목표 대상은 상호작용 공간에 위치함 - ; 상기 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵을 생성하는 단계 - 상기 노멀 맵에 복수의 리플이 표시됨 - ; 및 상기 복수의 리플 중 제1 목표 리플을 사용해서, 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 목표 대상을 이동시키는 단계 - 제1 목표 리플은 목표 대상에 대응함 - 를 수행하도록 구성되어 있다.
상기 프로세서(401)는 물결 애니메이션의 노멀 맵에 따라 목표 대상을 제1 모달리티에서 제2 모달리티로 조정하는 단계 - 제2 모달리티의 목표 대상의 버텍스는 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치에 위치함 - 를 추가로 수행하도록 구성되어 있다.
상기 프로세서(401)는: 상기 노멀 맵의 복수의 리플의 제1 컴포넌트 및 제2 컴포넌트의 값 범위를 획득하고 - 제1 컴포넌트는 노멀 맵의 X축 방향의 컴포넌트이고, 제2 컴포넌트는 노멀 맵의 Y축 방향의 컴포넌트임 - ; 상기 노멀 맵의 Z축 방향의 목표 대상의 제3 컴포넌트를 획득하고; 제1 컴포넌트 및 제2 컴포넌트에 따라, X축 및 Y축이 위치하는 평면 상의 목표 대상의 버텍스 좌표의 제1 오프셋 거리 및 제1 오프셋 방향을 결정하고, 제3 컴포넌트에 따라, Z축 상의 목표 대상의 제2 오프셋 거리 및 제2 오프셋 방향을 결정하며 - 상기 제1 오프셋 거리는 상기 값 범위 내에 있음 - ; 그리고 목표 대상의 버텍스 좌표가 제1 오프셋 방향으로 제1 오프셋 거리만큼 오프셋되고 제2 오프셋 방향으로 제2 오프셋 거리만큼 오프셋되도록 제어하도록 추가로 구성되어 있다.
상기 프로세서(401)는: 상기 노멀 맵 내의 복수의 리플 중 최외각 계층의 리플의 X축 방향 상의 최댓값 및 최솟값, 및 최외각 계층의 리플의 Y축 방향 상의 최댓값 및 최솟값을 획득하고; X축 방향의 최댓값 및 최솟값이 미리 설정된 값이고 Y축 방향 상의 최댓값 및 최솟값이 미리 설정된 값이 될 수 있도록, X축 및 Y축 상의 복수의 리플 각각의 좌표를 조정하며; 그리고 상기 미리 설정된 값이 나타내는 범위를 상기 값 범위로 결정하도록 추가로 구성되어 있다.
상기 프로세서(401)는: 현재 이미지 프레임에 대응하는 제1 이미지 프레임 이전의 이미지 프레임의 물결 애니메이션 높이 이미지에 기초해서, 제1 이미지 프레임의 물결 애니메이션 높이 이미지의 수위를 결정하고 - 상기 제1 이미지 프레임은 물결 애니메이션의 이미지 프레임이고, 상기 수위는 제1 이미지 프레임의 물결 애니메이션 높이 이미지에서 복수의 리플 중 최고 수위임 - ; 상기 수위에 따라 현재 이미지 프레임의 물결 애니메이션 높이 이미지를 생성하며; 그리고 상기 현재 이미지 프레임의 물결 애니메이션 높이 이미지에 따라 물결 애니메이션의 노멀 맵을 생성하도록 추가로 구성되어 있다.
상기 프로세서(401)는: 제2 목표 리플의 수위를 중심인 수위로 사용하여 제2 목표 리플을 확산시켜서 복수의 확산 리플을 획득하도록 추가로 구성되어 있으며, 상기 복수의 확산 리플의 높이는 중심에서 바깥쪽으로 점차 감소한다.
상기 프로세서(401)는: 상이한 레벨의 상호작용 영역에 대응하는 상호작용 맵이 상이한 정밀도를 가질 수 있도록, 상호작용 영역과 뷰포인트 간의 거리에 따라, 상기 상호작용 영역을 상이한 레벨의 상호작용 영역으로 분할하도록 추가로 구성되어 있다.
메모리(404)는 제1 상호작용 버퍼 및 제2 상호작용 버퍼를 더 포함한다. 프로세서(401)는 갱신된 높이 데이터가 제1 상호작용 버퍼에 로딩되고, 상이한 레벨의 상호작용 영역에 대응하는 높이 데이터는 제1 상호작용 버퍼의 상이한 채널에 저장된다. 프로세서(401)가 높이 감쇄 및 확산 동작을 수행할 때, 제1 상호작용 버퍼의 상이한 채널에 저장된 높이 데이터가 개별적으로 계산될 수 있다.
프로세서(401)가 높이 데이터에 따라 노멀 정보를 생성한 후, 프로세서(401)는 노멀 정보를 제2 상호작용 버퍼에 추가로 로딩할 수 있으며, 상이한 레벨의 상호작용 영역에 대응하는 노멀 정보는 제2 상호작용 버퍼의 상이한 채널에 저장된다.
프로세서(401)는 높이 데이터에 따라, 각각의 레벨의 상호작용 영역에 일치하는 높이 데이터를 추가로 출력하고, 상기 높이 이미지를 사용해서 현재 이미지 프레임를 렌더링할 수 있다.
프로세서(401)는 대응하는 상호작용 맵의 정밀도에 따라 상기 상이한 레벨의 상호작용 영역에서 인접하는 상호작용 영역 사이의 정밀도에 대해 부드러운 전이를 추가로 수행할 수 있다.
실시에 4
본 출원의 이 실시예는 저장 매체를 추가로 제공한다. 선택적으로, 이 실시예에서, 저장 매체는 본 출원의 실시예 1에서의 이미지 처리 방법을 수행하기 위한 프로그램 코드를 저장하도록 구성될 수 있다.
선택적으로, 이 실시예에서, 저장 매체는 이동 통신 네트워크, 광대역 네트워크, 메트로폴리탄 영역 네트워크 또는 로컬 영역 네트워크와 같은 네트워크에서 복수의 네트워크 장치 중 적어도 하나의 네트워크 장치에 위치할 수 있다.
선택적으로, 이 실시예에서, 저장 매체는 이하의 단계를 수행하기 위한 프로그램 코드를 저장하도록 구성되어 있다:
S1. 제1 대상의 상호작용 공간이 제2 대상이 위치하는 제1 평면과 교차하는 현재 이미지 프레임에서 상호작용 영역을 획득하며, 제2 대상 중의 목표 대상은 상호작용 공간에 위치한다.
S2. 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵을 생성하며, 상기 노멀 맵에 복수의 리플이 표시된다.
S3. 복수의 리플 중 제1 목표 리플을 사용해서, 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 목표 대상을 이동시키며, 제1 목표 리플은 목표 대상에 대응한다.
선택적으로, 이 실시예에서, 전술한 저장 매체는: USB 플래시 드라이브, ROM, RAM, 휴대형 하드디스크, 자기디스크 또는 광디스크와 같이, 프로그램 코드를 저장할 수 있는 임의의 매체를 포함할 수 있으며, 이에 제한되지 않는다.
선택적으로, 본 출원의 특정한 예에 대해서는 실시예 1 및 실시예 2에 설명된 예를 참조하며, 이에 대해서는 본 실시예에서 다시 설명하지 않는다.
본 출원의 이전의 실시예에서의 순번은 설명의 목적을 위한 것일 뿐이며 실시예의 선호도를 나타내지 않는다.
통합 유닛이 소프트웨어 기능 유닛의 형태로 실현되어 독립 제품으로 시판되거나 사용되면, 이 통합 유닛은 컴퓨터 판독 가능형 저장 매체에 저장될 수 있다. 이러한 이해를 바탕으로, 본 발명의 필수적인 기술적 솔루션 또는 종래기술에 기여하는 부분, 또는 기술적 솔루션의 일부는 소프트웨어 제품의 형태로 실현될 수 있다. 컴퓨터 소프트웨어 제품은 저장 매체에 저장되고, 본 출원의 실시예에 설명된 방법의 단계 중 일부 또는 전부를 수행하도록 하나 이상의 컴퓨터 장치(이것은 퍼스널 컴퓨터, 서버, 또는 네트워크 장치 등이 될 수 있다)에 명령하는 수개의 명령어를 포함한다.
본 출원의 전술한 실시예에서, 실시예의 설명은 다른 강조를 가지며, 하나의 실시예에서 설명되지 않은 부분에 대해서는 다른 실시예의 관련 설명을 참조할 수 있다.
본 출원에서 제공하는 수 개의 실시예에서, 전술한 시스템, 장치, 및 방법은 다른 방식으로도 실현될 수 있다는 것은 물론이다. 예를 들어, 설명된 장치 실시예는 단지 예시에 불과하다. 예를 들어, 유닛의 분할은 단지 일종의 논리적 기능 분할일 뿐이며, 실제의 실행 동안 다른 분할 방식으로 있을 수 있다. 예를 들어, 복수의 유닛 또는 구성요소를 다른 시스템에 결합 또는 통합할 수 있거나, 또는 일부의 특징은 무시하거나 수행하지 않을 수도 있다. 또한, 도시되거나 논의된 상호 커플링 또는 직접 결합 또는 통신 접속은 일부의 인터페이스를 통해 실현될 수 있다. 장치 또는 유닛 간의 간접 결합 또는 통신 접속은 전자식, 기계식 또는 다른 형태로 실현될 수 있다.
별도의 부분으로 설명된 유닛들은 물리적으로 별개일 수 있고 아닐 수도 있으며, 유닛으로 도시된 부분은 물리적 유닛일 수도 있고 아닐 수도 있으며, 한 위치에 위치할 수도 있고, 복수의 네트워크 유닛에 분산될 수도 있다. 유닛 중 일부 또는 전부는 실제의 필요에 따라 선택되어 실시예의 솔루션의 목적을 달성할 수 있다.
또한, 본 발명의 실시예에서의 기능 유닛은 하나의 프로세싱 유닛으로 통합될 수 있거나, 각각의 유닛이 물리적으로 단독으로 존재할 수도 있거나, 2개 이상의 유닛이 하나의 유닛으로 통합될 수도 있다. 통합 유닛은 하드웨어의 형태로 실현될 수도 있고, 소프트웨어 기능 유닛의 형태로 실현될 수도 있다.
전술한 설명은 단지 본 출원의 바람직한 실시예에 불과하며, 당업자는 본 출원의 정신을 벗어남이 없이 다양한 개선 및 수정을 수행할 수 있다는 것에 유의해야 한다. 이러한 모든 변형 및 수정 역시 본 출원에 포함되도록 의도되어야 한다.

Claims (25)

  1. 이미지 처리 방법으로서,
    제1 대상의 상호작용 공간이 제2 대상이 위치하는 제1 평면과 교차하는 현재 이미지 프레임에서 상호작용 영역을 획득하는 단계 - 제2 대상 중의 목표 대상은 상호작용 공간에 위치함 - ;
    상기 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵(normal map)을 생성하는 단계 - 상기 노멀 맵에 복수의 리플(ripple)이 표시됨 - ; 및
    상기 복수의 리플 중 제1 목표 리플을 사용해서, 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 목표 대상을 이동시키는 단계 - 제1 목표 리플은 목표 대상에 대응함 -
    를 포함하는 이미지 처리 방법.
  2. 제1항에 있어서,
    상기 복수의 리플 중 제1 목표 리플을 사용해서, 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 목표 대상을 이동시키는 단계는,
    상기 물결 애니메이션의 노멀 맵에 따라 목표 대상을 제1 모달리티(modality)에서 제2 모달리티로 조정하는 단계 - 제2 모달리티의 목표 대상의 버텍스(vertex)는 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치에 위치함 -
    를 포함하는 이미지 처리 방법.
  3. 제2항에 있어서,
    상기 물결 애니메이션의 노멀 맵에 따라 목표 대상을 제1 모달리티에서 제2 모달리티로 조정하는 단계는,
    상기 노멀 맵의 복수의 리플의 제1 컴포넌트 및 제2 컴포넌트의 값 범위를 획득하는 단계 - 제1 컴포넌트는 노멀 맵의 X축 방향의 컴포넌트이고, 제2 컴포넌트는 노멀 맵의 Y축 방향의 컴포넌트임 - ;
    상기 노멀 맵의 Z축 방향의 목표 대상의 제3 컴포넌트를 획득하는 단계;
    제1 컴포넌트 및 제2 컴포넌트에 따라, X축 및 Y축이 위치하는 평면 상의 목표 대상의 버텍스 좌표의 제1 오프셋 거리 및 제1 오프셋 방향을 결정하고, 제3 컴포넌트에 따라, Z축 상의 목표 대상의 제2 오프셋 거리 및 제2 오프셋 방향을 결정하는 단계 - 상기 제1 오프셋 거리는 상기 값 범위 내에 있음 - ; 및
    목표 대상의 버텍스 좌표가 제1 오프셋 방향으로 제1 오프셋 거리만큼 오프셋되고 제2 오프셋 방향으로 제2 오프셋 거리만큼 오프셋되도록 제어하는 단계
    를 포함하는, 이미지 처리 방법.
  4. 제3항에 있어서,
    상기 노멀 맵의 복수의 리플의 제1 컴포넌트 및 제2 컴포넌트의 값 범위를 획득하는 단계는,
    상기 노멀 맵 내의 복수의 리플 중 최외각 계층의 리플의 X축 방향 상의 최댓값 및 최솟값, 및 최외각 계층의 리플의 Y축 방향 상의 최댓값 및 최솟값을 획득하는 단계;
    X축 방향의 최댓값 및 최솟값이 미리 설정된 값이고 Y축 방향 상의 최댓값 및 최솟값이 미리 설정된 값이 될 수 있도록, X축 및 Y축 상의 복수의 리플 각각의 좌표를 조정하는 단계; 및
    상기 미리 설정된 값이 나타내는 범위를 상기 값 범위로 결정하는 단계
    를 포함하는, 이미지 처리 방법.
  5. 제1항에 있어서,
    상기 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵을 생성하는 단계는,
    현재 이미지 프레임에 대응하는 제1 이미지 프레임 이전의 이미지 프레임의 물결 애니메이션 높이 이미지에 기초해서, 제1 이미지 프레임의 물결 애니메이션 높이 이미지의 수위(water level)를 결정하는 단계 - 상기 제1 이미지 프레임은 물결 애니메이션의 이미지 프레임이고, 상기 수위는 제1 이미지 프레임의 물결 애니메이션 높이 이미지에서 복수의 리플 중 최고 수위임 - ;
    상기 수위에 따라 현재 이미지 프레임의 물결 애니메이션 높이 이미지를 생성하는 단계; 및
    상기 현재 이미지 프레임의 물결 애니메이션 높이 이미지에 따라 물결 애니메이션의 노멀 맵을 생성하는 단계
    를 포함하는, 이미지 처리 방법.
  6. 제5항에 있어서,
    상기 수위에 따라 현재 이미지 프레임의 물결 애니메이션 높이 이미지를 생성하는 단계는,
    제2 목표 리플의 수위를 중심인 수위로 사용하여 제2 목표 리플을 확산시켜서 복수의 확산 리플을 획득하는 단계 - 상기 복수의 확산 리플의 높이는 중심에서 바깥쪽으로 점차 감소함 -
    를 포함하는 이미지 처리 방법.
  7. 제6항에 있어서,
    상이한 레벨의 상호작용 영역에 대응하는 상호작용 맵이 상이한 정밀도를 가질 수 있도록, 상호작용 영역과 뷰포인트 간의 거리에 따라, 상기 상호작용 영역을 상이한 레벨의 상호작용 영역으로 분할하는 단계
    를 더 포함하는 이미지 처리 방법.
  8. 제7항에 있어서,
    상기 물결 애니메이션 높이 이미지에 운송되는 높이 데이터를 제1 버퍼에 로딩하는 단계 - 상기 상이한 레벨의 상호작용 영역에 대응하는 높이 데이터는 제1 버퍼의 상이한 채널에 저장됨 -
    를 더 포함하는 이미지 처리 방법.
  9. 제8항에 있어서,
    상기 제2 목표 리플이 확산되어 복수의 확산 리플이 획득되는 프로세스에서, 상기 제1 버퍼의 상이한 채널에 저장된 높이 데이터는 개별적으로 계산되는, 이미지 처리 방법.
  10. 제7항에 있어서,
    상기 노멀 맵을 형성하기 위한 노멀 정보를 제2 버퍼에 로딩하며, 상기 상이한 레벨의 상호작용 영역에 대응하는 노멀 정보는 제2 버퍼의 상이한 채널에 저장되는, 이미지 처리 방법.
  11. 제7항에 있어서,
    상기 높이 데이터에 따라, 각각의 레벨의 상호작용 영역에 일치하는 높이 데이터를 출력하고, 상기 높이 이미지를 사용해서 현재 이미지 프레임을 렌더링하는 단계
    를 더 포함하는 이미지 처리 방법.
  12. 제7항에 있어서,
    상기 대응하는 상호작용 맵의 정밀도에 따라 상기 상이한 레벨의 상호작용 영역에서 인접하는 상호작용 영역 사이의 정밀도에 대해 부드러운 전이(smooth transition)가 수행되는, 이미지 처리 방법.
  13. 이미지 처리 장치로서,
    제1 대상의 상호작용 공간이 제2 대상이 위치하는 제1 평면과 교차하는 현재 이미지 프레임에서 상호작용 영역을 획득하도록 구성되어 있는 제1 획득 유닛 - 제2 대상 중의 목표 대상은 상호작용 공간에 위치함 - ;
    상기 상호작용 영역에 대응하는 물결 애니메이션의 노멀 맵을 생성하도록 구성되어 있는 생성 유닛 - 상기 노멀 맵에 복수의 리플(ripple)이 표시됨 - ; 및
    상기 복수의 리플 중 제1 목표 리플을 사용해서, 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치로 목표 대상을 이동시키도록 구성되어 있는 이동 유닛 - 제1 목표 리플은 목표 대상에 대응함 -
    을 포함하는 이미지 처리 장치.
  14. 제13항에 있어서,
    상기 이동 유닛은,
    상기 물결 애니메이션의 노멀 맵에 따라 목표 대상을 제1 모달리티에서 제2 모달리티로 조정하도록 구성되어 있는 조정 서브유닛
    을 포함하며,
    제2 모달리티의 목표 대상의 버텍스는 현재 이미지 프레임에 있으면서 노멀 맵 내의 제1 목표 리플의 리플 위치에 대응하는 위치에 위치하는, 이미지 처리 장치.
  15. 제14항에 있어서,
    상기 조정 서브유닛은,
    상기 노멀 맵의 복수의 리플의 제1 컴포넌트 및 제2 컴포넌트의 값 범위를 획득하도록 구성되어 있는 제1 획득 모듈 - 제1 컴포넌트는 노멀 맵의 X축 방향의 컴포넌트이고, 제2 컴포넌트는 노멀 맵의 Y축 방향의 컴포넌트임 - ;
    상기 노멀 맵의 Z축 방향의 목표 대상의 제3 컴포넌트를 획득하도록 구성되어 있는 제2 획득 모듈;
    제1 컴포넌트 및 제2 컴포넌트에 따라, X축 및 Y축이 위치하는 평면 상의 목표 대상의 버텍스 좌표의 제1 오프셋 거리 및 제1 오프셋 방향을 결정하고, 제3 컴포넌트에 따라, Z축 상의 목표 대상의 제2 오프셋 거리 및 제2 오프셋 방향을 결정하도록 구성되어 있는 제1 결정 모듈 - 상기 제1 오프셋 거리는 상기 값 범위 내에 있음 - ; 및
    목표 대상의 버텍스 좌표가 제1 오프셋 방향으로 제1 오프셋 거리만큼 오프셋되고 제2 오프셋 방향으로 제2 오프셋 거리만큼 오프셋되도록 제어하도록 구성되어 있는 제어 모듈
    을 포함하는, 이미지 처리 장치.
  16. 제15항에 있어서,
    상기 제1 획득 모듈은,
    상기 노멀 맵 내의 복수의 리플 중 최외각 계층의 리플의 X축 방향 상의 최댓값 및 최솟값, 및 최외각 계층의 리플의 Y축 방향 상의 최댓값 및 최솟값을 획득하도록 구성되어 있는 획득 서브모듈;
    X축 방향의 최댓값 및 최솟값이 미리 설정된 값이고 Y축 방향 상의 최댓값 및 최솟값이 미리 설정된 값이 될 수 있도록, X축 및 Y축 상의 복수의 리플 각각의 좌표를 조정하도록 구성되어 있는 조정 서브모듈; 및
    상기 미리 설정된 값이 나타내는 범위를 상기 값 범위로 결정하도록 구성되어 있는 결정 서브모듈
    을 포함하는, 이미지 처리 장치.
  17. 제13항에 있어서,
    상기 생성 유닛은,
    현재 이미지 프레임에 대응하는 제1 이미지 프레임 이전의 이미지 프레임의 물결 애니메이션 높이 이미지에 기초해서, 제1 이미지 프레임의 물결 애니메이션 높이 이미지의 수위를 결정하도록 구성되어 있는 제2 결정 모듈 - 상기 제1 이미지 프레임은 물결 애니메이션의 이미지 프레임이고, 상기 수위는 제1 이미지 프레임의 물결 애니메이션 높이 이미지에서 복수의 리플 중 최고 수위임 - ;
    상기 수위에 따라 현재 이미지 프레임의 물결 애니메이션 높이 이미지를 생성하도록 구성되어 있는 제1 생성 모듈; 및
    상기 현재 이미지 프레임의 물결 애니메이션 높이 이미지에 따라 물결 애니메이션의 노멀 맵을 생성하도록 구성되어 있는 제2 생성 모듈
    을 포함하는, 이미지 처리 장치.
  18. 제17항에 있어서,
    상기 제1 생성 모듈은,
    제2 목표 리플의 수위를 중심인 수위로 사용하여 제2 목표 리플을 확산시켜서 복수의 확산 리플을 획득하도록 구성되어 있는 확산 및 감쇄 서브모듈 - 상기 복수의 확산 리플의 높이는 중심에서 바깥쪽으로 점차 감소함 -
    을 포함하는, 이미지 처리 장치.
  19. 제18항에 있어서,
    상이한 레벨의 상호작용 영역에 대응하는 상호작용 맵이 상이한 정밀도를 가질 수 있도록, 상호작용 영역과 뷰포인트 간의 거리에 따라, 상기 상호작용 영역을 상이한 레벨의 상호작용 영역으로 분할하도록 구성되어 있는 상호작용 영역 분할 유닛
    을 더 포함하는 이미지 처리 장치.
  20. 제19항에 있어서,
    상기 물결 애니메이션 높이 이미지에 운송되는 높이 데이터를 저장하도록 구성되어 있는 제1 버퍼 - 상기 상이한 레벨의 상호작용 영역에 대응하는 높이 데이터는 제1 버퍼의 상이한 채널에 저장됨 -
    를 더 포함하는 이미지 처리 장치.
  21. 제20항에 있어서,
    상기 제2 목표 리플이 확산되어 복수의 확산 리플이 획득되는 프로세스에서, 상기 제1 버퍼의 상이한 채널에 저장된 높이 데이터는 개별적으로 계산되는, 이미지 처리 장치.
  22. 제19항에 있어서,
    상기 노멀 맵을 형성하기 위한 노멀 정보를 제2 버퍼에 로딩하도록 구성되어 있는 제2 버퍼
    를 더 포함하며,
    상기 상이한 레벨의 상호작용 영역에 대응하는 노멀 정보는 제2 버퍼의 상이한 채널에 저장되는, 이미지 처리 장치.
  23. 제19항에 있어서,
    상기 높이 데이터에 따라, 각각의 레벨의 상호작용 영역에 일치하는 높이 데이터를 출력하고, 상기 높이 이미지를 사용해서 현재 이미지 프레임을 렌더링하도록 구성되어 있는 높이 이미지 렌더링 유닛
    을 더 포함하는 이미지 처리 장치.
  24. 제19항에 있어서,
    상기 대응하는 상호작용 맵의 정밀도에 따라 상기 상이한 레벨의 상호작용 영역에서 인접하는 상호작용 영역 사이의 정밀도에 대해 부드러운 전이(smooth transition)를 수행하도록 구성되어 있는 정밀도 평활화 유닛
    을 더 포함하는 이미지 처리 장치.
  25. 제1항 내지 제12항 중 어느 한 항에 따른 방법을 수행하기 위한 프로그램 명령을 저장하는 컴퓨터 판독 가능형 저장 매체.
KR1020187018499A 2016-04-06 2017-04-06 이미지 처리 방법 및 장치 KR102108244B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN201610209641.7 2016-04-06
CN201610210562.8 2016-04-06
CN201610209641.7A CN105913471B (zh) 2016-04-06 2016-04-06 图片处理的方法和装置
CN201610210562.8A CN105912234B (zh) 2016-04-06 2016-04-06 虚拟场景的交互方法和装置
PCT/CN2017/079587 WO2017174006A1 (zh) 2016-04-06 2017-04-06 图片处理的方法和装置

Publications (2)

Publication Number Publication Date
KR20180088876A KR20180088876A (ko) 2018-08-07
KR102108244B1 true KR102108244B1 (ko) 2020-05-07

Family

ID=60000257

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187018499A KR102108244B1 (ko) 2016-04-06 2017-04-06 이미지 처리 방법 및 장치

Country Status (3)

Country Link
US (1) US10839587B2 (ko)
KR (1) KR102108244B1 (ko)
WO (1) WO2017174006A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109598777B (zh) * 2018-12-07 2022-12-23 腾讯科技(深圳)有限公司 图像渲染方法、装置、设备及存储介质
CN112221150B (zh) * 2020-10-19 2023-01-10 珠海金山数字网络科技有限公司 一种虚拟场景中的涟漪仿真方法及装置
CN112241993B (zh) * 2020-11-30 2021-03-02 成都完美时空网络技术有限公司 游戏图像处理方法、装置及电子设备

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061067A (en) * 1996-08-02 2000-05-09 Autodesk, Inc. Applying modifiers to objects based on the types of the objects
US5877777A (en) * 1997-04-07 1999-03-02 Colwell; Tyler G. Fluid dynamics animation system and method
JP4183104B2 (ja) * 1998-12-04 2008-11-19 株式会社バンダイナムコゲームス ゲーム装置及び情報記憶媒体
KR20060064142A (ko) * 2004-12-08 2006-06-13 김종현 범프 매핑과 실시간 비디오 텍스쳐를 이용한 인터랙티브 물 효과
KR20060133671A (ko) * 2005-06-21 2006-12-27 이인권 컴퓨터그래픽 캐릭터와의 상호 작용을 위한 실사 배경이미지 내의 오브젝트의 변형 기법
CN100444203C (zh) * 2006-11-27 2008-12-17 北京金山软件有限公司 一种在3d游戏中绘制草坪的方法和系统
US8888596B2 (en) * 2009-11-16 2014-11-18 Bally Gaming, Inc. Superstitious gesture influenced gameplay
WO2013070310A1 (en) * 2011-11-08 2013-05-16 Manton Douglas Method and system for rendering virtual in-game environments
KR101894567B1 (ko) * 2012-02-24 2018-09-03 삼성전자 주식회사 락스크린 운용 방법 및 이를 지원하는 단말기
CN102663245A (zh) * 2012-03-30 2012-09-12 福建天趣网络科技有限公司 3d游戏世界编辑器
CN102930590A (zh) * 2012-10-17 2013-02-13 沈阳创达技术交易市场有限公司 可交互的地表修饰物渲染方法
CN103679820A (zh) * 2013-12-16 2014-03-26 北京像素软件科技股份有限公司 一种3d虚拟场景中模拟草体扰动效果的方法
CN105913471B (zh) * 2016-04-06 2018-09-14 腾讯科技(深圳)有限公司 图片处理的方法和装置

Also Published As

Publication number Publication date
US10839587B2 (en) 2020-11-17
US20190035134A1 (en) 2019-01-31
KR20180088876A (ko) 2018-08-07
WO2017174006A1 (zh) 2017-10-12

Similar Documents

Publication Publication Date Title
CN111095952B (zh) 使用体积音频渲染和脚本化音频细节级别的3d音频渲染
US7019742B2 (en) Dynamic 2D imposters of 3D graphic objects
CN105913471B (zh) 图片处理的方法和装置
CN112184873B (zh) 分形图形创建方法、装置、电子设备和存储介质
JP6802393B2 (ja) 中心窩レンダリングシステムにおける、遅延ライティングの最適化、パーティクルの中心窩適応、及びシミュレーションモデル
US20100231590A1 (en) Creating and modifying 3d object textures
KR102108244B1 (ko) 이미지 처리 방법 및 장치
US20100045669A1 (en) Systems and method for visualization of fluids
US11423605B2 (en) Systems and methods for remastering a game space while maintaining the underlying game simulation
US20230290043A1 (en) Picture generation method and apparatus, device, and medium
CN115082607A (zh) 虚拟角色头发渲染方法、装置、电子设备和存储介质
Thorn Learn unity for 2d game development
KR20190122246A (ko) 영상처리방법과 장치, 기억매체 및 전자기기
CN108986228B (zh) 用于虚拟现实中界面显示的方法及装置
KR100469820B1 (ko) 화면 갱신 방법 및 그 시스템
WO2018175299A1 (en) System and method for rendering shadows for a virtual environment
WO2023089777A1 (ja) 画像処理装置、オブジェクトデータ生成装置、画像処理方法、オブジェクトデータ生成方法、およびオブジェクトモデルのデータ構造
US11423516B2 (en) Gaze enhanced natural motion blur
Yuniarti et al. Implementation of reconstruction filter to create motion blur effect in Urho3D game engine
Abdillah et al. Optimization of virtual reality-based flood simulation by manipulating particle system
Raudsepp Volumetric Fog Rendering
KR102396060B1 (ko) 전자 게임에서 카메라 뷰 변경
Okun et al. Interactive Games
CN115830210A (zh) 虚拟对象的渲染方法、装置、电子设备及存储介质
CN116310013A (zh) 动画渲染方法、装置、计算机设备及计算机可读存储介质

Legal Events

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