[go: up one dir, main page]

KR20080050284A - Method and device for real-time wrinkle expression of skin when character animation - Google Patents

Method and device for real-time wrinkle expression of skin when character animation Download PDF

Info

Publication number
KR20080050284A
KR20080050284A KR1020070091685A KR20070091685A KR20080050284A KR 20080050284 A KR20080050284 A KR 20080050284A KR 1020070091685 A KR1020070091685 A KR 1020070091685A KR 20070091685 A KR20070091685 A KR 20070091685A KR 20080050284 A KR20080050284 A KR 20080050284A
Authority
KR
South Korea
Prior art keywords
map
wrinkles
skin
bump
normal map
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1020070091685A
Other languages
Korean (ko)
Other versions
KR100900823B1 (en
Inventor
김항기
이범렬
임충규
김준애
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to JP2007296764A priority Critical patent/JP4842242B2/en
Priority to US11/948,931 priority patent/US20080129738A1/en
Publication of KR20080050284A publication Critical patent/KR20080050284A/en
Application granted granted Critical
Publication of KR100900823B1 publication Critical patent/KR100900823B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping

Landscapes

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

Abstract

본 발명은 캐릭터 애니메이션시 피부 주름을 렌더링 함에 있어서 최적의 속도를 제공하고 사실적인 표현을 함으로써 실시간성을 보장하기 위한 방법에 관한 것이다. The present invention relates to a method for ensuring real time by providing an optimal speed and realistic expression in rendering skin wrinkles during character animation.

본 발명은 각 표정별 피부의 주름을 노멀맵(Normal Map)과 범프맵(Bump map)으로 표현하고 이들 맵을 무표정일때의 노멀맵,범프맵과 차이를 계산하여 일반화된 피부 주름 데이터 및 가중치 데이터를 생성하고 원하는 캐릭터의 피부주름 데이터를 표정별 일반화된 주름 데이터를 이용하여 생성하고 현재 애니메이션 시간(t)에서의 표정별 가중치를 이용하여 최종 피부주름을 나타내는 노멀맵, 범프맵을 계산한 후 이를 화면에 렌더링한다.According to the present invention, the skin wrinkles of each facial expression are expressed as a normal map and a bump map, and the normalized skin wrinkle data and weight data are calculated by calculating the difference from the normal map and the bump map when these maps are in no expression. After generating the skin wrinkle data of the desired character using the generalized wrinkle data for each facial expression, calculate the normal map and bump map representing the final skin wrinkle using the weight of each facial expression at the current animation time (t) Render to the screen.

Description

캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법 및 장치{An efficient real-time skin wrinkle rendering method and apparatus in character animation}An efficient real-time skin wrinkle rendering method and apparatus in character animation

본 발명은 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법 및 장치에 관한 것으로서, 더욱 상세하게는 실시간 3차원 그래픽 캐릭터 렌더링 분야에서 시뮬레이션, 게임, 교육 등에서 캐릭터 표현에 사용되어 캐릭터의 피부 주름을 자연스럽게 표현하는 수 있는 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법 및 장치에 관한 것이다. The present invention relates to a method and apparatus for real-time expression of skin wrinkles during character animation. More specifically, the present invention relates to a method of expressing skin wrinkles of a character by being used for character expression in simulation, games, and education in the field of real-time three-dimensional graphic character rendering. The present invention relates to a method and apparatus for real-time expression of wrinkles on skin during character animation.

본 발명은 정보통신부 및 정보통신연구진흥원의 IT신성장동력핵심기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2006-S-044-01, 과제명: 멀티코아 CPU 및 MPU기반 크롯플랫폼 게임기술].The present invention is derived from the research conducted as part of the IT new growth engine core technology development project of the Ministry of Information and Communication and the Ministry of Information and Communication Research and Development. [Task Management Number: 2006-S-044-01, Title: Multicore CPU and MPU-based Croat Platform Game Technology].

현재 실시간 3차원 그래픽 분야는 하드웨어의 개선과 활용의 증가에 따라서 매우 빠른 속도로 발전하고 있다. 이 중 캐릭터 피부 렌더링은 시뮬레이션 뿐만 아니라 게임, 교육용으로도 많이 사용되고 있다. 이러한 캐릭터 피부를 렌더링함에 있어서 빠르고 사실감 있는 표현을 하기 위한 여러가지 시도가 있어 왔다. Currently, the real-time three-dimensional graphics field is developing at a very fast pace with the improvement of hardware and the increase of utilization. Character skin rendering is used not only for simulation but also for games and education. Various attempts have been made to render fast and realistic expressions in rendering such character skins.

종래 기술로는 해부학적인 관점에서 본 근육 모델 기반 주름 표현, 예제 모 델에 기반을 둔 얼굴 애니메이션, 표면 내측(Subsurface)을 이용한 피부 표현 및 파라미터(Parameter) 기반 얼굴 애니메이션 등이 있었다.Conventional technologies include muscle model based wrinkle expression from an anatomical perspective, facial animation based on an example model, skin expression using subsurface, and parameter based facial animation.

이중 가장 단순한 방법은 피부 표현에 필요한 만큼의 폴리곤 메쉬를 생성한 후 이들 메쉬의 정점을 세부 조정해 주는 것이다. 하지만 이러한 방법은 세부적인 표현을 위하여 전적으로 폴리곤(정점 3개로 이루어진 삼각형들의 집합)을 사용하기 때문에 아주 많은 숫자의 폴리곤이 필요하고 또한 3D 렌더링시 아주 많은 시간이 걸리며, 모델링하기도 어렵다. The simplest way is to create as many polygon meshes as necessary to represent the skin and then fine-tune the vertices of those meshes. However, this method uses a large number of polygons (a set of three vertices) for the details, and requires a very large number of polygons, and it takes a lot of time to render 3D and is difficult to model.

다른 방법은 노멀맵(Normal Map)과 범프맵(Bump Map) 등을 사용하는 것이다.Another way is to use normal maps and bump maps.

노멀맵은 캐릭터 모델의 법선(Normal)벡터를 텍스쳐로 표현한 것으로 캐릭터에 퍼진 색상 텍스쳐(Diffuse Color Texture)를 입혀서 표현하듯이 빛(Light), 환경맵 등을 계산할 때 노멀맵을 이용하는 것이다. The normal map is a texture representing the normal vector of the character model. The normal map is used to calculate light, environment map, etc. as if the character is coated with a diffuse color texture.

범프맵은 캐릭터 모델의 높낮이를 회색(Gray Scale)으로 표현한 것으로 얼굴의 미세한 높낮이를 표현함으로써 얼굴의 자세한 표현이 가능하다.The bump map expresses the height and height of the character model in gray scale, and detailed expression of the face is possible by expressing the fine height of the face.

이러한 노멀맵과 범프맵은 피부의 미세한 굴곡을 텍스쳐(Texture)를 이용함으로써 쉽고 빠르게 렌더링할 수 있도록 도와준다.These normal maps and bump maps help to render fine curves of the skin easily and quickly by using texture.

얼굴 애니메이션 시 피부의 주름을 표현하기 위하여 해부학적인 근육 모델을 기반으로 한 피부 주름 방식이 사용되어 왔다. 하지만 이 방법은 매우 많은 계산을 필요로 하고 정점 기반 모델을 사용하기 때문에 실시간 3D 캐릭터 애니메이션에 사용하기에는 어렵다.Skin wrinkles based on anatomical muscle models have been used to express the wrinkles of the skin in facial animation. However, this method requires a lot of computation and uses a vertex-based model, making it difficult to use for real-time 3D character animation.

한편, 해부학인 관점에서 본 근육 모델 기반 주름 표현 방법에 대해서는 본 출원인이 2004년 12월 14일자로 출원한 대한민국 출원번호 제10-2004-106837호로 그 제목이 "해부 데이터를 이용한 얼굴 애니메이션 생성 시스템 및 그 방법"에 다음과 같은 내용으로 개시되어 있다. On the other hand, with respect to the muscle model-based wrinkle expression method from an anatomical perspective, the present applicant filed December 14, 2004, Republic of Korea Application No. 10-2004-106837 entitled "Face animation generation system using anatomical data and "Method" is disclosed as follows.

상기 종래의 기술에서, 다수의 얼굴 모델에 해당하는 두개골, 두개골 기하정보 및 근육 정보를 저장하고 있는 해부 데이터 저장 수단; 얼굴 애니메이션을 생성하기 위하여 외부로부터 얼굴 모델을 입력받음에 따라 상기 입력받은 얼굴 모델과 가장 유사한 두개골을 상기 해부 데이터 저장 수단으로부터 검색하고, 상기 검색한 두개골에 소정개수의 근육을 배치하기 위한 근육 배치 수단; 상기 근육 배치 수단에서 근육이 배치된 두개골에 피하지방층 및 피부를 결합시켜 얼굴 메쉬를 생성하고, 근육의 움직임에 따른 피부의 움직임을 정의하기 위한 피부 생성수단; 및 외부로부터 입력받은 근육 조절 신호에 따라 상기 생성한 얼굴 메쉬에서 해당 근육과 그와 연결된 피하지방층 및 피부를 수축 또는 이완시켜 특정 표정을 가진 얼굴 메쉬를 생성하여 저장하기 위한 표정 생성 수단을 포함한다. Anatomical data storage means for storing skull, skull geometry and muscle information corresponding to multiple face models in the prior art; Muscle placement means for retrieving a skull most similar to the received face model from the anatomical data storage means according to an input of a face model from outside to generate a face animation, and placing a predetermined number of muscles in the retrieved skull ; Skin generation means for combining the subcutaneous fat layer and skin to the skull where the muscle is disposed in the muscle placement means to generate a face mesh, and defining the movement of the skin according to the movement of the muscle; And an expression generating means for generating and storing a facial mesh having a specific expression by contracting or relaxing the corresponding muscle, the subcutaneous fat layer and the skin in response to the muscle control signal received from the outside.

그러나, 이와 같은 종래기술은 그 얼굴 표정의 표현에 있어서 탁월한 효과를 발휘하지만, 실시간으로 표현하기에는 그 처리할 데이터가 방대하고, 또한, 처리한 데이터에 의해 표현된 캐릭터의 표현에 있어서 자연스러움을 표현할 수 있다. 하지만, 캐릭터 애니메이션에 있어서는 과장된 표현이 필요한 데 과장된 표현을 할 수 없는 등의 문제점이 있다. However, such a prior art exerts an excellent effect in the expression of the facial expression, but the data to be processed is enormous for real time expression, and naturalness in the expression of the character represented by the processed data. Can be. However, in character animation, an exaggerated expression is required, but there is a problem such that an exaggerated expression cannot be performed.

본 발명은 노멀맵과 범프맵에 해당 주름에 대응하는 가중치를 합성하여 얼굴 애니메이션 시 피부의 주름을 효과적으로 표현할 수 있는 방법과 한 개의 피부 주름 예제 캐릭터 모델에서 추출된 피부 주름 데이터를 일반 캐릭터 모델에 적용할 수 있는 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법 및 장치를 제공하는 데에 있는 것이다. The present invention synthesizes weights corresponding to the corresponding wrinkles on the normal map and the bump map to effectively express the skin wrinkles during facial animation, and applies skin wrinkle data extracted from one skin wrinkle example character model to the general character model. It is to provide a method and apparatus for real-time expression of skin wrinkles when character animation is possible.

본 발명의 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법은, 현재 시간에서 노멀맵 합성하기 위하여 캐릭터의 표정을 뽑아내고 이들 표정들의 주름이 표현된 노멀맵에 피부 주름의 가중치를 계산하는 제1 계산단계와, 계산단계에서 계산된 가중치를 부여하여 최종 노멀맵을 계산하는 제2 계산단계와, 제2 계산단계에서 계산된 최종 노멀맵을 이용하여 피부 주름 렌더링하여 피부의 주름을 표현하는 렌더링단계로 구성되는 것을 특징으로 한다. The method of expressing the wrinkles of the skin in the character animation of the present invention comprises the first calculation step of extracting the facial expressions of the characters in order to synthesize the normal map at the current time and calculating the weight of the skin wrinkles on the normal map in which the wrinkles of these expressions are expressed; And a second calculation step of calculating the final normal map by giving weights calculated in the calculation step, and a rendering step of rendering the skin wrinkles by rendering the skin wrinkles using the final normal map calculated in the second calculation step. It is characterized by.

또한, 본 발명의 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법은, 현재 시간에서 범프맵 합성하기 위하여 캐릭터의 표정을 뽑아내고 이들 표정들의 주름이 표현된 범프맵에 피부 주름의 가중치를 계산하는 제1 계산단계와, 계산단계에서 계산된 가중치를 부여하여 최종 범프맵을 계산하는 제2 계산단계와, 제2 계산단계에서 계산된 최종 범프맵을 이용하여 피부 주름 렌더링하여 피부의 주름을 표현하는 표현단계로 구성되는 것을 특징으로 한다. In addition, in the character animation of the present invention, the skin wrinkles real-time expression method, the first calculation to extract the facial expression of the character in order to synthesize the bump map at the current time and calculate the weight of the skin wrinkles on the bump map in which the wrinkles of these expressions are expressed And a second calculation step of calculating a final bump map by giving weights calculated in the calculation step, and an expression step of expressing wrinkles of the skin by rendering the skin wrinkles using the final bump map calculated in the second calculation step. It is characterized in that the configuration.

본 발명의 캐릭터 애니메이션 시 피부의 주름 실시간 표현 장치는, 필요한 표정들의 예제를 미리 모델링해 둔 후 이들을 보간하는 방식으로 노멀맵화하는 노멀맵모듈과, 필요한 표정들의 예제를 미리 모델링해 둔 후 이들을 보간하는 방식으로 범프맵화하는 범프맵모듈과, 노멀맵 및 범프맵에 가중치를 합성하기 위한 표정들에 대응하는 가중치를 부여하여 합성함으로써 최종 노멀맵 또는 최종 범프맵을 구하는 계산모듈과, 가중치가 채용된 노멀맵 및 범프맵을 이용하여 렌더링하여 캐릭터의 주름을 표현하는 렌더링모듈로 구성되는 것을 특징으로 한다. The apparatus for expressing wrinkles of the skin in the character animation according to the present invention includes a normal map module that normalizes an example of required expressions by interpolating them after pre-modeling an example of necessary expressions, and pre-models an example of necessary expressions and interpolates them. A bump map module for bump mapping by a method, a calculation module for obtaining a final normal map or a final bump map by assigning a weight to a normal map and a bump map corresponding to expressions for synthesis of weights, and a weighted normal Characterized by consisting of a rendering module that represents the wrinkles of the character by rendering using the map and bump map.

이상에서 설명한 바와 같이 본 발명은 캐릭터 애니메이션에 있어서 피부 주름을 근육기반 표현보다 가중치에 의해 쉽게 계산하므로 빠르고 값싸고 자연스럽게 표현할 수 있는 효과가 있다.As described above, the present invention has the effect of expressing skin wrinkles easily by weight rather than muscle-based expression in character animation, which can be quickly, cheaply and naturally expressed.

또한, 본 발명은 일반화된 피부 주름 노멀맵 데이터를 이용하면 모든 캐릭터에 쉽게 적용하여 피부 주름을 표현할 수 있는 효과가 있다. In addition, the present invention has an effect that can be easily applied to all characters by using the normalized skin wrinkle normal map data to express the skin wrinkles.

또한, 본 발명은 어떤 모델을 사용하였는가에 따라서 주름의 표현이 달리할 수 있으므로 젊은 사람의 얼굴에 늙은 사람의 얼굴 모델을 적용하면 무표정일 때에는 상관없다가 표정이 변하면 늙은 사람처럼 주름이 보이게 설정할 수 있는 효과가 있다. In addition, according to the present invention, since the expression of the wrinkles may vary depending on which model is used, applying the face model of the old person to the face of the young person does not matter when it is expressionless, but when the facial expression changes, the wrinkles may be set to look like the old person. It has an effect.

위의 방식을 모두 GPU의 H/W Shader에서 처리함으로써 실시간 렌더링이 가능하다.All of the above methods are handled by the GPU's H / W Shader to enable real-time rendering.

따라서 3차원 게임이나 시뮬레이션, 교육 등 사실적인 캐릭터 피부를 다루어야 하는 분야에서 예전보다 더욱 빠르고 사실감 있는 피부 주름을 표현할 수 있게 된다.Therefore, it is possible to express skin wrinkles faster and more realistic than ever before in the field that needs to deal with realistic character skin such as 3D game, simulation and education.

이하, 첨부된 도면을 참조하여 본 발명의 구성에 대하여 보다 상세하게 설명하기로 한다. Hereinafter, with reference to the accompanying drawings will be described in more detail with respect to the configuration of the present invention.

도 1은 본 발명의 일실시예에 따른 캐릭터 애니메이션 시 피부의 주름을 실시간으로 표현하기 위한 시스템 구성을 나타낸 블록도이다. 1 is a block diagram showing a system configuration for expressing the wrinkles of the skin in real time during the character animation according to an embodiment of the present invention.

도 1을 참조하여 보면, 먼저 본 발명의 GPU(Graphics Processing Unit)(10)는 노멀맵 모듈(12), 범프맴 모듈(14), 계산모듈(16) 및 렌더링 모듈(18)을 포함한다. Referring to FIG. 1, first, a graphics processing unit (GPU) 10 of the present invention includes a normal map module 12, a bump member module 14, a calculation module 16, and a rendering module 18.

GPU(10)는 데이터를 받아 그래픽을 처리하는 처리 장치이다. 그래픽의 트랜스폼(Transform)과 라이트닝(Lighting)을 처리한다. The GPU 10 is a processing device that receives data and processes graphics. Handles transform and lightening of graphics.

노멀맵모듈(12)은 인터페이스 장치 등을 통해 입력된 그래픽 데이터를 노멀맵화한다. 노멀맵모듈(12)은 입력된 그래픽 데이터에 예제 기반 모델을 사용하여 노멀맵화한다. 즉, 필요한 표정들의 예제를 미리 모델링(폴리곤 및 노멀맵, 범프맵)해 둔 후 이들을 보간하는 방식으로 노멀맵화한다. The normal map module 12 normalizes graphic data input through an interface device or the like. The normal map module 12 normalizes the input graphic data using an example-based model. In other words, models of required expressions are pre-modeled (polygon, normal map, bump map) and normalized by interpolating them.

그리고, 범프맵모듈(14)도 노멀맵모듈(12)과 같은 방식으로 인터페이스 장치 등을 통해 수신한 그래픽 데이터를 예제 기반 모델을 사용하여 범프맵화한다. The bump map module 14 also bumps the graphic data received through the interface device in the same manner as the normal map module 12 using an example-based model.

계산모듈(16)은 현재 시간 t에서 대응하는 가중치를 합성하기 위한 표정들을 뽑아내고 노멀맵(Normal Map) 또는 범프맵(Bump Map)에 대응하는 표정에 대응하는 가중치를 부여하여(Weighted) 합성함으로써 최종 노멀맵 또는 최종 범프맵을 구한다. 즉, 노멀맵들을 보간할 때 각 표정에는 부위별로 가중치(Weight)를 두어 가중치에 따라서 보간하는 작업을 수행한다. The calculation module 16 extracts the expressions for synthesizing the corresponding weights at the current time t, and weights and synthesizes the expressions corresponding to the expressions corresponding to the normal map or the bump map. Find the final normal map or final bump map. That is, when the normal maps are interpolated, weights are assigned to parts of each facial expression to interpolate according to the weights.

