KR20020013224A - VRML Node Expansion and Processing Method for Progressive Data Transmission in Internet Virtual Reality Service - Google Patents

VRML Node Expansion and Processing Method for Progressive Data Transmission in Internet Virtual Reality Service Download PDF

Info

Publication number
KR20020013224A
KR20020013224A KR1020000046779A KR20000046779A KR20020013224A KR 20020013224 A KR20020013224 A KR 20020013224A KR 1020000046779 A KR1020000046779 A KR 1020000046779A KR 20000046779 A KR20000046779 A KR 20000046779A KR 20020013224 A KR20020013224 A KR 20020013224A
Authority
KR
South Korea
Prior art keywords
scene
virtual space
list
information
server
Prior art date
Application number
KR1020000046779A
Other languages
Korean (ko)
Other versions
KR100355990B1 (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 KR1020000046779A priority Critical patent/KR100355990B1/en
Publication of KR20020013224A publication Critical patent/KR20020013224A/en
Application granted granted Critical
Publication of KR100355990B1 publication Critical patent/KR100355990B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/02Non-photorealistic rendering

Abstract

PURPOSE: A method for extending and processing a VRML(virtual reality modeling language) is provided to transmit a virtual space as the unit of a scene in detail. CONSTITUTION: A virtual space is divided as the unit of a scene, which is a detail division unit(S100). List information capable of discriminating a plurality of scenes based on local information positioned by a user is necessary for selecting the corresponding scene positioned by the user out of a plurality of scenes in the virtual space divided as the unit of a scene. Thus, a scene list including scene list information capable of discriminating a plurality of scenes and coordinate information positioned by the scene in the virtual space is created(S200). The scene list is interpreted and scene information of the virtual space positioned by a user is read, and the virtual space is embodied(S300).

Description

인터넷 가상현실 서비스에서 점진적 데이터 전송을 위한 VRML 노드 확장 및 처리 방법{VRML Node Expansion and Processing Method for Progressive Data Transmission in Internet Virtual Reality Service}VRML Node Expansion and Processing Method for Progressive Data Transmission in Internet Virtual Reality Service

발명의 분야Field of invention

본 발명은 인터넷상의 3차원 가상공간(cyberspace)을 "씬(scene)" 단위로 세부 분할하여 씬 단위로 데이터를 전송하는 방법에 관한 것이다. 또한 본 발명은 상기 방법을 구현하기 위하여 VRML 2.0에 씬의 개념을 지원하는 새로운 노드(node)인 씬 노드와 상기 씬 노드를 지원하는 맵 노드(map node)를 확장하는 방법에 관한 것이다. 보다 구체적으로 본 발명은 가상공간을 보다 작은 단위인 씬으로 분할하고, 상기 가상공간을 분할하는 씬에 대한 목록 정보 및 상기 씬이 가상공간에서 위치하는 좌표를 표현하는 씬 리스트(scene list)를 생성하고, 서버(server)는 상기 씬 리스트 및 씬 정보를 클라이언트(client)에게 전송하고, 이를 전송받은 클라이언트는 상기 씬 리스트의 정보를 해석하여 상기 씬이 위치하는 가상공간을 표현하는 단계로 이루어지는 다자참여형 가상공간을 표현하기 위하여 VRML을 확장하는 방법 및 확장된 VRML을 처리하는 방법에 관한 것이다.The present invention relates to a method of transmitting data in units of scenes by subdividing a three-dimensional cyberspace on the Internet into units of "scenes." The present invention also relates to a method for extending a scene node, which is a new node that supports the concept of a scene, and a map node that supports the scene node, in order to implement the method. More specifically, the present invention divides a virtual space into a scene which is a smaller unit, and generates a list of scenes representing list information about a scene dividing the virtual space and coordinates in which the scene is located in the virtual space. The server transmits the scene list and the scene information to a client, and the received client interprets the information of the scene list to represent the virtual space where the scene is located. The present invention relates to a method of extending VRML and a method of processing an extended VRML to represent a virtual space.

발명의 배경Background of the Invention

종래의 인터넷상에서 다자참여형(multi-avatar) 가상공간을 서비스하기 위한 클라이언트-서버(client-server) 시스템의 문제점은 사용자가 서버에 접속할 때 가상 현실 즉, 가상세계(virtual world)를 구성하는 VRML 파일 전체가 클라이언트로 다운로드(down-load)되어야 한다는 점이다. 아울러 전체 파일이 다운로드된 후 파싱(parsing) 및 렌더링(rendering)되는 동안 사용자는 상기 과정을 기다려야 한다. 이 대기 시간이 다자참여형 가상현실 서비스가 사용자에게 널리 활성화되지 못하는 요인으로 작용하여 왔다.The problem of the client-server system for serving a multi-avatar virtual space in the conventional Internet is that VRML files constituting virtual reality, or virtual world, when a user connects to the server. The whole thing has to be down-loaded to the client. In addition, the user must wait for the process while parsing and rendering the entire file after it is downloaded. This waiting time has been a factor in which the multi-participation virtual reality service is not widely activated by the user.

이에 본 발명자는 상기 문제점을 해결하는 수단으로 가상공간을 "씬(scene)" 단위로 세부 분할하여 상기 씬 단위로 전송하는 방법을 제안하고자 하며, 상기 방법을 실현하기 위하여 씬 개념을 지원하는 새로운 노드(node)인 씬 노드(Scene node)와 이를 지원하는 맵 노드(Map node)를 VRML에 추가하고자 한다. 상기 VRML은 1997년 국제표준으로 선언된 ISO/IEC 14772-1:1997 Virtual Reality Modeling Language(VRML97)를 의미하며, 객체(object)의 표현 단위인 54개 노드를 정의하고 있다.In order to solve the problem, the present inventors propose a method of subdividing a virtual space into scenes and transmitting the scenes in units of scenes, and a new node supporting a scene concept to realize the method. We want to add a scene node, which is a node, and a map node that supports it, to the VRML. The VRML stands for ISO / IEC 14772-1: 1997 Virtual Reality Modeling Language (VRML97), which was declared as an international standard in 1997, and defines 54 nodes, which are expression units of objects.

본 발명의 목적은 상기에 제시된 문제점들을 해소하기 위하여 가상공간을 "씬(scene)" 단위로 세부 분할하여 씬 단위로 전송하는 방법을 제공하고자 한다.It is an object of the present invention to provide a method of subdividing a virtual space into "scene" units and transmitting them in a scene unit in order to solve the problems described above.

본 발명의 다른 목적은 상기 방법을 실현하기 위하여 씬 개념을 지원하는 새로운 노드(node)인 씬 노드(Scene node)와 이를 지원하는 맵 노드(Map node)를 VRML에 추가하여 확장하는 방법을 제공하고자 한다.It is another object of the present invention to provide a method for extending a VRML by adding a scene node, which is a new node that supports a scene concept, and a map node that supports it, to realize the above method. do.

본 발명의 또 다른 목적은 사용자가 서버에 초기 접속시 VRML 파일의 모든 정보가 다운될 때까지 대기하는 시간 지연을 방지하기 위한 방법을 제공하고자 한다.It is another object of the present invention to provide a method for preventing a time delay when a user waits for all information of a VRML file to be down upon initial connection to a server.

본 발명의 또 다른 목적은 전체 가상공간 파일을 파싱하여 메모리에 상주시킬 필요 없이 사용자의 현 위치에서 보이는 씬 만의 정보를 파싱해서 메모리에 상주시켜 메모리 요구를 최소화할 수 있는 방법을 제공하고자 한다.It is still another object of the present invention to provide a method of minimizing memory requirements by parsing information of a scene visible from a user's current location and resident in a memory without parsing the entire virtual space file and resident in the memory.

본 발명의 또 다른 목적은 눈에 보이지 않는 씬의 객체에 대해서는 사용자가 네비게이션(navigation)시 콜리젼 디텍선(collision detection)을 할 필요가 없게 되므로, 신속한 사용자 네비게이션을 제공하는 방법을 제공하고자 한다.It is still another object of the present invention to provide a method for providing fast user navigation, since a user does not need to perform collision detection during navigation for an object of an invisible scene.

본 발명의 상기 및 기타의 목적들은 하기 상세히 설명되는 본 발명에 의하여 모두 달성될 수 있다.The above and other objects of the present invention can be achieved by the present invention described in detail below.

도1은 본 발명에 따라 이루어지는 VRML 파일을 씬 단위로 설계하는 방법을 흐름도로 도시한 것이다.1 is a flowchart illustrating a method of designing a VRML file made in a scene unit according to the present invention.

도2는 가상공간을 구현하는 씬 개념을 설명하기 위한 개념도이다.2 is a conceptual diagram illustrating a scene concept of implementing a virtual space.

도3은 가상공간을 세부 분할 단위인 씬으로 표현하는 새로운 노드인 씬 노드를 설계하기 위한 흐름을 나타낸 것이다.3 shows a flow for designing a scene node, which is a new node representing a virtual space as a scene that is a subdivision unit.

도4는 씬 리스트 정보를 정의하는 새로운 노드인 맵 노드를 설계하기 위한 흐름을 나타낸 것이다.4 shows a flow for designing a map node, which is a new node defining scene list information.

도5는 본 발명에 따라 구현되는 가상공간에서 서버에 접속한 클라이언트에게 가상공간 정보를 보내는 순서 및 방법을 표현한 것이다.Figure 5 illustrates the order and method of sending virtual space information to a client accessing a server in a virtual space implemented according to the present invention.

도6은 종래의 다자참여형 가상현실 서비스의 클라이언트 접속 과정을 설명한 것이다.6 illustrates a client access process of a conventional multi-participation virtual reality service.

도7은 본 발명에서 제안하는 다자참여형 가상현실 서비스의 클라이언트 접속과정을 설명한 것이다.7 illustrates a client access process of the multi-participation virtual reality service proposed in the present invention.

*도면의 주요부호에 대한 간단한 설명** Brief description of the major symbols in the drawings *

10 : 씬 20 : 씬 리스트10: Scene 20: Scene List

30 : 가상공간30: virtual space

본 발명은 가상공간을 세부 분할 단위인 씬(scene)으로 분할하고, 상기 가상공간을 분할하는 씬에 대한 목록 정보 및 상기 씬이 가상공간에서 위치하는 좌표를표현하는 씬 리스트(scene list)를 생성하고, 서버(server)는 상기 씬 리스트 및 씬 정보를 클라이언트(client)에게 전송하고, 이를 전송받은 클라이언트는 상기 씬 리스트의 정보를 해석하여 상기 씬이 위치하는 가상공간을 표현하는 단계로 이루어진다.The present invention divides a virtual space into a scene, which is a subdivision unit, and generates a list of scenes representing list information about a scene dividing the virtual space and coordinates of the scene located in the virtual space. The server transmits the scene list and the scene information to a client, and the received client interprets the information of the scene list to represent the virtual space where the scene is located.

본 발명은 가상공간을 "씬(scene)" 단위로 세부 분할하여 씬 단위로 데이터를 전송하는 방법에 관한 것이다. 상기 방법을 구현하기 위하여 씬의 개념을 지원하는 새로운 노드(node)인 씬 노드와 상기 씬 노드를 지원하는 맵 노드(map node)를 설계하는 방법을 제공하고자 한다. 따라서 상기 노드 개념과 필드 개념을 이해할 필요가 있으므로 아래에서 상기 노드와 필드에 대해 보다 상세히 설명하기로 한다.The present invention relates to a method of transmitting data in units of scenes by subdividing a virtual space into units of "scenes." In order to implement the above method, a method of designing a scene node, which is a new node supporting a concept of a scene, and a map node, which supports the scene node, is provided. Therefore, since the node concept and the field concept need to be understood, the node and field will be described in more detail below.

먼저 일반론으로 객체지향 언어인 VRML에서 다루는 객체인 노드는 거의 어떤 타입의 정보도 가질 수 있고 자식을 가질 수도 있다. 상기 노드는 인스탠싱(instancing)을 통해서 재사용 될 수도 있다. VRML은 전형적인 객체지향 언어들처럼 각각의 독립적인 요소들을 비선형적 혹은 랜덤(random)하게 구성한다. 반면 씬 그래프(scene graph) 내부에 존재하는 VRML 소스 파일은 계층적 파일로서 상기 노드들이 파싱되는 순서를 기술한다.First, in general terms, nodes, which are objects handled by the object-oriented language VRML, can have almost any type of information and have children. The node may be reused through instancing. VRML, like typical object-oriented languages, constructs each independent element nonlinearly or randomly. On the other hand, a VRML source file existing inside a scene graph is a hierarchical file describing the order in which the nodes are parsed.

이하에서는 예제를 들어 상기 노드와 필드에 대해서 상세히 설명한다. 예제 1은 VRML1.0 사양서에 나와있는 예제를 옮겨온 것이다.Hereinafter, the node and the field will be described in detail by way of example. Example 1 is a copy of the example from the VRML1.0 specification.

(예제 1) node 예제(Example 1) node example

VRML V1.0 asciiVRML V1.0 ascii

Separator {Separator {

DirectionalLight {DirectionalLight {

direction 0 0 -1direction 0 0 -1

}}

PerspectiveCamera {PerspectiveCamera {

position -8.6 2.1 5.6position -8.6 2.1 5.6

orientation -0.1352 -0.9831 -0.1233 1.1417orientation -0.1352 -0.9831 -0.1233 1.1417

focalDistance 10.84focalDistance 10.84

}}

}}

상기 (예제 1)을 보면 명령어가 나오면 다음에 반드시 ' { '이 나오고 그 안에 다른 명령어들이 나온 후 ' } '이 나와서 다른 명령어를 감싸고 있다. 모든 명령어가 이런 형식을 취하고 있다. 예제와 같이 ' 명령어 {...} '의 형태를 가진 문장 하나를 VRML에서는 노드(node)라 정의를 한다. 상기 노드가 바로 VRML을 구성하는 기본 단위이다. 3차원 공간상의 물체, 카메라, 빛 등 직접 보이는 물체와 색, 위치, 방향 등 물체의 속성, 그리고 WWW(World Wide Web)의 링크 등 모든 것이 노드로 표현된다. (예제 1)의 경우에 있어 노드는 Separator, DirectionalLight, PerspectiveCamera 임을 쉽게 알 수가 있다. VRML에서 정의된 노드는 그 역할에 따라 아래의 (표 1)처럼 형태 노드, 속성 노드, 그룹 노드의 3종류로 분류된다. 상기 형태 노드는 실제 눈에 보이는 3차원 물체의 모양을 지정하는 노드이다. 상기 속성 노드는 상기 형태 노드가 그릴 물체의 성질을 지정한다. 상기 그룹 노드는 여러 노드를 하나의 개체처럼 다룰 수 있도록 구분 짓는 역할을 한다.In (Example 1) above, when a command comes out, it must be followed by '{', followed by other commands, and '}' is wrapped around other commands. All commands take this form. As in the example, a sentence in the form of 'command {...}' is defined as a node in VRML. The node is the basic unit constituting the VRML. Nodes are represented as objects in three-dimensional space, directly visible objects such as cameras, lights, properties of objects such as color, position, and direction, and links of the World Wide Web. In the case of Example 1, it is easy to see that the nodes are Separator, DirectionalLight, and PerspectiveCamera. Nodes defined in VRML are classified into three types, type node, attribute node, and group node, as shown in (Table 1) below. The shape node is a node that designates the shape of an actual three-dimensional object. The attribute node specifies the nature of the object that the shape node will draw. The group node serves to distinguish several nodes so that they can be treated as a single entity.

노드의 종류별 분류Classification by node type 노드 종류Node type 부그룹Subgroup 관련노드Related Nodes 형태 노드Shape nodes AsciiText, Cone, Cube, Cylinder,IndexedFaceSet, PointSet, SphereAsciiText, Cone, Cube, Cylinder, IndexedFaceSet, PointSet, Sphere 속성 노드Attribute node 형태와 모양 그룹Form and shape group Coordinate3, FontStyle, Info, LOD, Material,MaterialBinding, Normal, NormalBinding,Texture2,Texture2Transform, TextureCoordinate2, ShapeHintsCoordinate3, FontStyle, Info, LOD, Material, MaterialBinding, Normal, NormalBinding, Texture2, Texture2Transform, TextureCoordinate2, ShapeHints 변환 행렬 그룹Transformation matrix group MatrixTransform, Rotation, Scale, Transform,TranslationMatrixTransform, Rotation, Scale, Transform, Translation 카메라/조명 그룹Camera / Light Group OrthographicCamera, PerspectiveCamera,DirectionalLight, PointLight, SpotLightOrthographicCamera, PerspectiveCamera, DirectionalLight, PointLight, SpotLight 그룹 노드Group node Group, Separator, Switch, TransformSeperator,WWWAnchorGroup, Separator, Switch, TransformSeperator, WWWAnchor 그 외의 노드Other nodes WWWInlineWWWInline

(예제 2) Field 예제(Example 2) Field example

Cube{ #노드 이름Cube {#Node Name

width 0.1 # 너비 필드width 0.1 # width field

height 0.1 # 높이 필드height 0.1 # height field

depth 4 # 깊이 필드depth 4 # depth field

}}

상기 (예제 2)는 필드를 설명하기 위한 것으로 노드 안을 보면 (예제 1)과는 다른 형태로 명령어 다음에 ' {} '이 나오지 않고 곧바로 숫자가 나오고 있다. 이처럼 ' {} '가 없는 명령어는 노드 밖에 단독으로 존재할 수 없고, 노드의 성질을 결정하는 수치를 지정하기 위한 것이다. 이것을 필드라고 한다. (예제 2)를 해석하면 필드는 필드의 이름과 필드값으로 이뤄진다. 대부분의 노드는 고유의 속성을 표현하기 위해 하나 이상의 필드를 지정하게 된다. 하지만 필드를 갖지 않는 노드도 있고, 필드가 존재하여도 때로는 필드가 생략되는 경우가 있는데 이때는 필드의 기본값을 가지게 된다. VRML에서 3차원 그래픽에 필요한 수치체계를 표현하기 위해 몇 가지 미리 정의된 수치 체계를 갖고 있다. 상기 수치 체계를 필드타입이라 하는데 모든 필드는 이 필드 타입 중 어느 하나에 속하게 된다. 필드 타입에는 하나의 값을 갖는 종류와 두 개 이상의 값을 갖는 종류가 있다(표 2).The above (Example 2) is for explaining the field, and if you look inside the node, it is different from (Example 1). As such, a command without '{}' cannot exist solely on a node, and is intended to specify a number that determines the nature of the node. This is called a field. If you interpret Example 2, the field consists of the field name and field value. Most nodes will specify one or more fields to represent their attributes. However, some nodes do not have a field, and even if a field exists, the field is sometimes omitted. In this case, the field has a default value. VRML has several predefined numerical systems to represent the numerical systems required for three-dimensional graphics. The numerical system is called a field type, and all fields belong to one of these field types. There are two types of field types, one with one value and the other with two or more values (Table 2).

