You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/content/en/docs/about/building-volumes.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,4 +17,4 @@ BuildingVolumes is a global initiative by creatives, software engineers, teacher
17
17
18
18
We want to create free and sustainable tools for small artists, creatives, filmographers, game artists and everyone interested in the creation of Volumetric Video.
19
19
20
-
If you want to join us, or get in touch, [please head over to our community discord 🙂](https://discord.gg/BvQdJdJqu6)
20
+
If you want to join us, or get in touch, [please head over to our community discord 🙂](https://discord.gg/BvQdJdJqu6)
Copy file name to clipboardExpand all lines: docs/content/en/docs/about/license-credits.md
-2Lines changed: 0 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,7 +14,6 @@ toc: true
14
14
---
15
15
16
16
The Unity package, the Converter tool, the example data and this website is licensed under the ***MIT License***
17
-
18
17
**If you use this package in your project, we'd be grateful if you would credit us in your project**
19
18
20
19
## MIT License
@@ -27,7 +26,6 @@ The above copyright notice and this permission notice shall be included in all c
27
26
28
27
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29
28
30
-
31
29
## Credits
32
30
33
31
The sequences in the showreel, from the landing page and on Github, were created by:
Copy file name to clipboardExpand all lines: docs/content/en/docs/help/contact.md
+3-5Lines changed: 3 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,12 +13,10 @@ weight: 620
13
13
toc: true
14
14
---
15
15
16
-
👋🏻 For cooperation proposals, contributions to the project, or anything else, please contact us here
16
+
👋🏻 For cooperation proposals, contributions to the project, or anything else, please contact us here:
17
17
18
-
📧 [Send a mail to the author (Christopher Remde):](mailto:[email protected])hey@chrisrem.de
18
+
📧 [Send a mail to the author (Christopher Remde):](mailto:[email protected]) hey[at]chrisrem.de
19
19
20
20
👾 [Join us in our BuildingVolumes community discord server](https://discord.gg/BvQdJdJqu6)
21
21
22
-
<br>
23
-
24
-
> ☝🏻 If you have an issue in the project, or you encounter any bugs, please don't contact us here, but instead [open an issue on Github!](docs/help/issues/)
22
+
> ☝🏻 If you have an issue in the project, or you encounter any bugs, please don't contact us here, but instead [open an issue on Github!](docs/help/issues/)
Copy file name to clipboardExpand all lines: docs/content/en/docs/quickstart/own-data-usage/index.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,7 +23,7 @@ toc: true
23
23
24
24
3. Download the converter binaries for windows here.
25
25
26
-
4. Open the converter, and set the **input folder** to the folder containing your sequence. The **output folder** should be set to a different (empty) folder. Click on **Start Conversion**.
26
+
4. Open the converter, and set the **input folder** to the folder containing your sequence. The **output folder** should be set to a different (empty) folder. Click on **Start Conversion**.
27
27
28
28

29
29
@@ -35,4 +35,4 @@ toc: true
35
35
36
36
3. Click on **Open Sequence** and open the folder with the converted sequence (the output folder).
37
37
38
-
4. Click on Play in Unity. Your scene should now start with the playback/streaming.
38
+
4. Click on Play in Unity. Your scene should now start with the playback/streaming.
Copy file name to clipboardExpand all lines: docs/content/en/docs/quickstart/quick-start/index.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,7 +21,7 @@ toc: true
21
21
22
22
3. Copy and paste the following URL into the field and click **Add**: `https://github.com/Elite-Volumetric-Capture-Sqad/Geometry_Sequence_Streaming_Package.git`
23
23
24
-
4. To install the samples, select the Geometry Streaming Sequence package and open the **Sample foldout**. Then click on **Import**.
24
+
4. To install the samples, select the Geometry Streaming Sequence package and open the **Sample foldout**. Then click on **Import**.
Copy file name to clipboardExpand all lines: docs/content/en/docs/tutorials/editor-playback/index.md
+10-8Lines changed: 10 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,31 +15,32 @@ toc: true
15
15
16
16
17
17
## Intro
18
+
18
19
> 💡 All of the features explained here in this tutorial can also be found in the Sample Scene [01_Basic_Example](/docs/tutorials/installation/#importing-the-samples-optional)
19
20
20
21
After you've prepared and converted your sequence, you can now stream them from your disk right into Unity! This section shows you how to use the streaming and playback components inside of the editor, to setup a simple playback scene.
21
22
22
-
23
23
## Playback
24
+
24
25
1. Open your Unity scene in which you want to implement the playback. We recommend that you create a new gameobject, onto which you can attach the streaming and playback scripts/components, but you can use any gameobject of your choice. 
25
26
26
27
2. In the inspector, click on **"Add Component"**, search for **"Geometry Sequence Player"** and add this component. 
27
28
28
-
3. You should now see a Geometry Sequence Player and Geometry Sequence Stream component attached to your gameobject. Click on **"Open Sequence"** in the Player script, and then open the folder, in which your converted sequence is stored.
29
-
> ⚠️ When you're just trying out playback on your machine, or you don't intent to distribute your app to other PCs, it's fine to store the sequence anywhere on disk. However, if you plan to distribute your application, you need to put your sequence into the [Streaming Assets folder](https://docs.unity3d.com/Manual/StreamingAssets.html)!
29
+
3. You should now see a Geometry Sequence Player and Geometry Sequence Stream component attached to your gameobject. Click on **"Open Sequence"** in the Player script, and then open the folder, in which your converted sequence is stored.
30
+
> ⚠️ When you're just trying out playback on your machine, or you don't intent to distribute your app to other PCs, it's fine to store the sequence anywhere on disk. However, if you plan to distribute your application, you need to put your sequence into the [Streaming Assets folder](https://docs.unity3d.com/Manual/StreamingAssets.html)!
4. Set the **playback framerate** of your sequence. This should be the same framerate in which your animated sequence was exported. 
34
35
35
36
5. Click Play. You should now see your sequence playing back inside of your scene. If you don't see anything, it might simply be because your camera is not looking at the sequence. Go to the scene window, select the "Streamed Mesh" Gameobject and press **"F"** to focus on it. 
36
37
37
-
38
-
39
38
## Controls & Settings explained
39
+
40
40
Detailed explanation of all the settings and controls inside of the player and stream scripts
41
41
42
42
### Player component
43
+
43
44

44
45
45
46
**Path relation**
@@ -61,7 +62,7 @@ Should the playback of the sequence start directly when the scene is started/you
61
62
If activated, repeats the animation indefinitly
62
63
63
64
**Actual FPS / Frame drop**
64
-
This is the actual framerate at which the sequence plays back. If you either see a framerate lower than your target playback FPS, or see lot's of "Frame Dropped!" warning messages, this means that your system doesn't have enough resources to playback the sequence at it's intendet speed. You can either reduce the geometric complexity of your sequence, reduce the texture size, or upgrade your system.
65
+
This is the actual framerate at which the sequence plays back. If you either see a framerate lower than your target playback FPS, or see lot's of "Frame Dropped!" warning messages, this means that your system doesn't have enough resources to playback the sequence at it's intendet speed. You can either reduce the geometric complexity of your sequence, reduce the texture size, or upgrade your system.
65
66
66
67
**Time slider**
67
68
Use this slider to skip to any time in the sequence, just like in a regular video player. On the right, you can see at which frame the playback is right now, and how many frames there are in total in the sequence. The slider is only available in the editor.
@@ -70,12 +71,13 @@ Use this slider to skip to any time in the sequence, just like in a regular vide
70
71
Use the **|<** Button to go back to the start of the sequence, the **<<** and **>>** to scroll forwards/backwards for a few frames, and the **Play/Pause** button to pause/resume the playback. These buttons are only available in the editor.
71
72
72
73
### Stream component
74
+
73
75

74
76
75
-
These settings, expect for the materials, should usually not need to be adjusted.
77
+
These settings, expect for the materials, should usually not need to be adjusted.
76
78
77
79
**Buffer size**
78
-
This size sets how many frames the streaming service will load from disk and store in a buffer in advance of the playback. A larger buffer might provide a smoother playback, however it also uses more memory and skipping/restarting playback might take longer, as the buffer needs to be flushed.
80
+
This size sets how many frames the streaming service will load from disk and store in a buffer in advance of the playback. A larger buffer might provide a smoother playback, however it also uses more memory and skipping/restarting playback might take longer, as the buffer needs to be flushed.
79
81
80
82
**Use all threads**
81
83
Should the Unity Job system which is responsible for streaming use all available threads? If you deactive this, you can set the thread count yourself, but note that it will also effect other scripts that might use the job system!
Copy file name to clipboardExpand all lines: docs/content/en/docs/tutorials/installation/index.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,4 +35,4 @@ To install the samples, **select** the Geometry Streaming Sequence and open the
35
35
The sample data is now in your Unity assets folder. You can open the sample scenes to take a look how *basic playback*, *timeline playback* and the *scripting API* works.
36
36
If you run any of the samples in play mode, you should see a box spinning! If it doesn't, please report an issue!
Copy file name to clipboardExpand all lines: docs/content/en/docs/tutorials/prepare-data/index.md
+27-16Lines changed: 27 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,19 +13,20 @@ weight: 110
13
13
toc: true
14
14
---
15
15
16
-
> 💡If you want to playback data captured with LiveScan3D, you can skip this step, as it's already in the right format
16
+
> 💡If you want to playback data captured with LiveScan3D, you can skip this step, as it's already in the right format.
17
17
18
18
## Intro
19
19
20
-
To gurantee high realtime performance, the Geometry Sequence Streamer can only read sequences that are in special file format (.ply for models, .dds for textures). However, to support a
21
-
broad spectrum of input formats and make the usage of this plugin as easy as possible, we provide a small converter tool which takes in almost all widely used mesh and image formats, and converts them
22
-
into the correct format for the plugin.
20
+
To gurantee high realtime performance, the Geometry Sequence Streamer can only read sequences that are in special file format (.ply for models, .dds for textures). However, to support a broad spectrum of input formats and make the usage of this plugin as easy as possible, we provide a small converter tool which takes in almost all widely used mesh and image formats, and converts them into the correct format for the plugin.
23
21
> 👉🏻 Even when your files are already in the .ply/.dds format, they might need to be run through the converter to be encoded correctly!
24
22
25
23
## Preparation for the conversion
24
+
26
25
### Naming
26
+
27
27
In general, you should export your animated mesh or pointcloud sequences from your tool of choice in a way, that each frame of it is saved in a single, independent file. The files should be numbered in some kind of ascending order. This applies to both your models and also textures, if you have any. Save all files into one folder, without subfolders. Example:
28
-
```
28
+
29
+
```txt
29
30
frame_1.obj
30
31
frame_2.obj
31
32
frame_3.obj
@@ -45,27 +46,30 @@ In general, you should export your animated mesh or pointcloud sequences from yo
45
46
Ensure that the matching images and models for each frame have the same number!
46
47
47
48
### Supported file formats
48
-
The format in which you export your sequence shouldn't matter too much, as a wide variety of the most commonly used formats is supported.
49
+
50
+
The format in which you export your sequence shouldn't matter too much, as a wide variety of the most commonly used formats is supported.
49
51
These are all supported file formats for pointclouds/meshes:
1. Download the latest version of the converter tool from here: Download. Currently only windows is supported
65
68
2. Unpack the file
66
69
3. Open the converter. Go into the unpacked folder and open "GeometrySequenceConverter.exe". Windows might throw a warning that it prevented the app from running, in this case click on "Run anyway" or "More info" and then "Run anyway".
67
70
68
71
### Using the converter
72
+
69
73
1. Click on ***Select Input Directory***
70
74
71
75
2. If you don't see any file structure, you may need to click on ***Drives***
@@ -79,12 +83,14 @@ And for images:
79
83
6. The converter will now process your files and show a progress bar. If you want to cancel the process, click on ***Cancel***. Cancelling might take a bit of time. When the process is done, you'll have the converted sequence inside of the output folder, which you can now move to another location. The files in the output folder will be used to stream the sequence inside of Unity.
80
84
81
85
## For developers: Format specification
82
-
If you want to export your data into the correct format directly, without using the converter, you can do so! The format used here is not proprietory, but uses the open [*Stanford Polygon File Format* (.ply)](http://paulbourke.net/dataformats/ply/) for meshes and pointclouds and the [*DirectDraw Surface* (.dds)*](https://en.wikipedia.org/wiki/DirectDraw_Surface) file format for textures/images. However, both formats allow a large variety of encoding, and the Geometry Sequence Streamer needs to be supplemented a special encoding. The following sections assume that you are a bit familiar with both formats.
86
+
87
+
If you want to export your data into the correct format directly, without using the converter, you can do so! The format used here is not proprietory, but uses the open [*Stanford Polygon File Format* (.ply)](http://paulbourke.net/dataformats/ply/) for meshes and pointclouds and the [*DirectDraw Surface* (.dds)*](https://en.wikipedia.org/wiki/DirectDraw_Surface) file format for textures/images. However, both formats allow a large variety of encoding, and the Geometry Sequence Streamer needs to be supplemented a special encoding. The following sections assume that you are a bit familiar with both formats.
83
88
84
89
### Pointcloud .ply files
90
+
85
91
For .ply files containing pointclouds, use the normal **little endian binary** .ply standard, but be sure to encode the **vertex positions as 32-bit floats** (not doubles), and use the **vertex colors as uchar RGBA**. You always need to provide the red, green, blue and alpha channel, even when your sequence doesn't use alpha values or colors at all. The alpha channel isn't used in the plugin right now, but it allows for faster file reads, as RGBA is the native Unity vertex color format. Don't include any vertex indices! Here is an example of how the header of a ply looks that is correctly formatted:
86
92
87
-
```
93
+
```ply
88
94
ply
89
95
format binary_little_endian 1.0
90
96
comment How the header of a correctly formated .ply file with a pointcloud looks like
@@ -100,16 +106,18 @@ end_header
100
106
```
101
107
102
108
As an example for how the data for a a single vertex (line) could look like this. Three XZY-Float values are followed by four RGBA byte/uchar values:
103
-
```
109
+
110
+
```ply
104
111
0.323434 0.55133 1.44322 255 255 255 0
105
112
```
106
113
107
114
### Mesh .ply files
115
+
108
116
For .ply files containing meshes, you use the same **little endian binary** format as for the pointclouds, with the **vertex positions encoded as 32-bit floats**. Encode the **face indices as a uchar uint list**, as it is commonly done in the ply format. Only encode **faces as triangles**, so the uchar component of the face indices list should always be "3", the uInts should be 32-bit.
109
117
If you want to use textures/UV-coordinates, include the **U and V-coordinates as additional float propertys (property s and property t)** right behind the xyz properties.
110
118
An example header of a correctly formatted mesh ply file with UV-coordinates would look like this:
111
119
112
-
```
120
+
```ply
113
121
ply
114
122
format binary_little_endian 1.0
115
123
comment Exported for use in Unity Geometry Streaming Plugin
@@ -125,14 +133,17 @@ end_header
125
133
```
126
134
127
135
The data for a single vertex (line) would look like this. Three XYZ-float values, followed by two float values for the UV-coordinates:
128
-
```
136
+
137
+
```ply
129
138
0.323434 0.55133 1.44322 0.231286 0.692901
130
139
```
131
140
132
141
The data for a single indice (line) in the index list could look like this:
133
-
```
142
+
143
+
```ply
134
144
3 56542 56543 56544
135
145
```
136
146
137
147
### Textures/Images
138
-
The textures should be encoded in the .dds format with **BC1/DXT1** encoding and **no mip-maps**.
148
+
149
+
The textures should be encoded in the .dds format with **BC1/DXT1** encoding and **no mip-maps**.
0 commit comments