KR100974915B1 - Method for processing hierarchy graphic resources - Google Patents

Method for processing hierarchy graphic resources Download PDF

Info

Publication number
KR100974915B1
KR100974915B1 KR1020090096274A KR20090096274A KR100974915B1 KR 100974915 B1 KR100974915 B1 KR 100974915B1 KR 1020090096274 A KR1020090096274 A KR 1020090096274A KR 20090096274 A KR20090096274 A KR 20090096274A KR 100974915 B1 KR100974915 B1 KR 100974915B1
Authority
KR
South Korea
Prior art keywords
image
sprite
pool
animation
sprites
Prior art date
Application number
KR1020090096274A
Other languages
Korean (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
Application filed by 주식회사비주얼샤워 filed Critical 주식회사비주얼샤워
Priority to KR1020090096274A priority Critical patent/KR100974915B1/en
Application granted granted Critical
Publication of KR100974915B1 publication Critical patent/KR100974915B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware

Abstract

PURPOSE: A method for processing hierarchy graphic resources is provided to visually check rendering result in each hierarchy level, thereby instinctively editing data of each hierarchy level without considering graphic structure. CONSTITUTION: A resource storage unit(21) stores an image data. A resource management unit(22) reads raw image data, a image fragment, a spot light, or animation data which is necessary for editing from the resource storage unit. The resource management unit comprises a image fragment pool(12), a sprite pool(13) and animation pool(14). A rendering unit(23) performs rendering of the image piece, the spot light, the animation data, and the raw image data.

Description

하이라키 구조의 그래픽 리소스의 가공 방법{METHOD FOR PROCESSING HIERARCHY GRAPHIC RESOURCES}Processing method of graphic resource of Hiraki structure {METHOD FOR PROCESSING HIERARCHY GRAPHIC RESOURCES}

본 발명은 그래픽 리소스의 가공 방법에 관한 것으로, 더욱 상세하게는, 하이라키 구조의 그래픽 리소스의 가공 방법에 관한 것이다.The present invention relates to a method for processing a graphic resource, and more particularly, to a method for processing a graphic resource of a hiraki structure.

일반적으로 움직이는 2차원 그래픽을 구현하는 방법으로는 래스터 방식과 벡터 방식이 있다. 래스터 방식은 그래픽 처리가 상대적으로 단순하고, 벡터 방식은 결과물이 좀더 깔끔하다는 각각의 장점이 있다.In general, there are raster and vector methods for implementing moving two-dimensional graphics. The raster method has the advantages of relatively simple graphics processing, and the vector method has a cleaner result.

휴대전화기와 같은 모바일 단말기의 경우, 벡터 방식을 구현하는 데에는 모바일 단말기의 처리 능력이 떨어지는 점을 고려하지 않을 수 없고, 모바일 단말기에서 널리 사용되는 해상도인 QQVGA(160×120), QCIF(176×144), QCIF+(176×200), QVGA(320×240), CIF (352×288) 등에서는 래스터 방식과 벡터 방식의 그래픽 결과물의 품질 차이도 그다지 드러나지 않는다. 이러한 이유로, 모바일 단말기에서 구동되는 많은 게임 어플리케이션들이 래스터 방식의 그래픽 리소스를 이용하여 개발되고 있다.In the case of a mobile terminal such as a mobile phone, the implementation of the vector method has to be taken into consideration that the processing power of the mobile terminal is inferior. ), QCIF + (176 × 200), QVGA (320 × 240), CIF (352 × 288), etc., show little difference in the quality of raster and vector graphics. For this reason, many game applications running on mobile terminals are being developed using raster graphics resources.

이렇듯, 모바일 단말기에서 게임 어플리케이션 등의 그래픽 어플리케이션이 잘 구동되도록 하기 위해서는 애초부터 모바일 단말기의 낮은 성능에 맞게 그래픽 데이터를 구성하고 그래픽 어플리케이션을 개발할 필요가 있다. 그런데, 종래에는 코드와 그래픽 데이터가 어플리케이션 내에 혼재되어 있기 때문에, 어플리케이션 내에 그래픽 데이터를 탑재할 때에, 어플리케이션을 직접 모바일 단말기에서 동작시키기 전까지는 제대로 탑재되었는지 알 수 없다.As such, in order to operate a graphic application such as a game application on a mobile terminal, it is necessary to construct graphic data and develop a graphic application in accordance with low performance of the mobile terminal from the beginning. By the way, since code and graphic data are conventionally mixed in an application, when loading graphic data in an application, it is unknown whether it is correctly installed until the application is directly operated by a mobile terminal.

모바일 단말기에서 게임 어플리케이션 등의 그래픽 어플리케이션이 잘 구동되도록 하기 위해서는 애초부터 모바일 단말기의 낮은 성능에 맞게 그래픽 데이터를 가공하는 방법이 제시될 필요가 있다.In order for graphics applications such as game applications to run well in a mobile terminal, a method of processing graphic data to meet the low performance of a mobile terminal needs to be presented from the beginning.

본 발명이 해결하고자 하는 과제는 모바일 단말기에서 구동하는 그래픽 어플리케이션에 적합한 그래픽 데이터를 직관적으로 가공하는 방법 및 그렇게 구성된 그래픽 데이터를 가공할 수 있는 편집 툴을 제공하는 데에 있다.SUMMARY OF THE INVENTION An object of the present invention is to provide a method for intuitively processing graphic data suitable for a graphic application running on a mobile terminal, and to provide an editing tool capable of processing the graphic data thus configured.

상기 과제를 해결하기 위한 본 발명에 따른 그래픽 리소스 가공 방법은,Graphic resource processing method according to the present invention for solving the above problems,

다수의 이미지들을 포함하는 로 이미지(raw image)에서 추출된 적어도 하나의 이미지 조각(image fragment)을 이미지 조각 풀에 등록하는 단계;Registering at least one image fragment extracted from a raw image including a plurality of images to an image fragment pool;

상기 이미지 조각 풀에서 선택된 이미지 조각으로 구성된 적어도 하나의 스프라이트(sprite)를 스프라이트 풀에 등록하는 단계; 및Registering at least one sprite composed of the selected image fragments in the image fragment pool to a sprite pool; And

상기 스프라이트 풀에서 선택된 스프라이트들로 구성된 적어도 하나의 애니메이션(animation)을 애니메이션 풀에 등록하는 단계를 포함할 수 있다.And registering at least one animation composed of the sprites selected from the sprite pool to the animation pool.

바람직하게는, 상기 이미지 조각, 스프라이트, 애니메이션은 하이라키(hierarchy) 관계로서, 각각 스프라이트는 애니메이션의 하위 계층이고, 이미지 조각은 스프라이트의 하위 계층일 수 있다.Preferably, the image pieces, sprites, and animations are in a hierarchy relationship, each of which may be a lower layer of the animation, and the image pieces may be a lower layer of the sprite.

바람직하게는, 상기 적어도 하나의 이미지 조각을 이미지 조각 풀에 등록하 는 단계는,Advantageously, registering the at least one image fragment to an image fragment pool,

개발자에 의해 선택된 상기 로 이미지 내의 독립 이미지 또는 상기 로 이미지의 일부 영역의 좌표를 추출하는 단계;Extracting coordinates of an independent image or a partial region of the raw image selected by the developer;

상기 독립 이미지 또는 영역에 대하여 부여된 이름과 상기 좌표를 포함하는 이미지 조각의 정보를 상기 이미지 조각 풀에 저장하는 단계를 포함할 수 있다.And storing information of an image fragment including the name and the coordinates assigned to the independent image or region in the image fragment pool.

바람직하게는, 상기 적어도 하나의 스프라이트를 스프라이트 풀에 등록하는 단계는, Preferably, registering the at least one sprite to a sprite pool,

상기 스프라이트를 구성하는 상기 이미지 조각을 상기 스프라이트의 하위 계층에 배정하는 단계; 및Assigning the image pieces constituting the sprite to a lower layer of the sprite; And

상기 배정된 이미지 조각에 관하여 개발자가 지정한 상기 로 이미지 내에서 차지하는 위치를 저장하는 단계를 포함할 수 있다.And storing a position occupied in the raw image designated by the developer with respect to the assigned image fragment.

바람직하게는, 상기 적어도 하나의 애니메이션을 애니메이션 풀에 등록하는 단계는, Preferably, registering the at least one animation to an animation pool,

상기 애니메이션을 구성하는 상기 스프라이트들을 상기 애니메이션의 하위 계층에 배정하는 단계; 및Assigning the sprites constituting the animation to a lower layer of the animation; And

상기 배정된 스프라이트들에 관하여 개발자가 지정한 재생 속성을 저장하는 단계를 포함할 수 있다.And storing a playback attribute specified by the developer with respect to the assigned sprites.

바람직하게는, 상기 이미지 조각 풀, 스프라이트 풀, 애니메이션 풀은 각각 이미지 조각, 스프라이트, 애니메이션을 엘리먼트로 하는 XML 형식으로 관리 및 저장될 수 있다.Preferably, the image fragment pool, sprite pool, and animation pool may be managed and stored in an XML format including image fragments, sprites, and animations as elements.

바람직하게는, 상기 이미지 조각은 상기 로 이미지에서 차지하는 위치, 크기, 이름으로 규정되고, 상기 스프라이트는 상기 이미지 조각이 상기 로 이미지에서 차지하는 위치, 이름으로 규정되며, 상기 애니메이션은 상기 스프라이트의 이름, 시퀀스 및 재생 속성으로 규정될 수 있다.Preferably, the image fragment is defined by a location, a size, and a name occupied in the raw image, the sprite is defined by a location, a name, the image fragment occupies in the raw image, and the animation is a name, sequence of the sprite. And playback attributes.

본 발명의 다른 측면에 따른 컴퓨터로 읽을 수 있는 매체는, 컴퓨터를 이용해 앞서 설명한 그래픽 리소스 가공 방법을 수행시킬 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체이다.A computer readable medium according to another aspect of the present invention is a computer readable medium having recorded thereon a program capable of performing the graphic resource processing method described above using a computer.

본 발명의 또 다른 측면에 따른 그래픽 리소스 가공 장치는 다수의 이미지들을 포함하는 로 이미지, 편집에 의해 생성된 이미지 조각들, 스프라이트들, 애니메이션들을 저장하는 리소스 저장부;Graphic resource processing apparatus according to another aspect of the present invention includes a resource storage for storing a raw image including a plurality of images, image pieces generated by editing, sprites, animations;

이미지 조각 풀, 스프라이트 풀 및 애니메이션 풀을 포함하며, 개발자의 지시에 따라, 상기 로 이미지에서 추출된 적어도 하나의 이미지 조각을 상기 이미지 조각 풀에 등록하고, 상기 이미지 조각 풀에서 선택된 이미지 조각으로 구성된 적어도 하나의 스프라이트를 상기 스프라이트 풀에 등록하며, 상기 스프라이트 풀에서 선택된 스프라이트들로 구성된 적어도 하나의 애니메이션을 상기 애니메이션 풀에 등록하는 리소스 관리부; 및An image fragment pool, a sprite pool, and an animation pool, and according to the developer's instructions, register at least one image fragment extracted from the raw image to the image fragment pool, and at least composed of the selected image fragments from the image fragment pool. A resource manager that registers one sprite to the sprite pool and registers at least one animation composed of sprites selected from the sprite pool to the animation pool; And

상기 이미지 조각, 스프라이트, 애니메이션을 화면에 표시될 수 있는 그래픽으로 변환하는 렌더링부를 포함할 수 있다.It may include a rendering unit for converting the image fragments, sprites, animations into graphics that can be displayed on the screen.

바람직하게는, 상기 이미지 조각, 스프라이트, 애니메이션은 하이라키 관계로서, 각각 스프라이트는 애니메이션의 하위 계층이고, 이미지 조각은 스프라이트 의 하위 계층일 수 있다.Preferably, the image pieces, sprites, and animations are in a hiraki relationship, each of which may be a lower layer of the animation, and the image pieces may be a lower layer of the sprite.

바람직하게는, 상기 리소스 관리부는, Preferably, the resource management unit,

개발자에 의해 선택된 상기 로 이미지 내의 독립 이미지 또는 상기 로 이미지의 일부 영역의 좌표를 추출하고, 상기 독립 이미지 또는 영역에 대하여 부여된 이름과 상기 좌표를 포함하는 이미지 조각의 정보를 상기 이미지 조각 풀에 저장하도록 동작할 수 있다.Extract coordinates of an independent image or a partial region of the raw image selected by the developer, and store information of the image fragment including the name and the coordinates assigned to the independent image or region in the image fragment pool. To operate.

바람직하게는, 상기 리소스 관리부는, Preferably, the resource management unit,

개발자의 지시에 따라 상기 스프라이트를 구성하는 상기 이미지 조각을 상기 스프라이트의 하위 계층에 배정하고, 상기 배정된 이미지 조각에 관하여 개발자가 지정한 상기 로 이미지 내에서 차지하는 위치를 저장하도록 동작할 수 있다.According to a developer's instructions, the image fragment constituting the sprite may be assigned to a lower layer of the sprite, and stored in the raw image designated by the developer with respect to the assigned image fragment.

바람직하게는, 상기 리소스 관리부는, Preferably, the resource management unit,

개발자의 지시에 따라 상기 애니메이션을 구성하는 상기 스프라이트들을 상기 애니메이션의 하위 계층에 배정하고, 상기 배정된 스프라이트들에 관하여 개발자가 지정한 재생 속성을 저장하도록 동작할 수 있다.According to a developer's instructions, the sprites constituting the animation may be assigned to a lower layer of the animation, and the playback attributes designated by the developer may be stored with respect to the assigned sprites.

바람직하게는, 상기 이미지 조각 풀, 스프라이트 풀, 애니메이션 풀은 각각 이미지 조각, 스프라이트, 애니메이션을 엘리먼트로 하는 XML 형식으로 관리 및 저장될 수 있다.Preferably, the image fragment pool, sprite pool, and animation pool may be managed and stored in an XML format including image fragments, sprites, and animations as elements.

바람직하게는, 상기 이미지 조각은 상기 로 이미지에서 차지하는 위치, 크기, 이름으로 규정되고, 상기 스프라이트는 상기 이미지 조각의 위치, 이름으로 규정되며, 상기 애니메이션은 상기 스프라이트의 이름, 시퀀스 및 재생 속성으로 규 정될 수 있다.Preferably, the image fragment is defined by the location, size, and name occupying the raw image, the sprite is defined by the location, name of the image fragment, and the animation is defined by the name, sequence, and playback attributes of the sprite. Can be determined.

바람직하게는, 상기 렌더링부는, 적어도 네 개의 윈도로 분할된 화면의 제1 윈도에는 상기 이미지 조각, 스프라이트, 애니메이션 중 현재 가공 중인 그래픽을 표시하고, 제2 윈도에는 상기 이미지 조각 풀을 표시하며, 제3 윈도에는 상기 스프라이트 풀을 표시하고, 제4 윈도에는 상기 애니메이션 풀을 표시하도록 동작할 수 있다.Preferably, the rendering unit displays a graphic currently being processed among the image fragments, sprites, and animations in a first window of the screen divided into at least four windows, and displays the image fragment pool in a second window. The sprite pool may be displayed in the third window, and the animation pool may be displayed in the fourth window.

본 발명의 실시예들의 애니메이션 편집 방법에 따르면, 각 계층 수준의 데이터에 대하여, 그래픽 구조를 의식하지 않고 직관적으로 편집할 수 있다. 또한 각각의 데이터는 특징에 따라 리스트나 트리 구조로 관리될 수 있고, 애니메이션 파일을 XML 형식으로 저장할 경우 수작업으로 편집할 수 있다. 나아가, 어플리케이션에 데이터를 탑재시키기 전에 애니메이션을 확인해볼 수 있다.According to the animation editing method of the embodiments of the present invention, the data of each hierarchical level can be intuitively edited without being aware of the graphic structure. In addition, each data can be managed in a list or tree structure according to its characteristics, and manually edited when the animation file is saved in XML format. Furthermore, you can check the animation before loading the data into the application.

본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다. With respect to the embodiments of the present invention disclosed in the text, specific structural to functional descriptions are merely illustrated for the purpose of describing embodiments of the present invention, embodiments of the present invention may be implemented in various forms and It should not be construed as limited to the embodiments described in.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. Hereinafter, with reference to the accompanying drawings, it will be described in detail a preferred embodiment of the present invention. The same reference numerals are used for the same constituent elements in the drawings and redundant explanations for the same constituent elements are omitted.