필드 타입의 종류Type of field type 단일 개체 필드Single object field 다개체 필드Multi-Object Field SFBitMask, SFBool, SFmatrixSFColor, SFEnum, SFRotationSFFloat, SFImage, SFLongSFVec2f, SFVec3f, SFStringSFBitMask, SFBool, SFmatrixSFColor, SFEnum, SFRotationSFFloat, SFImage, SFLongSFVec2f, SFVec3f, SFString MFColor, MFLong, MFVec2f,MFVec3f,MFColor, MFLong, MFVec2f, MFVec3f,

아래의 (예제 3)에서처럼 전자의 경우 필드 타입 제일 앞에 SF(Single Field)라는 두 문자가, 후자인 경우 MF(Multiple Field)라는 두문자가 붙는다.In the former example, two characters, SF (Single Field) are preceded by the field type in the former case, and two characters, MF (Multiple Field) in the latter case.

(예제 3) 필드의 유형(Example 3) Types of Fields

SFFloat 1.0# 하나의 값을 갖는 단일개체 필드 SFFloat 1.0 # Single Object Field with One Value

SFVec3f 1.0 1.2 -0.3# 여러개의 값을 갖는 단일개체 필드 SFVec3f 1.0 1.2 -0.3 # single value field with multiple values

MFVec3f[# 3개의 3차원 벡터 원소를 갖는 다개체 필드 MFVec3f [ # Multi-object field with three three-dimensional vector elements

1.0 1.2 -0,31.0 1.2 -0,3

0.2 1.5 -8.70.2 1.5 -8.7

-2.1 -2.1 0-2.1 -2.1 0

]]