이러한 노멀맵 합성 및 범프맵 합성에 GPU(10)의 쉐이더(Shader)를 사용하여 텍스처의 픽셀값을 처리하여 주름 합성 효과를 더 사실적으로 낼 수 있다. 즉, 쉐이더를 사용하여 더욱 효과적으로 합성할 수 있다. In the normal map synthesis and the bump map synthesis, the shader of the GPU 10 may be used to process the pixel values of the texture to achieve a more realistic wrinkle synthesis effect. In other words, you can synthesize them more effectively using shaders.

만약 GPU(10)의 최대 동시 텍스쳐 개수가 현재 합성하려는 표정 개수보다 작을 경우 여러 번 나누어 계산함으로써 수정 가능하다. 이럴 경우 이전 단계에서 계산된 합성 노멀맵과 가중치의 합이 현재단계의 입력으로 들어가고 추가적인 표정과 합성하여 수정한다. If the maximum number of simultaneous textures of the GPU 10 is smaller than the number of expressions to be synthesized at present, it may be modified by dividing the calculation several times. In this case, the sum of the composite normal map and the weight calculated in the previous step enters the input of the current step, and synthesizes the additional facial expressions.

그리고 렌더링모듈(18)은 이와 같은 알고리듬을 적용하여 가중치가 채용된 노멀맵 및 범프맵을 이용하여 렌더링하여 캐릭터의 주름을 표현하고 이와 같이 주름을 실시간으로 표현한 캐릭터 애니메이션을 디스플레이(20)를 통해 디스플레이시킨다. In addition, the rendering module 18 applies the above algorithm to render using a normal map and a bump map employing weights to express the character's wrinkles and display the character animation expressing the wrinkles in real time through the display 20. Let's do it.

도 2는 본 발명의 일실시예에 따른 캐릭터 애니메이션 시 피부의 주름을 실시간으로 표현하는 과정을 순차적으로 나타낸 흐름도이며, 도 3a 및 도 3b는 본 발명의 일실시예에 따른 캐릭터의 얼굴을 렌더링하는 데에 사용되는 각각의 범프맵 및 칼라맵이고, 도 4a 및 도4b는 본 발명의 일실시예에 따른 캐릭터가 웃는 표정을 렌더링 하는 데에 사용되는 범프맵과 가중치맵이다. 2 is a flowchart sequentially illustrating a process of expressing the wrinkles of the skin in real time when the character animation according to an embodiment of the present invention, Figures 3a and 3b is a rendering of the character's face in accordance with an embodiment of the present invention Each bump map and color map used in the present invention are illustrated. FIGS. 4A and 4B are bump maps and weight maps used to render a smiling face of a character according to an embodiment of the present invention.

도 2 내지 도 4b를 참조하여 보면, 상기와 같은 목적을 달성하기 위한 캐릭터 애니메이션 피부 주름 렌더링 방법은 도 2에서와 같이 현재 시간(t)에서 합성하기 위하여 캐릭터의 표정을 뽑아내고 이들 표정들의 주름이 표현된 노멀맵(Normal Map) 또는 범프맵(Bump Map)에 도 4b와 같이 가중치가 부여된(Weighted) 가중치맵을 합성함으로써, 즉 가중치를 계산하고 이를 적용함으로써 최종 노멀맵 또는 최종 범프맵을 구하고 이를 이용하여 피부 주름 렌더링하여 피부의 주름을 표현한다. 이때 도 4b는 웃는 얼굴에 사용되는 가중치맵이므로 도 4b를 채용하여 가중치를 적용하면 웃는 얼굴의 캐릭터를 얻을 수 있다. 2 to 4B, the character animation skin wrinkle rendering method for achieving the above object is to extract the facial expression of the character to synthesize at the current time (t) as shown in FIG. The final normal map or final bump map is obtained by synthesizing the weighted weight map to the expressed normal map or bump map as shown in FIG. The wrinkles of the skin are expressed by rendering the skin wrinkles. In this case, since FIG. 4B is a weight map used for the smiling face, the weighted character may be obtained by applying the weight using FIG. 4B.

먼저, 본 발명은 얼굴 피부를 기준으로 설명한다. 하지만 본 발명은 얼굴뿐만 아니라 캐릭터의 모든 부분의 표면 주름을 표현할 수 있는 방법이다. First, the present invention will be described based on facial skin. However, the present invention is a method that can express the surface wrinkles of all parts of the character as well as the face.

또한, 본 발명에서 노멀맵과 범프맵은 적용하는 방식이 같으므로 노멀맵을 기준으로 설명하기로 한다. 본 발명에서 피부 주름 합성에 필요한 노멀맵, 범프맵 데이터는 예제 기반 모델을 사용하며, 예제 기반 모델을 이용하여 노멀맵모듈(12)은 노멀맵을 제작한다. 마찬가지로 범프맵모듈(14)도 예제 기반 모델을 이용하여 범프맵을 제작한다(S10). 다시 말하면, 노멀맵 및 범프맵을 제작하는 방식은 필요한 표정들의 예제를 미리 모델링(폴리곤 및 노멀맵, 범프맵)해 둔 후 이들을 보간하는 방식이다.In addition, in the present invention, since the normal map and the bump map are applied in the same manner, the normal map will be described based on the normal map. In the present invention, the normal map and bump map data required for skin wrinkle synthesis use an example-based model, and using the example-based model, the normal map module 12 produces a normal map. Similarly, the bump map module 14 also produces a bump map using an example-based model (S10). In other words, the normal map and the bump map are produced by pre-modeling examples of the required expressions (polygon, normal map and bump map) and interpolating them.

생성된 각각 노멀맵모듈(12) 및 범프맵모듈(14)에 의해 제작된 각각의 노멀맵 및 범프맵은 각 표정 예제 모델의 주름 데이터는 3D 스캐너 장비를 이용하거나 2D 이미지를 보고 직접 디자이너가 제작할 수도 있고, 기타 자동화된 도구를 이용하여 제작할 수 있다. 각 표정의 예제 모델의 주름 데이터는 각 표정별 피부 주름이 포함된 노멀맵들을 보간할 때 각 표정에는 부위별로 가중치(Weight)를 계산한다(S20). Each normal map and bump map generated by the normal map module 12 and the bump map module 14 are generated. The wrinkle data of each facial expression example model can be directly generated by a designer using a 3D scanner device or by viewing a 2D image. It can be made using other automated tools. The wrinkle data of the example model of each facial expression calculates a weight for each facial region when interpolating normal maps including skin wrinkles for each facial expression (S20).