게임과 같은 어플리케이션에서는 대량의 그래픽 리소스가 사용된다. 통상적인 횡 스크롤 아케이드 게임을 예로 들면 배경이 우에서 좌측으로 스크롤되는 동안, 캐릭터가 좌측에서 특정한 동작을 하고 배경 또는 오브젝트들이 캐릭터의 조작에 반응하면서, 다양한 수준의 애니메이션이 표현된다.In applications such as games, a large amount of graphics resources are used. For example, in a typical side scrolling arcade game, while the background scrolls from right to left, various levels of animation are represented, with the character making a specific movement on the left and the background or objects responding to the character's manipulation.

스프라이트(sprite) 방식의 애니메이션은 스프라이트라는 독립적으로 움직이는 개체를 이용하며, 화면에 스프라이트만 새로 그려주면 그 부분에서 애니메이션이 표현되므로 모바일 단말기의 낮은 처리 능력에서도 애니메이션 표현이 가능하며, 파일 크기도 다른 애니메이션 방식에 비해 작다.Sprite-type animation uses an independent moving object called sprite, and if a new sprite is drawn on the screen, the animation is displayed at that part, so the animation can be expressed even at the low processing power of the mobile terminal. Small compared to the way

스프라이트 방식의 애니메이션은 각 단계의 액션을 표현한 여러 스프라이트들로 이루어진다. 각각의 단계의 액션 단위를 프레임이라고 한다.Sprite-based animation consists of several sprites representing each stage of action. The action unit of each step is called a frame.

각각의 스프라이트는 부정형의 그래픽 데이터인데 반해, 통상적으로 그래픽 데이터는 m x n의 사각형이다. 만약 서로 다른 크기의 수많은 이미지 조각(image fragment)들 또는 타일(tile)들을 조합한다면 부정형의 그래픽 데이터를 만들 수 있다. 통상적으로 프레임마다 하나의 완성된 스프라이트 이미지 파일을 통째로 저장 및 관리하는 것에 반해, 본 발명의 실시예에서 스프라이트는 다수의 이미지 조각들을 조합하여 구성 및 관리한다. 이 경우, 스프라이트들 중 프레임에 따라 유지되는 부분과 변경되는 부분을 분할하고, 스프라이트를 그러한 부분들에 해당하는 이미지 조각들의 조합으로 설정하면 데이터 재사용이 가능하고 전체적인 메모리 필요량을 줄일 수 있다.Each sprite is indeterminate graphical data, whereas the graphical data is typically a square of m x n. If you combine a large number of image fragments or tiles of different sizes, you can create indeterminate graphical data. While typically storing and managing one complete sprite image file per frame as a whole, in an embodiment of the present invention, a sprite is constructed and managed by combining multiple image pieces. In this case, by dividing the part of the sprites to be kept according to the frame and the part to be changed, and setting the sprite to a combination of image pieces corresponding to those parts, data reuse is possible and overall memory requirements can be reduced.

이러한 이미지 조각들은 관리하기 편하도록 하나의 큰 이미지 소스에 포함시 켜 놓을 수 있다. 이러한 이미지 소스를 로 이미지(raw image)라고 한다.These pieces of images can be included in one large image source for ease of management. This image source is called a raw image.

도 1은 본 발명의 일 실시예에 따라, 로 이미지(raw image), 이미지 조각(image fragment) 및 스프라이트(sprite)를 가지고 생성된 애니메이션 데이터의 계층 구조를 예시적으로 나타낸 도면이다.1 is a diagram illustrating a hierarchical structure of animation data generated with a raw image, an image fragment, and a sprite according to an embodiment of the present invention.

이미지 조각, 스프라이트, 애니메이션은, 각각 스프라이트가 애니메이션의 하위 계층이고, 이미지 조각이 스프라이트의 하위 계층인 하이라키 계층 구조를 이루며, 다수의 이미지 조각들이 하나의 스프라이트를 이루고, 다수의 스프라이트들이 하나의 애니메이션을 이룬다. 반대로 말하면, 하나의 애니메이션은 다수의 스프라이트들로 구성되고, 각각의 스프라이트는 다수의 이미지 조각들로 구성되며, 각각의 이미지 조각들은 로 이미지 데이터에서 선택된 부분적인 이미지들이다. 이때, 애니메이션 데이터는 스프라이트들의 이름, 시퀀스, 기타 정보로 규정되고, 스프라이트 데이터는 이미지 조각들의 이름, 위치, 기타 정보로 규정되며, 이미지 조각 데이터는 로 이미지 중의 좌표, 크기, 기타 정보로 규정될 수 있다. Image fragments, sprites, and animations each have a hierarchical hierarchy, where the sprite is a sublayer of the animation, the image fragment is the lower layer of the sprite, and multiple image pieces form a single sprite, and multiple sprites contain one animation. To achieve. Conversely, one animation consists of multiple sprites, each sprite consists of multiple image pieces, and each image piece is a partial image selected from raw image data. At this time, the animation data is defined by the name, sequence, and other information of the sprites, the sprite data is defined by the name, position, and other information of the image pieces, the image fragment data can be defined by the coordinates, size, and other information in the raw image. have.

구체적으로 설명하면, 로 이미지 데이터(11)는 작게는 하나의 애니메이션 내에, 크게는 해당 그래픽 어플리케이션 내에서 사용되는 모든 이미지들을 배열시켜 놓은 데이터이다.Specifically, the raw image data 11 is data in which all images used in one animation and largely in the graphic application are arranged.

개발자는 로 이미지 데이터(11) 내에서 필요한 이미지 또는 영역을 선택하여 이미지 조각들을 생성할 수 있다. 예를 들어, 개발자가 로 이미지 데이터(11) 내의 특정 이미지를 마우스 클릭을 통해 선택하거나, 또는 마우스 드래그 동작을 통해 특정 영역을 선택하면, 선택된 이미지 또는 영역이 이미지 조각으로 생성되고, 생성된 이미지 조각들이 이미지 조각 풀(12)에 등록된다. 이미지 조각은 그 자체로 구별 가능한 하나의 이미지일 수도 있지만, 대체로 어떤 이미지의 작은 일부분일 수 있다.The developer can select the required image or region within the raw image data 11 to generate image pieces. For example, when a developer selects a specific image in the raw image data 11 by mouse clicking or selects a specific region through a mouse drag operation, the selected image or region is generated as an image fragment, and the generated image fragment Are registered in the image fragment pool 12. The image fragment may be a single image distinguishable by itself, but may generally be a small part of an image.

이미지 조각 풀(12)은 이미지 조각에 관하여 실제 픽셀 데이터를 저장하는 게 아니라, 로 이미지 데이터(11) 내에서 해당 이미지 조각이 차지하는 위치 내지 공간을 좌표값으로써 표현한 이미지 조각 데이터를 가질 수 있다. 부가적으로, 이미지 조각 풀(12)은 각 이미지 조각에 대해 크기 정보를 더 가질 수 있다.The image fragment pool 12 may not store actual pixel data with respect to the image fragment, but may have image fragment data represented by coordinates of a position or a space occupied by the image fragment in the raw image data 11. In addition, the image fragment pool 12 may further have size information for each image fragment.

실시예에 따라, 이미지 조각 풀(12)에 속하는 이미지 조각들의 이름, 좌표, 크기 등의 정보는 XML(eXtensible Markup Language) 형식으로 저장될 수 있다. 이 경우, 이미지 조각들의 검색, 편집, 등록, 화면 표시가 용이하게 될 수 있다. 실시예에 따라서, 이미지 조각들도 크기나 특성에 따라 그룹화하여 트리 구조로 관리될 수 있다.According to an embodiment, information such as name, coordinates, size, etc. of image fragments belonging to the image fragment pool 12 may be stored in XML (eXtensible Markup Language) format. In this case, the search, editing, registration, and screen display of the image pieces may be facilitated. According to an embodiment, the image fragments may also be managed in a tree structure by grouping according to size or characteristics.

개발자는 이미지 조각 풀(12)에서 원하는 이미지 조각들을 선택하고 이들을 조합하여 스프라이트를 생성할 수 있다. 예를 들어, 개발자가 이미지 조각 풀(12)에서 이미지 조각들을 선택하고 각각의 위치를 결정하면 하나의 스프라이트가 생성될 수 있다. 생성된 스프라이트들은 스프라이트 풀(13)에 등록된다.The developer can select the desired image pieces from the image fragment pool 12 and combine them to create a sprite. For example, if a developer selects image fragments from the image fragment pool 12 and determines each location, one sprite may be generated. The generated sprites are registered in the sprite pool 13.