앞에서 자세히 노드와 필드에 대해 설명하였는데, 다시 한번 VRML의 노드를 정의하면 아래와 같다.The nodes and fields were described in detail above. Once again, the nodes of the VRML are defined as follows.

[ DEF node-name ] node-type { [fields..] [children-node..] }[DEF node-name] node-type {[fields ..] [children-node ..]}

이하에서는 상술한 것을 바탕으로 본 발명에서 구현하고자 하는 가상공간을 "씬(scene)" 단위로 세부 분할하여 상기 씬 단위로 전송하는 방법을 설명한다.Hereinafter, a method of subdividing a virtual space to be implemented in the present invention into "scene" units and transmitting the above-described scene unit will be described.

도1은 본 발명에 따라 이루어지는 VRML 파일을 씬 단위로 설계하는 방법을 흐름도로 도시한 것이다.1 is a flowchart illustrating a method of designing a VRML file made in a scene unit according to the present invention.

먼저 가상공간을 세부 분할 단위인 씬으로 세부 분할한다(S100). 상기와 같이 가상공간을 구성하는 세부 분할 단위인 씬 단위로 상기 가상공간을 분할하기 위해서는 종래의 노드로는 표현을 할 수가 없으므로 새롭게 노드를 정의하여 준다. 상기 노드를 설계하는 방법은 아래에서 자세히 설명하기로 한다.First, the virtual space is subdivided into scenes which are subdivided units (S100). In order to divide the virtual space into scene units which are subdividing units constituting the virtual space as described above, the node cannot be represented by a conventional node, thereby newly defining the node. The method of designing the node will be described in detail below.

상기와 같이 씬 단위로 세부 분할된 가상공간에서 다수의 씬에서 사용자가 위치하는 해당 씬을 선택하기 위해서는 사용자가 위치하는 지역 정보를 바탕으로 하여 다수의 씬을 구별할 수 있는 목록 정보가 필요하다. 따라서 본 단계에서는 다수의 씬을 구별할 수 있는 씬의 목록 정보와 상기 씬이 가상공간상에서 위치하는 좌표정보를 포함하는 씬 리스트를 생성한다(S200). 본 단계에 있어서도 상기 씬 리스트를 표현하기 위해서는 종래의 노드로는 표현을 할 수가 없으므로 새롭게 노드를 정의하여 준다. 상기 노드를 설계하는 방법은 아래에서 역시 자세히 설명하기로 한다.As described above, in order to select a corresponding scene in which the user is located in a plurality of scenes in the virtual space divided into scene units, list information for distinguishing a plurality of scenes based on region information where the user is located is required. Therefore, in this step, a scene list including list information of a scene capable of distinguishing a plurality of scenes and coordinate information of the scene located in a virtual space is generated (S200). In this step as well, since the conventional node cannot express the scene list, the node is newly defined. The method of designing the node will also be described in detail below.

상술한 것과 같이 가상공간을 다수의 씬으로 분할하고 상기 씬에 대한 목록 정보 및 좌표공간의 정보를 포함하는 씬 리스트를 생성한 후, 사용자가 위치하는 가상공간을 표현하는데 있어 상기 씬 리스트를 해석하여 사용자가 위치하는 가상공간의 씬 정보를 불러들여 가상공간을 구현하게 된다(S300).As described above, the virtual space is divided into a plurality of scenes, a scene list including list information and coordinate space information of the scene is generated, and the scene list is interpreted to represent the virtual space where the user is located. The scene information of the virtual space where the user is located is loaded to implement the virtual space (S300).

이하 상기 씬을 지원하는 새로운 노드(node)인 씬 노드와 상기 씬 리스트를 지원하는 새로운 노드인 맵 노드(map node)를 설계하는 방법을 설명한다.Hereinafter, a method of designing a scene node, which is a new node supporting the scene, and a map node, which is a new node supporting the scene list, will be described.

도2는 가상공간을 구현하는 씬 개념을 설명하기 위한 개념도이다.2 is a conceptual diagram illustrating a scene concept of implementing a virtual space.

도시한 바와 같이, 본 발명에서는 가상공간을 세부 분할 단위인 씬(10)으로 분할한다. 이후 가상공간을 표현하는데 있어서는 씬리스트(scene list)(20)를 참조하여 가상공간(30)에서 각각의 씬들이 위치하는 지역을 찾아 사용자가 위치하는 가상공간을 표현하게 된다. 종래에 있어서는 사용자가 위치하는 가상공간을 표현하기 위해 가상공간을 표현하는 VRML 파일 전체를 전송 받아 이를 파싱하여 렌더링을 수행한다. 반면에 상기와 같은 씬 개념에 따르면, 사용자가 가상공간에서 위치하는 최소한의 지역만을 선택하여 표현할 수가 있다. 따라서 그 만큼 가상공간을 표현하고자 서버가 클라이언트에게 전송하는 VRML 데이터의 크기를 최소화할 수가 있어 파싱 및 렌더링을 수행하기 위한 시간을 최소화할 수가 있는 것이다.As shown, in the present invention, the virtual space is divided into the scene 10 which is a subdivision unit. Subsequently, in representing the virtual space, the scene where each scene is located in the virtual space 30 is referred to the scene list 20 to represent the virtual space where the user is located. In the related art, in order to express the virtual space where the user is located, the entire VRML file representing the virtual space is received, parsed, and rendered. On the other hand, according to the above-described scene concept, the user can select and express only the minimum region located in the virtual space. Therefore, it is possible to minimize the size of the VRML data transmitted from the server to the client to represent the virtual space, thereby minimizing the time for parsing and rendering.