가중치는 0∼1 사이의 값이다. 0에 가까울 수록 그 부위가 표정에 미치는 영향이 작은 것이고, 1에 가까울 수록 부위가 표정에 미치는 영향이 큰 것이다.The weight is a value between 0 and 1. The closer to 0, the smaller the effect of the part on the expression, and the closer to 1, the greater the effect of the part on the expression.

현재 표정에서의 가중치 데이터는 (무표정 노멀맵 - 현재표정 노멀맵)을 초기 데이터로 이용한다. 그리고 범프맵을 사용하는 경우면 도 3a의 범프맵을 초기 데이터로 사용한다. 초기 데이터에서 수작업을 통하여 원하지 않는 곳에서의 주름 데이터가 있거나 표현하고 싶은 부분이 있는데 너무 미세한 경우를 위하여 후처리를 한다.The weight data in the current facial expression uses (unexpression normal map-current expression normal map) as initial data. When the bump map is used, the bump map of FIG. 3A is used as initial data. The initial data manually contains wrinkles data where you don't want it, or there is a part you want to express.

가중치 데이터는 노멀맵의 알파 부분에 저장할 수 있다. 최근 텍스쳐는 실수(float)값을 표현할 수 있으므로 이를 활용하면 더욱 효과적이다. The weight data may be stored in the alpha portion of the normal map. Recent textures can represent float values, which makes them more effective.

각 표정에 따른 피부 주름이 표현된 노멀맵, 범프맵 예제 모델을 만들고 이들 모델을 가중치을 채용하여 보간에 의해서 합성한다(S30). 도 4b에는 웃는 모습에 사용되는 가중치맵이 도시되어 있다. 피부주름 노멀맵의 합성은 다음의 수학식 1에 의해서 표현된다.A normal map and a bump map example model in which skin wrinkles are expressed according to each expression are made, and these models are synthesized by interpolation using weights (S30). 4B shows a weight map used for laughing. Synthesis of the skin wrinkle normal map is represented by the following equation (1).

NormalNormal (x, y) = (x, y) =

SumSum ( ( NormalNormal (( exprexpr , x, y) * , x, y) * WeightWeight (( exprexpr , x, y)) / , x, y)) / SumSum (( WeightWeight (( exprexpr , x, y)), x, y))

수학식 1에서, expr는 합성에 필요한 표정을 1...n까지 나열했을 때의 인덱스를 나타낸다. 예컨대, 웃는 얼굴, 화난 얼굴, 우는 얼굴 등의 다수의 모델링 된 예제들 일 수 있다. In Equation 1, expr represents an index when the expressions required for synthesis are listed up to 1 ... n. For example, there may be a number of modeled examples of smiley faces, angry faces, crying faces, and the like.

그리고, Normal(x, y)는 최종 결과인 피부주름 노멀맵에 대한 (x,y)좌표에서의 가중치가 채용된 노멀값이다. In addition, Normal (x, y) is a normal value employing a weight in the (x, y) coordinate with respect to the final wrinkled skin normal map.

Normal(expr, x, y)는 현재 합성할 표정 expr의 피부 주름 표현인 노멀맵(x, y) 좌표에서의 노멀 값을 나타낸다. Weight(expr, x, y)는 현재 합성할 표정 expr의 (x, y)좌표에서의 가중치이다.Normal (expr, x, y) represents a normal value in normal map (x, y) coordinates, which is a skin wrinkle expression of the expression expr to be synthesized. Weight (expr, x, y) is the weight at the (x, y) coordinate of the expression expr to be synthesized at present.

얼굴 애니메이션과 같이 표현될 경우 현재 얼굴 애니메이션이 시간(t)에서의 피부 주름 노멀맵 합성은 다음 식에 의해서 표현이 된다.When expressed as a facial animation, the skin wrinkle normal map synthesis at the time t is represented by the following equation.

NormalNormal (t, x, y) = (t, x, y) =

Sum( Sum ( NormalNormal (( exprexpr , x, y) * , x, y) * WeightWeight (( exprexpr , x, y) * TimedWeight(t, expr)) / , x, y) * TimedWeight (t, expr)) / SumSum (( WeightWeight (( exprexpr , x, y) * , x, y) * TimedWeightTimedweight (t, (t, exprexpr )) ))

Normal(t, x, y)는 현재 시간(t)에서 최종 결과인 피부 주름 노멀맵에 대한 (x, y)좌표에서의 노멀값이다.Normal (t, x, y) is the normal value in the (x, y) coordinates for the skin wrinkle normal map that is the final result at the current time (t).

TimedWeight(t, expr)는 현재 시간(t)에서 해당 주름 표정 표현(expression)의 합성 가중치이다. 이러한 노멀맵 합성은 GPU(10)의 하드웨어(H/W)인 쉐이더를 사용하면 더욱 효과적이다.TimedWeight (t, expr) is a composite weight of the corresponding wrinkle expression expression at the current time t. Such normal map synthesis is more effective using a shader that is hardware (H / W) of the GPU 10.

쉐이더의 입력으로 각 표정의 피부주름 노멀맵 텍스쳐와 각 표정별 가중치가 들어가고 출력으로는 위의 합성식인 수학식 1 및 수학식 2를 이용하여 각 픽셀별로 합성된 결과 가중치가 적용된 노멀맵이 나온다.As the input of the shader, the skin wrinkle normal map texture of each facial expression and the weight of each facial expression are input, and as the output, a normal map to which the weight is applied is obtained as a result of synthesis of each pixel using the above formulas (1) and (2).

만약 GPU(10)의 최대 동시 텍스쳐 개수가 현재 합성하려는 표정 개수보다 작을 경우 여러 번 나누어 계산함으로써 애니메이션 프레임에 맞게 표현 가능하다. 이럴 경우 이전 단계에서 계산된 합성 노멀맵과 가중치의 합이 현재단계의 입력으로 들어가고 추가적인 표정과 합성하게 되어 애니메이션시에 보다 부드러운 영상을 얻을 수 있다. If the maximum number of simultaneous textures of the GPU 10 is smaller than the number of facial expressions to be synthesized at present, the GPU 10 may be divided into several times and may be expressed according to an animation frame. In this case, the sum of the composite normal map and the weight calculated in the previous step is input to the current step and synthesized with an additional facial expression to obtain a smoother image during animation.