스프라이트 풀(13)은 다수의 스프라이트들을 포함하며, 각각의 스프라이트는 포함된 이미지 조각들의 이름, 위치 좌표 등의 정보로써 표현될 수 있다. 예를 들어, 스프라이트_A1는 이미지 조각_1부터 이미지 조각_3까지의 3 개 이미지 조각으로 구성될 수 있다. 다른 스프라이트_A2는 스프라이트_A1과 유사하지만 일부가 변 경되어 이미지 조각_1, 이미지 조각_2의 2 개 이미지 조각들과 이미지 조각_4, 이미지 조각_5로 구성될 수 있다. 또 다른 예시적인 스프라이트_B1는 전체적으로는 스프라이트_A1와 유사하지 않지만 부분적으로는 스프라이트_A1과 유사할 수 있는데, 이 경우에 스프라이트_B1도 스프라이트_A1에서 사용되었던 이미지 조각들을 중복 사용하여 구성될 수 있다. 예를 들어, 스프라이트_B1은 이미지 조각_1과, 이미지 조각_6, 이미지 조각_7로 구성될 수 있다. 본 발명에서 애니메이션 데이터의 구조는 하이라키 계층 구조이므로, 이미지 조각 풀(12)에서 어떤 이미지 조각의 데이터를 변경하였을 경우에, 그러한 변경은 스프라이트 풀(13)에서 그 이미지 조각의 이름(ID)을 포함하는 스프라이트들에 자동으로 반영될 수 있다.The sprite pool 13 includes a plurality of sprites, each of which may be represented as information such as the name, location coordinates of the included image pieces. For example, sprite_A1 may be composed of three image pieces, from image piece_1 to image piece_3. The other sprite_A2 is similar to sprite_A1 but may be changed in part to consist of two image pieces of image fragment_1, image fragment_2, image fragment_4 and image fragment_5. Another example sprite_B1 is not entirely similar to sprite_A1 but may be partly similar to sprite_A1, in which case sprite_B1 can also be constructed using duplicate image fragments used in sprite_A1. Can be. For example, the sprite_B1 may be composed of an image piece_1, an image piece_6, and an image piece_7. Since the structure of the animation data in the present invention is a hiraki hierarchical structure, when the data of a certain image fragment is changed in the image fragment pool 12, such a change is performed by the sprite pool 13 to change the name (ID) of the image fragment. It can be automatically reflected in the containing sprites.

실시예에 따라, 스프라이트 풀(13)은 포함된 스프라이트들과, 각 스프라이트들의 이름, 좌표 등의 하이라키(hierarchy) 정보는 XML 형식으로 저장될 수 있다. 이 경우, 스프라이트들, 이미지 조각들의 검색, 편집, 등록, 화면 표시가 용이하게 될 수 있다.According to an exemplary embodiment, the sprite pool 13 may store the sprites included therein, and the hirachy information such as the names and coordinates of the sprites in XML format. In this case, the searching, editing, registration, and screen display of sprites and image pieces can be facilitated.

나아가, 개발자는 스프라이트 풀(13)에 포함된 스프라이트들 중에 원하는 스프라이트들을 선택하고 시퀀스를 지정함으로써 애니메이션을 생성할 수 있다.Furthermore, the developer can generate an animation by selecting and splicing desired sprites among the sprites included in the sprite pool 13.

애니메이션 풀(14)은 생성된 애니메이션들을 포함하며, 각각의 애니메이션은 포함된 스프라이트들의 이름, 시퀀스, 기타 속성 정보로써 표현될 수 있다. 예를 들어, 애니메이션_1은 스프라이트_A1, 스프라이트_A2, ... 스프라이트_An으로 구성될 수 있고, 애니메이션_2는 스프라이트_B1, 스프라이트_B2, ... 스프라이트_Bm으로 구성될 수 있다. 실시예에 따라, 애니메이션 풀(14)은 포함된 애니메이션들과, 각 애니메이션은 포함된 스프라이트들의 이름, 좌표 등의 하이라키 정보는 XML 형식으로 저장될 수 있다. 이 경우, 애니메이션들, 스프라이트들 및 이미지 조각들의 검색, 편집, 등록, 화면 표시가 용이하게 될 수 있다.The animation pool 14 includes generated animations, and each animation may be represented by the name, sequence, and other attribute information of the included sprites. For example, Animation_1 may consist of Sprite_A1, Sprite_A2, ... Sprite_An, and Animation_2 may consist of Sprite_B1, Sprite_B2, ... Sprite_Bm. have. According to an embodiment, the animation pool 14 may include animations included in each animation, and hiraki information such as names and coordinates of sprites included in each animation may be stored in an XML format. In this case, searching, editing, registering, and displaying screens of animations, sprites, and image pieces may be facilitated.

도 2는 본 발명의 일 실시예에 따라, 로 이미지, 이미지 조각 및 스프라이트를 가지고 애니메이션 데이터를 가공할 수 있는 편집 툴을 예시한 도면이다.2 is a diagram illustrating an editing tool capable of processing animation data with raw images, image fragments, and sprites, in accordance with one embodiment of the present invention.

도 2를 참조하면 본 발명에 따른 편집 툴(20)은 리소스 저장부(21), 리소스 관리부(22) 및 렌더링부(renderer, 23)를 포함할 수 있다. 개발자는 편집 툴(20)을 PC에서 실행시켜, 애니메이션 데이터를 편집하고 재생해 볼 수 있다.Referring to FIG. 2, the editing tool 20 according to the present invention may include a resource storage unit 21, a resource management unit 22, and a renderer 23. The developer can run the editing tool 20 on a PC to edit and play back the animation data.

리소스 저장부(21)는 기본적으로 로 이미지 데이터를 보관 유지하며, 편집이 진행됨에 따라 생성되는 또는 이전에 생성된 이미지 조각, 스프라이트, 애니메이션 데이터를 추가적으로 저장한다. 일 실시예에서, 리소스 저장부(21)에 저장된 로 이미지 데이터는 비압축 방식 또는 비손실 압축 방식으로 저장되어 있을 수 있다. 다른 실시예에서, 리소스 저장부(21) 내의 이미지 조각, 스프라이트, 애니메이션 데이터는 XML 형식으로 저장될 수 있다.The resource storage unit 21 basically retains raw image data and additionally stores image fragments, sprites, and animation data that are generated or previously generated as the editing proceeds. In one embodiment, the raw image data stored in the resource storage unit 21 may be stored in a non-compression method or a lossless compression method. In another embodiment, image fragments, sprites, and animation data in the resource storage unit 21 may be stored in an XML format.

리소스 관리부(22)는 리소스 저장부(21)로부터 편집에 필요한 로 이미지 데이터, 이미지 조각, 스프라이트, 또는 애니메이션 데이터를 읽어들이고, 생성 중인 또는 이전에 생성된 이미지 조각, 스프라이트 또는 애니메이션 데이터로 각각 이미지 조각 풀(12), 스프라이트 풀(13), 애니메이션 풀(14)을 구성하고 관리한다. 이미지 조각, 스프라이트, 애니메이션은 도 1에 관하여 설명된 바와 같이, 각각 픽셀 데이터가 아닌, 하이라키 계층 구조의 텍스트 데이터로서, 다수의 이미지 조각들이 하나의 스프라이트를 이루고, 다수의 스프라이트들이 하나의 애니메이션을 이룬다.The resource management unit 22 reads raw image data, image fragments, sprites, or animation data required for editing from the resource storage unit 21, and slices the image into the generated or previously generated image fragments, sprites, or animation data, respectively. The pool 12, the sprite pool 13, and the animation pool 14 are configured and managed. Image fragments, sprites, and animations are text data in a hierarchical hierarchy, rather than pixel data, as described with respect to FIG. 1, where multiple image pieces form one sprite, and multiple sprites produce one animation. Achieve.

일 실시예에서, 이미지 조각, 스프라이트, 애니메이션 데이터를 XML 형식으로 저장하고 관리할 수 있다. 이 경우, 리소스 관리부(22)는, 통상적인 XML 문법 규칙을 준수하면서, 이미지 조각, 스프라이트, 애니메이션 데이터 각각을 엘리먼트로 하여 다양한 속성을 정의하며, 이미지 조각, 스프라이트, 애니메이션 데이터 각각으로서 스키마를 구성할 수 있다.In one embodiment, image fragments, sprites, and animation data may be stored and managed in XML format. In this case, the resource management unit 22 defines various attributes by using image fragments, sprites, and animation data as elements while complying with general XML grammar rules, and constructs a schema as image fragments, sprites, and animation data, respectively. Can be.