VRML 언어는 상술한 것과 같이 객체(object)를 표현하는 노드와 객체의 성질을 표현하는 필드로 이루어진다. 상기 노드는 현재 54개가 정의되어 사용되고 있으나 상술한 씬 개념을 지원하기 위해서는 새로운 노드로 가상공간의 분할 단위인 씬을 표현하는 '씬 노드'와 가상세계를 구성하는 씬의 목록정보와 좌표정보를 표현하는 '맵 노드'를 설계하여야 한다.As described above, the VRML language is composed of a node representing an object and a field representing a property of the object. 54 nodes are currently defined and used, but in order to support the above-described scene concept, a new node expresses list information and coordinate information of a scene node representing a scene, which is a division unit of a virtual space, and a scene constituting a virtual world. You must design a 'map node'.

도3은 가상공간의 보다 작은 분할 단위인 씬을 표현하는 새로운 노드인 씬 노드를 설계하기 위한 흐름을 나타낸 것이다.3 shows a flow for designing a scene node, which is a new node representing a scene that is a smaller division unit of the virtual space.

씬은 가상공간을 분할하기 위한 보다 작은 단위로써, 가상공간의 일부분에 위치하는 지역 정보들을 표현해 준다. 따라서 가상공간에는 다수의 씬이 존재를 하게 된다. 그러므로 씬 노드에서는 먼저 각각의 씬을 구별하기 위해 씬의 고유 아이디(id)를 부여한다(S110). 위에서 설명한 노드와 필드를 활용해서 VRML 언어로 표현하여 주면은 "field SFInt32 id"가 된다.A scene is a smaller unit for dividing a virtual space, representing local information located in a portion of the virtual space. Therefore, multiple scenes exist in the virtual space. Therefore, the scene node first assigns a unique ID (id) of the scene to distinguish each scene (S110). Using the nodes and fields described above, if expressed in VRML language, it becomes "field SFInt32 id".

다음으로 현재 사용자가 위치하는 씬과 이웃해 있는 씬으로서 현재의 씬에서 보여져야 할 필요가 있는 씬을 표현해 주어야 한다. 따라서 현재의 씬에서 보여져야 할 필요가 있는 이웃한 씬의 고유 식별자를 나타내어 준다(S120). 위에서 설명한 노드와 필드를 활용해서 VRML 언어로 표현해 주면은 "exposedField MFInt32visibleRegions"가 된다.Next, we need to represent the scene that needs to be seen in the current scene as the scene that is adjacent to the scene where the current user is located. Therefore, it indicates the unique identifier of the neighboring scene that needs to be seen in the current scene (S120). When expressed in VRML language using the nodes and fields described above, it becomes "exposedField MFInt32visibleRegions".

다음으로 씬이 위치하는 좌표상의 영역 경계를 나타내어 가상공간을 다수의 씬으로 구분하여 준다(S130). 위에서 설명한 노드와 필드를 활용해서 VRML 언어로 표현하면 "exposedField MFNode walls"가 된다.Next, the virtual space is divided into a plurality of scenes by indicating an area boundary on a coordinate where the scene is located (S130). Using the nodes and fields described above, expressed in VRML language, it becomes "exposedField MFNode walls".

다음으로 상기와 같이 가상공간을 다수의 씬으로 구분을 하였으면 각각의 씬에 포함되는 객체를 표현한다(S140). 위에서 설명한 노드와 필드를 활용해서 VRML 언어로 표현하면 "exposedField MFNode contents"가 된다.Next, when the virtual space is divided into a plurality of scenes as described above, an object included in each scene is represented (S140). When expressed in VRML language using the nodes and fields described above, it becomes "exposedField MFNode contents".

마지막으로 씬 속의 객체들이 초기에 닫혀 있음을 표현해 준다(S150). 위에서 설명한 노드와 필드를 활용해서 VRML 언어로 표현하면 "exposedField SFBool closed"가 된다.Finally, the objects in the scene are initially closed (S150). Using the nodes and fields described above in the VRML language, it becomes "exposedField SFBool closed".

상기와 같이 이루어지는 씬 노드를 VRML 언어로 정리하면,When the scene node made as above is organized in VRML language,

Scene {Scene {

field SFInt32 id# scene의 고유 id(식별자, identifier) field SFInt32 id # unique id of the scene

exposedField MFInt32 visibleRegions# 현재의 scene과 이웃해 있는 scene(neighbor scene)으로서 현 scene에서 보여져야 할 필요가 있 는 scene의 고유 식별자 exposedField MFInt32 visibleRegions # A unique identifier of the scene that needs to be visible in the current scene as a scene (neighbor scene) neighboring the current scene.

exposedField MFNode walls# scene의 좌표상의 영역 경계 exposedField MFNode walls # Area boundary in scene coordinates

exposedField MFNode contents# scene에 포함되는 객체 exposedField MFNode contents # object in scene

exposedField SFBool closed# scene 속의 객체들이 초기에 closed되어 있음을 표시 It indicates that the object in the exposedField SFBool closed # scene have been closed in the early

}}

가 된다.Becomes

도4는 씬 리스트 정보를 정의하는 새로운 노드인 맵 노드를 설계하기 위한 흐름을 나타낸 것이다.4 shows a flow for designing a map node, which is a new node defining scene list information.

맵 노드는 가상공간을 분할한 모든 씬들의 리스트 정보를 정의하고 있다. 상기 리스트 정보는 가상공간을 구성하는 상기에서 정의한 모든 씬들에 대한 목록 및 설명서와 같은 기능을 가진다. 따라서 맵 노드는 가상공간을 분할하고 있는 모든 씬에 대한 정보를 포함하고, 씬이 가상공간 상에서 위치하는 지역을 표현해 주어야 한다.The map node defines list information of all the scenes that partitioned the virtual space. The list information has a function of a list and a description of all the scenes defined in the virtual space. Therefore, the map node should contain information about all the scenes dividing the virtual space, and represent the area where the scene is located in the virtual space.