하나의 예제 표정 노멀맵 데이터를 이용하여 다른 캐릭터의 노멀맵에 적용하여 주름에 가중치를 준 표정을 생성하기 위해서는 일반화된 표정 노멀맵 차이 데이터와 가중치가 필요하다. 일반화된 표정 노멀맵 차이 데이터(일반NormalMapDiff(expr, x, y))는 현재 예제의 노멀맵 데이터로부터 계산되며, 그 식은 다음의 수학식 3과 같다. In order to generate a weighted expression of wrinkles by applying one example facial expression normal map data to another character's normal map, generalized facial expression normal map difference data and weights are needed. The generalized facial expression normal map difference data (general NormalMapDiff (expr, x, y)) is calculated from the normal map data of the current example, and the equation is as in Equation 3 below.

일반NormalMapDiff(expr, x, y) = Normal(expr, x, y) - Normal(무표정, x, y)NormalMapDiff (expr, x, y) = Normal (expr, x, y)-Normal (expression, x, y)

위의 수학식 3을 이용하여 각 표정에서의 노멀맵 차이데이터와 가중치(Weight)를 계산한다. 이렇게 추출된 노멀맵 차이 데이터는 다른 캐릭터의 표정에도 적용할 수 있게 된다. 다른 캐릭터의 표정에 적용되는 경우의 수학식은 다음 의 수학식 4와 같다. By using Equation 3 above, the normal map difference data and the weight in each expression are calculated. The normal map difference data extracted in this way can be applied to expressions of other characters. Equation when applied to the expression of other characters is as shown in Equation 4 below.

다른캐릭터Nomal(expr, x, y) Other Characters Normal (expr, x, y)

= 다른캐릭터Normal(무표정, x, y) + 일반NormalMapDiff(expr, x, y) = Other character Normal (x, y) + normal NormalMapDiff (expr, x, y)

이처럼 다른 캐릭터의 표정시에는 무표정일 때의 노멀맵만으로 다양한 표정의 노멀맵을 만들어 낼 수 있다. 도 4a의 범프맵은 가중치를 적용하여 웃는 표정을 생성해낸 범프맵이다. 이때, 폴리곤이 참조하는 텍스쳐의 기하구조가 도 3a 내지 도 4b에 나타나 있는 바와 같이 동일해야 한다. 즉, 일반 예제모델에서의 텍스쳐상에 눈 부위가 다른 캐릭터의 텍스쳐상의 눈 부위와 일치하도록 만들어야 한다. 그리고 이와 같이 표정이 입혀진 캐릭터의 얼굴에 도 3b와 같이 컬러를 입혀 주름이 형성된 캐릭터를 완성한다. Like this, when the expressions of other characters are expressed, normal maps of various expressions can be generated only by the normal maps when no expression is present. The bump map of FIG. 4A is a bump map that generates a smiling expression by applying a weight. At this time, the geometry of the texture referenced by the polygon should be the same as shown in Figs. 3a to 4b. That is, make sure that the eye area on the texture in the general example model matches the eye area on the texture of another character. In addition, the character is coated with a color as shown in FIG. 3B to complete the character with wrinkles.

앞에서는 노멀맵을 위주로 설명하였지만, 범프맵에서도 같은 알고리듬이 적용된다. 그리고 이와 같은 알고리듬을 적용하여 가중치가 채용된 노멀맵 및 범프맵을 이용하여 렌더링모듈(18)에서 렌더링한다(S40). 렌더링된 데이터는 디스플레이(20)를 통해 디스플레이된다. In the above, the normal map is mainly described, but the same algorithm is applied to the bump map. The algorithm is applied to render the rendering module 18 using the normal map and the bump map employing the weight (S40). The rendered data is displayed via the display 20.

이렇게 함으로써 어떠한 얼굴에도 표정 애니메이션 시 피부의 주름을 표현할 수 있게 된다.In this way, the facial wrinkles can be expressed in any facial expression animation.

얼굴 부위가 아닌 다른 부위도 동일한 방식으로 사용이 가능하다. 각각 동작에 따른 노멀맵을 일반화시켜 이들을 합성함으로써 피부 주름을 표현할 수 있게 되는 것이다. Other parts of the face can be used in the same way. By normalizing the normal maps according to the respective motions and synthesizing them, the skin wrinkles can be expressed.

도 1은 본 발명의 일실시예에 따른 캐릭터 애니메이션 시 피부의 주름을 실시간으로 표현하기 위한 장치 구성을 나타낸 블록도. 1 is a block diagram showing a device configuration for expressing the wrinkles of the skin in real time during the character animation according to an embodiment of the present invention.

도 2는 발명의 일실시예에 따른 캐릭터 애니메이션 시 피부의 주름을 실시간으로 표현하는 과정을 순차적으로 나타낸 흐름도. 2 is a flowchart sequentially illustrating a process of expressing wrinkles of the skin in real time during character animation according to an embodiment of the present invention.

도 3a 및 도 3b는 본 발명의 일실시예에 따른 캐릭터의 얼굴에 사용되는 각각의 범프맵 및 칼라맵(Albedo). 3A and 3B are bump maps and color maps (Albedo) respectively used for a character's face according to an embodiment of the present invention.

도 4a 및 도4b는 본 발명의 일실시예에 따른 캐릭터가 웃는 표정을 나타낸 각각의 범프맵과 가중치(Weight)맵. 4A and 4B are bump maps and weight maps each showing a smiling face of a character according to an exemplary embodiment of the present invention.

<도면의 주요부분에 대한 부호의 간단한 설명><Brief description of symbols for the main parts of the drawings>

10 : GPU 12 : 노멀맵 모듈10: GPU 12: normal map module

14 : 범프맴 모듈 16 : 계산모듈14: bump member module 16: calculation module

18 : 렌더링 모듈 20 : 디스플레이 18: rendering module 20: display

Claims (8)

현재 시간에서 노멀맵 합성하기 위하여 캐릭터의 표정을 뽑아내고 이들 표정들의 주름이 표현된 노멀맵에 피부 주름의 가중치를 계산하는 제1 계산단계와; A first calculation step of extracting facial expressions of characters to synthesize normal maps at a current time and calculating weights of skin wrinkles on normal maps in which wrinkles of these facial expressions are expressed; 상기 제1 계산단계에서 계산된 가중치를 부여하여 최종 노멀맵을 계산하는 제2 계산단계와; A second calculation step of calculating a final normal map by applying a weight calculated in the first calculation step; 상기 제2 계산단계에서 계산된 최종 노멀맵을 이용하여 피부 주름 렌더링하여 피부의 주름을 표현하는 렌더링단계로 구성되는 것을 특징으로 하는 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법. Rendering the skin wrinkles by using the final normal map calculated in the second calculation step Rendering step to represent the wrinkles of the skin, characterized in that the skin wrinkles real-time expression method. 현재 시간에서 범프맵 합성하기 위하여 캐릭터의 표정을 뽑아내고 이들 표정들의 주름이 표현된 범프맵에 피부 주름의 가중치를 계산하는 제1 계산단계와; Extracting facial expressions of characters to synthesize bump maps at a current time and calculating weights of skin wrinkles on bump maps in which wrinkles of these facial expressions are expressed; 상기 제1 계산단계에서 계산된 가중치를 부여하여 최종 범프맵을 계산하는 제2 계산단계와; A second calculation step of calculating a final bump map by applying a weight calculated in the first calculation step; 상기 제2 계산단계에서 계산된 최종 범프맵을 이용하여 피부 주름 렌더링하여 피부의 주름을 표현하는 표현단계로 구성되는 것을 특징으로 하는 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법. The wrinkles real-time expression method of the character animation, characterized in that consisting of the expression step to express the wrinkles of the skin by rendering the skin wrinkles using the final bump map calculated in the second calculation step. 제1항 또는 제2항에 있어서, The method according to claim 1 or 2, 상기 범프맵 및 상기 노멀맵의 데이터는 모델링된 예제 기반 모델을 사용하여 제작하는 것을 특징으로 하는 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법. The bump map and the normal map data is produced using a modeled example-based model, characterized in that the wrinkles of the skin during the character animation. 제1항 또는 제2항에 있어서, The method according to claim 1 or 2, 상기 노멀맵 합성 또는 범프맵 합성에 GPU(Graphics Processing Unit)의 쉐이더를 사용하여 텍스처의 픽셀값을 처리하는 것을 특징으로 하는 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법. The method of expressing the wrinkles of the skin during character animation, characterized in that to process the pixel value of the texture using a shader of a graphics processing unit (GPU) for the normal map synthesis or bump map synthesis. 제4항에 있어서, The method of claim 4, wherein 상기 GPU의 최대 동시 텍스쳐 개수가 현재 합성하려는 표정 개수보다 작을 경우 여러 번 나누어 이전 단계에서 계산된 합성 노멀맵 또는 합성 범프맵과 가중치의 합이 현재단계의 입력으로 들어가고 추가적인 표정과 합성하여 수정하는 것을 특징으로 하는 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법. If the maximum number of simultaneous textures of the GPU is smaller than the number of expressions to be synthesized at present, the sum of the composite normal map or the composite bump map and the weight calculated in the previous step is inputted to the current step and modified by combining with the additional expressions. How to express the wrinkles of the skin during character animation. 제1항 또는 제2항에 있어서, The method according to claim 1 or 2, 상기 노멀맵 또는 상기 범프맵에 다른 캐릭터의 상기 최종 노멀맵 또는 상기 최종 범프맵을 각각 적용하여 위해서 일반화된 표정 노멀맵 차이 데이터를 구하여 상기 노멀맵 차이 데이터와 가중치를 계산하는 것을 특징으로 하는 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법. Characterized by calculating the normal map difference data and the weight by obtaining a generalized facial expression normal map difference data for applying the final normal map or the final bump map of another character to the normal map or the bump map, respectively Real-time expression of wrinkles on the skin. 제6항에 있어서, The method of claim 6, 상기 노멀맵 또는 상기 범프맵에 다른 캐릭터의 상기 최종 노멀맵 또는 상기 최종 범프맵을 각각 적용하기 위해서는 상기 폴리곤이 참조하는 텍스쳐의 기하구조가 동일한 상태에서 적용하는 것을 특징으로 하는 캐릭터 애니메이션 시 피부의 주름 실시간 표현 방법. In order to apply the final normal map or the final bump map of another character to the normal map or the bump map, the wrinkles of the skin during character animation are applied in the same state of the geometry of the texture referenced by the polygon. Real time representation method. 필요한 표정들의 예제를 미리 모델링해 둔 후 이들을 보간하는 방식으로 노멀맵화하는 노멀맵모듈과;A normal map module for modeling examples of required expressions in advance and normalizing them by interpolating them; 필요한 표정들의 예제를 미리 모델링해 둔 후 이들을 보간하는 방식으로 범프맵화하는 범프맵모듈과; A bump map module for modeling examples of required expressions in advance and then bump-mapping them by interpolating them; 상기 노멀맵 및 범프맵에 가중치를 합성하기 위한 표정들에 대응하는 가중치 를 부여하여 합성함으로써 최종 노멀맵 또는 최종 범프맵을 구하는 계산모듈과; A calculation module for obtaining a final normal map or a final bump map by assigning weights corresponding to facial expressions for synthesizing weights to the normal map and the bump map; 가중치가 채용된 노멀맵 및 범프맵을 이용하여 렌더링하여 캐릭터의 주름을 표현하는 렌더링모듈을 포함하여 이루어진 것을 특징으로 하는 캐릭터 애니메이션 시 피부의 주름 실시간 표현 장치. A device for expressing wrinkles of skin during character animation, comprising a rendering module that renders by using a weighted normal map and a bump map to express a wrinkle of a character.
KR1020070091685A 2006-12-02 2007-09-10 An efficient real-time skin wrinkle rendering method and apparatus in character animation Expired - Fee Related KR100900823B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007296764A JP4842242B2 (en) 2006-12-02 2007-11-15 Method and apparatus for real-time expression of skin wrinkles during character animation
US11/948,931 US20080129738A1 (en) 2006-12-02 2007-11-30 Method and apparatus for rendering efficient real-time wrinkled skin in character animation

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020060121089 2006-12-02
KR20060121089 2006-12-02

Publications (2)

Publication Number Publication Date
KR20080050284A true KR20080050284A (en) 2008-06-05
KR100900823B1 KR100900823B1 (en) 2009-06-04

Family

ID=39805777

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070091685A Expired - Fee Related KR100900823B1 (en) 2006-12-02 2007-09-10 An efficient real-time skin wrinkle rendering method and apparatus in character animation

Country Status (1)