리소스 관리부(22)는 이미지 조각, 스프라이트, 애니메이션 데이터 사이의 하이라키 계층 관계를 해석할 수 있고, 이러한 하이라키 계층 구조를 유지하면서 이미지 조각, 스프라이트, 애니메이션 데이터를 편집할 수 있으며, 추후 이용 또는 편집을 위해 XML 형식으로 저장할 수 있다. 예를 들어, 어떤 이미지 조각에 변경을 가하였을 경우에, 그 이미지 조각을 포함하는 스프라이트에도 그러한 변경이 즉각적으로 반영되고 나아가 그 스프라이트를 포함하는 애니메이션에도 그러한 변경이 즉각적으로 반영될 수 있다. 또한 예를 들어, 어떤 스프라이트에 이미지 조각을 추가 또는 삭제하였을 경우에, 그 스프라이트를 포함하는 애니메이션에도 그러한 변경이 즉각적으로 반영될 수 있다. 하지만, 이러한 반영이 애니메이션, 스프라이트에 포함되는 실제 픽셀 데이터의 변화로써 이루어지는 것이 아니라, 이미지 조각의 좌표 위치 값 등의 변경으로써 이루어지므로, 편집이 대단히 직관적이고 간편해질 수 있다.The resource management unit 22 can analyze the hiragaki hierarchical relationship between the image fragments, the sprites, and the animation data, and can edit the image fragments, the sprites, and the animation data while maintaining the hiraki hierarchy. You can save it in XML format. For example, if a change is made to an image fragment, the change may be immediately reflected in the sprite containing the image fragment, and further, the change may be immediately reflected in the animation including the sprite. Also, if, for example, an image fragment is added or removed from a sprite, that change may be immediately reflected in the animation containing the sprite. However, since the reflection is not made by a change in the actual pixel data included in the animation or the sprite, but by a change in the coordinate position value of the image fragment, the editing can be very intuitive and simple.

렌더링부(23)는 리소스 관리부(22)에서 하이라키 계층 구조를 유지하며 편집 중인 이미지 조각, 스프라이트 및 애니메이션 데이터와 로 이미지 데이터를 렌더링 하여 모니터에 표현할 수 있다.The rendering unit 23 maintains the hierarchical hierarchical structure in the resource management unit 22 and renders the image fragments, sprites and animation data and raw image data being edited and displayed on the monitor.

개발자는 각각의 하이라키 레벨에서 렌더링된 결과를 시각적으로 확인할 수 있기 때문에 직관적이고 간편하게 2D 애니메이션 편집을 수행할 수 있다.Developers can visually see the results rendered at each hiraki level, making editing 2D animations intuitive and easy.

완성된 애니메이션 데이터는 XML 형식으로 저장될 수 있다. 일단 XML 형식으로 저장된 애니메이션 데이터는 전용 편집 툴(30)을 이용하지 아니더라도 일반적인 텍스트 에디터에서도 편집이 가능할 수 있다.The completed animation data may be stored in XML format. Animation data once stored in XML format may be edited in a general text editor even without using a dedicated editing tool 30.

도 3은 본 발명의 일 실시예에 따라, 로 이미지, 이미지 조각 및 스프라이트를 통해 애니메이션을 직관적으로 가공할 수 있는 편집 툴의 레이아웃을 예시한 화면이다.3 is a screen illustrating a layout of an editing tool capable of intuitively processing animation through raw images, image fragments, and sprites according to an embodiment of the present invention.

도 3을 참조하면, 편집 툴(30)의 화면 가장 왼쪽에 있는 제1 윈도(31)에는 현재 편집 중인 레벨의 이미지 데이터가 표시된다. 도 1의 예시에서는 로 이미지를 편집 중인 상태로서, 로 이미지가 제1 윈도(31)에 표시된다. 만약 이미지 조각을 편집 중이라면 제1 윈도(31)에 해당 이미지 조각이 표시될 수 있다. 마찬가지로 스프라이트나 애니메이션을 편집 중이라면, 제1 윈도(31)에는 해당 스프라이트 또는 애니메이션이 표시될 수 있다.Referring to FIG. 3, the image data of the level currently being edited is displayed in the first window 31 on the far left of the screen of the editing tool 30. In the example of FIG. 1, the raw image is being edited, and the raw image is displayed in the first window 31. If the image fragment is being edited, the image fragment may be displayed in the first window 31. Similarly, if a sprite or animation is being edited, the sprite or animation may be displayed in the first window 31.

이때, 로 이미지, 이미지 조각, 스프라이트, 애니메이션 중 어느 계층을 편집 중이냐에 따라 제1 윈도(31)에 표시되는 틀은 달라질 수 있다. 예를 들어, 로 이미지 데이터 중에서 이미지 조각을 추출 중이라면, 로 이미지 데이터 내에 포함되어 있는 각각의 이미지 경계에 미리 사각형 경계선이 표시될 수 있고, 개발자가 편집 중에 이미지 조각으로 지정한 영역에도 사각형 경계선이 표시될 수 있다. 나 아가, 예를 들어 스프라이트를 편집 중이라면, 제1 윈도(31)에는 스프라이트에 포함되는 이미지 조각들을 배치하는 작업을 원활하게 할 수 있도록 수직 수평 축, 눈금, 커서의 좌표 표시, 부분 확대 등의 세부적인 기능이 부가될 수 있다.In this case, the frame displayed on the first window 31 may vary depending on which layer among the raw image, the image fragment, the sprite, and the animation is being edited. For example, if you are extracting an image fragment from raw image data, a rectangular boundary can be displayed at each image boundary included in the raw image data, and the rectangular boundary is also displayed in the area designated by the developer during image editing. Can be. For example, if you are editing a sprite, for example, the first window 31 has a vertical horizontal axis, scale, cursor coordinate display, partial enlargement, etc. to facilitate the placement of the image pieces included in the sprite. Detailed functionality can be added.

제1 윈도(31)의 오른쪽에는 제2 윈도(32)가 있다. 제2 윈도(32)에는, 상기 현재 제1 윈도(31)에 표시된 로 이미지에서 개발자가 선택한 조각들 즉 이미지 조각들이 등록되어 있다. 이미지 조각들은 제2 윈도(32)에서, 실제 이미지로 표시된다기보다는, 각자의 식별 부호, 이름, 크기, 로 이미지를 기준으로 한 크롭 좌표와 같은 속성들로써 표현된다. 이미지 조각들은, 예를 들어 도 1의 제1 윈도(31)에 표시된 로 이미지 내에 있는 아이콘들과 같이 자연스럽게 다른 이미지들과 구별되는 이미지들로써 자동으로 등록될 수도 있고, 개발자가 임의의 영역을 크롭한 다음 드래그하여 제2 윈도(32)에 등록함으로써 생성될 수 있다. 이때, 등록 동작은 마우스 드래그 및 드롭(drag & drop)으로 예시하였지만, 마우스 오른쪽 버튼을 눌러 표시된 드롭다운 메뉴에서 등록 기능을 선택하는 방식도 용이하게 구현될 수 있다. 실시예에 따라서, 이미지 조각들도 크기나 특성에 따라 그룹화하여 트리 구조로 관리될 수 있다.On the right side of the first window 31 is a second window 32. In the second window 32, pieces selected by the developer in the raw image currently displayed in the first window 31, that is, image pieces, are registered. Image fragments are represented in the second window 32 as attributes, such as their identification code, name, size, and crop coordinates relative to the image, rather than being represented as an actual image. Image fragments may be automatically registered as images that are naturally distinct from other images, such as, for example, icons in a raw image displayed in the first window 31 of FIG. 1, and the developer may crop any area. It can then be created by dragging and registering it in the second window 32. In this case, the registration operation is illustrated by dragging and dropping a mouse, but a method of selecting a registration function from a displayed drop-down menu by pressing a right mouse button may also be easily implemented. According to an embodiment, the image fragments may also be managed in a tree structure by grouping according to size or characteristics.

제2 윈도(32)의 오른쪽에는 제3 윈도(33)가 있다. 제3 윈도(33)에는, 상기 제2 윈도(32)에 등록된 이미지 조각들의 조합으로 이루어진 스프라이트들이 등록되어 있다. 하나의 스프라이트에 여러 이미지 조각들이 종속되어 있다. 예를 들어, EFFECT_MANDA_3 스프라이트는 EFFECT_0819라는 이미지 조각 5 개로 이루어진다.The right side of the second window 32 is a third window 33. In the third window 33, sprites composed of a combination of image pieces registered in the second window 32 are registered. Several image fragments depend on one sprite. For example, the EFFECT_MANDA_3 sprite consists of five image pieces called EFFECT_0819.

제3 윈도(33)의 오른쪽에는 제4 윈도(34)가 있다. 제4 윈도(34)에는 상기 제3 윈도(33)에 등록된 스프라이트들의 조합으로 이루어진 애니메이션이 등록되어 있다. 한 프레임마다 한 스프라이트가 할당된다. 예를 들어, UI_BOOSTER_FLAME_E라는 애니메이션은 세 프레임으로 이루어지고, 각 프레임은 UI_BOOSTER_FLAME_E1, UI_BOOSTER_FLAME_E2, UI_BOOSTER_FLAME_E3이라는 스프라이트로 표현된다.The right side of the third window 33 is the fourth window 34. An animation consisting of a combination of sprites registered in the third window 33 is registered in the fourth window 34. One sprite is allocated per frame. For example, the animation UI_BOOSTER_FLAME_E is composed of three frames, and each frame is represented by sprites UI_BOOSTER_FLAME_E1, UI_BOOSTER_FLAME_E2, and UI_BOOSTER_FLAME_E3.

제5 윈도(35)에서는 개발자는 현재 편집 중인 애니메이션에 대해 임의의 동작 속성을 지정하여 시험 재생할 수 있다. 예를 들어, 개발자는 제5 윈도(35)에서 해당 애니메이션 데이터에 대해 초당 프레임 표시율(FPS: frame per second), 프레임 변화 속도, 표시 시간, 반복 표시 등의 재생 속성을 결정하여 재생시켜 볼 수 있다.In the fifth window 35, the developer can test play by designating arbitrary motion properties for the animation currently being edited. For example, the developer may determine and play a playback property such as a frame per second (FPS), a frame change rate, a display time, and a repetitive display on the corresponding animation data in the fifth window 35. .

도 4a는 본 발명의 일 실시예에 따른 편집 툴을 이용하여 로 이미지 데이터로부터 이미지 조각 데이터들을 생성하는 것을 예시적으로 나타낸 도면이다.4A is a diagram exemplarily illustrating generating image fragment data from raw image data using an editing tool according to an embodiment of the present invention.

도 4a를 참조하면, 도 3의 편집 툴(30)에서 로 이미지 데이터를 읽어들이면 제1 윈도(31)에 로 이미지 데이터가 표시된다. 개발자는 로 이미지 데이터의 이미지들 중에서 어떤 이미지 또는 영역을 이미지 조각으로 선택할 수 있고, 선택된 이미지 또는 영역을 예를 들어 마우스로 드래그한 후 제2 윈도(32)에 드롭(drop)시켜서 등록할 수 있다. 도 4a에서는, test_0000부터 test_0005까지 6 개의 이미지 조각들이 예시되어 있다. 제1 윈도(31)에는, 제2 윈도(32)에서 좌표와 크기 값들로 특정된 이미지 조각들이 실제로 어떤 모습의 이미지인지 알 수 있도록 시각화될 수 있다.Referring to FIG. 4A, when the raw image data is read by the editing tool 30 of FIG. 3, the raw image data is displayed on the first window 31. The developer can select any image or region among the images of the raw image data as an image fragment, and register the selected image or region by dragging the selected image or region with the mouse and dropping the same in the second window 32. . In FIG. 4A, six image pieces are illustrated, from test_0000 to test_0005. In the first window 31, the image pieces specified by the coordinates and size values in the second window 32 may be visualized so as to know what the image actually looks like.

도 4b는 본 발명의 일 실시예에 따른 편집 툴을 이용하여 이미지 조각 데이 터들을 포함하는 스프라이트 데이터를 생성하는 것을 예시적으로 나타낸 도면이다.4B is a diagram exemplarily illustrating generation of sprite data including image fragment data by using an editing tool according to an embodiment of the present invention.

앞서 도 4a를 통해 제2 윈도(32)에 이미지 조각들이 등록된 후에, 제3 윈도(33)를 클릭하여 활성화하면, 제1 윈도(31)에는 도 4b와 같은 스프라이트 편집 윈도가 표시된다. 스프라이트 편집 윈도에는 이미지 조각들이 놓이는 상대적인 위치를 가늠할 수 있도록 가로/세로축 라인과 다수의 사각형들이 그려져 있다. 개발자는 제3 윈도(33)에 새로 생성한 스프라이트 엘리먼트에 제2 윈도(32)에 있는 이미지 조각 엘리먼트들을 드래그 및 드롭하거나, 기 생성되어 있는 스프라이트 엘리먼트에 제2 윈도(32)로부터 새로운 이미지 조각 엘리먼트를 선택하고 드래그 및 드롭하여 추가할 수 있다. 어느 스프라이트에 첨부된 이미지 조각이 다른 스프라이트에도 이용될 수 있다. 개발자는 스프라이트들 간에 이미지 조각들을 자유롭게 복사 및 이동시킬 수 있다. 도 4b의 제3 윈도(33)에는 NEWSPR0, NEWSPR1, B, C라는 이름의 스프라이트 엘리먼트들이 생성되어 있고, 그 중에서 NEWSPR0 스프라이트는 test_0000과 test_0002라는 이미지 조각으로 구성되어 있음을 알 수 있다.After the image pieces are registered in the second window 32 through FIG. 4A, when the third window 33 is clicked and activated, the first window 31 displays the sprite editing window as shown in FIG. 4B. The Sprite Editing window draws horizontal and vertical axis lines and a number of squares to determine the relative location of the image pieces. The developer may drag and drop the image fragment elements in the second window 32 to the newly created sprite element in the third window 33 or the new image fragment elements from the second window 32 in the pre-created sprite element. Can be added by selecting and dragging and dropping. An image piece attached to one sprite can be used for another sprite. Developers can freely copy and move image pieces between sprites. In the third window 33 of FIG. 4B, sprite elements named NEWSPR0, NEWSPR1, B, and C are generated, and it can be seen that the NEWSPR0 sprite is composed of image pieces called test_0000 and test_0002.

도 4c는 본 발명의 일 실시예에 따른 편집 툴을 이용하여 스프라이트들을 포함하는 애니메이션 데이터를 생성하는 것을 예시적으로 나타낸 도면이다.4C is a diagram exemplarily illustrating generating animation data including sprites using an editing tool according to an embodiment of the present invention.

스프라이트들이 등록 및 편집된 후에, 제4 윈도(34)를 클릭하여 활성화하면, 제1 윈도(31)는 바로 애니메이션 편집 윈도로 바뀌고 제5 윈도(35)가 활성화되어 재생 속성을 변경해 볼 수 있게 된다. 개발자는 제4 윈도(34)에 새로 생성한 애니메이션 엘리먼트에 또는 이미 생성되어 있는 애니메이션 엘리먼트에 제3 윈도(33)에 있는 스프라이트 엘리먼트들을 드래그 및 드롭할 수 있다. 어느 애니메이션을 구성하는 스프라이트가 다른 애니메이션에도 이용될 수 있다. 개발자는 애니메이션 사이에 스프라이트들을 자유롭게 복사 및 이동시킬 수 있다. 도 4c의 제4 윈도(34)에서는, NEWANIM0과 NEWANIM1라는 이름으로 애니메이션 엘리먼트들이 생성되고, 그 중 NEWANIM1 애니메이션은 NEWSPR0, NEWSPR1 스프라이트들로 구성된다.After the sprites have been registered and edited, clicking and activating the fourth window 34 immediately changes the first window 31 to the animation editing window and activates the fifth window 35 to change the playback properties. . The developer may drag and drop sprite elements in the third window 33 to a newly created animation element in the fourth window 34 or to an animation element already created. The sprites that make up an animation can also be used for other animations. Developers can freely copy and move sprites between animations. In the fourth window 34 of FIG. 4C, animation elements are created under the names NEWANIM0 and NEWANIM1, and the NEWANIM1 animation is composed of NEWSPR0 and NEWSPR1 sprites.

편집이 완료된 애니메이션은 제5 윈도(35)에 설정된 재생 속성에 따라 시험적으로 재생될 수 있다.The edited animation can be reproduced experimentally according to the reproduction property set in the fifth window 35.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명이 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이와 균등하거나 또는 등가적인 변형 모두는 본 발명 사상의 범주에 속한다 할 것이다.As described above, although the present invention has been described by way of limited embodiments and drawings, the present invention is not limited to the above-described embodiments, which can be modified by those skilled in the art to which the present invention pertains. Modifications are possible. Accordingly, the spirit of the invention should be understood only by the claims set forth below, and all equivalent or equivalent modifications will fall within the scope of the invention.

도 1은 본 발명의 일 실시예에 따라, 로 이미지(raw image), 이미지 조각(image fragment) 및 스프라이트(sprite)를 가지고 생성된 애니메이션 데이터의 계층 구조를 예시적으로 나타낸 도면이다.1 is a diagram illustrating a hierarchical structure of animation data generated with a raw image, an image fragment, and a sprite according to an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따라, 로 이미지, 이미지 조각 및 스프라이트를 가지고 애니메이션 데이터를 가공하는 편집 툴을 예시한 도면이다.2 is a diagram illustrating an editing tool for processing animation data with raw images, image fragments and sprites, in accordance with an embodiment of the present invention.

도 3은 본 발명의 일 실시예에 따라, 로 이미지, 이미지 조각 및 스프라이트를 통해 애니메이션을 직관적으로 가공할 수 있는 편집 툴의 레이아웃을 예시한 화면이다.3 is a screen illustrating a layout of an editing tool capable of intuitively processing animation through raw images, image fragments, and sprites according to an embodiment of the present invention.

도 4a는 본 발명의 일 실시예에 따른 편집 툴을 이용하여 로 이미지 데이터로부터 이미지 조각 데이터들을 생성하는 것을 예시적으로 나타낸 도면이다.4A is a diagram exemplarily illustrating generating image fragment data from raw image data using an editing tool according to an embodiment of the present invention.

도 4b는 본 발명의 일 실시예에 따른 편집 툴을 이용하여 이미지 조각 데이터들을 포함하는 스프라이트 데이터를 생성하는 것을 예시적으로 나타낸 도면이다.4B is a diagram exemplarily illustrating generating sprite data including image fragment data using an editing tool according to an embodiment of the present invention.

도 4c는 본 발명의 일 실시예에 따른 편집 툴을 이용하여 스프라이트들을 포함하는 애니메이션 데이터를 생성하는 것을 예시적으로 나타낸 도면이다.4C is a diagram exemplarily illustrating generating animation data including sprites using an editing tool according to an embodiment of the present invention.

Claims (16)

다수의 이미지들을 포함하는 로 이미지(raw image)에서 추출된 적어도 하나의 이미지 조각(image fragment)을 이미지 조각 풀에 등록하는 단계;Registering at least one image fragment extracted from a raw image including a plurality of images to an image fragment pool; 상기 이미지 조각 풀에서 선택된 이미지 조각으로 구성된 적어도 하나의 스프라이트(sprite)를 스프라이트 풀에 등록하는 단계; 및Registering at least one sprite composed of the selected image fragments in the image fragment pool to a sprite pool; And 상기 스프라이트 풀에서 선택된 스프라이트들로 구성된 적어도 하나의 애니메이션(animation)을 애니메이션 풀에 등록하는 단계를 포함하는 그래픽 리소스 가공 방법.And registering at least one animation composed of sprites selected from the sprite pool to the animation pool. 청구항 1에 있어서, 상기 이미지 조각, 스프라이트, 애니메이션은 하이라키(hierarchy) 관계로서, 각각 스프라이트는 애니메이션의 하위 계층이고, 이미지 조각은 스프라이트의 하위 계층인 것을 특징으로 하는 그래픽 리소스 가공 방법.The method according to claim 1, wherein the image pieces, sprites, and animations are in a hierarchy relationship, wherein each sprite is a lower layer of the animation and the image pieces are a lower layer of the sprite. 청구항 1에 있어서, 상기 적어도 하나의 이미지 조각을 이미지 조각 풀에 등록하는 단계는,The method of claim 1, wherein registering the at least one image fragment with an image fragment pool includes: 개발자에 의해 선택된 상기 로 이미지 내의 독립 이미지 또는 상기 로 이미지의 일부 영역의 좌표를 추출하는 단계;Extracting coordinates of an independent image or a partial region of the raw image selected by the developer; 상기 독립 이미지 또는 영역에 대하여 부여된 이름과 상기 좌표를 포함하는 이미지 조각의 정보를 상기 이미지 조각 풀에 저장하는 단계를 포함하는 것을 특징으로 하는 그래픽 리소스 가공 방법.And storing information of an image fragment including the name and the coordinates assigned to the independent image or region in the image fragment pool. 청구항 1에 있어서, 상기 적어도 하나의 스프라이트를 스프라이트 풀에 등록하는 단계는, The method of claim 1, wherein registering the at least one sprite with a sprite pool includes: 상기 스프라이트를 구성하는 상기 이미지 조각을 상기 스프라이트의 하위 계층에 배정하는 단계; 및Assigning the image pieces constituting the sprite to a lower layer of the sprite; And 상기 배정된 이미지 조각에 관하여 개발자가 지정한 상기 로 이미지 내에서 차지하는 위치를 저장하는 단계를 포함하는 것을 특징으로 하는 그래픽 리소스 가공 방법.And storing a position occupied in the raw image designated by the developer with respect to the assigned image fragment. 청구항 1에 있어서, 상기 적어도 하나의 애니메이션을 애니메이션 풀에 등록하는 단계는, The method of claim 1, wherein registering the at least one animation with an animation pool comprises: 상기 애니메이션을 구성하는 상기 스프라이트들을 상기 애니메이션의 하위 계층에 배정하는 단계; 및Assigning the sprites constituting the animation to a lower layer of the animation; And 상기 배정된 스프라이트들에 관하여 개발자가 지정한 재생 속성을 저장하는 단계를 포함하는 것을 특징으로 하는 그래픽 리소스 가공 방법.And storing a playback attribute specified by the developer with respect to the assigned sprites. 청구항 1에 있어서, 상기 이미지 조각 풀, 스프라이트 풀, 애니메이션 풀은 각각 이미지 조각, 스프라이트, 애니메이션을 엘리먼트로 하는 XML 형식으로 관리 및 저장되는 것을 특징으로 하는 그래픽 리소스 가공 방법.The method of claim 1, wherein the image fragment pool, the sprite pool, and the animation pool are managed and stored in an XML format including image fragments, sprites, and animations as elements. 청구항 1에 있어서, 상기 이미지 조각은 상기 로 이미지에서 차지하는 위치, 크기, 이름으로 규정되고, 상기 스프라이트는 상기 이미지 조각이 상기 로 이미지 내에서 차지하는 위치, 이름으로 규정되며, 상기 애니메이션은 상기 스프라이트의 이름, 시퀀스 및 재생 속성으로 규정되는 것을 특징으로 하는 그래픽 리소스 가공 방법.The sprite of claim 1, wherein the image fragment is defined by a position, a size, and a name occupied in the raw image, and the sprite is defined by a position, a name, and the animation is occupied by the image fragment in the raw image. Graphic resource processing method, characterized in that the sequence and reproduction attributes. 컴퓨터를 이용해 청구항 1 내지 청구항 7 중 어느 한 청구항의 그래픽 리소스 가공 방법을 수행시킬 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체.A computer-readable medium having recorded thereon a program capable of performing the graphic resource processing method of any one of claims 1 to 7 using a computer. 다수의 이미지들을 포함하는 로 이미지, 편집에 의해 생성된 이미지 조각들, 스프라이트들, 애니메이션들을 저장하는 리소스 저장부;A resource storage for storing a raw image including a plurality of images, image pieces generated by editing, sprites, and animations; 이미지 조각 풀, 스프라이트 풀 및 애니메이션 풀을 포함하며, 개발자의 지시에 따라, 상기 로 이미지에서 선택된 적어도 하나의 이미지 조각을 상기 이미지 조각 풀에 등록하고, 상기 이미지 조각 풀에서 선택된 이미지 조각들로써 조합한 적어도 하나의 스프라이트를 상기 스프라이트 풀에 등록하며, 상기 스프라이트 풀에서 선택된 스프라이트들로써 조합한 적어도 하나의 애니메이션을 상기 애니메이션 풀에 등록하는 리소스 관리부; 및At least one image fragment selected from the raw image into the image fragment pool and combined with the selected image fragments from the image fragment pool according to the developer's instructions; A resource manager that registers one sprite to the sprite pool and registers at least one animation combined with sprites selected from the sprite pool to the animation pool; And 상기 이미지 조각, 스프라이트, 애니메이션을 화면에 표시될 수 있는 그래픽으로 변환하는 렌더링부를 포함하는 그래픽 리소스 가공 장치.And a rendering unit for converting the image fragments, sprites, and animations into graphics that can be displayed on a screen. 청구항 9에 있어서, 상기 이미지 조각, 스프라이트, 애니메이션은 하이라키 관계로서, 각각 스프라이트는 애니메이션의 하위 계층이고, 이미지 조각은 스프라이트의 하위 계층인 것을 특징으로 하는 그래픽 리소스 가공 장치.The graphic resource processing apparatus according to claim 9, wherein the image pieces, the sprites, and the animations are in a hiraki relationship, each of which is a lower layer of the animation, and the image pieces are a lower layer of the sprite. 청구항 9에 있어서, 상기 리소스 관리부는, The method of claim 9, wherein the resource management unit, 개발자에 의해 선택된 상기 로 이미지 내의 독립 이미지 또는 상기 로 이미지의 일부 영역의 좌표를 추출하고, 상기 독립 이미지 또는 영역에 대하여 부여된 이름과 상기 좌표를 포함하는 이미지 조각의 정보를 상기 이미지 조각 풀에 저장하도록 동작하는 것을 특징으로 하는 그래픽 리소스 가공 장치.Extract coordinates of an independent image or a partial region of the raw image selected by the developer, and store information of the image fragment including the name and the coordinates assigned to the independent image or region in the image fragment pool. Graphic resource processing apparatus, characterized in that to operate. 청구항 9에 있어서, 상기 리소스 관리부는, The method of claim 9, wherein the resource management unit, 개발자의 지시에 따라 상기 스프라이트를 구성하는 상기 이미지 조각을 상기 스프라이트의 하위 계층에 배정하고, 상기 배정된 이미지 조각에 관하여 개발자가 지정한 상기 로 이미지 내에서 차지하는 위치를 저장하도록 동작하는 것을 특징으로 하는 그래픽 리소스 가공 장치.And assigning the image fragment constituting the sprite to a lower layer of the sprite according to a developer's instructions, and storing a position occupied in the raw image designated by the developer with respect to the assigned image fragment. Resource processing unit. 청구항 9에 있어서, 상기 리소스 관리부는, The method of claim 9, wherein the resource management unit, 개발자의 지시에 따라 상기 애니메이션을 구성하는 상기 스프라이트들을 상기 애니메이션의 하위 계층에 배정하고, 상기 배정된 스프라이트들에 관하여 개발자가 지정한 재생 속성을 저장하도록 동작하는 것을 특징으로 하는 그래픽 리소스 가공 장치.And assigning the sprites constituting the animation to a lower layer of the animation according to a developer's instructions, and storing playback properties specified by the developer with respect to the assigned sprites. 청구항 9에 있어서, 상기 이미지 조각 풀, 스프라이트 풀, 애니메이션 풀은 각각 이미지 조각, 스프라이트, 애니메이션을 엘리먼트로 하는 XML 형식으로 관리 및 저장되는 것을 특징으로 하는 그래픽 리소스 가공 장치.The graphic resource processing apparatus of claim 9, wherein the image fragment pool, the sprite pool, and the animation pool are managed and stored in an XML format including image fragments, sprites, and animations as elements. 청구항 9에 있어서, 상기 이미지 조각은 상기 로 이미지에서 차지하는 위치, 크기, 이름으로 규정되고, 상기 스프라이트는 상기 이미지 조각이 상기 로 이미지 내에서 차지하는 위치, 이름으로 규정되며, 상기 애니메이션은 상기 스프라이트의 이름, 시퀀스 및 재생 속성으로 규정되는 것을 특징으로 하는 그래픽 리소스 가공 장치.The method of claim 9, wherein the image fragment is defined by a location, a size, and a name occupying the raw image, the sprite is defined by a location, a name, and the animation occupying the image piece in the raw image, and the animation is a name of the sprite. Graphic resource processing apparatus, characterized in that the sequence and reproduction attributes. 청구항 9에 있어서, 상기 렌더링부는, 적어도 네 개의 윈도로 분할된 화면의 제1 윈도에는 상기 이미지 조각, 스프라이트, 애니메이션 중 현재 가공 중인 그래픽을 표시하고, 제2 윈도에는 상기 이미지 조각 풀을 표시하며, 제3 윈도에는 상기 스프라이트 풀을 표시하고, 제4 윈도에는 상기 애니메이션 풀을 표시하도록 동작하는 것을 특징으로 하는 그래픽 리소스 가공 장치.The display apparatus of claim 9, wherein the rendering unit displays a graphic currently being processed among the image fragments, sprites, and animations in a first window of the screen divided into at least four windows, and displays the image fragment pool in a second window. And a third window to display the sprite pool and a fourth window to display the animation pool.
KR1020090096274A 2009-10-09 2009-10-09 Method for processing hierarchy graphic resources KR100974915B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090096274A KR100974915B1 (en) 2009-10-09 2009-10-09 Method for processing hierarchy graphic resources

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090096274A KR100974915B1 (en) 2009-10-09 2009-10-09 Method for processing hierarchy graphic resources

Publications (1)

Publication Number Publication Date
KR100974915B1 true KR100974915B1 (en) 2010-08-09

Family

ID=42759443

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090096274A KR100974915B1 (en) 2009-10-09 2009-10-09 Method for processing hierarchy graphic resources

Country Status (1)

Country Link
KR (1) KR100974915B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101182206B1 (en) 2010-11-02 2012-09-12 한국전자통신연구원 Apparatus and method for making game data using sprite cell

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100724136B1 (en) 2006-01-11 2007-06-04 삼성전자주식회사 Method and system of rendering particle
KR100803947B1 (en) 2006-12-01 2008-02-15 주식회사 코아로직 Apparatus and method for open vector graphic application program interface translation, mobiile terminal, and record medium on which the method is recorded

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100724136B1 (en) 2006-01-11 2007-06-04 삼성전자주식회사 Method and system of rendering particle
KR100803947B1 (en) 2006-12-01 2008-02-15 주식회사 코아로직 Apparatus and method for open vector graphic application program interface translation, mobiile terminal, and record medium on which the method is recorded

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101182206B1 (en) 2010-11-02 2012-09-12 한국전자통신연구원 Apparatus and method for making game data using sprite cell

Similar Documents

Publication Publication Date Title
US9720658B2 (en) Application creation method and apparatus
US10157593B2 (en) Cross-platform rendering engine
KR101863041B1 (en) Creation of playable scene with an authoring system
US20080184139A1 (en) System and method for generating graphical user interfaces and graphical user interface models
TWI413933B (en) Application programming interfaces for graphical user interfaces
CN109656654B (en) Editing method of large-screen scene and computer-readable storage medium
US20120107790A1 (en) Apparatus and method for authoring experiential learning content
MXPA06012368A (en) Integration of three dimensional scene hierarchy into two dimensional compositing system.
CN105556569A (en) Animation editing
CN102907069A (en) Method and system for executing a graphics application
US20140232724A1 (en) Moving visualizations between displays and contexts
US10579220B2 (en) Method and system for story development with a dynamic grid
US8031190B2 (en) Translating two-dimensional user input on three-dimensional scene
CN111857717B (en) UI editing method, device, equipment and computer readable storage medium
US20130198714A1 (en) System and method for stage rendering in a software authoring tool
KR20080022591A (en) Offline optimization pipeline for 3d content in embedded devices
CN107851089A (en) Distortion document
JP2002182914A (en) Screen transition display device, screen transition display method and storage medium
KR100974915B1 (en) Method for processing hierarchy graphic resources
CN112138380A (en) Method and device for editing data in game
US11409503B2 (en) Content development device
CN115691772A (en) Operation visualization system and corresponding computer device and storage medium
CN110647377A (en) Picture processing system, device and medium for human-computer interaction interface
Yin Research on design and optimization of Game UI framework based on Unity3D
JP2012094091A (en) Display control device, display control method and program therefor

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130613

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150217

Year of fee payment: 5

R401 Registration of restoration
FPAY Annual fee payment

Payment date: 20150520

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180117

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180525

Year of fee payment: 9