CN106340051A - 3D scene partitioned loading method and 3D scene partitioned loading system - Google Patents
3D scene partitioned loading method and 3D scene partitioned loading system Download PDFInfo
- Publication number
- CN106340051A CN106340051A CN201610702253.2A CN201610702253A CN106340051A CN 106340051 A CN106340051 A CN 106340051A CN 201610702253 A CN201610702253 A CN 201610702253A CN 106340051 A CN106340051 A CN 106340051A
- Authority
- CN
- China
- Prior art keywords
- loading
- scene
- block
- axis
- divisional plane
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
The invention discloses a 3D scene partitioned loading method and a 3D scene partitioned loading system. The method comprises the following steps: establishing a 3D rectangular coordinate system; segmenting a scene into a preset number of rectangular blocks of which the bottom faces are parallel to a plane formed by the two coordinate axes of the coordinate system; acquiring scene data corresponding to each rectangular block; calculating out a loading datum point according to the current point-of-view position and angle-of-view direction of a camera; and loading the scene data corresponding to the rectangular block where the loading datum point is located and eight rectangular blocks adjacent to the rectangular block. A loading datum point is determined in real time according to the point-of-view position and angle-of-view direction of the camera, and the scene data of nine blocks centering on the block where the loading datum point is located is loaded correspondingly according to the loading datum point. Thus, a large and close scene can be always observed within a scope of 90 degrees by starting from the point of view and taking the angle-of-view direction as a centerline, and observers can get good visual experience.
Description
Technical field
The present invention relates to technical field of virtual reality, more particularly, to a kind of 3d world subdivision loading method and its system.
Background technology
In recent years, 3d technology and virtual reality technology obtain fast development, and 3d scene also increasingly complicates and maximizes.
How to assume large-scale 3d scene by webpage is just becoming important topic.Flash player is as a kind of browser plug-in, coverage rate
High, it is very important webpage 3d content playing tool.However, because the intrinsic bearing capacity of flash limits it is impossible to directly
Support large-scale 3d scene;If effective method can be found reduce real-time bearing pressure, bigger 3d scene can be moved to webpage,
Watched by flash player for user.
It is proposed that a kind of many water of virtual emulation scene in the Chinese patent open file of Publication No. cn102411792a
Translation state loading and unloading method, according to one radius parameter a of user computer configuration definition, in the three-dimensional system of coordinate of modeling software
In, whole scene is divided in z-axis by several horizontal block with length b, according to length c by several horizontal block above-mentioned in x
It is divided into some sections on axle, according to length d, several horizontal block above-mentioned are divided into some sections on the y axis, will be entirely three-dimensional
Scene partitioning is several scenario block positioned at varying level, when height in z-axis for the video camera is in the z-axis of certain level block
In the range of when, if the distance of a certain scenario block in video camera and this block is less than radius a, program loads this scenario block, otherwise
Program unloads this scenario block.But the program mainly realizes the management to resource it is impossible to ensure the visual experience of observer.
Content of the invention
The technical problem to be solved is: proposes a kind of 3d world subdivision loading method and its system, in system
In the case that bearing capacity is certain, it is obtained in that preferable visual experience.
In order to solve above-mentioned technical problem, the technical solution used in the present invention is: a kind of 3d world subdivision loading method, bag
Include:
Set up three-dimensional cartesian coordinate system, wherein, x-axis sets along the length direction setting of scene, y-axis along the short transverse of scene
Put, z-axis is along the width setting of scene;
By predetermined number parallel for the plane that described scene cut becomes bottom surface with two reference axis in described coordinate system are constituted
Cuboid block;
Obtain each contextual data corresponding to cuboid block;
According to the current viewpoint position of video camera and view directions, it is calculated loading datum mark;
Load the described cuboid block loading datum mark place and the corresponding field of eight cuboid blocks being adjacent
Scape data.
The invention still further relates to a kind of 3d world subdivision loading system, comprising:
Set up module, be used for setting up three-dimensional cartesian coordinate system, wherein, along the length direction setting of scene, y-axis is along field for x-axis
The short transverse setting of scape, z-axis is along the width setting of scene;
Segmentation module, for becoming bottom surface parallel with the plane of two reference axis compositions in described coordinate system described scene cut
Predetermined number cuboid block;
Acquisition module, for obtaining the contextual data corresponding to each cuboid block;
Computing module, for the viewpoint position current according to video camera and view directions, is calculated loading datum mark;
Load-on module, for loading the described cuboid block loading datum mark place and eight cuboids being adjacent
The corresponding contextual data of block.
The beneficial effects of the present invention is: the viewpoint position according to video camera and view directions, determine a loading base in real time
On schedule, and according to loading datum mark, correspond to the contextual data loading nine pieces of blocks centered on loading datum mark place block,
Ensure that from viewpoint, line centered on view directions, scope field larger, close together can be observed in the range of 90 °
Scape, allows the viewer to the preferable visual experience of enough acquisitions.
Brief description
Fig. 1 is a kind of flow chart of present invention 3d world subdivision loading method;
Fig. 2 is the method flow diagram of the embodiment of the present invention one;
Fig. 3 is the method flow diagram of the embodiment of the present invention two;
Fig. 4 is the schematic diagram that the embodiment of the present invention two loads block;
Fig. 5 is a kind of structural representation of present invention 3d world subdivision loading system;
Fig. 6 is the system structure diagram of the embodiment of the present invention three.
Label declaration:
1st, set up module;2nd, split module;3rd, acquisition module;4th, computing module;5th, load-on module;6th, comparison module;7、
Distribute module;8th, selecting module;9th, release module;
41st, first acquisition unit;42nd, first obtains unit;43rd, computing unit;44th, second obtains unit.
Specific embodiment
By describing the technology contents of the present invention in detail, being realized purpose and effect, below in conjunction with embodiment and coordinate attached
Figure is explained in detail.
The design of most critical of the present invention is: the viewpoint position according to video camera and view directions, determines a loading in real time
Datum mark.
Refer to Fig. 1, a kind of 3d world subdivision loading method, comprising:
Set up three-dimensional cartesian coordinate system, wherein, x-axis sets along the length direction setting of scene, y-axis along the short transverse of scene
Put, z-axis is along the width setting of scene;
By predetermined number parallel for the plane that described scene cut becomes bottom surface with two reference axis in described coordinate system are constituted
Cuboid block;
Obtain each contextual data corresponding to cuboid block;
According to the current viewpoint position of video camera and view directions, it is calculated loading datum mark;
Load the described cuboid block loading datum mark place and the corresponding field of eight cuboid blocks being adjacent
Scape data.
Knowable to foregoing description, the beneficial effects of the present invention is: load centered on loading datum mark place block
The contextual data of nine pieces of blocks it is ensured that from viewpoint, line centered on view directions, model can be observed in the range of 90 °
Enclose scene larger, close together, allow the viewer to the preferable visual experience of enough acquisitions.
Further, described " described scene cut is become the plane that in bottom surface and described coordinate system, two reference axis are constituted to put down
Row predetermined number cuboid block " particularly as follows:
Appoint by the first divisional plane of a reference axis in described coordinate system with two other reference axis
Article one, the second divisional plane of reference axis is split to scene, the adjacent spacing of described first divisional plane and adjacent described
The spacing of two divisional planes is identical, obtains the square of the bottom surface predetermined number parallel with the plane of two reference axis compositions in described coordinate system
Body block, described bottom surface is square, and the data total amount of any 3 × 3 corresponding contextual data of described cuboid block
It is not more than system bearing ability.
Seen from the above description, in the case that system bearing ability is certain, observer can be made to obtain preferable vision body
Test.
Further, after described " obtaining each contextual data corresponding to cuboid block ", further include:
If the object in scene is on the first divisional plane, on the second divisional plane or the first divisional plane and the second divisional plane
Intersection on, then compare and described first divisional plane, the second divisional plane or the adjacent corresponding field of cuboid block of described intersection
The data volume size of scape data;
The total data of a described object is distributed to the minimum cuboid block of data volume.
Seen from the above description, by distributing the object being on divisional plane to the minimum square of the data volume being adjacent
It is ensured that the integrality of object in body block, improve the visual experience of observer further.
Further, described " according to the current viewpoint position of video camera and view directions, being calculated loading datum mark "
Particularly as follows:
Determine the current viewpoint position of video camera, and obtain position vector op of described viewpoint position;
According to the motion state of video camera, obtain first anglec of rotation of camera intrinsic x-axis rotation in real time, rotate around y-axis
Second anglec of rotation and around the 3rd anglec of rotation that z-axis rotates, obtain the direction vector od of the current view directions of video camera;
According to formulaCalculate and load datum mark
Position vector ol, wherein, od.x is the component in x-axis for the direction vector od of view directions, and od.z is the side of view directions
To component in z-axis for the vectorial od, a is the length of side of the square bottom surface of cuboid block;
According to described position vector ol loading datum mark, obtain loading datum mark.
Seen from the above description, according to camera views position and view directions, it is calculated a loading datum mark in real time,
Thus determining the block needing to load in real time.
It is further, described that " loading is described to load cuboid block and eight rectangles being adjacent that datum mark is located
Before the contextual data of body block ", further include:
If described loading datum is on the first divisional plane, on the second divisional plane or the first divisional plane and the second divisional plane
Intersection on, then according to described view directions, select be located at view directions bearing of trend and with described first divisional plane, second
Divisional plane or the adjacent cuboid block of described intersection, as loading the cuboid block that datum mark is located.
Seen from the above description, select the block being located at the bearing of trend of view directions as the area loading datum mark place
Block, can be observed the larger scene of scope, improves the visual experience of observer further.
It is further, described that " loading is described to load cuboid block and eight rectangles being adjacent that datum mark is located
Before the corresponding contextual data of body block ", further include:
If the cuboid block of loading does not load, described, block and eight blocks being adjacent that datum mark is located
In the range of, the corresponding contextual data of cuboid block of loading described in release.
Seen from the above description, system resource can be saved.
Refer to Fig. 5, the invention allows for a kind of 3d world subdivision loading system, comprising:
Set up module, be used for setting up three-dimensional cartesian coordinate system, wherein, along the length direction setting of scene, y-axis is along field for x-axis
The short transverse setting of scape, z-axis is along the width setting of scene;
Segmentation module, for becoming bottom surface parallel with the plane of two reference axis compositions in described coordinate system described scene cut
Predetermined number cuboid block;
Acquisition module, for obtaining the contextual data corresponding to each cuboid block;
Computing module, for the viewpoint position current according to video camera and view directions, is calculated loading datum mark;
Load-on module, for loading the described cuboid block loading datum mark place and eight cuboids being adjacent
The corresponding contextual data of block.
Further, described segmentation module is specifically for by the first segmentation of a reference axis in described coordinate system
Face and in two other reference axis the second divisional plane of any bar reference axis scene is split, adjacent described
The spacing of one divisional plane is identical with the spacing of adjacent described second divisional plane, obtains bottom surface and two reference axis in described coordinate system
The cuboid block of the parallel predetermined number of plane constituting, described bottom surface is square, and any 3 × 3 described cuboid
The data total amount of the corresponding contextual data of block is not more than system bearing ability.
Further, also include:
Comparison module, if be in the first divisional plane for the object in scene, on the second divisional plane or the first segmentation
On the intersection of face and the second divisional plane, then compare and described first divisional plane, the second divisional plane or the adjacent rectangle of described intersection
The data volume size of the corresponding contextual data of body block;
Distribute module, for distributing the total data of a described object to the minimum cuboid block of data volume.
Further, described computing module includes:
First acquisition unit, the viewpoint position current for determining video camera, and obtain the position of described viewpoint position to
Amount op;
First obtains unit, for the motion state according to video camera, obtains the first rotation of camera intrinsic x-axis rotation in real time
Gyration, second anglec of rotation rotating around y-axis and around the 3rd anglec of rotation that z-axis rotates, obtain the view directions of video camera
Direction vector od;
Computing unit, for according to formulaMeter
Calculate position vector ol loading datum mark, wherein, od.x is the component in x-axis for the direction vector od of view directions, and od.z is
Component in z-axis for the direction vector od of view directions, a is the length of side of the square bottom surface of cuboid block;
Second obtains unit, for according to described position vector ol loading datum mark, obtaining loading datum mark.
Embodiment one
Refer to Fig. 2, embodiments of the invention one are: a kind of 3d world subdivision loading method is it is adaptable to observer is with
One people claims view large-scale 3d scene, system cannot carry the situation of whole scenes simultaneously, comprises the steps:
S1: set up three-dimensional cartesian coordinate system, wherein, along the length direction setting of scene, y-axis is along the height side of scene for x-axis
To setting, z-axis is along the width setting of scene;Preferably, three-dimensional cartesian coordinate system adopts left-handed coordinate system.
S2: described scene cut is become the bottom surface predetermined number parallel with the plane of two reference axis compositions in described coordinate system
Cuboid block;By the first divisional plane of a reference axis in described coordinate system with perpendicular to two other reference axis
Second divisional plane of middle any bar reference axis is split to scene, the adjacent spacing of described first divisional plane and adjacent institute
The spacing stating the second divisional plane is identical, obtains the bottom surface predetermined number parallel with the plane of two reference axis compositions in described coordinate system
Cuboid block, described bottom surface is square, and the data of any 3 × 3 corresponding contextual data of described cuboid block
Total amount is not more than system bearing ability;
For example, if a length of l of 3d scene s, a width of w, a height of h, system bearing ability is a, by perpendicular to the first of x-axis
Divisional plane and the second divisional plane perpendicular to z-axis are split to scene, obtain the bottom surface cuboid block parallel with xz plane,
And the bottom surface of cuboid block is square, the length of side is a, the quantity of cuboid blockWherein,
Ceil (x) is the function that rounds up, and returns a smallest positive integral being not less than x, and the value of a is as big as possible, but any 3 × 3
The data total amount of the corresponding contextual data of described cuboid block is not more than system bearing ability a.
S3: obtain each contextual data corresponding to cuboid block;Contextual data will press block packing, each rectangle
Body block corresponds to a packet.
If the object that in scene should not be split (as building, trees etc.) is on the first divisional plane, the second divisional plane
Above or on the intersection of the first divisional plane and the second divisional plane, then compare and described first divisional plane, the second divisional plane or described friendship
The data volume size of the adjacent corresponding contextual data of cuboid block of line;The total data of a described object is distributed to data
In the minimum cuboid block of amount, will intactly be placed in the minimum cuboid block of data volume by this object.
S4: according to the current viewpoint position of video camera and view directions, be calculated loading datum mark.
S5: judge the cuboid block of loading whether described load the cuboid block that datum mark is located and with its phase
In the range of eight adjacent cuboid blocks, if it is not, execution step s6, if so, execution step s7.
S6: the corresponding contextual data of cuboid block of loading described in release.
S7: load the described eight cuboid blocks loading the datum mark cuboid block being located and being adjacent corresponding
Contextual data.
Preferably, in step s6, only discharge loading, and the block in the range of described nine blocks is not corresponding
Contextual data, in step s7, then only need to reload and not load, and the corresponding field of block in the range of described nine blocks
Scape data, thus improve loading efficiency.For example, if having loaded block 1,2,3,4,5,6,7,8,9, currently need to load block 4,5,
6th, 7,8,9,10,11,12, then discharge the contextual data of block 1,2,3, load the contextual data of block 10,11,12.
The present embodiment, according to the viewpoint position of video camera and view directions, determines a loading datum mark in real time, and according to plus
Carry datum mark, the corresponding contextual data loading nine pieces of blocks centered on loading datum mark place block is it is ensured that from viewpoint
Set out, line centered on view directions, scope scene larger, close together can be observed in the range of 90 °, allow the viewer to
Enough obtain preferable visual experience.
Embodiment two
Refer to Fig. 3, the present embodiment is the expansion further of step s4 in embodiment one.The present embodiment is with cuboid block
Bottom surface parallel to xz plane as a example, the segmentation perpendicular to xz plane is carried out to scene, determine load block when also only need
Consider x coordinate and the z coordinate of viewpoint position, and projection in xz plane for the view directions.
S41: determine the current viewpoint position of video camera, and obtain position vector op of described viewpoint position.
S42: according to the motion state of video camera, obtain first anglec of rotation of camera intrinsic x-axis rotation in real time, around y-axis
Rotation second anglec of rotation and around the 3rd anglec of rotation that z-axis rotates, obtain the direction vector od of the view directions of video camera.
S43: according to formulaCalculate and load base
Position vector ol on schedule, wherein, od.x is the component in x-axis for the direction vector od of view directions, and od.z is view directions
Component in z-axis for the direction vector od, a is the length of side of the square bottom surface of cuboid block, and max (x, y) is to take maximum
Function, returns maximum number in parameter x, y.
S44: according to described position vector ol loading datum mark, obtain loading datum mark.
If described loading datum is on the first divisional plane, on the second divisional plane or the first divisional plane and the second divisional plane
Intersection on, then according to described view directions, select be located at view directions bearing of trend and with described first divisional plane, second
Divisional plane or the adjacent cuboid block of described intersection, as loading the cuboid block that datum mark is located.
For example, refer to Fig. 4, in xz plane, if p point is viewpoint position, centered on p, 2a is the length of side, does square
Abcd, four edges are respectively parallel to x-axis and z-axis, then loading datum mark l is exactly projection in xz plane for the view directions and pros
The intersection point of shape abcd four edges;The all view directions of p point are corresponding to load the four edges that datum mark constitutes square abcd.
From viewpoint p, the load condition in different visual angles direction is exemplified below:
When view directions are for pc, l falls in c point, loads block 03,04,05,13,14,15,23,24,25;
When view directions are for pn, l falls in n point, loads block 02,03,04,12,13,14,22,23,24;
When view directions are for pd, l falls in d point, loads block 01,02,03,11,12,13,21,22,23;
When view directions are for pk, l falls in k point, loads block 22,23,24,32,33,34,42,43,44;
When view directions are for pe, l falls in e point, loads block 13,14,15,23,24,25,33,34,35;
When view directions are for pm, l falls in m point, loads block 13,14,15,23,24,25,33,34,35.
Assume to become, from state 1 (in p, view directions are pe to viewpoint), the state 2 of turning to now that (viewpoint in q, view directions is
Qr), according to the formula in step s43, l falls the r point in block 34, current load block be 23,24,25,33,34,35,
43rd, 44,45, now will discharge and load block 13,14,15, and load new block 43,44,45.
If p point is in the intersection in the middle of block 22,23,32,33, square abcd is overlapped with block 22,23,32,33,
When view directions are for pn, l falls on the divisional plane of block 13,23, then fetch bit in view directions bearing of trend and with described
The adjacent block of divisional plane, i.e. block 13, as loading the block that datum mark is located, load block 02,03,04,12,13,14,
22、23、24;
When view directions are for pc, on the intersection that l falls in the middle of block 13,14,23,24, then take block 14 as loading
The block that datum mark is located, loads block 03,04,05,13,14,15,23,24,25.
It is of course also possible to carry out the segmentation perpendicular to x/y plane to scene, now, the formula in step s43 isOd.y is the direction vector od component on the y axis of view directions;
When carrying out scene perpendicular to the segmentation of yz plane, formula is
Embodiment three
Refer to Fig. 6, the present embodiment is a kind of 3d world subdivision loading system of corresponding above-described embodiment, comprising:
Set up module 1, be used for setting up three-dimensional cartesian coordinate system, wherein, along the length direction setting of scene, y-axis is along field for x-axis
The short transverse setting of scape, z-axis is along the width setting of scene;
Segmentation module 2, for becoming the plane that bottom surface is constituted with two reference axis in described coordinate system to put down described scene cut
The cuboid block of the predetermined number of row;
Acquisition module 3, for obtaining the contextual data corresponding to each cuboid block;
Computing module 4, for the viewpoint position current according to video camera and view directions, is calculated loading datum mark;
Load-on module 5, for loading the described cuboid block loading datum mark place and eight rectangles being adjacent
The corresponding contextual data of body block.
Described segmentation module 2 is specifically for by the first divisional plane of a reference axis in described coordinate system and vertical
In two other reference axis, the second divisional plane of any bar reference axis is split to scene, adjacent described first divisional plane
Spacing identical with the spacing of adjacent described second divisional plane, obtain that two reference axis in bottom surface and described coordinate system constitute is flat
The cuboid block of the parallel predetermined number in face, described bottom surface is square, and any 3 × 3 described cuboid block corresponds to
Contextual data data total amount be not more than system bearing ability.
Also include:
Comparison module 6, if be in the first divisional plane for the object in scene, on the second divisional plane or the first segmentation
On the intersection of face and the second divisional plane, then compare and described first divisional plane, the second divisional plane or the adjacent rectangle of described intersection
The data volume size of the corresponding contextual data of body block;
Distribute module 7, for distributing the total data of a described object to the minimum cuboid block of data volume.
Described computing module 4 includes:
First acquisition unit 41, the viewpoint position current for determining video camera, and obtain the position of described viewpoint position
Vectorial op;
First obtains unit 42, for the motion state according to video camera, obtains the first of the rotation of camera intrinsic x-axis in real time
The anglec of rotation, second anglec of rotation rotating around y-axis and around the 3rd anglec of rotation that z-axis rotates, obtain the visual angle side of video camera
To direction vector od;
Computing unit 43, for according to formula
Calculate position vector ol loading datum mark, wherein, od.x is the component in x-axis for the direction vector od of view directions, od.z
For the component in z-axis for the direction vector od of view directions, a is the length of side of the square bottom surface of cuboid block;
Second obtains unit 44, for according to described position vector ol loading datum mark, obtaining loading datum mark.
Also include:
Selecting module 8, if for described loading datum on the first divisional plane, the second divisional plane or first segmentation
On the intersection of face and the second divisional plane, then according to described view directions, select be located at view directions bearing of trend and with described
First divisional plane, the second divisional plane or the adjacent cuboid block of described intersection, as loading the cuboid area that datum mark is located
Block.
Also include:
Release module 9, if the cuboid block for loading does not load, described, the cuboid block that datum mark is located
And in the range of eight cuboid blocks being adjacent, the corresponding contextual data of cuboid block of loading described in release.
In sum, the present invention provides 3d world subdivision loading method and its system, according to the viewpoint position of video camera
And view directions, determine a loading datum mark in real time, and according to loading datum mark, correspond to and load to load datum mark place block
Centered on nine pieces of blocks contextual data it is ensured that from viewpoint, line centered on view directions, total energy in the range of 90 °
Observe scope scene larger, close together, allow the viewer to the preferable visual experience of enough acquisitions.By divisional plane will be in
On object distribute to the minimum cuboid block of the data volume that is adjacent it is ensured that the integrality of object, carry further
The visual experience of high observer.
The foregoing is only embodiments of the invention, not thereby limit the present invention the scope of the claims, every using this
The equivalents that bright specification and accompanying drawing content are made, or directly or indirectly it is used in the technical field of correlation, all include in the same manner
In the scope of patent protection of the present invention.
Claims (10)
1. a kind of 3d world subdivision loading method is it is characterised in that include:
Set up three-dimensional cartesian coordinate system, wherein, x-axis is arranged along the length direction setting of scene, y-axis along the short transverse of scene, z
Axle is along the width setting of scene;
Rectangle by predetermined number parallel for the plane that described scene cut becomes bottom surface with two reference axis in described coordinate system are constituted
Body block;
Obtain each contextual data corresponding to cuboid block;
According to the current viewpoint position of video camera and view directions, it is calculated loading datum mark;
Load the described cuboid block loading datum mark place and the corresponding scene number of eight cuboid blocks being adjacent
According to.
2. 3d world subdivision loading method according to claim 1 is it is characterised in that described " become described scene cut
The cuboid block of the parallel predetermined number of plane that bottom surface is constituted with two reference axis in described coordinate system " particularly as follows:
By the first divisional plane of a reference axis in described coordinate system and in two other reference axis any bar
Second divisional plane of reference axis is split to scene, the adjacent spacing of described first divisional plane with adjacent described second point
The spacing of face is identical, obtains the cuboid of the bottom surface predetermined number parallel with the plane of two reference axis compositions in described coordinate system
Block, described bottom surface is square, and the data total amount of any 3 × 3 corresponding contextual data of described cuboid block is little
In system bearing ability.
3. 3d world subdivision loading method according to claim 2 is it is characterised in that described " obtain each cuboid area
After contextual data corresponding to block ", further include:
If the object in scene be on the first divisional plane, on the second divisional plane or the first divisional plane and the second divisional plane friendship
On line, then compare and described first divisional plane, the second divisional plane or the adjacent cuboid block corresponding scene number of described intersection
According to data volume size;
The total data of a described object is distributed to the minimum cuboid block of data volume.
4. 3d world subdivision loading method according to claim 2 is it is characterised in that described " current according to video camera
Viewpoint position and view directions, are calculated loading datum mark " particularly as follows:
Determine the current viewpoint position of video camera, and obtain position vector op of described viewpoint position;
According to the motion state of video camera, obtain in real time the rotation of camera intrinsic x-axis first anglec of rotation, rotate around y-axis the
Two anglecs of rotation and around the 3rd anglec of rotation that z-axis rotates, obtain the direction vector od of the current view directions of video camera;
According to formulaCalculate the position loading datum mark
Put vectorial ol, wherein, od.x is the component in x-axis for the direction vector od of view directions, od.z be view directions direction to
Amount component in z-axis for the od, a is the length of side of the square bottom surface of cuboid block;
According to described position vector ol loading datum mark, obtain loading datum mark.
5. 3d world subdivision loading method according to claim 2 is it is characterised in that described " load described loading benchmark
Before cuboid block and the corresponding contextual data of eight cuboid blocks being adjacent that point is located ", further include:
If described load datum on the first divisional plane, on the second divisional plane or the first divisional plane and the second divisional plane friendship
On line, then according to described view directions, select be located at view directions bearing of trend and with described first divisional plane, second segmentation
Face or the adjacent cuboid block of described intersection, as loading the cuboid block that datum mark is located.
6. 3d world subdivision loading method according to claim 1 is it is characterised in that described " load described loading benchmark
Before cuboid block and the corresponding contextual data of eight cuboid blocks being adjacent that point is located ", further include:
If the cuboid block of loading does not load, described, cuboid block and eight squares being adjacent that datum mark is located
In the range of body block, the corresponding contextual data of cuboid block of loading described in release.
7. a kind of 3d world subdivision loading system is it is characterised in that include:
Set up module, be used for setting up three-dimensional cartesian coordinate system, wherein, along the length direction setting of scene, y-axis is along scene for x-axis
Short transverse is arranged, and z-axis is along the width setting of scene;
Segmentation module, for becoming parallel pre- of plane of bottom surface and two reference axis compositions in described coordinate system by described scene cut
If the cuboid block of quantity;
Acquisition module, for obtaining the contextual data corresponding to each cuboid block;
Computing module, for the viewpoint position current according to video camera and view directions, is calculated loading datum mark;
Load-on module, for loading the described cuboid block loading datum mark place and eight cuboid blocks being adjacent
Corresponding contextual data.
8. 3d world subdivision loading system according to claim 7 is it is characterised in that described segmentation module is specifically for logical
Cross in described coordinate system the first divisional plane of a reference axis and in two other reference axis any bar reference axis
The second divisional plane scene is split, the adjacent spacing of described first divisional plane and adjacent described second divisional plane
Spacing is identical, obtains the cuboid block of the bottom surface predetermined number parallel with the plane of two reference axis compositions in described coordinate system,
Described bottom surface is square, and the data total amount of any 3 × 3 corresponding contextual data of described cuboid block is not more than system
Bearing capacity.
9. 3d world subdivision loading system according to claim 8 is it is characterised in that also include:
Comparison module, if be in the first divisional plane for the object in scene, on the second divisional plane or the first divisional plane and
On the intersection of the second divisional plane, then compare and described first divisional plane, the second divisional plane or the adjacent cuboid area of described intersection
The data volume size of the corresponding contextual data of block;
Distribute module, for distributing the total data of a described object to the minimum cuboid block of data volume.
10. 3d world subdivision loading system according to claim 8 is it is characterised in that described computing module includes:
First acquisition unit, the viewpoint position current for determining video camera, and obtain position vector op of described viewpoint position;
First obtains unit, for the motion state according to video camera, obtains first anglec of rotation of camera intrinsic x-axis rotation in real time
Degree, second anglec of rotation rotating around y-axis and around the 3rd anglec of rotation that z-axis rotates, obtain the current view directions of video camera
Direction vector od;
Computing unit, for according to formulaCalculate and add
Carry position vector ol of datum mark, wherein, od.x is the component in x-axis for the direction vector od of view directions, and od.z is visual angle
Component in z-axis for the direction vector od in direction, a is the length of side of the square bottom surface of cuboid block;
Second obtains unit, for according to described position vector ol loading datum mark, obtaining loading datum mark.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610702253.2A CN106340051B (en) | 2016-08-22 | 2016-08-22 | 3D world subdivision loading method and its system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610702253.2A CN106340051B (en) | 2016-08-22 | 2016-08-22 | 3D world subdivision loading method and its system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106340051A true CN106340051A (en) | 2017-01-18 |
CN106340051B CN106340051B (en) | 2019-04-02 |
Family
ID=57824641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610702253.2A Active CN106340051B (en) | 2016-08-22 | 2016-08-22 | 3D world subdivision loading method and its system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106340051B (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107045550A (en) * | 2017-04-25 | 2017-08-15 | 深圳市蜗牛窝科技有限公司 | The method and apparatus of virtual scene loading |
CN108334810A (en) * | 2017-12-25 | 2018-07-27 | 北京七鑫易维信息技术有限公司 | The method and apparatus that parameter is determined in Eye-controlling focus equipment |
CN109587579A (en) * | 2018-11-09 | 2019-04-05 | 深圳威尔视觉传媒有限公司 | Multi-view code stream transmission method, device, equipment and storage medium based on CDN |
CN112416601A (en) * | 2020-12-09 | 2021-02-26 | 西安羚控电子科技有限公司 | Large scene block loading method based on visual simulation |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020069290A1 (en) * | 2000-12-05 | 2002-06-06 | Yu-Jung Cheng | Method of rapidly determining the transmission time and range of a position message under internet virtual reality environment |
CN101635138A (en) * | 2009-08-27 | 2010-01-27 | 北京水晶石数字科技有限公司 | Method for scene visualization |
CN102411792A (en) * | 2011-07-21 | 2012-04-11 | 西安和利德软件有限公司 | Multilevel dynamic loading-unloading method for virtual simulation scene |
CN103914868A (en) * | 2013-12-20 | 2014-07-09 | 柳州腾龙煤电科技股份有限公司 | Method for mass model data dynamic scheduling and real-time asynchronous loading under virtual reality |
-
2016
- 2016-08-22 CN CN201610702253.2A patent/CN106340051B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020069290A1 (en) * | 2000-12-05 | 2002-06-06 | Yu-Jung Cheng | Method of rapidly determining the transmission time and range of a position message under internet virtual reality environment |
CN101635138A (en) * | 2009-08-27 | 2010-01-27 | 北京水晶石数字科技有限公司 | Method for scene visualization |
CN102411792A (en) * | 2011-07-21 | 2012-04-11 | 西安和利德软件有限公司 | Multilevel dynamic loading-unloading method for virtual simulation scene |
CN103914868A (en) * | 2013-12-20 | 2014-07-09 | 柳州腾龙煤电科技股份有限公司 | Method for mass model data dynamic scheduling and real-time asynchronous loading under virtual reality |
Non-Patent Citations (3)
Title |
---|
张东培: "《基于内存占用的大规模场景的多级ROI分割算法》", 《电脑知识与技术》 * |
张在德等: "《基于VRML的虚拟大场景分割调度技术》", 《计算机应用与软件》 * |
李欣: "《大型虚拟场景的分割与浏览优化》", 《大连民族学院学报》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107045550A (en) * | 2017-04-25 | 2017-08-15 | 深圳市蜗牛窝科技有限公司 | The method and apparatus of virtual scene loading |
CN107045550B (en) * | 2017-04-25 | 2020-09-08 | 深圳市蜗牛窝科技有限公司 | Virtual scene loading method and device |
CN108334810A (en) * | 2017-12-25 | 2018-07-27 | 北京七鑫易维信息技术有限公司 | The method and apparatus that parameter is determined in Eye-controlling focus equipment |
US11380134B2 (en) | 2017-12-25 | 2022-07-05 | Beijing 7Invensun Technology Co., Ltd. | Method and device for determining parameter for gaze tracking device |
CN109587579A (en) * | 2018-11-09 | 2019-04-05 | 深圳威尔视觉传媒有限公司 | Multi-view code stream transmission method, device, equipment and storage medium based on CDN |
CN112416601A (en) * | 2020-12-09 | 2021-02-26 | 西安羚控电子科技有限公司 | Large scene block loading method based on visual simulation |
Also Published As
Publication number | Publication date |
---|---|
CN106340051B (en) | 2019-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106340051A (en) | 3D scene partitioned loading method and 3D scene partitioned loading system | |
CN104658033B (en) | Global illumination method for drafting and device under multiple light courcess | |
CN107545788A (en) | Goods electronic sand map system is deduced based on the operation that augmented reality is shown | |
CN107622474A (en) | Panoramic video mapping method based on main view point | |
CN102663808A (en) | Method for establishing rigid body model based on three-dimensional model in digital home entertainment | |
CN103914868A (en) | Method for mass model data dynamic scheduling and real-time asynchronous loading under virtual reality | |
CN103257876B (en) | The method of C3 map dynamic load | |
CN108269304B (en) | Scene fusion visualization method under multiple geographic information platforms | |
CN108389245A (en) | Rendering intent, device, electronic equipment and the readable storage medium storing program for executing of cartoon scene | |
CN103425626B (en) | Coordinate transformation method and device between a kind of video camera | |
CN104462688B (en) | A kind of electric network information equipment operating simulation system | |
CN105279797B (en) | A kind of three-dimensional warehouse component method for establishing model | |
CN104461690B (en) | A kind of power equipment operating simulation system | |
CN107368612A (en) | Quaternary tree index structuring method and device | |
CN110120087A (en) | The label for labelling method, apparatus and terminal device of three-dimensional sand table | |
CN104881518A (en) | Three-dimensional vision simulation system for aerial vehicles | |
CN104573072A (en) | Three-dimensional geographic information sharing service system based on heterogeneous digital resource fusion | |
CN104270437B (en) | The mass data processing of distributed mixed architecture and visualization system and method | |
CN109544703B (en) | Data center Web3D model loading method easy to realize interaction | |
CN106485789A (en) | A kind of 3D model loading method and its device | |
CN113112594A (en) | Power transmission and transformation project three-dimensional model lightweight method and device based on electric power GIM | |
CN102880470B (en) | A kind of three-dimensional game engine kernel structure | |
Du et al. | Fast continuous collision culling with deforming noncollinear filters | |
Duanmu et al. | 3D Visual Management of Substation Based on Unity3D | |
CN104200530A (en) | Painting method and system of contour line of spatial curved surface |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |