KR102318698B1 - Method and program for creating virtual space where virtual objects are arranged based on spherical coordinate system - Google Patents

Method and program for creating virtual space where virtual objects are arranged based on spherical coordinate system Download PDF

Info

Publication number
KR102318698B1
KR102318698B1 KR1020190176975A KR20190176975A KR102318698B1 KR 102318698 B1 KR102318698 B1 KR 102318698B1 KR 1020190176975 A KR1020190176975 A KR 1020190176975A KR 20190176975 A KR20190176975 A KR 20190176975A KR 102318698 B1 KR102318698 B1 KR 102318698B1
Authority
KR
South Korea
Prior art keywords
user
space
client device
selection object
coordinate system
Prior art date
Application number
KR1020190176975A
Other languages
Korean (ko)
Other versions
KR20210084055A (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 KR1020190176975A priority Critical patent/KR102318698B1/en
Priority to PCT/KR2020/019057 priority patent/WO2021133079A1/en
Publication of KR20210084055A publication Critical patent/KR20210084055A/en
Priority to KR1020210141676A priority patent/KR20210131284A/en
Application granted granted Critical
Publication of KR102318698B1 publication Critical patent/KR102318698B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2004Aligning objects, relative positioning of parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Architecture (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

클라이언트 장치가 구면좌표계 기반으로 가상의 대상체가 배치된 가상공간을 형성하는 방법 및 프로그램이 제공된다. 상기 가상공간 형성 방법은, 제1사용자에 의해 하나 이상의 가상의 대상체가 배치되는 가상공간인 제1사용자공간을 생성 또는 실행하는 단계(S200); 제1사용자 클라이언트 장치의 이동 또는 상기 제1사용자의 조작에 대응하여 상기 제1사용자에 의해 선택된 제1선택대상체의 위치 변경을 수행하되, 상기 위치 변경은 3차원 공간상의 상기 제1선택대상체의 배치 위치를 변경하는 것으로서, 기준좌표계 상의 제1위치를 원점으로 하는 제1구면좌표계에서 상기 제1위치로부터 특정한 거리의 구면상에서 이동되는 것인, 제1선택대상체 위치변경단계(S300); 및 상기 제1선택대상체에 대한 상기 제1사용자의 배치요청에 따라, 상기 제1선택대상체를 상기 제1사용자공간에 배치하는 단계(S400);를 포함한다.A method and program are provided in which a client device forms a virtual space in which a virtual object is disposed based on a spherical coordinate system. The method for forming a virtual space includes the steps of creating or executing a first user space, which is a virtual space in which one or more virtual objects are arranged, by a first user (S200); A position change of the first selection object selected by the first user is performed in response to the movement of the first user client device or the manipulation of the first user, wherein the position change is the arrangement of the first selection object in a three-dimensional space Changing the position, the first selected object position changing step (S300), which is moved on a spherical surface at a specific distance from the first position in a first spherical coordinate system having a first position on the reference coordinate system as the origin; and disposing the first selection object in the first user space in response to the first user's request for placement of the first selection object (S400).

Description

구면좌표계 기반 가상의 대상체가 배치된 가상공간 형성 방법 및 프로그램{METHOD AND PROGRAM FOR CREATING VIRTUAL SPACE WHERE VIRTUAL OBJECTS ARE ARRANGED BASED ON SPHERICAL COORDINATE SYSTEM}A method and program for forming a virtual space in which a virtual object based on a spherical coordinate system is arranged

본 발명은 가상공간 형성 방법에 관한 것으로, 보다 자세하게는 구면좌표계 기반으로 가상의 대상체가 배치되는 가상공간의 형성 방법에 관한 것이다.The present invention relates to a method of forming a virtual space, and more particularly, to a method of forming a virtual space in which a virtual object is disposed based on a spherical coordinate system.

최근 가상현실(VR, Virtual Reality) 및 증강현실(AR, Augmented Reality)을 포함하는 확장현실(XR, Extended Reality)을 적용한 다양한 서비스의 증가로 인해 가상의 대상체를 배치하여 가상공간을 생성하기 위한 노력들이 계속되고 있다.Efforts to create a virtual space by arranging virtual objects due to the recent increase in various services to which extended reality (XR) is applied, including virtual reality (VR) and augmented reality (AR, Augmented Reality) are continuing

종래의 가상공간 내의 대상체 배치 방법은 배치 위치에 대하여 공간좌표를 입력하는 등 현실에서 사용자가 대상체를 배치하는 방식과 괴리가 있고, 가상공간 형성을 위한 사용자 조작 방법, 장치 및 사용자 인터페이스가 복잡하여 전문가가 아닌 일반인이 접근하기 어려운 문제가 있었다.The conventional method of arranging an object in a virtual space is different from a method in which a user arranges an object in reality, such as inputting spatial coordinates with respect to an arrangement location, and the user manipulation method, device, and user interface for forming a virtual space are complicated. There was a problem that was difficult for the general public to access.

공개특허공보 제10-2012-0017783호, 2012.02.29Laid-Open Patent Publication No. 10-2012-0017783, 2012.02.29

본 발명은 현실공간에서 사용자가 현실의 대상체를 배치하는 방식과 유사하게, 가상공간에서 사용자가 가상의 대상체를 구면좌표계를 기반으로 간편하게 배치할 수 있는 가상공간 형성 방법 및 프로그램을 제공하는 것이다.An object of the present invention is to provide a method and a program for forming a virtual space in which a user can conveniently arrange a virtual object in a virtual space based on a spherical coordinate system, similar to a method in which a user arranges a real object in a real space.

또한, 본 발명은 특정 사용자가 생성한 사용자공간에 다른 사용자가 참여하여, 관람 또는 수정할 수 있는 가상공간 형성 방법 및 프로그램을 제공하는 것이다.Another object of the present invention is to provide a method and program for forming a virtual space that other users can view or modify by participating in a user space created by a specific user.

본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the problems mentioned above, and other problems not mentioned will be clearly understood by those skilled in the art from the following description.

상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 가상공간 형성 방법은, 제1사용자에 의해 하나 이상의 가상의 대상체가 배치되는 가상공간인 제1사용자공간을 생성 또는 실행하는 단계; 제1사용자 클라이언트 장치의 이동 또는 상기 제1사용자의 조작에 대응하여 상기 제1사용자에 의해 선택된 제1선택대상체의 위치 변경을 수행하되, 상기 위치 변경은 3차원 공간상의 상기 제1선택대상체의 배치 위치를 변경하는 것으로서, 기준좌표계 상의 제1위치를 원점으로 하는 제1구면좌표계에서 상기 제1위치로부터 특정한 거리의 구면상에서 이동되는 것인, 제1선택대상체 위치변경단계; 및 상기 제1선택대상체에 대한 상기 제1사용자의 배치요청에 따라, 상기 제1선택대상체를 상기 제1사용자공간에 배치하는 단계;를 포함하고, 상기 기준좌표계는, 상기 제1사용자공간 생성 시점의 상기 제1사용자 클라이언트 장치의 배치 위치 또는 상기 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 제1사용자 위치인 기준위치를 원점으로 하는 구면좌표계 또는 공간좌표계를 포함하는 좌표계이고, 상기 제1위치는, 상기 제1선택대상체가 선택된 상태에서의 상기 제1사용자 클라이언트 장치의 배치 위치 또는 상기 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 제1사용자 위치인 것이다.A method of forming a virtual space according to an aspect of the present invention for solving the above-described problem includes the steps of: creating or executing a first user space, which is a virtual space in which one or more virtual objects are arranged, by a first user; A position change of the first selection object selected by the first user is performed in response to the movement of the first user client device or the manipulation of the first user, wherein the position change is the arrangement of the first selection object in a three-dimensional space a first selection object position changing step of changing a position, which is moved on a spherical surface at a specific distance from the first position in a first spherical coordinate system having a first position on the reference coordinate system as an origin; and arranging the first selection object in the first user space in response to the first user's request for placement of the first selection object, wherein the reference coordinate system is at the time of creation of the first user space. is a coordinate system including a spherical coordinate system or a spatial coordinate system having a reference position that is a first user position calculated from the arrangement position of the first user client device or the arrangement position of the first user client device as an origin, and the first position is , the first user position calculated from the arrangement position of the first user client device when the first selection object is selected or the arrangement position of the first user client device.

또한, 다른 일 실시예에서, 상기 제1선택대상체에 대한 상기 제1사용자의 복제요청에 따라, 상기 제1선택대상체의 선택은 유지하되 상기 제1선택대상체와 동일한 종류, 모양, 크기 또는 방향을 갖는 하나 이상의 복제대상체를 상기 제1사용자공간에 배치하는 단계;를 더 포함한다.Also, in another embodiment, according to the copy request of the first user for the first selection object, the selection of the first selection object is maintained but the same type, shape, size or direction as the first selection object is selected. It further includes; disposing one or more duplicated objects in the first user space.

또한, 다른 일 실시예에서, 상기 기준위치에 대한 상기 제1위치의 벡터값을 기초로, 배치된 상기 제1선택대상체의 제1구면좌표계에 대한 제1구면좌표정보를 상기 기준좌표계에 대한 제1기준좌표정보로 변환하는 단계;를 더 포함한다.In addition, in another embodiment, based on the vector value of the first position with respect to the reference position, first spherical coordinate information for the first spherical coordinate system of the first selected object is arranged as the first spherical coordinate information for the reference coordinate system. 1 Converting to reference coordinate information; further includes.

또한, 다른 일 실시예에서, 상기 제1사용자로부터 상기 제1위치와 상기 제1선택대상체 간의 거리에 대한 변경정보를 수신하고 적용하는 단계;를 더 포함한다.In another embodiment, the method further includes: receiving and applying change information on a distance between the first location and the first selection object from the first user.

또한, 다른 일 실시예에서, 제1선택대상체 변경정보를 수신하고 적용하는 단계;를 더 포함하고, 상기 제1선택대상체 변경정보는, 상기 제1사용자에 의한 상기 제1선택대상체의 모양, 크기 또는 회전에 관한 변경정보를 포함하는 것이다.In another embodiment, the method further includes: receiving and applying first selection object change information, wherein the first selection object change information includes: a shape and a size of the first selection object by the first user Or to include change information about rotation.

또한, 다른 일 실시예에서, 상기 제1사용자공간은, 현실공간의 영상데이터를 수신하고 이에 대응하도록 생성된 가상공간을 포함하는 것이다.Also, in another embodiment, the first user space includes a virtual space generated to receive image data of a real space and correspond thereto.

또한, 다른 일 실시예에서, 상기 제1사용자공간에 배치된 하나 이상의 대상체의 대상체 정보 또는 배치 위치 정보를 포함하는 제1생성데이터를 서버로 전송하는 단계;를 더 포함한다.In another embodiment, the method further includes transmitting first generation data including object information or arrangement location information of one or more objects arranged in the first user space to a server.

또한, 다른 일 실시예에서, 상기 제1생성데이터는, 상기 제1사용자가 상기 제1사용자공간을 촬영한 썸네일 이미지 및 상기 썸네일 이미지 촬영 시점의 상기 제1사용자 클라이언트 장치의 배치 위치를 포함하고, 상기 썸네일 이미지 촬영 시점의 상기 제1사용자 클라이언트 장치의 배치 위치는, 상기 제1사용자 또는 제2사용자가 상기 제1생성데이터를 수신하여 상기 제1사용자공간에 접속하는 경우의 제1사용자공간에서의 접속 위치로, 방향정보를 포함한다.Further, in another embodiment, the first generated data includes a thumbnail image in which the first user captured the first user space, and an arrangement position of the first user client device at the time of photographing the thumbnail image, The arrangement position of the first user client device at the time of capturing the thumbnail image is in the first user space when the first user or the second user receives the first generated data and accesses the first user space. Connection location, including direction information.

또한, 다른 일 실시예에서, 서버가 제1사용자 클라이언트 장치로부터 제1사용자공간에 대한 제1생성데이터를 수신하는 단계; 및 서버가 상기 제1생성데이터를 제2사용자 클라이언트 장치에 전송하는 단계;를 포함하고, 상기 제1사용자공간은, 상기 제1사용자에 의해 배치된 하나 이상의 가상의 대상체를 포함하는 가상공간이고, 상기 제1생성데이터는, 상기 제1사용자공간에 배치된 하나 이상의 대상체의 대상체 정보 또는 배치 위치 정보를 포함하고, 상기 제1사용자에 의해 배치된 대상체는, 상기 제1사용자 클라이언트 장치에 의해 상기 제1사용자 클라이언트 장치의 이동 또는 상기 제1사용자의 조작에 대응하여 상기 제1사용자에 의해 선택된 제1선택대상체의 위치가 변경되고, 상기 제1선택대상체에 대한 상기 제1사용자의 배치요청에 따라 상기 제1사용자공간에 배치되는 것을 특징으로 하고, 상기 위치 변경은, 3차원 공간상의 상기 제1선택대상체의 배치 위치를 변경하는 것으로서, 기준좌표계 상의 제1위치를 원점으로 하는 제1구면좌표계에서 상기 제1위치로부터 특정한 거리의 구면상에서 이동되는 것이고, 상기 기준좌표계는, 상기 제1사용자공간 생성 시점의 상기 제1사용자 클라이언트 장치의 배치 위치 또는 상기 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 제1사용자 위치인 기준위치를 원점으로 하는 구면좌표계 또는 공간좌표계를 포함하는 좌표계이고, 상기 제1위치는, 상기 제1선택대상체가 선택된 상태에서의 상기 제1사용자 클라이언트 장치의 배치 위치 또는 상기 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 제1사용자 위치인 것이다.Further, in another embodiment, the server receiving the first generated data for the first user space from the first user client device; and transmitting, by the server, the first generated data to a second user client device, wherein the first user space is a virtual space including one or more virtual objects arranged by the first user, The first generated data includes object information or arrangement location information of one or more objects disposed in the first user space, and the object disposed by the first user is selected by the first user client device. The position of the first selection object selected by the first user is changed in response to the movement of the one-user client device or the operation of the first user, and according to the first user's request for placement of the first selection object, the It is characterized in that it is disposed in a first user space, and the position change is to change the arrangement position of the first selection object in a three-dimensional space, and the first spherical coordinate system with the first position on the reference coordinate system as the origin. It is moved on a spherical surface at a specific distance from a first position, and the reference coordinate system is a first position calculated from the arrangement position of the first user client device or the arrangement position of the first user client device at the time of generating the first user space. A coordinate system including a spherical coordinate system or a spatial coordinate system having a reference position, which is a user position, as an origin, wherein the first position is the arrangement position of the first user client device in a state where the first selection object is selected or the first user It is the first user location calculated from the placement location of the client device.

또한, 다른 일 실시예에서, 서버가 제2사용자 클라이언트 장치로부터 제2생성데이터를 수신하는 단계;를 더 포함하고, 상기 제2생성데이터는, 제2사용자에 의해 하나 이상의 대상체 배치가 변경된 상기 제1사용자공간의 생성데이터이고, 상기 제2사용자에 의해 배치가 변경된 대상체는, 상기 제2사용자 클라이언트 장치에 의해 상기 제2사용자 클라이언트 장치의 이동 또는 상기 제2사용자의 조작에 대응하여 상기 제2사용자에 의해 선택된 제2선택대상체의 위치가 변경되고, 상기 제2선택대상체에 대한 상기 제2사용자의 배치요청에 따라 상기 제1사용자공간에 배치되는 것을 특징으로 하고, 상기 위치 변경은, 3차원 공간상의 상기 제2선택대상체의 배치 위치를 변경하는 것으로서, 상기 기준좌표계 상의 제2위치를 원점으로 하는 제2구면좌표계에서 상기 제2위치로부터 특정한 거리의 구면상에서 이동되는 것이고, 상기 제2위치는, 상기 제2선택대상체가 선택된 상태에서의 상기 제2사용자 클라이언트 장치의 배치 위치 또는 상기 제2사용자 클라이언트 장치의 배치 위치로부터 산출된 제2사용자 위치인 것이다.Also, in another embodiment, the method further includes: receiving, by the server, second generated data from the second user client device, wherein the second generated data includes the second generated data, wherein the arrangement of one or more objects is changed by a second user. The object, which is generated data of one user space and whose arrangement has been changed by the second user, corresponds to the movement of the second user client device by the second user client device or the manipulation of the second user by the second user. The position of the second selection object selected by By changing the arrangement position of the second selection object on the image, it is moved on a spherical surface at a specific distance from the second position in a second spherical coordinate system having the second position on the reference coordinate system as the origin, and the second position is, It is the arrangement position of the second user client device when the second selection object is selected or the second user position calculated from the arrangement position of the second user client device.

또한, 다른 일 실시예에서, 상기 기준위치에 대한 상기 제2위치의 벡터값을 기초로, 배치된 상기 제2선택대상체의 제2구면좌표계에 대한 제2구면좌표정보를 상기 기준좌표계에 대한 제2기준좌표정보로 변환하는 단계;를 더 포함한다.In addition, in another embodiment, on the basis of the vector value of the second position with respect to the reference position, second spherical coordinate information for the second spherical coordinate system of the second selection target is arranged as the second spherical coordinate information for the reference coordinate system. 2 Converting to reference coordinate information; further includes.

또한, 다른 일 실시예에서, 서버가 상기 제2생성데이터를 제1사용자 클라이언트 장치에 전송하는 단계;를 더 포함한다.Also, in another embodiment, the server transmits the second generated data to the first user client device; further comprising.

본 발명의 다른 일 실시예에 따른 가상공간 형성 프로그램은, 하드웨어와 결합되어 상기 언급된 가상공간 형성 방법을 실행하며, 매체에 저장된다.A virtual space forming program according to another embodiment of the present invention is combined with hardware to execute the above-mentioned virtual space forming method, and is stored in a medium.

본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.

상기와 같은 본 발명에 따르면, 아래와 같은 다양한 효과들을 가진다.According to the present invention as described above, it has various effects as follows.

첫째, 사용자는 현실공간에서의 대상체 배치와 유사하게, 가상공간에서 가상의 대상체를 선택하고, 선택한 대상체를 구면좌표계를 기반으로 배치하고자 하는 위치로 이동시킨 후 배치함으로써, 복잡한 조작 없이 간편하게 대상체를 배치하여 가상공간을 형성할 수 있다.First, similar to object placement in real space, the user selects a virtual object in the virtual space, moves the selected object to a location to be placed based on the spherical coordinate system, and arranges the object conveniently without complicated manipulation. Thus, a virtual space can be created.

둘째, 사용자가 가상공간 형성 시 지속적으로 이동하여 구면좌표계의 원점이 이동되는 경우에도, 사용자공간 생성시 기준위치를 설정함으로써 기준위치와 상기 원점을 기초로 배치된 대상체의 기준위치에 대한 위치정보를 산출할 수 있다.Second, even when the user continuously moves when the virtual space is formed and the origin of the spherical coordinate system is moved, position information about the reference position and the reference position of the object arranged based on the origin is obtained by setting the reference position when creating the user space. can be calculated.

셋째, 특정 사용자가 생성한 사용자공간을 다른 사용자에게 공유함으로써, 다른 사용자가 상기 사용자공간에 참여하여 관람 또는 수정할 수 있다.Third, by sharing the user space created by a specific user with other users, other users can participate in the user space and view or modify the user space.

본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.

도 1은 본 발명의 일 실시예에 따른 가상공간 형성 방법의 순서도이다.
도 2는 본 발명의 일 실시예에 따른 클라이언트 장치의 이동에 따른 선택대상체의 위치 변경을 설명하기 위한 도면이다.
도 3 내지 4는 본 발명의 일 실시예에 따른 제1선택대상체의 위치 변경을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 제1선택대상체의 제1구면좌표정보를 제1기준좌표로 변환하는 단계를 더 포함하는 가상공간 형성 방법의 순서도이다.
도 6은 본 발명의 일 실시예에 따른 제1생성데이터 전송 단계를 더 포함하는 가상공간 형성 방법의 순서도이다.
도 7 및 10은 본 발명의 일 실시예에 따른 서버가 클라이언트 장치로부터 생성데이터를 수신 또는 전송하는 단계를 포함하는 가상공간 형성 방법의 순서도이다.
도 8 및 9는 본 발명의 일 실시예에 따른 제3선택대상체의 위치 변경을 설명하기 위한 도면이다.
1 is a flowchart of a method for forming a virtual space according to an embodiment of the present invention.
FIG. 2 is a view for explaining a change in the position of a selection target according to movement of a client device according to an embodiment of the present invention.
3 to 4 are diagrams for explaining a change in the position of the first selection target according to an embodiment of the present invention.
5 is a flowchart of a method of forming a virtual space further comprising converting first spherical coordinate information of a first selection object into first reference coordinates according to an embodiment of the present invention.
6 is a flowchart of a method of forming a virtual space further including the step of transmitting the first generated data according to an embodiment of the present invention.
7 and 10 are flowcharts of a method for forming a virtual space including the step of receiving or transmitting, by a server, generated data from a client device according to an embodiment of the present invention.
8 and 9 are diagrams for explaining a change in the position of a third selection target according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. Advantages and features of the present invention and methods of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various different forms, and only these embodiments allow the disclosure of the present invention to be complete, and those of ordinary skill in the art to which the present invention pertains. It is provided to fully understand the scope of the present invention to those skilled in the art, and the present invention is only defined by the scope of the claims.

본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terminology used herein is for the purpose of describing the embodiments and is not intended to limit the present invention. As used herein, the singular also includes the plural unless specifically stated otherwise in the phrase. As used herein, “comprises” and/or “comprising” does not exclude the presence or addition of one or more other components in addition to the stated components. Like reference numerals refer to like elements throughout, and "and/or" includes each and every combination of one or more of the recited elements. Although "first", "second", etc. are used to describe various elements, these elements are not limited by these terms, of course. These terms are only used to distinguish one component from another. Accordingly, it goes without saying that the first component mentioned below may be the second component within the spirit of the present invention.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used herein will have the meaning commonly understood by those of ordinary skill in the art to which this invention belongs. In addition, terms defined in a commonly used dictionary are not to be interpreted ideally or excessively unless specifically defined explicitly.

공간적으로 상대적인 용어인 "아래(below)", "아래(beneath)", "하부(lower)", "위(above)", "상부(upper)" 등은 도면에 도시되어 있는 바와 같이 하나의 구성요소와 다른 구성요소들과의 상관관계를 용이하게 기술하기 위해 사용될 수 있다. 공간적으로 상대적인 용어는 도면에 도시되어 있는 방향에 더하여 사용시 또는 동작시 구성요소들의 서로 다른 방향을 포함하는 용어로 이해되어야 한다. 예를 들어, 도면에 도시되어 있는 구성요소를 뒤집을 경우, 다른 구성요소의 "아래(below)"또는 "아래(beneath)"로 기술된 구성요소는 다른 구성요소의 "위(above)"에 놓여질 수 있다. 따라서, 예시적인 용어인 "아래"는 아래와 위의 방향을 모두 포함할 수 있다. 구성요소는 다른 방향으로도 배향될 수 있으며, 이에 따라 공간적으로 상대적인 용어들은 배향에 따라 해석될 수 있다.Spatially relative terms "below", "beneath", "lower", "above", "upper", etc. It can be used to easily describe the correlation between a component and other components. A spatially relative term should be understood as a term that includes different directions of components during use or operation in addition to the directions shown in the drawings. For example, when a component shown in the drawing is turned over, a component described as “beneath” or “beneath” of another component may be placed “above” of the other component. can Accordingly, the exemplary term “below” may include both directions below and above. Components may also be oriented in other orientations, and thus spatially relative terms may be interpreted according to orientation.

본 명세서에서 '대상체'는 가상현실(Virtual Reality; VR) 또는 증강현실(Augmented Reality; AR)을 포함하는 가상공간에서 배치되는 가상의 대상체를 의미한다. 상기 대상체는 특정 객체의 CG(Computer Graphic) 영상 또는 실제 사물이나 인물의 영상을 포함하나, 이에 제한되지 않고 가상공간에서 배치할 수 있는 모든 대상체를 포함한다.In the present specification, the term 'object' refers to a virtual object disposed in a virtual space including virtual reality (VR) or augmented reality (AR). The object includes, but is not limited to, a computer graphic (CG) image of a specific object or an image of a real object or person, and includes all objects that can be arranged in a virtual space.

본 명세서에서 '사용자공간'은 사용자에 의해 배치되는 하나 이상의 가상의 대상체를 포함하는 가상공간을 의미한다. 상기 가상공간은 현실 세계의 객체나 배경 등을 CG 영상으로만 제공하는 VR 가상공간 또는 현실 공간의 영상 위에 제공되는 가상의 대상체 영상인 AR 가상공간을 포함한다.In this specification, 'user space' refers to a virtual space including one or more virtual objects arranged by a user. The virtual space includes a VR virtual space in which an object or background of the real world is provided only as a CG image or an AR virtual space that is an image of a virtual object provided on an image of the real space.

본 명세서에서 '기준위치'는 사용자공간의 기준이 되는 위치로, 상기 사용자공간를 초기 생성하거나 기존에 생성된 사용자공간을 다시 실행하는 시점의 클라이언트 장치의 배치 위치 또는 클라이언트 장치의 배치 위치로부터 산출된 사용자 위치를 포함한다.In the present specification, a 'reference location' is a reference location of the user space, and the user calculated from the location of the client device or the location of the client device when the user space is initially created or the previously created user space is re-executed. include location.

본 명세서에서 '기준좌표계'는 상기 기준위치를 원점으로 하는 좌표계로, 공간좌표계 또는 구면좌표계를 포함하나, 이에 제한되지 않는다.In the present specification, the 'reference coordinate system' refers to a coordinate system having the reference position as an origin, and includes, but is not limited to, a spatial coordinate system or a spherical coordinate system.

본 명세서에서 '선택대상체'는 사용자공간에 존재하는 하나 이상의 대상체 중 사용자의 선택요청에 의해 선택된 대상체를 의미한다. 예를 들어, 상기 선택대상체는 선택 후 사용자가 원하는 가상공간 상의 위치에 배치될 때까지 상기 사용자의 클라이언트 장치의 이동 또는 상기 사용자의 조작에 따라 사용자공간 내에서 이동되는 것일 수 있다.In the present specification, a 'selection object' refers to an object selected by a user's selection request from among one or more objects existing in the user space. For example, the selection object may be moved in the user space according to the user's movement of the client device or the user's manipulation until it is placed at a location on the virtual space desired by the user after selection.

본 명세서에서 '제1선택대상체'는 제1사용자에 의해 선택된 제1사용자공간 내의 대상체를 의미한다.In this specification, the 'first selection object' means an object in the first user space selected by the first user.

본 명세서에서 '제2선택대상체'는 제2사용자에 의해 선택된 제1사용자공간 내의 대상체를 의미한다.In this specification, the 'second selection object' means an object in the first user space selected by the second user.

본 명세서에서 '클라이언트 장치'는 사용자들이 프로그램(또는 어플리케이션)을 설치하여 사용할 수 있는 통신 기능을 포함한 모든 장치를 말한다. 즉, 클라이언트 장치는 스마트폰, 태블릿, PDA, 랩톱, 스마트워치, 스마트카메라 등과 같은 전기 통신 장치, 리모트 콘트롤러, VR/AR글라스, VR/AR헤드셋 등과 같은 VR/AR기기 중 하나 이상을 포함할 수 있으나, 이에 제한되는 것은 아니다.In this specification, a 'client device' refers to any device including a communication function that users can use by installing a program (or application). That is, the client device may include one or more of a telecommunication device such as a smartphone, tablet, PDA, laptop, smart watch, smart camera, etc., a VR/AR device such as a remote controller, VR/AR glasses, VR/AR headset, etc. However, the present invention is not limited thereto.

본 명세서에서 '컴퓨터'는 연산처리를 수행할 수 있는 다양한 장치들이 모두 포함된다. 예를 들어, 컴퓨터는 데스크 탑 PC, 노트북(Note Book) 뿐만 아니라 스마트폰(Smart phone), 태블릿 PC, 셀룰러폰(Cellular phone), 피씨에스폰(PCS phone; Personal Communication Service phone), 동기식/비동기식 IMT-2000(International Mobile Telecommunication-2000)의 이동 단말기, 팜 PC(Palm Personal Computer), 개인용 디지털 보조기(PDA; Personal Digital Assistant) 등도 해당될 수 있다.As used herein, the term 'computer' includes various devices capable of performing arithmetic processing. For example, computers include desktop PCs, notebooks (Note Books) as well as smart phones, tablet PCs, cellular phones, PCS phones (Personal Communication Service phones), synchronous/asynchronous A mobile terminal of International Mobile Telecommunication-2000 (IMT-2000), a Palm Personal Computer (PC), a Personal Digital Assistant (PDA), and the like may also be applicable.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 가상공간 형성 방법의 순서도이고, 도 2 내지 4는 본 발명의 일 실시예에 따른 가상공간 형성 방법에 있어서, 대상체를 배치하는 방법을 설명하기 위한 도면이다.1 is a flowchart of a method of forming a virtual space according to an embodiment of the present invention, and FIGS. 2 to 4 are diagrams for explaining a method of arranging an object in the method of forming a virtual space according to an embodiment of the present invention .

도 1 내지 4를 참조하면, 본 발명의 일 실시예에 따른 가상공간 형성 방법은, 제1사용자 클라이언트 장치(310)가 제1사용자공간(10)을 생성 또는 실행하는 단계(S200); 상기 제1사용자 클라이언트 장치의 이동 또는 상기 제1사용자(210)의 조작에 대응하여 상기 제1사용자에 의해 선택된 제1선택대상체(410)의 위치 변경을 수행하는 단계(S300); 및 상기 제1선택대상체에 대한 제1사용자의 배치요청에 따라 상기 제1선택대상체를 상기 제1사용자공간에 배치하는 단계(S400);를 포함한다. 이하, 각 단계에 대한 상세한 설명을 기술한다.1 to 4 , a method for forming a virtual space according to an embodiment of the present invention includes: a first user client device 310 creating or executing a first user space 10 ( S200 ); performing a position change of the first selection target 410 selected by the first user in response to the movement of the first user client device or the manipulation of the first user 210 (S300); and disposing the first selection object in the first user space in response to a first user's request for placement of the first selection object (S400). Hereinafter, a detailed description of each step will be described.

제1사용자 클라이언트 장치(310)가 제1사용자공간(10)을 생성 또는 실행한다(S200). 즉, 일 실시예에서, 제1사용자의 요청에 의해 제1사용자 클라이언트 장치는 제1사용자가 가상의 대상체를 배치할 가상공간인 제1사용자공간을 생성 또는 기 생성된 제1사용자공간에 재접속하도록 실행한다. The first user client device 310 creates or executes the first user space 10 (S200). That is, in one embodiment, upon the request of the first user, the first user client device creates a first user space, which is a virtual space in which the first user will place a virtual object, or reconnects to the previously created first user space. run

일 실시예에서, 제1사용자공간(10)은 상기 제1사용자에 의해 배치되는 하나 이상의 가상의 대상체를 포함하는 가상공간으로, VR 가상공간뿐만 아니라 현실공간의 영상데이터를 수신하고 이에 대응하도록 생성된 AR 가상공간을 포함한다.In one embodiment, the first user space 10 is a virtual space including one or more virtual objects arranged by the first user, and is generated to receive and correspond to image data in the real space as well as the VR virtual space. AR virtual space.

제1사용자 클라이언트 장치가 상기 제1사용자 클라이언트 장치의 이동 또는 상기 제1사용자의 조작에 대응하여 상기 제1사용자에 의해 선택된 제1선택대상체(410)의 위치 변경을 수행한다(S300). 상기 제1선택대상체(410)는 상기 제1사용자의 제1선택요청에 의해 선택된 제1사용자공간 내의 특정 대상체이고, 상기 제1선택요청은 제1사용자 클라이언트장치에 입력될 수 있는 상기 제1사용자의 특정 대상체에 대한 모든 입력을 포함한다.The first user client device changes the location of the first selection target 410 selected by the first user in response to the movement of the first user client device or the manipulation of the first user ( S300 ). The first selection object 410 is a specific object in a first user space selected by the first selection request of the first user, and the first selection request is the first user that can be input to the first user client device. Includes all inputs for a specific object of

일 실시예에서, 상기 제1선택요청은 제1사용자의 클라이언트 장치 화면상의 특정 대상체에 대한 터치 또는 상기 화면의 일 영역에 고정되어 위치하는 제1아이콘이 특정 대상체 상에 위치한 상태에서 제2아이콘의 터치를 포함한다.In an embodiment, the first selection request may be performed by a first user touching a specific object on the screen of the client device or a second icon in a state where the first icon fixed in an area of the screen is located on the specific object. includes touch.

일 실시예에서, 클라이언트 장치의 이동은 클라이언트 장치의 위치(좌표) 변경의 움직임뿐만 아니라, 클라이언트 장치의 방향 전환, 즉 회전 움직임도 포함할 수 있다.In one embodiment, the movement of the client device may include not only a movement of changing the position (coordinate) of the client device, but also a change of direction, ie, a rotational movement of the client device.

일 실시예에서, 상기 제1선택대상체의 변경은 클라이언트 장치의 이동 또는 제1사용자의 조작에 대응하는 제1사용자공간에서의 제1선택대상체 위치 변경, 제1위치로부터의 상기 제1선택대상체의 거리 변경 또는 제1사용자공간에서의 위치가 고정된 상태에서 제1선택대상체의 모양, 크기 또는 방향의 변경을 포함한다. 이하, 상세히 후술한다.In an embodiment, the change of the first selection object may include a change in the position of the first selection object in the first user space corresponding to the movement of the client device or the manipulation of the first user, the change of the position of the first selection object from the first position. This includes changing the distance or changing the shape, size, or direction of the first selection object while the position in the first user space is fixed. Hereinafter, it will be described in detail.

일 실시예에서, 제1선택대상체의 제1사용자공간에서의 위치 변경은, 3차원 가상공간인 제1사용자공간에서의 상기 제1선택대상체의 배치 위치를 변경하는 것으로서, 상기 제1선택대상체는 선택된 상태에서 상기 제1사용자 클라이언트 장치의 이동 또는 상기 제1사용자의 조작에 따라 위치가 변경된다. 또한, 상기 배치 위치는 위치(좌표) 정보뿐만 아니라, 제1선택대상체의 방향에 관한 배치 정보를 포함한다.In an embodiment, changing the position of the first selection object in the first user space is changing the arrangement position of the first selection object in the first user space, which is a three-dimensional virtual space, wherein the first selection object is In the selected state, the location is changed according to the movement of the first user's client device or the manipulation of the first user. In addition, the arrangement position includes position (coordinate) information as well as arrangement information regarding the direction of the first selection target.

일 실시예에서, 도 2를 참조하면, 상기 제1선택대상체(410)는 제1사용자공간 내에서 제1사용자 클라이언트 장치(310)의 특정 방향에 대해 특정 거리를 유지하면서 상기 제1사용자 클라이언트 장치의 이동에 대응하여 이동될 수 있다. In one embodiment, referring to FIG. 2 , the first selection object 410 maintains a specific distance with respect to a specific direction of the first user client device 310 in the first user space while maintaining the first user client device. may be moved in response to the movement of

예를 들어, 제1선택대상체가 제1사용자 클라이언트 장치의 후면(사용자 반대편)의 중심에 대해 직교하여 1m 거리에 위치하는 경우, 상기 제1선택대상체는 제1사용자에 의한 제1사용자 클라이언트 장치의 이동(회전, 위치 변경 포함)에 따라 이에 대응하도록 제1사용자공간 내에서의 위치가 변경될 수 있다. For example, when the first selection object is located at a distance of 1 m perpendicular to the center of the rear surface (opposite to the user) of the first user client device, the first selection object is the first user client device by the first user. The position in the first user space may be changed to correspond to the movement (including rotation and position change).

구체적으로, 도 2를 참조하면, 클라이언트 장치(310)의 위치는 고정되고 방향만 회전(311, 312) 하거나 위치가 변경(312, 313)되는 경우, 제1선택대상체(410)의 위치 및 방향은 이에 대응되도록 변경(411, 412, 413)될 수 있다. 즉, 이 경우 사용자는 제1선택대상체 배치에 대한 별도의 조작 없이 클라이언트 장치의 이동(회전 포함)만으로 제1선택대상체의 위치를 손쉽게 변경할 수 있는 효과가 있다. Specifically, referring to FIG. 2 , when the position of the client device 310 is fixed and only the direction is rotated ( 311 , 312 ) or the position is changed ( 312 , 313 ), the position and direction of the first selection object 410 . may be changed (411, 412, 413) to correspond thereto. That is, in this case, there is an effect that the user can easily change the position of the first selection object only by movement (including rotation) of the client device without a separate manipulation of the arrangement of the first selection object.

한편, 제1선택대상체의 위치 변경은 이에 제한되지 않고, 터치 또는 드래그를 포함하는 사용자의 조작에 의해서도 수행될 수 있음은 물론이다. 또한, 후술하는 바와 같이 상기 제1선택대상체와 상기 제1위치(예를 들어, 제1사용자 클라이언트 장치) 간의 거리는 사용자의 조작에 따라 변경 가능하다.Meanwhile, the change of the position of the first selection object is not limited thereto, and may be performed by a user's manipulation including a touch or drag, of course. Also, as will be described later, the distance between the first selection target and the first location (eg, the first user client device) may be changed according to a user's manipulation.

또한, 일 실시예에서 상기 제1선택대상체의 방향은 클라이언트 장치에 대해 고정될 수 있다. 예를 들어, 이동 전 제1선택대상체의 정면이 클라이언트 장치를 향하고, 상기 클라이언트 장치의 이동(311, 312)에 따라 상기 제1선택대상체의 위치가 이동(411, 412)되는 경우에 있어서, 이동 후의 상기 제1선택대상체의 정면이 이동 후의 상기 클라이언트 장치를 향하도록 자동으로 회전될 수 있다. 또한, 다른 실시예에서, 선택대상체의 방향은 사용자공간에서 고정되고 클라이언트 장치의 이동에 따라 위치 변경만 수행될 수도 있다. 또한, 후술하는 바와 같이 상기 제1선택대상체는 사용자의 조작에 따라 회전 가능하다.Also, in an embodiment, the direction of the first selection target may be fixed with respect to the client device. For example, when the front of the first selection object faces the client device before movement, and the position of the first selection object is moved (411, 412) according to the movement (311, 312) of the client device, the movement The front face of the first selection object after the movement may be automatically rotated to face the client device after movement. Also, in another embodiment, the direction of the selection object may be fixed in the user space and only the location change may be performed according to the movement of the client device. Also, as will be described later, the first selection object is rotatable according to a user's manipulation.

일 실시예에서, 제1선택대상체(410)는 선택된 상태에서 상기 제1사용자 클라이언트 장치의 이동 또는 상기 제1사용자의 조작에 따라 제1위치(110)로부터 특정한 거리의 구면상에서 이동되도록 제1사용자공간 내에서 위치가 변경될 수 있다.In an embodiment, the first selection object 410 is moved by the first user on a spherical surface at a specific distance from the first location 110 according to the movement of the first user client device or the operation of the first user in the selected state. The position in space may change.

일 실시예에서, 상기 제1위치(110)는 상기 제1선택대상체(410)가 선택된 상태에서의 상기 제1사용자 클라이언트 장치(310)의 배치 위치 또는 상기 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 제1사용자(210) 위치를 포함한다.In an embodiment, the first position 110 is calculated from the arrangement position of the first user client device 310 or the arrangement position of the first user client device when the first selection object 410 is selected. and the location of the first user 210 .

도 3은 상기 제1위치(110)가 상기 제1선택대상체가 선택된 상태에서의 상기 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 상기 제1사용자(210) 위치인 경우를 설명하기 위한 도면이다. FIG. 3 is a diagram for explaining a case in which the first location 110 is the location of the first user 210 calculated from the arrangement location of the first user client device when the first selection object is selected.

도 3을 참조하면, 일 실시예에서, 제1선택대상체가 선택된 상태에서의 제1사용자 위치인 제1위치는, 상기 제1사용자 클라이언트 장치의 위치로부터 제1사용자의 팔길이 또는 제1사용자 클라이언트 방향 등을 고려하여 산출되는 것일 수 있다. Referring to FIG. 3 , in an embodiment, the first position, which is the first user position in the state in which the first selection object is selected, is an arm length of the first user or the first user client from the position of the first user client device. It may be calculated in consideration of the direction and the like.

또한, 일 실시예에서, 상기 제1위치는 상기 제1선택대상체가 선택된 상태에서의 제1사용자 위치이므로, 제1사용자가 제1선택대상체를 선택한 상태에서 이동하는 경우, 이동 후의 제1사용자의 위치가 제1위치가 될 수 있다. Also, in an embodiment, since the first position is a first user position in a state in which the first selection object is selected, when the first user moves in a state in which the first selection object is selected, the position of the first user after movement The location may be the first location.

또한, 일 실시예에서, 상기 제1위치는 제1사용자 또는 제1사용자 클라이언트 장치의 좌표뿐만 아니라, 방향에 대한 정보를 포함할 수 있다. 즉, 도 3에서, 상기 제1위치(110)는 상기 제1사용자(210)의 좌표, 상기 제1사용자 클라이언트 장치(310)의 방향, 또는 상기 제1사용자(210)의 방향을 포함할 수 있다.Also, in one embodiment, the first location may include information about the direction as well as the coordinates of the first user or the first user client device. That is, in FIG. 3 , the first location 110 may include the coordinates of the first user 210 , the direction of the first user client device 310 , or the direction of the first user 210 . have.

또한, 일 실시예에서, 도 3을 참조하면, 상기 제1선택대상체는 상기 제1사용자 클라이언트 장치에 대하여 특정 방향 또는 특정 거리를 유지한 상태로 제1사용자공간에서 이동될 수 있다. 예를 들어, 제1사용자가 팔을 뻗어 클라이언트 장치(예를 들어, 스마트폰)를 손에 들고, 제1선택대상체가 상기 클라이언트 장치의 후면의 중심에 대해 직교하여 1m 거리에 위치하는 경우, 제1사용자가 상기 제1선택대상체를 원하는 위치에 배치하기 위해 팔을 뻗은 채 클라이언트 장치(310)를 이동(314, 315)시키면 상기 제1선택대상체(410)는 제1사용자 위치인 제1위치로부터 '1m+제1사용자 팔길이'의 거리의 구면 상에서 이동(414, 415)될 수 있다. 즉, 이 경우 제1위치(110)를 원점으로 하는 제1구면좌표계(510)에서, r값이 '1m+제1사용자 팔길이'인 특정 구면 상에서 제1선택대상체가 움직일 수 있다. 또한, 상기 제1선택대상체가 선택된 상태에서의 사용자의 팔 움직임 또는 사용자 조작에 의해 상기 r값이 변경될 수 있음은 물론이다.Also, in one embodiment, referring to FIG. 3 , the first selection object may be moved in the first user space while maintaining a specific direction or a specific distance with respect to the first user client device. For example, when the first user stretches his arm and holds the client device (eg, a smartphone) in his hand, and the first selected object is located at a distance of 1 m orthogonal to the center of the rear surface of the client device, the second When the first user moves (314, 315) the client device 310 with an outstretched arm to place the first selection object at a desired position, the first selection object 410 is moved from the first position, which is the first user position. It may be moved (414, 415) on a sphere of a distance of '1m + first user's arm length'. That is, in this case, in the first spherical coordinate system 510 having the first position 110 as the origin, the first selection object may move on a specific spherical surface in which the r value is '1m + first user's arm length'. Also, it goes without saying that the r value may be changed by the user's arm movement or user manipulation while the first selection object is selected.

도 4는 상기 제1위치(110)가 상기 제1선택대상체가 선택된 상태에서의 상기 제1사용자 클라이언트 장치(310)의 배치 위치인 경우를 설명하기 위한 도면이다. 도 4를 참조하면, 일 실시예에서, 제1선택대상체가 선택된 상태에서의 제1사용자 클라이언트 장치의 위치인 제1위치는, 제1사용자 클라이언트 장치의 좌표뿐만 아니라, 방향에 대한 정보를 포함할 수 있다.FIG. 4 is a diagram for explaining a case where the first location 110 is the arrangement location of the first user client device 310 when the first selection object is selected. Referring to FIG. 4 , according to an embodiment, the first location, which is the location of the first user client device in the state in which the first selection object is selected, may include information about the direction as well as the coordinates of the first user client device. can

또한, 상기 제1위치는 상기 제1선택대상체가 선택된 상태에서의 상기 제1사용자 클라이언트 장치의 배치 위치이므로, 제1사용자가 제1선택대상체를 선택한 상태에서 제1사용자 클라이언트 장치를 이동시키는 경우, 이동후의 제1사용자 클라이언트 장치의 위치(방향 포함)가 제1위치가 될 수 있다. Also, since the first position is the arrangement position of the first user client device when the first selection object is selected, when the first user moves the first user client device while the first selection object is selected, The position (including orientation) of the first user client device after movement may be the first position.

또한, 일 실시예에서, 제1선택대상체(410)는 선택된 상태에서 상기 제1사용자 클라이언트 장치의 이동 또는 상기 제1사용자의 조작에 따라 제1위치로부터 특정한 거리의 구면상에서 이동되도록 제1사용자공간 내에서 위치가 변경될 수 있다. 즉, 도 4에서와 같이, 클라이언트 장치의 위치가 변경(314, 315)되는 경우뿐만 아니라, 위치가 고정되고 방향만 변경(314, 316)되는 경우에도, 제1선택대상체는 상기 클라이언트 장치의 방향에 대응하여 제1사용자공간 내에서 위치가 변경(414, 415, 416)될 수 있다. In addition, in an embodiment, the first selection object 410 is moved on a spherical surface at a specific distance from the first location according to the movement of the first user client device or the operation of the first user in the selected state. location may change. That is, as shown in FIG. 4 , not only when the position of the client device is changed ( 314 , 315 ), but also when the position is fixed and only the direction is changed ( 314 , 316 ) of the client device, the first selection object is the direction of the client device In response, the location in the first user space may be changed ( 414 , 415 , 416 ).

예를 들어, 제1사용자가 팔을 뻗어 클라이언트 장치(예를 들어, 스마트폰)를 손에 들고, 제1선택대상체가 상기 클라이언트 장치의 후면의 중심에 대해 직교하여 1m 거리에 위치하는 경우에 있어서, 제1사용자가 상기 제1선택대상체를 원하는 위치에 배치하기 위해 팔을 뻗은 채 클라이언트 장치의 방향만 회전한다면, 상기 제1선택대상체는 제1사용자 클라이언트 장치의 배치 위치인 제1위치로부터 '1m'의 거리의 구면 상에서 이동될 수 있다. 즉, 이 경우 제1위치를 원점으로 하는 제1구면좌표계에서, r값이 '1m'인 특정 구면 상에서 대상체가 움직일 수 있다. For example, when the first user extends his arm and holds a client device (eg, a smartphone) in his hand, and the first selected object is positioned at a distance of 1 m orthogonal to the center of the rear surface of the client device , if the first user rotates only the direction of the client device while extending his arm to place the first selection object at a desired position, the first selection object is '1m from the first position, which is the placement position of the first user's client device. It can be moved on the sphere of distance of '. That is, in this case, in the first spherical coordinate system having the first position as the origin, the object may move on a specific spherical surface having an r value of '1m'.

이와 달리, 제1사용자가 제1선택대상체를 원하는 위치에 배치하기 위해 팔을 뻗은 채 클라이언트 장치를 이동(위치 변경 또는 회전 포함)시키는 경우에는, 이동된 클라이언트 장치의 배치 위치인 제1위치를 원점으로 하는 제1구면좌표계 상에서 상기 클라이언트 장치의 후면의 중심에 대해 직교하여 1m 거리에 상기 제1선택대상체가 위치할 수 있다. 또한, 상기 제1선택대상체가 선택된 상태에서의 사용자 조작에 의해 상기 r값이 변경될 수 있음은 물론이다.Contrary to this, when the first user moves (including changing or rotating the position) the client device with an outstretched arm to place the first selection object at a desired position, the first position, which is the arrangement position of the moved client device, is the origin. The first selection object may be located at a distance of 1 m orthogonal to the center of the rear surface of the client device on a first spherical coordinate system of . Also, it goes without saying that the r value may be changed by a user manipulation while the first selection object is selected.

또한, 일 실시예에서, 사용자가 클라이언트 장치를 손에 들지 않고 머리에 착용하는 경우와 같이 클라이언트 장치와 사용자 위치 및 방향이 동일한 경우(예를 들어, VR헤드셋)에는, 제1위치는 클라이언트 장치 위치(방향 포함)로 판단할 수 있음은 물론이다.Also, in one embodiment, when the location and orientation of the client device and the user are the same (eg VR headset), such as when the user wears the client device on the head without holding the hand, the first location is the client device location Of course, it can be judged by (including direction).

일 실시예에서, 도면에 도시되지는 않았으나, 상기 제1사용자(210)로부터 상기 제1위치(110)와 상기 제1선택대상체(410) 간의 거리에 대한 변경정보를 수신하고 적용하는 단계;를 더 포함할 수 있다. 이는, 전술한 바와 같이 제1위치로부터 특정한 거리의 구면상에서 이동되는 제1선택대상체에 있어서, 상기 거리를 변경함으로써 변경된 거리의 구면상에서 제1선택대상체가 이동되도록 하는 것이다.In one embodiment, although not shown in the drawings, receiving and applying change information on the distance between the first location 110 and the first selection object 410 from the first user 210; may include more. As described above, in the first selection object moved on the spherical surface of a specific distance from the first position, the first selection object is moved on the spherical surface of the changed distance by changing the distance.

예를 들어, 도 4에서 제1선택대상체가 제1사용자 클라이언트 장치의 후면(사용자 반대편)의 중심에 대해 직교하여 1m 거리에 위치하는 경우, 상기 제1사용자의 요청에 따라 상기 제1선택대상체의 상기 클라이언트 장치로부터의 거리를 2m로 변경할 수 있으며, 상기 제1선택대상체는 이를 유지한 채 제1사용자에 의한 제1사용자 클라이언트 장치의 회전, 이동을 포함하는 움직임에 따라 이에 대응하도록 제1사용자공간 내에서 위치가 변경될 수 있다. For example, in FIG. 4 , when the first selection object is located at a distance of 1 m orthogonal to the center of the rear surface (opposite to the user) of the first user client device, the first selection object is displayed at the request of the first user. The distance from the client device may be changed to 2m, and the first selection object may be maintained in the first user space to correspond to the movement including rotation and movement of the client device of the first user by the first user while maintaining it. location may change.

즉, 사용자가 제1위치를 원점으로 하는 제1구면좌표계 상에서, 원점(예를 들어, 클라이언트 장치)으로부터의 제1선택대상체 거리인 r값을 변경할 수 있도록 함으로써, 제1사용자공간 내의 모든 위치에 대해 자유롭고 간편하게 배치 가능한 효과가 있다. 또한, 상기 거리변경요청은 사용자 클라이언트장치에 입력될 수 있는 상기 사용자의 선택대상체의 거리 변경에 대한 모든 입력을 포함한다.That is, by allowing the user to change the r value, which is the first selection object distance from the origin (eg, the client device), on the first spherical coordinate system having the first position as the origin, it is displayed at all positions in the first user space. It has the effect that it can be freely and easily deployed. In addition, the distance change request includes all inputs for changing the distance of the user's selection target that can be input to the user's client device.

일 실시예에서, 상기 거리변경요청은 제1사용자가 제1선택대상체를 선택한 상태에서 클라이언트 장치 화면상의 특정 아이콘을 상하 방향으로 드래그하는 것을 포함한다.In an embodiment, the request for changing the distance includes dragging a specific icon on the screen of the client device in the vertical direction while the first user has selected the first selection object.

일 실시예에서, 도면에 도시되지는 않았으나, 상기 제1사용자(210)로부터 상기 제1선택대상체(410)에 대한 변경정보를 수신하고 적용하는 단계;를 더 포함할 수 있다. 또한 일 실시예에서, 상기 제1선택대상체의 변경정보는, 상기 제1선택대상체의 상기 제1사용자공간에서의 위치가 고정된 상태에서 상기 제1선택대상체의 모양, 크기 또는 방향에 관한 변경정보를 포함한다. 즉, 사용자는 특정 대상체를 선택한 상태에서, 사용자의 조작에 의해 선택된 선택대상체의 모양, 크기, 방향 등을 자유롭게 변경할 수 있고, 새로운 대상체를 업로드하여 변경하는 것도 가능하다. 일 실시예에서, 새롭게 업로드하는 대상체 정보는 서버로부터 수신할 수 있다.In an embodiment, although not shown in the drawings, the method may further include receiving and applying change information on the first selection object 410 from the first user 210 . Also, in an embodiment, the change information of the first selection object includes change information regarding the shape, size or direction of the first selection object in a state where the position of the first selection object in the first user space is fixed. includes That is, in a state in which a specific object is selected, the user may freely change the shape, size, direction, etc. of the selected object selected by the user's manipulation, and it is also possible to change the shape by uploading a new object. In an embodiment, the newly uploaded object information may be received from the server.

일 실시예에서, 상기 크기변경요청은 제1사용자가 제1선택대상체를 선택한 상태에서 사용자의 클라이언트 장치에 대한 핀치 인/아웃(Pinch in/out) 제스처(gesture)를 포함한다.In an embodiment, the size change request includes a pinch in/out gesture of the user on the client device in a state in which the first user selects the first selection object.

일 실시예에서, 상기 선택대상체의 회전은 롤(Roll), 요(Yaw), 또는 피치(Pitch) 회전을 포함하고, 상기 롤 회전요청은 사용자의 클라이언트 장치에 대한 두손가락 회전(rotation) 제스처를, 상기 요 회전요청은 좌우 방향의 팬(Pan) 또는 스와이프(Swipe) 제스처를, 상기 피치 회전요청은 상하 방향의 팬 또는 스와이프 제스처를 포함한다. In an embodiment, the rotation of the selection object includes a roll, yaw, or pitch rotation, and the roll rotation request is a two-finger rotation gesture with respect to the user's client device. , The yaw rotation request includes a pan or swipe gesture in a left and right direction, and the pitch rotation request includes a pan or swipe gesture in a vertical direction.

또한, 일 실시예예서, 상기 사용자공간 내의 가상의 대상체의 종류에 대하여, 상기 사용자공간 형성 플랫폼업체가 사용자로부터 일정 대가를 받아 확장시키는 것도 가능하다. 즉, 사용자가 더 다양한 종류 또는 많은 개수의 대상체를 사용자공간에 배치하고 싶은 경우, 상기 사용자공간 형성 플랫폼업체에 일정 대가를 지불함으로써 상기 대상체의 종류 또는 개수를 확장할 수 있다.Also, according to an embodiment, it is possible for the user space forming platform company to receive a predetermined price from the user to expand the type of the virtual object in the user space. That is, when a user desires to arrange more various types or a larger number of objects in the user space, the type or number of objects may be expanded by paying a certain price to the user space forming platform company.

상기 제1선택대상체(410)에 대한 상기 제1사용자(210)의 배치요청에 따라 상기 제1선택대상체를 상기 제1사용자공간(10)에 배치한다(S400). 일 실시예에서, 상기 제1선택대상체가 선택된 상태에서, 제1사용자에 의해(클라이언트 장치 이동 또는 제1사용자의 조작 포함) 제1선택대상체가 제1사용자공간에서 배치하고자 하는 위치에 도달한 경우, 제1사용자의 배치요청에 따라 상기 제1선택대상체에 대한 선택이 해제되며, 배치요청시의 상기 제1선택대상체의 위치 및 방향에 따라 상기 제1선택대상체가 제1사용자공간에 배치된다. The first selection object is placed in the first user space 10 according to the placement request of the first user 210 for the first selection object 410 (S400). In an embodiment, when the first selection object arrives at a desired location in the first user space by the first user (including moving the client device or the first user's manipulation) while the first selection object is selected , the selection of the first selection object is released according to the placement request of the first user, and the first selection object is arranged in the first user space according to the position and direction of the first selection object when the placement request is made.

일 실시예에서, 배치된 대상체는 더 이상 클라이언트 장치의 이동 또는 사용자 조작에 의해 제1사용자공간에서 이동되지 않고, 사용자에 의해 다시 선택되는 경우에 이동될 수 있다. 또한, 상기 배치요청은 사용자 클라이언트장치에 입력될 수 있는 상기 사용자의 선택대상체에 대한 모든 입력을 포함한다.In an embodiment, the placed object is no longer moved in the first user space by movement of the client device or by a user manipulation, but may be moved when selected again by the user. In addition, the placement request includes all inputs to the user's selection target that can be input to the user's client device.

일 실시예에서, 상기 배치요청은 제1선택대상체가 선택된 상태에서 제1사용자의 클라이언트 장치 화면에 대한 터치를 포함한다.In an embodiment, the placement request includes a first user's touch on the client device screen while the first selection object is selected.

일 실시예에서, 도면에 도시되지는 않았으나, 상기 제1선택대상체에 대한 상기 제1사용자의 복제요청에 따라, 상기 제1선택대상체의 선택은 유지하되 상기 제1선택대상체와 동일한 종류, 모양, 크기 또는 방향을 갖는 하나 이상의 복제대상체를 상기 제1사용자공간에 배치하는 단계;를 더 포함한다. 즉, 사용자가 특정 선택대상체를 복수 개 배치하고 싶은 경우, 새롭게 대상체를 업로드하는 과정을 거칠 필요 없이 특정 선택대상체에 대하여 원하는 위치마다 복제요청을 함으로써 간편하게 복제된 복수의 대상체를 배치시킬 수 있다. In one embodiment, although not shown in the drawings, according to the copy request of the first user for the first selection object, the selection of the first selection object is maintained but the same type, shape, and shape as the first selection object; It further includes; disposing one or more duplicated objects having a size or a direction in the first user space. That is, when the user wants to arrange a plurality of specific selection objects, a plurality of replicated objects can be conveniently arranged by making a copy request for each desired location of the specific selection object without having to go through a process of newly uploading the object.

그러나, 본 발명에 따른 선택요청, 배치요청, 거리변경요청, 크기변경요청, 회전요청 또는 복제요청은 전술한 실시예에 제한되지 않으며, 사용자 클라이언트 장치에 입력될 수 있는 모든 제스처를 포함한다.However, the selection request, arrangement request, distance change request, size change request, rotation request or duplication request according to the present invention are not limited to the above-described embodiment, and include all gestures that can be input to the user's client device.

본 발명의 일 실시예에 따르면, 사용자는 3차원의 가상공간인 제1사용자공간 내에서, 특정 대상체를 선택하고 클라이언트 장치의 이동 또는 사용자 조작에 따라 선택된 선택대상체를 자유롭게 이동시키며, 간편한 조작에 의해 선택 대상체의 모양, 크기, 방향등을 자유롭게 조절하여 원하는 위치에 원하는 모양, 크기, 방향으로 손쉽게 배치할 수 있는 효과가 있다.According to an embodiment of the present invention, the user selects a specific object in the first user space, which is a three-dimensional virtual space, and freely moves the selected object according to the movement of the client device or the user operation, and by simple manipulation By freely adjusting the shape, size, and direction of the selected object, there is an effect that it can be easily arranged in a desired shape, size, and direction at a desired location.

도 5는 본 발명의 일 실시예에 따른 제1선택대상체의 제1구면좌표정보를 제1기준좌표로 변환하는 단계를 더 포함하는 가상공간 형성 방법의 순서도이다. 5 is a flowchart of a method of forming a virtual space, which further includes converting first spherical coordinate information of a first selection object into first reference coordinates according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 다른 일 실시예에 따른 가상공간 형성 방법은, 제1선택대상체(410)의 제1구면좌표정보를 제1기준좌표로 변환하는 단계(S500);를 더 포함한다. 즉, 일 실시예에서, 배치된 제1선택대상체의 제1위치를 원점으로 하는 제1구면좌표계의 제1구면좌표정보를, 제1사용자공간의 기준좌표계에 대한 제1기준좌표로 변환할 수 있다.Referring to FIG. 5 , the method for forming a virtual space according to another embodiment of the present invention further includes converting first spherical coordinate information of a first selection object 410 into first reference coordinates (S500); do. That is, in one embodiment, the first spherical coordinate information of the first spherical coordinate system having the first position of the arranged first selection object as the origin can be converted into the first reference coordinates with respect to the reference coordinate system of the first user space. have.

일 실시예에서, 제1구면좌표정보는, 제1선택대상체가 사용자의 배치요청에 따라 배치되는 시점에서의 제1위치(클라이언트 장치의 배치 위치 또는 사용자 위치)를 원점으로 하는 제1구면좌표계에서 상기 제1선택대상체의 좌표정보(r,θ,ф)를 의미한다. 예를 들어, 제1위치가 도 4에서와 같이 제1선택대상체가 선택된 상태에서의 제1사용자 클라이언트 장치의 배치 위치인 경우, 제1선택대상체의 제1위치로부터의 거리(1m)가 r값이 되고, 제1사용자 클라이언트 장치의 방향 정보로부터 θ 및 ф 값이 산출될 수 있다.In an embodiment, the first spherical coordinate information may include a first spherical coordinate system having a first location (a location of a client device or a location of a user) at the point in time when the first selection object is disposed according to a user's placement request as an origin. It means coordinate information (r, θ, ф) of the first selection object. For example, when the first position is the arrangement position of the first user client device in the state in which the first selection object is selected as shown in FIG. 4 , the distance (1m) of the first selection object from the first position is the r value. , and values θ and ф may be calculated from the direction information of the first user client device.

또한, 일 실시예에서, 전술한 바와 같이 기준위치(100)는 제1사용자공간의 기준이 되는 위치로, 상기 제1사용자공간 생성 시점의 제1사용자 클라이언트 장치의 배치 위치 또는 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 제1사용자 위치이고, 기준좌표계는 상기 기준위치를 원점으로 하는 공간좌표계 또는 구면좌표계를 포함하는 좌표계를 의미한다. In addition, in one embodiment, as described above, the reference position 100 is a reference position of the first user space, and the arrangement position of the first user client device or the first user client device at the time of generating the first user space. It is the first user's position calculated from the arrangement position of , and the reference coordinate system means a coordinate system including a spatial coordinate system or a spherical coordinate system having the reference position as an origin.

즉, 일 실시예에서, 상기 기준위치 및 상기 기준좌표계는, 제1사용자 공간 생성시 결정되어 변하지 않는 것으로, 후술하는 바와 같이 제2사용자의 제2선택과 무관하게 제1사용자공간 생성시를 기준으로 결정되는 기준위치 및 기준좌표계를 의미한다. 일 실시예에서, 상기 기준위치는 제1사용자가 제1사용자공간 초기 생성을 위해 가상공간 형성 프로그램을 구동하는 시점의 제1사용자 클라이언트 장치 위치를 포함한다. That is, in an embodiment, the reference position and the reference coordinate system are determined and not changed when the first user space is created. As will be described later, the reference position and the reference coordinate system are based on the first user space creation time regardless of the second selection of the second user. It means the reference position and the reference coordinate system determined by In an embodiment, the reference position includes the position of the first user's client device at the time when the first user drives the virtual space forming program for the initial creation of the first user space.

일 실시예에서, 상기 기준위치로부터의 상기 제1선택대상체 배치 시점의 상기 제1위치의 벡터값을 산출하고, 상기 벡터값 및 배치된 상기 제1선택대상체의 상기 제1위치를 원점으로 하는 제1구면좌표계 상의 제1구면좌표정보(r,θ,ф)를 기초로, 배치된 상기 제1선택대상체의 기준좌표계에 대한 제1기준좌표정보를 산출할 수 있다. 즉, 원점을 달리하는 다양한 구면좌표계 상에서 배치되는 대상체의 배치정보를 기준좌표계에 대한 좌표정보로 변환할 수 있다.In an embodiment, a vector value of the first position at the time of placement of the first selection object is calculated from the reference position, and a first position is obtained based on the vector value and the first position of the disposed first selection object. Based on the first spherical coordinate information (r, θ, ф) on the first spherical coordinate system, first reference coordinate information with respect to the reference coordinate system of the disposed first selection target may be calculated. That is, the arrangement information of the object arranged on various spherical coordinate systems having different origins may be converted into coordinate information about the reference coordinate system.

또한, 일 실시예에서, 상기 제1사용자가 제1사용자공간을 초기 생성한 이후에, 다시 가상공간 형성 프로그램을 구동하여 상기 제1사용자공간에 재접속하는 경우, 재접속시 가상공간인 제1사용자공간에서의 제1사용자 위치는 현실공간에서의 위치와 무관하게 상기 기준위치일 수 있다. 예를 들어, 제1사용자가 현실공간의 A위치에서 최초로 VR공간인 제1사용자공간을 생성한 경우, 현실공간의 A위치와 대응되는 제1사용자공간의 X위치가 기준위치가 된다. 또한, 이후에 제1사용자가 현실공간의 B위치에서 상기 제1사용자공간에 재접속하더라도, 제1사용자는 현실공간의 B위치와 무관하게 가상공간의 기준위치인 제1사용자공간의 X위치에서 상기 제1사용자공간에 재접속할 수 있다.Also, in an embodiment, when the first user initially creates the first user space and then reconnects to the first user space by driving the virtual space forming program again, the first user space is the virtual space upon reconnection. The first user's location in ? may be the reference location regardless of the location in real space. For example, when the first user creates the first user space, which is the VR space, for the first time at position A in the real space, the position X in the first user space corresponding to the position A in the real space becomes the reference position. In addition, even if the first user reconnects to the first user space from the B position in the real space afterward, the first user remains at the X position in the first user space, which is the reference position in the virtual space, regardless of the B position in the real space. It is possible to reconnect to the first user space.

이와 달리, 일 실시예에서, 상기 제1사용자가 제1사용자공간을 초기 생성한 이후에, 다시 가상공간 형성 프로그램을 구동하여 상기 제1사용자공간에 재접속하는 경우, 재접속시 가상공간인 제1사용자공간에서의 제1사용자 위치는 현실공간에서의 위치와 상기 기준위치를 기초로 산출된 위치일 수 있다. 예를 들어, 제1사용자가 현실공간의 A위치에서 최초로 AR공간인 제1사용자공간을 생성한 경우, 현실공간의 A위치와 대응되는 제1사용자공간의 X위치가 기준위치가 된다. 또한, 이후에 제1사용자가 현실공간의 B위치에서 상기 제1사용자공간에 재접속하면, 제1사용자는 현실공간의 B위치에 대응되는 제1사용자공간의 Y위치에서 재접속할 수 있다. 즉, A위치와 B위치 간의 벡터값을 산출하고, 상기 벡터값과 X위치를 기초로 제1사용자공간의 Y위치를 산출하여 상기 제1사용자의 재접속시 제1사용자공간에서의 위치를 결정할 수 있다.Contrary to this, in one embodiment, when the first user initially creates the first user space and then reconnects to the first user space by driving the virtual space forming program again, the first user who is the virtual space at the time of reconnection The first user's position in space may be a position in real space and a position calculated based on the reference position. For example, when the first user creates the first user space, which is the AR space, for the first time at the location A in the real space, the location X in the first user space corresponding to the location A in the real space becomes the reference location. In addition, when the first user reconnects to the first user space from the B position in the real space later, the first user may reconnect at the Y position in the first user space corresponding to the B position in the real space. That is, it is possible to determine the position in the first user space when the first user reconnects by calculating a vector value between the A position and the B position, and calculating the Y position of the first user space based on the vector value and the X position. have.

다른 실시예에서, 상기 기준위치(100)는 기 생성된 제1사용자공간을 저장하는 경우 변경될 수 있다. 즉, 일 실시예에서, 제1사용자공간의 기준위치는, 제1사용자공간을 저장할 때마다 저장 시점의 제1사용자 클라이언트 장치의 배치 위치 또는 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 제1사용자 위치로 변경되고, 이에 따라 기준좌표계가 변경될 수 있다.In another embodiment, the reference position 100 may be changed when storing the pre-generated first user space. That is, in one embodiment, the reference position of the first user space is the first user calculated from the arrangement position of the first user client device or the arrangement position of the first user client device at the time of storage whenever the first user space is stored. position, and the reference coordinate system may be changed accordingly.

이 경우, 제1사용자가 저장된 제1사용자공간에 재접속하는 경우, 재접속시 가상공간인 제1사용자공간에서의 제1사용자 위치는 변경된 기준위치일 수 있다. 예를 들어, 제1사용자가 현실공간의 A위치(제1사용자공간의 X위치에 대응)에서 최초로 VR공간인 제1사용자공간을 생성한 후, 이동하여 제1사용자공간의 Z위치에서 제1사용자공간을 저장한 경우, Z위치가 제1사용자공간의 변경된 기준위치가 된다. 또한, 이후에 제1사용자가 제1사용자공간에 재접속시 현실공간의 위치와 무관하게 가상공간의 변경된 기준위치인 Z위치에서 상기 제1사용자공간에 재접속할 수 있다.In this case, when the first user reconnects to the stored first user space, the first user's position in the first user space, which is a virtual space, upon reconnection may be the changed reference position. For example, the first user creates the first user space, which is the VR space, for the first time at position A in the real space (corresponding to position X in the first user space), then moves and moves to the first user space at position Z of the first user space. When the user space is stored, the Z position becomes the changed reference position of the first user space. In addition, when the first user reconnects to the first user space afterward, the first user may reconnect to the first user space at the Z position, which is the changed reference position in the virtual space, regardless of the location in the real space.

또한, 이 경우 일 실시예예서, 기준위치 및 기준좌표계의 변경에 따라 배치된 제1선택대상체의 변경 전 기준좌표계에 대한 제1기준좌표를, 변경 후 기준좌표계에 대한 기준좌표로 변환하는 단계;를 더 포함할 수 있다. 예를 들어, '제1선택대상체의 변경 전 기준위치에 대한 벡터값'과 '변경 후 기준위치의 변경 전 기준위치에 대한 벡터값'의 연산을 통하여 제1선택대상체의 변경 후 기준위치에 대한 벡터값을 산출함으로써, 제1선택대상체의 변경 후 기준좌표계에 대한 기준좌표를 산출할 수 있다.In addition, in this case, according to an embodiment, the first reference coordinates for the reference coordinate system before the change of the first selection object arranged according to the change of the reference position and the reference coordinate system are converted into the reference coordinates for the reference coordinate system after the change; may further include. For example, through the calculation of 'the vector value of the reference position before the change of the first selection object' and the 'vector value of the reference position before the change of the reference position after the change', the reference position after the change of the first selection object is calculated. By calculating the vector value, it is possible to calculate the reference coordinates for the reference coordinate system after the change of the first selection object.

이와 달리, 일 실시예에서, 제1사용자공간의 저장에 따라 기준위치 및 기준좌표계는 변하지 않되, 제1사용자공간 저장 시점의 제1사용자 클라이언트 위치가 제1사용자의 상기 제1사용자공간 재접속시 위치일 수 있다.Contrary to this, in one embodiment, the reference position and the reference coordinate system are not changed according to the storage of the first user space, but the first user client position at the time of storing the first user space is the position when the first user reconnects to the first user space can be

도 6은 본 발명의 일 실시예에 따른 제1생성데이터 전송 단계를 더 포함하는 가상공간 형성 방법의 순서도이다. 도 6을 참조하면, 본 발명의 일 실시예에 따른 가상공간 형성 방법은, 제1생성데이터를 서버로 전송하는 단계(S800);를 더 포함한다.6 is a flowchart of a method of forming a virtual space further including the step of transmitting the first generated data according to an embodiment of the present invention. Referring to FIG. 6 , the method for forming a virtual space according to an embodiment of the present invention further includes transmitting the first generated data to the server (S800).

일 실시예에서, 상기 제1생성데이터는 상기 제1사용자공간에 배치된 하나 이상의 대상체의 대상체 정보 또는 배치 위치 정보를 포함한다. 즉, 제1생성데이터는 제1사용자에 의해 배치된 하나 이상의 대상체의 배치 위치 정보(위치, 방향 등) 또는 대상체 정보(배치된 대상체의 종류, 모양, 크기, 방향 등)를 포함하는 제1사용자공간의 정보를 의미한다. 또한, 상기 제1생성데이터는, 대상체에 관한 정보는 물론 가상공간인 상기 제1사용자공간의 배경에 대한 정보를 더 포함할 수 있음은 물론이다.In an embodiment, the first generation data includes object information or arrangement location information of one or more objects arranged in the first user space. That is, the first generation data is the first user including arrangement location information (position, direction, etc.) of one or more objects arranged by the first user or object information (type, shape, size, direction, etc. of the placed object). space information. Also, it goes without saying that the first generated data may further include information on the background of the first user space, which is a virtual space, as well as information on the object.

일 실시예에서, 상기 제1생성데이터는, 상기 제1사용자가 상기 제1사용자공간을 촬영한 썸네일 이미지 및 상기 썸네일 이미지 촬영 시점의 상기 제1사용자 클라이언트 장치의 배치 위치를 포함한다. In an embodiment, the first generated data includes a thumbnail image captured by the first user in the first user space, and an arrangement position of the first user client device at the time of capturing the thumbnail image.

또한, 일 실시예에서, 상기 썸네일 이미지 촬영 시점의 상기 제1사용자 클라이언트 장치의 배치 위치는, 상기 제1사용자 또는 제2사용자가 상기 제1생성데이터를 수신하여 상기 제1사용자공간에 접속하는 경우의 제1사용자공간에서의 접속 위치로, 상기 제1사용자 클라이언트 장치의 방향정보를 포함한다.Also, in an embodiment, the arrangement position of the first user client device at the time of capturing the thumbnail image is determined when the first user or the second user receives the first generated data and accesses the first user space. is an access location in the first user space of , and includes direction information of the first user client device.

즉, 제1사용자가 저장된 제1사용자공간에 재접속 또는 제2사용자가 접속시, 상기 썸네일 이미지를 촬영한 위치, 즉 제1사용자공간 저장 시 위치에서 접속하도록 하여, 썸네일 이미지를 보고 접속한 사용자의 정면(사용자 클라이언트 장치의 정면)에 상기 썸네일 이미지에 표시된 제1사용자공간이 구현될 수 있도록 하는 것이다That is, when the first user reconnects to the stored first user space or when the second user accesses the stored first user space, the user accesses the thumbnail image from the location where the thumbnail image was captured, that is, the location when the first user space was saved. The first user space displayed in the thumbnail image can be implemented on the front (front of the user client device).

일 실시예에서, 상기 제1생성데이터에 포함된 저장 시점의 제1사용자 클라이언트 장치의 방향정보는, 지면과 평행한 성분의 방향정보만을 포함할 수 있다.In an embodiment, the direction information of the first user client device at the storage time included in the first generation data may include only direction information of a component parallel to the ground.

일 실시예에서, 상기 제1사용자 클라이언트 장치가 상기 제1사용자공간에 관한 정보인 상기 제1생성데이터를 서버에 전송함으로써, 제1사용자공간에 대한 저장이 가능하고, 서버를 통해 제2사용자 클라이언트 장치에 전송함으로써 제2사용자의 제1사용자공간에 대한 참여 또한 가능한 효과가 있다.In one embodiment, the first user client device transmits the first generated data that is information about the first user space to the server, so that storage in the first user space is possible, and the second user client device through the server The second user's participation in the first user space by transmitting to the device also has a possible effect.

도 7은 본 발명의 일 실시예에 따른 서버가 클라이언트 장치로부터 생성데이터를 수신 또는 전송하는 단계를 포함하는 가상공간 형성 방법의 순서도이다 도 7을 참조하면, 본 발명의 일 실시예에 따른 가상공간 형성 방법은, 서버가 제1사용자 클라이언트 장치(310)로부터 제1사용자공간(10)에 대한 상기 제1생성데이터를 수신하는 단계(S1000); 및 서버가 상기 제1생성데이터를 제2사용자 클라이언트 장치(320)에 전송하는 단계(S1100);를 포함한다. 7 is a flowchart of a method for forming a virtual space including the step of receiving or transmitting, by a server, generated data from a client device according to an embodiment of the present invention Referring to FIG. 7 , a virtual space according to an embodiment of the present invention The forming method includes: receiving, by a server, the first generated data for a first user space 10 from a first user client device 310 (S1000); and a step (S1100) of the server transmitting the first generated data to the second user client device 320 (S1100).

즉, 일 실시예에서, 전술한바와 같이 상기 제1사용자 클라이언트 장치가 서버로 전송한 상기 제1생성데이터를, 제1사용자 또는 제2사용자의 요청에 따라 제2사용자 클라이언트 장치로 전송할 수 있다. 상기 제2사용자는 상기 제1생성데이터를 수신함으로써 상기 제1사용자가 생성한 제1사용자공간에 참여할 수 있는 효과가 있다.That is, in one embodiment, as described above, the first generated data transmitted by the first user client device to the server may be transmitted to the second user client device according to the request of the first user or the second user. The second user can participate in the first user space created by the first user by receiving the first generated data.

또한, 일 실시예에서, 상기 제2사용자 클라이언트 장치에 대한 상기 제1생성데이터의 전송은, 상기 제2사용자가 상기 제1사용자에게 일정 대가를 지불함으로써 이루어질 수 있다. 즉, 일 실시예에서, 상기 제1사용자는 자신이 생성한 가상공간인 제1사용자공간에 대한 영상 등을 SNS를 포함하는 플랫폼을 통해 공유할 수 있고, 제2사용자가 상기 제1사용자공간에 참여를 원하는 경우, 제1사용자 또는 가상공간 형성 플랫폼업체에 일정 대가를 지불함으로써 상기 제1생성데이터를 수신하여 상기 제1사용자공간에 참여할 수 있다. Also, in an embodiment, the transmission of the first generated data to the second user's client device may be performed by the second user paying a predetermined price to the first user. That is, in one embodiment, the first user may share an image of the first user space, which is a virtual space created by the first user, through a platform including SNS, and the second user may access the first user space. If participation is desired, by paying a predetermined price to the first user or a virtual space forming platform company, the first generation data may be received and participating in the first user space.

일 실시예에서, 제2사용자의 제1사용자공간에 대한 참여는, 제2사용자의 제1사용자공간 관람뿐만 아니라, 제1사용자공간의 수정을 포함할 수 있다. 이하, 이에 대해 상세히 기술한다.In an embodiment, the second user's participation in the first user space may include modification of the first user space as well as the second user's viewing of the first user space. Hereinafter, this will be described in detail.

도 7은 본 발명의 일 실시예에 따른 서버가 클라이언트 장치로부터 생성데이터를 수신 또는 전송하는 단계를 포함하는 가상공간 형성 방법의 순서도이고, 도 8 및 9는 본 발명의 일 실시예에 따른 제3선택대상체의 위치 변경을 설명하기 위한 도면이다. 도 7 내지 9를 참조하면, 본 발명의 일 실시예에 따른 가상공간 형성 방법은, 서버가 제2사용자 클라이언트 장치(320)로부터 제2생성데이터를 수신하는 단계(S1200);를 더 포함한다.7 is a flowchart of a method for forming a virtual space including the step of receiving or transmitting, by a server, generated data from a client device according to an embodiment of the present invention, and FIGS. 8 and 9 are third views according to an embodiment of the present invention It is a diagram for explaining the change of the position of the selection object. 7 to 9 , the method for forming a virtual space according to an embodiment of the present invention further includes the server receiving second generated data from the second user client device 320 ( S1200 ).

일 실시예에서, 상기 제2생성데이터는 제2사용자(220)에 의해 하나 이상의 대상체 배치가 변경된 상기 제1사용자공간(10)의 생성데이터를 포함한다. 즉, 제2생성데이터는 제1사용자에 의해 생성 및 대상체가 배치된 제1사용자공간에 대하여, 제2사용자가 하나 이상의 대상체의 배치 또는 대상체 정보를 변경하는 경우, 제2사용자에 의해 변경된 제1사용자공간의 정보를 포함한다.In an embodiment, the second generated data includes generated data of the first user space 10 in which the arrangement of one or more objects is changed by the second user 220 . That is, when the second user changes the arrangement of one or more objects or object information in the first user space created by the first user and the object is arranged, the second generated data is the first changed data by the second user. Contains user space information.

일 실시예에서, 상기 제2사용자(220)에 의해 배치가 변경된 대상체는 상기 제2사용자에 의해 선택된 제2선택대상체(420)이고, 상기 제2선택대상체는 상기 제2사용자 클라이언트 장치(320)에 의해 상기 제2사용자 클라이언트 장치의 이동 또는 상기 제2사용자(220)의 조작에 대응하여 위치가 변경되고, 상기 제2선택대상체에 대한 상기 제2사용자의 배치요청에 따라 상기 제1사용자공간(10)에 배치되는 것일 수 있다.In an embodiment, the object whose placement is changed by the second user 220 is a second selection object 420 selected by the second user, and the second selection object is the second user client device 320 . The position is changed in response to the movement of the second user's client device or the manipulation of the second user 220 by the 10) may be arranged.

상기 제2선택대상체(420)는 상기 제2사용자의 제2선택요청에 의해 선택된 상기 제1사용자공간 내의 특정 대상체로, 상기 제2선택요청은 상기 제1생성데이터를 수신하여 상기 제1사용자공간에 참여한 상기 제2사용자의 제1사용자공간 내의 특정 대상체에 대한 선택요청을 의미한다. 또한, 상기 제2선택요청은 상기 제2사용자 클라이언트장치에 입력될 수 있는 상기 제2사용자의 특정 대상체에 대한 모든 입력을 포함한다.The second selection object 420 is a specific object in the first user space selected by the second selection request of the second user, and the second selection request receives the first generated data to the first user space It means a selection request for a specific object in the first user space of the second user participating in the . In addition, the second selection request includes all inputs for the specific object of the second user that may be input to the second user client device.

일 실시예에서, 상기 제2선택요청은 제1사용자에 의해 배치된 제1선택대상체뿐만 아니라, 제1사용자공간 내에 존재하는 모든 대상체에 대해 가능하고, 제2사용자가 새롭게 업로드한 대상체에 대해서도 가능하다.In an embodiment, the second selection request may be made not only for the first selection object arranged by the first user, but also for all objects existing in the first user space, and may be applied to an object newly uploaded by the second user. do.

도 8은 제1사용자에 의해 배치된 상기 제1선택대상체에 대해 상기 제2사용자가 제2선택요청을 한 경우를 설명하기 위한 도면이다. 예를 들어, 도 4에서 제1사용자에 의해 배치된 제1선택대상체(415)인 토끼는 상기 제2선택요청에 의해 제2선택대상체(421)가 됨으로써 상기 제2사용자에 의한 재배치(422), 변경이 가능하다. 8 is a diagram for explaining a case in which the second user makes a second selection request for the first selection object arranged by the first user. For example, in FIG. 4 , the rabbit, which is the first selection object 415 arranged by the first user, becomes the second selection object 421 in response to the second selection request, so that the second user rearranges 422 . , can be changed.

도 9는 제1사용자에 의해 배치되지 않은 대상체에 대해 상기 제2사용자가 제2선택요청을 한 경우를 설명하기 위한 도면이다. 예를 들어, 제1사용자에 의해 배치되지 않은 제1사용자공간 내의 대상체인 사자는 상기 제2선택요청에 의해 제2선택대상체(423)가 됨으로써 상기 제2사용자에 의한 재배치(424), 변경이 가능하다.9 is a view for explaining a case in which the second user makes a second selection request for an object not arranged by the first user. For example, a lion, which is an object in the first user space that is not arranged by the first user, becomes the second selection object 423 by the second selection request, so that the relocation 424 and change by the second user are not performed. possible.

일 실시예에서, 상기 제2선택대상체는 전술한 제1선택대상체와 마찬가지로, 선택된 상태에서 상기 제2사용자 클라이언트 장치의 이동 또는 상기 제1사용자의 조작에 따라 이동될 수 있다. 또한, 상기 제2선택대상체(420)는 제2위치(120)를 원점으로 하는 제2구면좌표계(520) 상에서 이동될 수 있고, 상기 제2위치는 상기 제2선택대상체가 선택된 상태에서의 상기 제2사용자 클라이언트 장치의 배치 위치 또는 상기 제2사용자 클라이언트 장치의 배치 위치로부터 산출된 상기 제2사용자 위치를 포함한다. 또한, 상기 제2선택대상체에 대한 상기 제2사용자의 거리, 모양, 크기 또는 방향에 관한 변경요청을 통해 상기 제2선택대상체에 대한 변경이 가능하다.In an embodiment, the second selection object may be moved according to the movement of the second user's client device or the manipulation of the first user in the selected state, similarly to the above-described first selection object. In addition, the second selection object 420 may be moved on a second spherical coordinate system 520 having a second location 120 as an origin, and the second location is the second location when the second selection object is selected. and the location of the second user client device or the second user location calculated from the location of the second user client device. Also, it is possible to change the second selection object through a change request regarding the distance, shape, size, or direction of the second user with respect to the second selection object.

또한, 일 실시예에서, 도면에 도시되지는 않았으나, 본 발명의 일 실시예에 따른 가상공간 형성 방법은, 제2선택대상체의 제2구면좌표정보를 제2기준좌표로 변환하는 단계;를 더 포함할 수 있다. 즉, 배치된 제2선택대상체의 제2위치를 원점으로 하는 제2구면좌표계의 제2구면좌표정보를 제1사용자공간의 상기 기준좌표계에 대한 제2기준좌표로 변환할 수 있다. Further, in one embodiment, although not shown in the drawings, the method for forming a virtual space according to an embodiment of the present invention further comprises: converting second spherical coordinate information of a second selection object into second reference coordinates; may include That is, the second spherical coordinate information of the second spherical coordinate system having the second position of the disposed second selection target as the origin may be converted into second reference coordinates for the reference coordinate system in the first user space.

일 실시예에서, 상기 기준위치로부터 상기 제2위치의 벡터값을 산출하고, 상기 벡터값 및 상기 제2구면좌표정보(r,θ,ф)를 기초로 배치된 상기 제2선택대상체의 기준좌표계에 대한 제2기준좌표정보를 산출함으로써, 제1사용자에 의해 기 배치된 상기 제1선택대상체와 동일한 좌표계에서의 위치를 비교 가능한 효과가 있다.In an embodiment, a vector value of the second position is calculated from the reference position, and a reference coordinate system of the second selection target is arranged based on the vector value and the second spherical coordinate information (r, θ, ф). By calculating the second reference coordinate information for , it is possible to compare the position in the same coordinate system with the first selected object previously arranged by the first user.

일 실시예에서, 제2사용자의 제1사용자공간에 대한 접속시 위치는, 전술한 제1사용자의 제1사용자 공간 재접속시 위치와 동일하게 적용될 수 있다.In an embodiment, the location of the second user when accessing the first user space may be the same as the location of the first user when reconnecting to the first user space.

도 10은 본 발명의 일 실시예에 따른 서버가 클라이언트 장치로부터 생성데이터를 수신 또는 전송하는 단계를 포함하는 가상공간 형성 방법의 순서도이다. 도 10을 참조하면, 본 발명의 일 실시예에 따른 가상공간 형성 방법은, 서버가 상기 제2생성데이터를 제1사용자 클라이언트 장치에 전송하는 단계(S1300);를 더 포함한다. 즉, 제1사용자에 의해 생성된 제1사용자공간을 제2사용자가 수정하고, 수정한 제1사용자공간을 다시 제1사용자에게 제공할 수 있다.10 is a flowchart of a method for forming a virtual space including the step of receiving or transmitting, by a server, generated data from a client device according to an embodiment of the present invention. Referring to FIG. 10 , the method for forming a virtual space according to an embodiment of the present invention further includes the step of transmitting, by the server, the second generated data to the first user client device (S1300). That is, the second user may modify the first user space created by the first user, and the modified first user space may be provided to the first user again.

또한, 일 실시예에서, 제1사용자만이 제1사용자공간에 접속하여 수정하는 경우에는, 제1사용자공간 내의 대상체 배치 위치의 변경정보 등의 정보를 실시간으로 서버에 전송하지 않고, 저장 시 제1생성데이터를 전송할 수 있으나, 제2사용자 등 복수의 사용자가 상기 제1사용자공간에 동시 접속하는 경우에는, 복수의 사용자 간 상기 제1사용자공간 동기화를 위하여 대상체 배치 위치 변경정보 등 제1사용자공간의 수정에 대한 정보를 실시간으로 서버에 전송하여 각 사용자 클라이언트에 전송할 수 있다.In addition, in one embodiment, when only the first user accesses and modifies the first user space, information such as change information of the arrangement position of the object in the first user space is not transmitted to the server in real time, but is stored at the time of storage. One generation data can be transmitted, but when a plurality of users, such as a second user, access the first user space at the same time, in order to synchronize the first user space among a plurality of users, the first user space, such as object arrangement location change information, etc. Information about the modification of the server can be transmitted to the server in real time and transmitted to each user client.

이상에서 전술한 본 발명의 일 실시예에 따른 가상공간 형성 방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.The method for forming a virtual space according to an embodiment of the present invention described above may be implemented as a program (or application) and stored in a medium in order to be executed in combination with a computer, which is hardware.

본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.The steps of a method or algorithm described in relation to an embodiment of the present invention may be implemented directly in hardware, as a software module executed by hardware, or by a combination thereof. A software module may contain random access memory (RAM), read only memory (ROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, hard disk, removable disk, CD-ROM, or It may reside in any type of computer-readable recording medium well known in the art to which the present invention pertains.

이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.As mentioned above, although embodiments of the present invention have been described with reference to the accompanying drawings, those skilled in the art to which the present invention pertains can realize that the present invention can be embodied in other specific forms without changing its technical spirit or essential features. you will be able to understand Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive.

10 : 제1사용자공간
100 : 기준위치
110 : 제1위치
120 : 제2위치
210 : 제1사용자
220 : 제2사용자
310 : 제1사용자 클라이언트 장치
320 : 제2사용자 클라이언트 장치
410 : 제1선택대상체
420 : 제2선택대상체
510 : 제1구면좌표계
520 : 제2구면좌표계
10: first user space
100: reference position
110: first position
120: second position
210: first user
220: second user
310: first user client device
320: second user client device
410: first selection object
420: second selection object
510: first spherical coordinate system
520: second spherical coordinate system

Claims (13)

클라이언트 장치가, 구면좌표계 기반으로 가상의 대상체가 배치된 가상공간을 형성하는 방법에 있어서,
제1사용자에 의해 하나 이상의 가상의 대상체가 배치되는 가상공간인 제1사용자공간을 생성 또는 실행하는 단계;
제1사용자 클라이언트 장치의 이동 또는 상기 제1사용자의 조작에 따라 선택된 제1선택대상체의 위치 변경을 수행하되, 상기 위치 변경은 3차원 공간상의 상기 제1선택대상체의 배치 위치를 변경하는 것으로서, 기준좌표계 상의 제1위치를 원점으로 하는 제1구면좌표계에서 상기 제1위치로부터 특정 거리를 반지름으로 하여 형성되는 구면의 원주 상에서 이루어지는, 제1선택대상체 위치변경단계-상기 기준좌표계는, 상기 제1사용자공간 생성 시점의 상기 제1사용자 클라이언트 장치의 배치 위치 또는 상기 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 제1사용자 위치인 기준위치를 원점으로 하는 구면좌표계 또는 공간좌표계를 포함하고, 상기 제1위치는, 상기 제1선택대상체가 선택된 상태에서의 상기 제1사용자 클라이언트 장치의 배치 위치 또는 상기 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 제1사용자 위치임-;
상기 제1선택대상체에 대한 상기 제1사용자의 배치요청에 따라, 상기 제1선택대상체를 상기 제1사용자공간에 배치하는 단계;
상기 제1선택대상체에 대한 상기 제1사용자의 복제요청에 따라, 상기 제1선택대상체와 동일한 종류, 크기 및 방향을 갖는 복제대상체를 상기 제1사용자공간에서 상기 제1선택대상체와 다른 위치에 배치하는 단계; 및
상기 제1사용자공간에 배치된 상기 제1선택대상체 및 상기 복제대상체를 포함한 복수의 대상체의 대상체 정보 또는 배치 위치 정보를 포함하는 제1생성데이터를 서버로 전송하는 단계;를 포함하고,
상기 특정 거리는, 상기 제1사용자 클라이언트 장치를 파지한 상기 제1사용자의 뻗어진 팔길이이고,
상기 제1선택대상체는, 상기 원주 상의 제1 지점에 위치된 상태에서, 상기 제1사용자 클라이언트 장치를 파지한 상기 제1사용자의 뻗어진 팔이 특정 방향으로 움직이면, 상기 원주 상의 제1 지점에서 상기 움직인 특정 방향에 해당하는 상기 원주 상의 제2 지점으로 위치가 변경되는 것을 특징으로 하는, 가상공간 형성 방법.
A method for a client device to form a virtual space in which a virtual object is arranged based on a spherical coordinate system, the method comprising:
generating or executing a first user space, which is a virtual space in which one or more virtual objects are arranged, by a first user;
A position change of the selected first selection object is performed according to the movement of the first user client device or the manipulation of the first user, wherein the position change is to change the arrangement position of the first selection object in a three-dimensional space, In a first spherical coordinate system having a first position on the coordinate system as the origin, the first selection object position change step - The reference coordinate system is the first user and a spherical coordinate system or a spatial coordinate system having a reference position that is a first user position calculated from the arrangement position of the first user client device at the space creation time or the arrangement position of the first user client device as an origin, and the first position is the arrangement position of the first user client device when the first selection object is selected or the first user position calculated from the arrangement position of the first user client device;
disposing the first selection object in the first user space in response to the first user's request for placement of the first selection object;
In response to the first user's request for duplication of the first selection object, a duplicate object having the same type, size, and orientation as the first selection object is disposed in a position different from the first selection object in the first user space to do; and
transmitting, to a server, first generation data including object information or arrangement location information of a plurality of objects including the first selection object and the duplicate object disposed in the first user space; and
The specific distance is an extended arm length of the first user holding the first user client device,
In a state where the first selection object is located at a first point on the circumference, when the outstretched arm of the first user holding the first user client device moves in a specific direction, the first selection object is located at the first point on the circumference. A method for forming a virtual space, characterized in that the position is changed to a second point on the circumference corresponding to a specific direction in which it is moved.
삭제delete 제1항에 있어서,
상기 기준위치에 대한 상기 제1위치의 벡터값을 기초로, 배치된 상기 제1선택대상체의 제1구면좌표계에 대한 제1구면좌표정보를 상기 기준좌표계에 대한 제1기준좌표정보로 변환하는 단계;를 더 포함하는, 가상공간 형성 방법.
According to claim 1,
converting first spherical coordinate information for a first spherical coordinate system of the disposed first selection object into first reference coordinate information for the reference coordinate system based on the vector value of the first position with respect to the reference position ; Virtual space forming method further comprising.
제1항에 있어서,
상기 제1사용자로부터 상기 제1위치와 상기 제1선택대상체 간의 거리에 대한 변경정보를 수신하고 적용하는 단계;를 더 포함하는, 가상공간 형성 방법.
According to claim 1,
Receiving and applying change information on the distance between the first location and the first selection object from the first user; further comprising a method of forming a virtual space.
제1항에 있어서,
제1선택대상체 변경정보를 수신하고 적용하는 단계;를 더 포함하고,
상기 제1선택대상체 변경정보는, 상기 제1사용자에 의한 상기 제1선택대상체의 모양, 크기 또는 회전에 관한 변경정보를 포함하는, 가상공간 형성 방법.
According to claim 1,
Receiving and applying the first selection object change information; further comprising,
The method for forming a virtual space, wherein the first selection object change information includes change information regarding the shape, size, or rotation of the first selection object by the first user.
제1항에 있어서,
상기 제1사용자공간은, 현실공간의 영상데이터를 수신하고 이에 대응하도록 생성된 가상공간을 포함하는, 가상공간 형성 방법.
According to claim 1,
The first user space includes a virtual space generated to receive image data of a real space and correspond thereto.
삭제delete 제1항에 있어서,
상기 제1생성데이터는, 상기 제1사용자가 상기 제1사용자공간을 촬영한 썸네일 이미지 및 상기 썸네일 이미지 촬영 시점의 상기 제1사용자 클라이언트 장치의 배치 위치를 포함하고,
상기 썸네일 이미지 촬영 시점의 상기 제1사용자 클라이언트 장치의 배치 위치는, 상기 제1사용자 또는 제2사용자가 상기 제1생성데이터를 수신하여 상기 제1사용자공간에 접속하는 경우의 제1사용자공간에서의 접속 위치로, 방향정보를 포함하는, 가상공간 형성 방법.
According to claim 1,
The first generated data includes a thumbnail image in which the first user captured the first user space, and an arrangement location of the first user client device at the time of photographing the thumbnail image,
The arrangement position of the first user client device at the time of capturing the thumbnail image is in the first user space when the first user or the second user receives the first generated data and accesses the first user space. A method of forming a virtual space, including direction information as a connection location.
서버가 제1사용자 클라이언트 장치로부터 제1사용자공간에 대한 제1생성데이터를 수신하는 단계; 및
상기 서버가 상기 제1생성데이터를 제2사용자 클라이언트 장치에 전송하는 단계;를 포함하고,
상기 제1사용자공간은, 상기 제1사용자에 의해 배치된 하나 이상의 가상의 대상체를 포함하는 가상공간이고,
상기 제1생성데이터는, 제1선택대상체 및 상기 제1선택대상체의 복제대상체가 포함된 상기 제1사용자공간에 배치된 복수의 대상체의 대상체 정보 또는 배치 위치 정보를 포함하고,
상기 복수의 대상체 중에서 상기 제1사용자에 의해 선택된 상기 제1선택대상체는, 상기 제1사용자 클라이언트 장치의 이동 또는 상기 제1사용자의 조작에 대응하여 위치가 변경되고, 상기 제1사용자의 배치요청에 따라 상기 제1사용자공간에 배치되고,
상기 복제대상체는, 상기 제1선택대상체에 대한 상기 제1사용자의 복제요청에 따라, 상기 제1선택대상체와 동일한 종류, 크기 및 방향을 갖도록 복제되었으며, 상기 제1사용자공간에서 상기 제1선택대상체와 다른 위치에 배치되고,
상기 위치 변경은, 3차원 공간상의 상기 제1선택대상체의 배치 위치를 변경하는 것으로서, 기준좌표계 상의 제1위치를 원점으로 하는 제1구면좌표계에서 상기 제1위치로부터 특정 거리를 반지름으로 하여 형성되는 구면의 원주상에서 이루어지는 것이고,
상기 기준좌표계는, 상기 제1사용자공간 생성 시점의 상기 제1사용자 클라이언트 장치의 배치 위치 또는 상기 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 제1사용자 위치인 기준위치를 원점으로 하는 구면좌표계 또는 공간좌표계를 포함하는 좌표계이고,
상기 제1위치는, 상기 제1선택대상체가 선택된 상태에서의 상기 제1사용자 클라이언트 장치의 배치 위치 또는 상기 제1사용자 클라이언트 장치의 배치 위치로부터 산출된 제1사용자 위치이고,
상기 특정 거리는, 상기 제1사용자 클라이언트 장치를 파지한 상기 제1사용자의 뻗어진 팔길이이고,
상기 제1선택대상체는, 상기 원주 상의 제1 지점에 위치된 상태에서, 상기 제1사용자 클라이언트 장치를 파지한 상기 제1사용자의 뻗어진 팔이 특정 방향으로 움직이면, 상기 원주 상의 제1 지점에서 상기 움직인 특정 방향에 해당하는 상기 원주 상의 제2 지점으로 위치가 변경되는 것을 특징으로 하는, 가상공간 형성 방법.
receiving, by the server, first generated data for the first user space from the first user client device; and
Including; by the server transmitting the first generated data to a second user client device;
The first user space is a virtual space including one or more virtual objects arranged by the first user,
The first generation data includes object information or arrangement location information of a plurality of objects disposed in the first user space including a first selection object and a duplicate object of the first selection object,
The first selection object selected by the first user from among the plurality of objects is changed in location in response to movement of the first user client device or manipulation of the first user, and responds to the placement request of the first user. is disposed in the first user space according to the
The copy object was copied to have the same type, size and orientation as the first selection object according to the copy request of the first user for the first selection object, and the first selection object in the first user space is placed in a different location from
The position change is to change the arrangement position of the first selection object in a three-dimensional space, and is formed by a specific distance from the first position as a radius in a first spherical coordinate system having the first position on the reference coordinate system as the origin It is done on the circumference of a sphere,
The reference coordinate system is a spherical coordinate system or space having an origin of a first user position calculated from the arrangement position of the first user client device at the time of generating the first user space or a first user position calculated from the arrangement position of the first user client device. A coordinate system including a coordinate system,
The first position is a first user position calculated from the arrangement position of the first user client device in a state in which the first selection object is selected or the arrangement position of the first user client device;
The specific distance is an extended arm length of the first user holding the first user client device,
In a state where the first selection object is located at a first point on the circumference, when the outstretched arm of the first user holding the first user client device moves in a specific direction, the first selection object is located at the first point on the circumference. A method for forming a virtual space, characterized in that the position is changed to a second point on the circumference corresponding to a specific direction in which it is moved.
제9항에 있어서,
상기 서버가 제2사용자 클라이언트 장치로부터 제2생성데이터를 수신하는 단계;를 더 포함하고,
상기 제2생성데이터는, 제2사용자에 의해 하나 이상의 대상체 배치가 변경된 상기 제1사용자공간의 생성데이터이고,
상기 제2사용자에 의해 배치가 변경된 대상체는, 상기 제2사용자 클라이언트 장치에 의해 상기 제2사용자 클라이언트 장치의 이동 또는 상기 제2사용자의 조작에 대응하여 상기 제2사용자에 의해 선택된 제2선택대상체의 위치가 변경되고, 상기 제2선택대상체에 대한 상기 제2사용자의 배치요청에 따라 상기 제1사용자공간에 배치되는 것을 특징으로 하고,
상기 위치 변경은, 3차원 공간상의 상기 제2선택대상체의 배치 위치를 변경하는 것으로서, 상기 기준좌표계 상의 제2위치를 원점으로 하는 제2구면좌표계에서 상기 제2위치로부터 특정한 거리의 구면상에서 이동되는 것이고,
상기 제2위치는, 상기 제2선택대상체가 선택된 상태에서의 상기 제2사용자 클라이언트 장치의 배치 위치 또는 상기 제2사용자 클라이언트 장치의 배치 위치로부터 산출된 제2사용자 위치인, 가상공간 형성 방법.
10. The method of claim 9,
Further comprising; receiving, by the server, second generation data from a second user client device;
The second generated data is generated data of the first user space in which the arrangement of one or more objects is changed by a second user,
The object whose arrangement has been changed by the second user is a second selection object selected by the second user in response to the movement of the second user client device by the second user client device or the manipulation of the second user by the second user client device. It is characterized in that the position is changed and arranged in the first user space according to the arrangement request of the second user for the second selection object,
The position change is to change the arrangement position of the second selection object in three-dimensional space, and is moved on a spherical surface at a specific distance from the second position in a second spherical coordinate system having the second position on the reference coordinate system as the origin. will,
The method of claim 1, wherein the second location is a location of the second user client device when the second selection object is selected or a second user location calculated from a location location of the second user client device.
제10항에 있어서,
상기 서버가 상기 기준위치에 대한 상기 제2위치의 벡터값을 기초로, 배치된 상기 제2선택대상체의 제2구면좌표계에 대한 제2구면좌표정보를 상기 기준좌표계에 대한 제2기준좌표정보로 변환하는 단계;를 더 포함하는, 가상공간 형성 방법.
11. The method of claim 10,
Based on the vector value of the second position with respect to the reference position, the server converts the second spherical coordinate information for the second spherical coordinate system of the second selection target to the second reference coordinate information for the reference coordinate system. Transforming; further comprising, a virtual space forming method.
제10항에 있어서,
상기 서버가 상기 제2생성데이터를 제1사용자 클라이언트 장치에 전송하는 단계;를 더 포함하는, 가상공간 형성 방법.
11. The method of claim 10,
The method further comprising; transmitting, by the server, the second generation data to the first user client device.
하드웨어인 컴퓨터와 결합되어, 제1항의 방법을 실행시키기 위하여 매체에 저장된, 가상공간 형성 프로그램.A virtual space forming program that is combined with a computer that is hardware and stored in a medium to execute the method of claim 1 .
KR1020190176975A 2019-12-27 2019-12-27 Method and program for creating virtual space where virtual objects are arranged based on spherical coordinate system KR102318698B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020190176975A KR102318698B1 (en) 2019-12-27 2019-12-27 Method and program for creating virtual space where virtual objects are arranged based on spherical coordinate system
PCT/KR2020/019057 WO2021133079A1 (en) 2019-12-27 2020-12-24 Spherical coordinate system-based method and program for forming virtual space in which virtual object is arranged
KR1020210141676A KR20210131284A (en) 2019-12-27 2021-10-22 Method and program for creating virtual space where virtual objects are arranged based on spherical coordinate system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190176975A KR102318698B1 (en) 2019-12-27 2019-12-27 Method and program for creating virtual space where virtual objects are arranged based on spherical coordinate system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210141676A Division KR20210131284A (en) 2019-12-27 2021-10-22 Method and program for creating virtual space where virtual objects are arranged based on spherical coordinate system

Publications (2)

Publication Number Publication Date
KR20210084055A KR20210084055A (en) 2021-07-07
KR102318698B1 true KR102318698B1 (en) 2021-10-28

Family

ID=76575657

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020190176975A KR102318698B1 (en) 2019-12-27 2019-12-27 Method and program for creating virtual space where virtual objects are arranged based on spherical coordinate system
KR1020210141676A KR20210131284A (en) 2019-12-27 2021-10-22 Method and program for creating virtual space where virtual objects are arranged based on spherical coordinate system

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020210141676A KR20210131284A (en) 2019-12-27 2021-10-22 Method and program for creating virtual space where virtual objects are arranged based on spherical coordinate system

Country Status (2)

Country Link
KR (2) KR102318698B1 (en)
WO (1) WO2021133079A1 (en)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101212636B1 (en) 2010-08-20 2012-12-20 한국과학기술원 Method and apparatus for presenting location information on augmented reality
KR101330808B1 (en) * 2011-01-27 2013-11-18 주식회사 팬택 Apparatus for editing of augmented reality data
KR101659780B1 (en) * 2016-02-23 2016-09-27 (주)이지스 Method for Representing Global Spherical Space of 2 Dimentional Drawing data in GIS
KR20180051288A (en) * 2016-11-08 2018-05-16 삼성전자주식회사 Display apparatus and control method thereof
US20180210628A1 (en) * 2017-01-23 2018-07-26 Snap Inc. Three-dimensional interaction system
IL269533B2 (en) * 2017-03-28 2023-11-01 Magic Leap Inc Augmeted reality system with spatialized audio tied to user manipulated virtual object
KR102085440B1 (en) * 2017-12-26 2020-03-05 (주)스코넥엔터테인먼트 Virtual Reality Control System

Also Published As

Publication number Publication date
KR20210131284A (en) 2021-11-02
WO2021133079A1 (en) 2021-07-01
KR20210084055A (en) 2021-07-07

Similar Documents

Publication Publication Date Title
US11875013B2 (en) Devices, methods, and graphical user interfaces for displaying applications in three-dimensional environments
US11557102B2 (en) Methods for manipulating objects in an environment
US20220084279A1 (en) Methods for manipulating objects in an environment
US20190251884A1 (en) Shared content display with concurrent views
US9886102B2 (en) Three dimensional display system and use
US10649615B2 (en) Control interface for a three-dimensional graphical object
US20220317776A1 (en) Methods for manipulating objects in an environment
CN103426202A (en) Display system and display method for three-dimensional panoramic interactive mobile terminal
US11429246B2 (en) Device, method, and graphical user interface for manipulating 3D objects on a 2D screen
US9529509B1 (en) Item selection
CN109905592A (en) According to the interactive controlling of user or the providing method and device of the content of synthesis
US20200104028A1 (en) Realistic gui based interactions with virtual gui of virtual 3d objects
US11961195B2 (en) Method and device for sketch-based placement of virtual objects
Ortega et al. Direct drawing on 3D shapes with automated camera control
KR102318698B1 (en) Method and program for creating virtual space where virtual objects are arranged based on spherical coordinate system
KR102351900B1 (en) Method, apparatus and program for providing user interface to arrange virtual objects
US11393164B2 (en) Device, method, and graphical user interface for generating CGR objects
US11393171B2 (en) Mobile device based VR content control
US20230206566A1 (en) Method of learning a target object using a virtual viewpoint camera and a method of augmenting a virtual model on a real object implementing the target object using the same
US11087528B1 (en) 3D object generation
US20240221328A1 (en) Method and Device for Sketch-Based Placement of Virtual Objects
WO2022261097A1 (en) Computer-assisted graphical development tools
CN111580734A (en) Control method, control device, glasses and storage medium

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
N231 Notification of change of applicant