따라서 처음으로는 상기 씬 노드에서 정의한 씬의 아이디(id)를 목록으로 표현해 준다(S210). 위에서 설명한 노드와 필드를 활용해서 VRML 언어로 표현하여 주면은 "exposedField MFInt32 ids"가 된다.Therefore, first, the ID of the scene defined by the scene node is expressed as a list (S210). Using the nodes and fields described above, if expressed in VRML language, it becomes "exposedField MFInt32 ids".

다음으로 각 씬들의 가상공간상의 좌표정보를 표현하기 위해 해당 씬을 둘러싸는 평면의 방향 벡터를 의미하는 노말(normal)에 관한 정보를 표현하여 준다(S220). 위에서 설명한 노드와 필드를 활용해서 VRML 언어로 표현하여 주면은 "field MFVec3f normals"가 된다.Next, in order to express coordinate information on the virtual space of each scene, information about a normal meaning a direction vector of a plane surrounding the scene is expressed (S220). Using the nodes and fields described above, the expression in VRML language is "field MFVec3f normals".

상기와 같이 각각의 씬에 대한 방향을 설정하고, 마지막으로 씬이 위치하는 지역을 표기하여 위하여 해당 지역을 둘러싸는 평면의 중점에서 원점까지의 위치를나타내는 거리(distance) 목록을 정의한다(S230). 위에서 설명한 노드와 필드를 활용해서 VRML 언어로 표현하면 "field MFFloat distances"가 된다.As described above, the direction of each scene is set, and finally, a distance list indicating a position from the midpoint of the plane surrounding the area to the origin is defined to indicate the area where the scene is located (S230). . In the VRML language, using the nodes and fields described above, it becomes "field MFFloat distances".

상기와 같이 이루어지는 맵 노드를 VRML 언어로 다시 한번 정리하면,If the map node made as above is once again arranged in VRML language,

Map {Map {

exposedField MFInt32 ids# scene의 id 목록 exposedField MFInt32 ids # list of ids for scene

field MFVec3f normals# normals 목록. normal은 해당 scene을 둘러싸 는 평면(plane)의 방향 벡터 field MFVec3f normals # normals list. normal is the direction vector of the plane surrounding the scene

field MFFloat distances#distance 목록. distance는 해당 지역(region)을 둘러싸는 평면의 중점에서 원점까지의 위치 field MFFloat distances #distance list. distance is the position from the midpoint to the origin of the plane surrounding the region

}}

가 된다.Becomes

지금까지는 새로운 노드인 맵 노드와 씬 노드에 대해서 자세히 설명하였다. 이하에서는 상기와 같이 추가된 노드를 가지고 가상공간이 구현되어지는 과정을 설명하기로 한다.So far, the new nodes, the map node and the scene node, have been described in detail. Hereinafter, a process of implementing a virtual space with the node added as described above will be described.

도5는 본 발명에 따라 구현되는 가상세계에서 서버에 접속한 클라이언트에게 가상세계(virtual world) 정보를 보내는 순서 및 방법을 표현한 것이다.FIG. 5 illustrates a sequence and method for sending virtual world information to a client accessing a server in a virtual world implemented according to the present invention.

클라이언트(client)가 서버(server)에 접속하여 가상세계 정보를 요청하면(S1), 서버에서는 가상공간을 분할하고 있는 씬에 대한 정보 및 씬이 가상공간에서 위치하는 좌표를 표현해 주는 씬 리스트(scene list)와 가상세계의 입구에 해당하는 씬을 상기 클라이언트에게 우선적으로 전송하게 된다(S2). 이를 접수한 클라이언트의 브라우저는 이 정보를 파싱(parsing)하고 렌더링(rendering)을 수행해서 사용자에게 디스플레이를 하면(S3), 사용자는 씬(scene) 공간을 이동하게 되는데(S4) 이때 사용자의 이동 방향에 따라 서버로부터 추가로 가져와야 할 씬이 결정되어야 한다. 이를 위하여 초기에 서버로부터 전송받은 씬 리스트를 참조한다(S5).When the client connects to the server and requests virtual world information (S1), the server lists scenes representing information about the scene partitioning the virtual space and coordinates where the scene is located in the virtual space. list) and the scene corresponding to the entrance of the virtual world are first transmitted to the client (S2). When the client's browser parses this information and renders the information to the user (S3), the user moves the scene space (S4). In this case, additional scenes to be fetched from the server must be determined. For this purpose, the scene list initially transmitted from the server is referred to (S5).

도6은 종래의 다자참여형 가상현실 서비스의 클라이언트 접속 과정을 설명한 것이다. 그리고 도7은 본 발명에서 제안하는 다자참여형 가상현실 서비스의 클라이언트 접속 과정을 설명한 것이다. 이하 도6 및 도7을 가지고 본 발명을 설명하기로 한다.6 illustrates a client access process of a conventional multi-participation virtual reality service. 7 illustrates a client access process of the multi-participation virtual reality service proposed in the present invention. Hereinafter, the present invention will be described with reference to FIGS. 6 and 7.

도6 및 도7을 비교하여 보면 클라이언트가 서버에 접속하여 사용자 인증을 확인하게 되고(S10, S'10), 서버로부터 가상세계 리스트(world list)를 입력받아 관심있는 가상세계를 선택하는 단계까지는 동일하다(S20, S'20). 다음 단계로 도6에서 설명하는 종래의 다자참여형 가상현실 서비스에서는 클라이언트가 특정 가상세계를 선택하게 되면 서버에서는 상기 가상세계 전체에 대한 VRML 파일을 전송하여 클라이언트에서는 상기 파일을 파싱 및 렌더링을 수행하여 가상세계를 구현하게 된다(S30, S40).6 and 7, the client accesses the server to check user authentication (S10 and S'10), and receives a virtual world list from the server to select a virtual world of interest. Same (S20, S'20). Next, in the conventional multi-participation virtual reality service described in FIG. 6, when the client selects a specific virtual world, the server transmits a VRML file for the entire virtual world, and the client parses and renders the file to perform virtual The world will be implemented (S30, S40).