Country Link
KR (1) KR100900823B1 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120006610A (en) * 2010-07-13 2012-01-19 삼성전자주식회사 Facial animation system and method
KR20140127601A (en) * 2013-04-25 2014-11-04 삼성전자주식회사 Device and method for processing 3d lighting
KR101634461B1 (en) * 2014-12-31 2016-06-28 세종대학교산학협력단 Apparatus and Method for generating facial wrinkles generation using sketch
WO2016137080A1 (en) * 2015-02-27 2016-09-01 허윤주 Three-dimensional character rendering system using general purpose graphic processing unit, and processing method thereof
KR101715266B1 (en) * 2016-04-19 2017-03-14 배재대학교 산학협력단 Line drawing method for 3d model using graphic accelerator and computer-readable recording medium storing for processing program using the same
WO2017115937A1 (en) * 2015-12-30 2017-07-06 단국대학교 산학협력단 Device and method synthesizing facial expression by using weighted value interpolation map
KR20200078858A (en) * 2018-12-24 2020-07-02 전자부품연구원 Method for Calculating Skinning Weight of 3D Character Based on Musculoskeletal Structure
CN113920236A (en) * 2021-10-09 2022-01-11 网易(杭州)网络有限公司 Face customization method and device, electronic equipment and readable medium
CN114494560A (en) * 2022-02-17 2022-05-13 网易(杭州)网络有限公司 Graphic rendering method and device, electronic equipment and storage medium
CN114972587A (en) * 2022-05-17 2022-08-30 咪咕文化科技有限公司 Expression-driven method, device, electronic device, and readable storage medium
KR102462947B1 (en) * 2022-01-12 2022-11-04 (주)이브이알스튜디오 Method for changing skin texture according to facial expression change of digital human and three dimensional graphic interface device therefor
CN115487494A (en) * 2022-10-09 2022-12-20 网易(杭州)网络有限公司 Information processing method, device and electronic device for virtual game character

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6950104B1 (en) 2000-08-30 2005-09-27 Microsoft Corporation Methods and systems for animating facial features, and methods and systems for expression transformation
KR20010044586A (en) * 2001-03-09 2001-06-05 조양일 System for providing an auto facial animation and method therefor
JP2003196677A (en) 2001-12-25 2003-07-11 Minolta Co Ltd Three-dimensional model transformation method and computer program
KR20050046877A (en) * 2003-11-14 2005-05-19 리얼루션 인코포레이티드 Image-adjusting system and method

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120006610A (en) * 2010-07-13 2012-01-19 삼성전자주식회사 Facial animation system and method
KR20140127601A (en) * 2013-04-25 2014-11-04 삼성전자주식회사 Device and method for processing 3d lighting
KR101634461B1 (en) * 2014-12-31 2016-06-28 세종대학교산학협력단 Apparatus and Method for generating facial wrinkles generation using sketch
WO2016137080A1 (en) * 2015-02-27 2016-09-01 허윤주 Three-dimensional character rendering system using general purpose graphic processing unit, and processing method thereof
US10403023B2 (en) 2015-02-27 2019-09-03 Yoon Ju HEO Three-dimensional character rendering system using general purpose graphic processing unit, and processing method thereof
KR20170079680A (en) * 2015-12-30 2017-07-10 단국대학교 산학협력단 Apparatus and method for synthesizing facial expression using weighted interpolation map
WO2017115937A1 (en) * 2015-12-30 2017-07-06 단국대학교 산학협력단 Device and method synthesizing facial expression by using weighted value interpolation map
KR101715266B1 (en) * 2016-04-19 2017-03-14 배재대학교 산학협력단 Line drawing method for 3d model using graphic accelerator and computer-readable recording medium storing for processing program using the same
KR20200078858A (en) * 2018-12-24 2020-07-02 전자부품연구원 Method for Calculating Skinning Weight of 3D Character Based on Musculoskeletal Structure
CN113920236A (en) * 2021-10-09 2022-01-11 网易(杭州)网络有限公司 Face customization method and device, electronic equipment and readable medium
KR102462947B1 (en) * 2022-01-12 2022-11-04 (주)이브이알스튜디오 Method for changing skin texture according to facial expression change of digital human and three dimensional graphic interface device therefor
CN114494560A (en) * 2022-02-17 2022-05-13 网易(杭州)网络有限公司 Graphic rendering method and device, electronic equipment and storage medium
CN114972587A (en) * 2022-05-17 2022-08-30 咪咕文化科技有限公司 Expression-driven method, device, electronic device, and readable storage medium
CN115487494A (en) * 2022-10-09 2022-12-20 网易(杭州)网络有限公司 Information processing method, device and electronic device for virtual game character

Also Published As

Publication number Publication date
KR100900823B1 (en) 2009-06-04

Similar Documents

Publication Publication Date Title
KR100900823B1 (en) An efficient real-time skin wrinkle rendering method and apparatus in character animation
KR100720309B1 (en) Automatic 3D Modeling System and Method
JP4842242B2 (en) Method and apparatus for real-time expression of skin wrinkles during character animation
CN113838176A (en) Model training method, three-dimensional face image generation method and equipment
KR101819535B1 (en) Method and apparatus for expressing rigid area based on expression control points
CN108447111B (en) Normal map processing method and device, storage medium, processor and terminal
JP2011159329A (en) Automatic 3d modeling system and method
CN112970046A (en) Digital character mixing and generating system and method
US20240331330A1 (en) System and Method for Dynamically Improving the Performance of Real-Time Rendering Systems via an Optimized Data Set
Orvalho et al. Transferring the rig and animations from a character to different face models
CN118115642A (en) Three-dimensional digital person generation method, three-dimensional digital person generation device, electronic device, storage medium, and program product
Marques et al. Deep spherical harmonics light probe estimator for mixed reality games
US8009171B2 (en) Image processing apparatus and method, and program
KR100792704B1 (en) Reapply 3D face animation based on wire curve and example facial expression model
US12293466B2 (en) Systems and methods for generating a model database with blendshape representation
CN117649477B (en) Image processing method, device, equipment and storage medium
EP4610935A1 (en) Systems and methods for enhanced image generation
KR20250057625A (en) Training and inference method for generating stylized 3d mesh and device for the same
CN120219633A (en) A method for generating new viewpoint images based on depth estimation and diffusion model
CN120912737A (en) Training of clothing generation models, methods and hardware for clothing generation in digital humans
CN111111199A (en) Role three-dimensional modeling system and method based on picture extraction
YU et al. Animating Water in Chinese Painting Using Autoregressive Model
Orvalho A System to Reuse Facial Rigs and Animations
AU2002323162A1 (en) Automatic 3D modeling system and method

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20120528

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20120528

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000