반면에 도7에서 설명하고 있는 본 발명에서 제안하는 다자참여형 가상현실 서비스에서는 위에서 설명한 것과 같이 사용자가 선택한 가상세계의 전체 VRML 파일을 전송하는 대신에, 사용자가 선택한 가상세계를 구성하는 씬리스트와 가상세계의 입구에 해당하는 씬을 우선적으로 전송을 하게된다(S'30). 이후 클라이언트에서는 상기 씬을 입력받아 이를 파싱 및 렌더링을 거쳐 가상세계를 구현하고 네비게이션(navigation) 하게 된다(S'40). 사용자가 네비게이션 함에 따라 클라이언트에서는 네비게이션 방향에 따라 씬리스트를 참조하여 새로운 씬을 서버에 요구하게 된다(S'50).On the other hand, in the multi-participation virtual reality service proposed by the present invention described with reference to FIG. 7, instead of transmitting the entire VRML file of the virtual world selected by the user as described above, the scene list and the virtual constituting the virtual world selected by the user are described. The scene corresponding to the entrance of the world is transmitted first (S'30). Thereafter, the client receives the scene and parses and renders the virtual world to implement and navigate (S'40). As the user navigates, the client requests the server for a new scene by referring to the scene list according to the navigation direction (S'50).

따라서 종래의 다자참여형 가상현실 서비스에 있어서는 가상공간을 구성하는 VRML 파일 전체가 클라이언트로 전송되어 상기 파일을 파싱하고 렌더링함에 따라 많은 시간을 소모하게 된다. 하지만 본 발명에서 제안하는 다자참여형 가상현실 서비스에 있어서는 사용자가 선택한 가상세계를 표현하는데 있어 최소한의 VRML 데이터만을 사용함으로 그만큼 시간을 절약할 수가 있는 것이다.Therefore, in the conventional multi-participation virtual reality service, the entire VRML file constituting the virtual space is transmitted to the client, which consumes a lot of time as the file is parsed and rendered. However, in the multi-participation type virtual reality service proposed by the present invention, it is possible to save time by using only the minimum VRML data to express the virtual world selected by the user.

본 발명은 사용자가 서버에 초기 접속 시 VRML 파일의 모든 정보가 다운로딩될 때까지 대기할 필요가 없으며 사용자의 눈에 보이지 않는 씬을 모두 렌더링(rendering)할 때까지 사용자가 기다릴 필요가 없을 뿐 아니라 사용자의 현 위치에서 보이는 씬만을 렌더링 함으로써 렌더링 퍼포먼스(performance)를 높일 수 있다. 또한 전체 가상세계를 파싱하여 메모리에 상주시킬 필요 없이 사용자의 현 위치에서 보이는 씬만의 정보만을 파싱하여 메모리에 둠으로서 메모리 요구를 최소화할 수 있으며 눈에 보이지 않는 씬의 객체에 대해서는 사용자가 네비게이션하는 경우콜리젼 디텍션(collision detection)을 할 필요가 없게 되므로, 신속한 사용자네비게이션이 가능하다.The present invention does not need to wait for all information of the VRML file to be downloaded when the user initially connects to the server, and does not have to wait for the user to render all the invisible scenes. Rendering performance can be improved by rendering only the scene visible from the user's current location. It also minimizes memory requirements by parsing and storing only the information of the scene visible from the user's current location, without having to parse the entire virtual world and residing in memory, and when the user navigates to invisible scene objects. This eliminates the need for collision detection, enabling fast user navigation.

Claims (4)

가상공간을 세부 분할 단위인 씬(scene)으로 분할하고;Dividing the virtual space into a scene which is a subdivision unit; 상기 가상공간을 분할하는 씬(scene)에 대한 목록 정보 및 상기 씬(scene)이 가상공간에서 위치하는 공간좌표 정보를 나타내는 씬 리스트(scene list)를 생성하고;Generating a scene list indicating list information of a scene dividing the virtual space and spatial coordinate information at which the scene is located in the virtual space; 서버(server)는 상기 씬 리스트 및 씬 정보를 클라이언트(client)에게 전송하고; 그리고A server transmits the scene list and the scene information to a client; And 이를 전송받은 클라이언트는 상기 씬 리스트의 정보를 해석하여 상기 씬이 위치하는 가상공간을 표현하는;Receiving this information, the client interprets the information of the scene list to represent the virtual space in which the scene is located; 단계로 이루어지는 다자참여형 가상공간을 표현하기 위하여 VRML을 확장하고 확장된 VRML을 처리하는 방법.How to extend VRML and process extended VRML to represent multi-participation virtual space. 제1항에 있어서, 상기 가상공간을 세부 분할 단위인 씬으로 분할하는 단계는,The method of claim 1, wherein dividing the virtual space into a scene that is a subdividing unit comprises: 가상공간에서 다수의 씬을 구별할 수 있도록 씬마다의 고유 아이디를 부여하고;Assigns a unique ID for each scene to distinguish a plurality of scenes from the virtual space; 현재의 씬에서 보이는 이웃한 씬의 고유 식별자를 나타내고;Indicates a unique identifier of a neighboring scene seen in the current scene; 가상공간을 다수의 씬으로 구분하는 좌표상의 영역 경계를 표현하고;Represent an area boundary on a coordinate that divides the virtual space into a plurality of scenes; 상기와 같이 가상공간을 다수의 씬으로 구분하여 각각의 씬에 포함되는 객체를 표현하고; 그리고Expressing an object included in each scene by dividing the virtual space into a plurality of scenes as described above; And 상기 씬 속의 객체들이 초기에 닫혀 있음을 표현하는;Expressing that objects in the scene are initially closed; 단계로 이루어지는 것을 특징으로 하는 다자참여형 가상공간을 표현하기 위하여 VRML을 확장하고 확장된 VRML을 처리하는 방법.A method of extending VRML and processing an extended VRML to represent a multi-participant virtual space, characterized in that the step consisting of. 제1항에 있어서, 가상공간을 분할하는 씬(scene)에 대한 목록 정보를 포함하며, 상기 씬(scene)이 가상공간에서 위치하는 지역을 표현하는 씬 리스트(scene list)를 생성하는 단계는,The method of claim 1, wherein the generating of a scene list including list information of a scene dividing a virtual space, and representing a region where the scene is located in the virtual space, comprises: 씬 노드에서 정의한 씬의 아이디(id)를 목록으로 표현하고;Expresses an ID of a scene defined in a scene node as a list; 해당 씬을 둘러싸는 평면의 방향 벡터를 의미하는 노말(normal)에 관한 정보를 표현하고; 그리고Expressing information about a normal meaning of a direction vector of a plane surrounding the scene; And 씬이 위치하는 지역을 나타낼 수 있도록 해당 지역을 둘러싸는 평면의 중점에서 원점까지의 위치를 나타내는 거리(distance) 목록을 표현하는;Expressing a distance list indicating the position from the midpoint of the plane surrounding the area to the origin so that the scene can be located; 단계로 이루어지는 것을 특징으로 하는 다자참여형 가상공간을 표현하기 위하여 VRML을 확장하고 확장된 VRML을 처리하는 방법.A method of extending VRML and processing an extended VRML to represent a multi-participant virtual space, characterized in that the step consisting of. 클라이언트가 서버에 접속하였을 때 상기 서버가 인증을 확인하고;The server confirms the authentication when the client connects to the server; 사용자가 관심 있는 가상공간를 선택한 후 상기 클라이언트가 상기 서버에 상기 가상공간의 정보를 요청하고;After selecting a virtual space of interest to the user, the client requests information of the virtual space from the server; 상기 서버에서는 상기 가상공간을 분할하고 있는 씬에 대한 정보 및 씬의 가상공간상에서 위치하는 좌표를 표현해 주는 씬 리스트(scene list)와 가상공간의 입구에 해당하는 씬을 상기 클라이언트에게 우선적으로 전송하고;The server preferentially transmits to the client a scene list representing the information about the scene dividing the virtual space and coordinates located in the virtual space of the scene and a scene corresponding to the entrance of the virtual space; 상기 클라이언트에서는 상기 클라이언트의 브라우저가 상기 서버로부터 접수한 상기 씬 리스트 및 상기 가상공간의 입구에 해당하는 상기 씬을 파싱(parsing) 및 렌더링(rendering)을 수행해서 사용자에게 디스플레이를 하고;The client parses and renders the scene corresponding to the entrance of the virtual space and the scene list received from the server to display to the user; 상기 사용자가 씬(scene) 공간을 이동할 때 초기에 서버로부터 전송 받은 씬 리스트를 참조하여 사용자의 이동 방향에 따라 서버로부터 추가로 가져와야 할 씬을 결정한 후 상기 씬을 상기 서버에 요구하고; 그리고Requesting the scene from the server after determining a scene to be additionally obtained from the server according to a moving direction of the user by referring to a scene list initially transmitted from the server when the user moves a scene space; And 상기 서버가 상기 결정된 씬을 클라이언트에게 전송하는;The server sends the determined scene to a client; 단계로 이루어진 것을 특징으로 하는 서버에 접속한 클라이언트에게 가상공간의 정보를 보내는 방법.Sending the information of the virtual space to the client connected to the server, characterized in that consisting of steps.
KR1020000046779A 2000-08-12 2000-08-12 VRML Node Expansion and Processing Method for Progressive Data Transmission in Internet Virtual Reality Service KR100355990B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000046779A KR100355990B1 (en) 2000-08-12 2000-08-12 VRML Node Expansion and Processing Method for Progressive Data Transmission in Internet Virtual Reality Service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000046779A KR100355990B1 (en) 2000-08-12 2000-08-12 VRML Node Expansion and Processing Method for Progressive Data Transmission in Internet Virtual Reality Service

Publications (2)

Publication Number Publication Date
KR20020013224A true KR20020013224A (en) 2002-02-20
KR100355990B1 KR100355990B1 (en) 2002-10-18

Family

ID=19682969

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000046779A KR100355990B1 (en) 2000-08-12 2000-08-12 VRML Node Expansion and Processing Method for Progressive Data Transmission in Internet Virtual Reality Service

Country Status (1)

Country Link
KR (1) KR100355990B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040052131A (en) * 2002-12-13 2004-06-19 한국전자통신연구원 Distance based distributed online game server system
WO2005076189A1 (en) * 2004-02-05 2005-08-18 Nhn Corporation Method for processing the data distributed at online game server and a system thereof
KR100527682B1 (en) * 2001-10-11 2005-11-09 삼성에스디에스 주식회사 Method for processing 3 dimensional geographical informations and system thereof

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102390208B1 (en) 2017-10-17 2022-04-25 삼성전자주식회사 Method and apparatus for delivering multimedia data

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100527682B1 (en) * 2001-10-11 2005-11-09 삼성에스디에스 주식회사 Method for processing 3 dimensional geographical informations and system thereof
KR20040052131A (en) * 2002-12-13 2004-06-19 한국전자통신연구원 Distance based distributed online game server system
WO2005076189A1 (en) * 2004-02-05 2005-08-18 Nhn Corporation Method for processing the data distributed at online game server and a system thereof

Also Published As

Publication number Publication date
KR100355990B1 (en) 2002-10-18

Similar Documents

Publication Publication Date Title
US5870084A (en) System and method for efficiently storing and quickly retrieving glyphs for large character set languages in a set top box
US6088698A (en) Method and apparatus for incrementally generating a virtual three-dimensional world
US5956039A (en) System and method for increasing performance by efficient use of limited resources via incremental fetching, loading and unloading of data assets of three-dimensional worlds based on transient asset priorities
US6141002A (en) System and method for downloading and rendering glyphs in a set top box
US7283135B1 (en) Hierarchical tile-based data structure for efficient client-server publishing of data over network connections
US5966637A (en) System and method for receiving and rendering multi-lingual text on a set top box
US6348921B1 (en) System and method for displaying different portions of an object in different levels of detail
US5999944A (en) Method and apparatus for implementing dynamic VRML
US7212667B1 (en) Color image processing method for indexing an image using a lattice structure
US5973699A (en) System and method for increasing the performance for real-time rendering of three-dimensional polygonal data
US8645413B2 (en) System and method for object searching in virtual worlds
WO2010137821A2 (en) Ray tracing device and method
CN106469190A (en) Three-dimensional scenic management method and three-dimensional scenic management system
US20230418799A1 (en) Volumetric vector node and object based multi-dimensional operating system
WO2009017940A2 (en) Tiled packaging of vector image data
KR100355990B1 (en) VRML Node Expansion and Processing Method for Progressive Data Transmission in Internet Virtual Reality Service
KR101371659B1 (en) A sysytem for interoperability between multiple distributed heterogeneous virtual worlds using distributed object identifier and a method thereof
US20050151747A1 (en) 3D object graphics processing apparatus and 3D scene graph processing apparatus
WO2000070557A9 (en) Method and apparatus for registering lots in a shared virtual world
US11798199B2 (en) Method and apparatus for configuring spatial information
US6388680B1 (en) Multi-user extension mechanisms for client-server system
CN111259567A (en) Layout generating method and device and storage medium
US20230169713A1 (en) Multichip ray tracing device and method
Chien et al. Distributed quadtree processing
CN116630552B (en) Optimized rendering method for large-scale three-dimensional process factory model

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20060927

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee