forked from ephtracy/ephtracy.github.io
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmv_main.html
666 lines (614 loc) · 38.3 KB
/
mv_main.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
<!-- ephtracy content page --->
<h2>MagicaVoxel @ ephtracy (Win/Mac) <span id="version" class="badge">0.99.4 [5/29/2019]</span></h2>
<p>A free lightweight 8-bit voxel art editor and GPU based interactive path tracing renderer. <a class="btn btn-link" href="https://youtu.be/d_WymsNdRBA" role="button">Tutorial</a></p>
<li><b>License</b>
<ul class="squarelist">
<li> Free to use for any project (no commercial licence required) </li>
<li> Credits to the software are appreciated (e.g. "created by MagicaVoxel") </li>
<li> Selling the software (original or modified) is disallowed </li>
</ul>
</li>
<div>
<a class="btn btn-link" href="https://ephtracy.github.io/index.html?page=mv_renderer" role="button">1. MagicalVoxel Viewer</a>
<a class="btn btn-link" href="https://github.com/ephtracy/voxel-model">2. Vox Format Spec</a>
<br>
<a class="btn btn-primary" href="https://github.com/ephtracy/ephtracy.github.io/releases/download/0.99.4/MagicaVoxel-0.99.4-alpha-win32.zip" role="button"><span class="badge">win32</span> 0.99.4</a>
<a class="btn btn-primary" href="https://github.com/ephtracy/ephtracy.github.io/releases/download/0.99.4/MagicaVoxel-0.99.4-alpha-win64.zip" role="button"><span class="badge">win64</span> 0.99.4</a>
<a class="btn btn-primary" href="https://github.com/ephtracy/ephtracy.github.io/releases/download/0.99.4/MagicaVoxel-0.99.4-alpha-macos.zip" role="button"><span class="badge">macOS</span> 0.99.4</a>
<a class="btn btn-primary" href="https://www.dropbox.com/sh/t0hf5t0z89bqbdi/AAD_SN_cXxLILllzWztCuSMIa?dl=0" role="button">History</a>
</div>
<div id="mv-carousel" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#mv-carousel" data-slide-to="0" class="active"></li>
<li data-target="#mv-carousel" data-slide-to="1"></li>
<li data-target="#mv-carousel" data-slide-to="2"></li>
<li data-target="#mv-carousel" data-slide-to="3"></li>
<li data-target="#mv-carousel" data-slide-to="4"></li>
<li data-target="#mv-carousel" data-slide-to="5"></li>
<li data-target="#mv-carousel" data-slide-to="6"></li>
<li data-target="#mv-carousel" data-slide-to="7"></li>
<li data-target="#mv-carousel" data-slide-to="8"></li>
</ol>
<!-- Wrapper for slides, put your images there -->
<div class="carousel-inner">
<div class="item active">
<img src="image/snap2018-09-26-13-21-50.png" alt="0">
<div class="carousel-caption"></div>
</div>
<div class="item">
<img src="image/snap2016-07-02-17-16-08.png" alt="1">
<div class="carousel-caption"></div>
</div>
<div class="item">
<img src="image/monu8.png" alt="2">
<div class="carousel-caption"></div>
</div>
<div class="item">
<img src="image/snap2017-03-25-03-48-50.png" alt="3">
<div class="carousel-caption"></div>
</div>
<div class="item">
<img src="image/snap2017-03-21-18-25-30.png" alt="3">
<div class="carousel-caption"></div>
</div>
<div class="item">
<img src="image/snap2017-04-02-09-20-01.png" alt="3">
<div class="carousel-caption"></div>
</div>
<div class="item">
<img src="image/snap2018-09-19-15-59-58.png" alt="4">
<div class="carousel-caption"></div>
</div>
<div class="item">
<img src="image/snap2018-09-25-00-54-29.png" alt="5">
<div class="carousel-caption"></div>
</div>
<div class="item">
<img src="image/snap2016-06-11-22-31-48.png" alt="6">
<div class="carousel-caption"></div>
</div>
</div>
<!-- Controls -->
<a class="left carousel-control" href="#ss-carousel_ss" role="button" data-slide="prev" onclick="$('#mv-carousel').carousel('prev')" id="mv_carousel_left">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="right carousel-control" href="#ss-carousel_ss" role="button" data-slide="next" onclick="$('#mv-carousel').carousel('next')" id="mv_carousel_right">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>
<div class="panel panel-warning">
<div class="panel-heading">
<h3 class="panel-title">For Windows 10 Users</h3>
</div>
<div class="panel-body">
<li>If you get misaligned UI, it may be due to a driver bug of Intel integrated graphics card. Try to update drivers or force usage of Nvidia/AMD cards.
</li>
<li> <kbd>CTRL+/-</kbd> to scale the ui </li>
</div>
</div>
<div class="panel panel-warning">
<div class="panel-heading">
<h3 class="panel-title">For macOS Users</h3>
</div>
<div class="panel-body">
<li>If you get black screen on <span class="text-warning">macOS Sierra</span>, try this:
<ul>
<li>1. Extract the whole folder.</li>
<li>2. Move <kbd>MagicaVoxel.app</kbd> outside the folder and then back to it.</li>
</ul>
</li>
</div>
</div>
<div class="row">
<div class="col-lg-2 col-md-2 col-sm-3">
<div class="list-group table-of-contents">
<a href="#update_099_4" class="list-group-item">0.99.4a</a>
<a href="#update_099_3" class="list-group-item">0.99.3a</a>
<a href="#update_099_2" class="list-group-item">0.99.2a</a>
<a href="#update_099_1" class="list-group-item">0.99.1a</a>
<a href="#update_099" class="list-group-item">0.99a</a>
<a href="#update_098_2" class="list-group-item">0.98.2</a>
<a href="#update_098_1" class="list-group-item">0.98.1 Beta</a>
<a href="#update_098" class="list-group-item">0.98</a>
<a href="#update_097_5" class="list-group-item">0.97.5</a>
<a href="#update_097_4" class="list-group-item">0.97.4</a>
<a href="#update_097_3" class="list-group-item">0.97.3</a>
<a href="#update_097_2" class="list-group-item">0.97.2</a>
<a href="#update_097_1" class="list-group-item">0.97.1</a>
<a href="#update_097" class="list-group-item">0.97</a>
<a href="#update_096_3" class="list-group-item">0.96.3</a>
<a href="#update_096_2" class="list-group-item">0.96.2</a>
<a href="#update_096_1" class="list-group-item">0.96.1</a>
<a href="#update_096" class="list-group-item">0.96</a>
</div>
</div>
<div class="col-lg-10 col-md-10 col-sm-9">
<div class="panel panel-primary" id="update_log_container">
<div class="panel-heading">
<h3 class="panel-title">Update Log</h3>
</div>
<div class="panel-body">
<div id="update_099_4">
<div class="updatelog_header text-warning">0.99.4 - 5/29/2019</div>
<ul class="decimallist">
<li>Renderer
<ul class="squarelist">
<li> <kbd>Matter->Cloud</kbd>: Media material which supports multiple scattering inside volume.</li>
<li> <kbd>Sample->MIS-GGX</kbd>: Multiple Importance Sampling (MIS) for GGX surfaces (Metal/Plastic/Glass) for better reflection. </li>
<li> <kbd>Sample->TR-Shadow</kbd>: Tranlsucent Shadow which allows light passing though glass and cloud voxels. Only <kbd>Glass->Attenuation</kbd> can affect the light color.</li>
<li> can adjust <kbd>Bounce->Diffuse/Specular/Scatter</kbd> path depths separately.</li>
<li> can assign glass/cloud materials to sphere/cylinder shape voxels (for experiments only).</li>
<li> the renderer pipeline is refactored, which needs more time to improve, optimize and fix bugs.</li>
<li> some features such as fog scattering requires more researches.</li>
<li> frame drops and noises are expected.</li>
</ul>
</li>
</div>
<div id="update_099_3">
<div class="updatelog_header text-warning">0.99.3 - 2/10/2019</div>
<ul class="decimallist">
<li>Final Image Render : Render->Image Settings (Right Panel)
<ul class="squarelist">
<li> Photo Mode: up to <kbd>12000 x 12000</kbd> size images. Bloom effect is not available.</li>
<li> Turntable Mode: spinning camera animation with <kbd>Motion Blur</kbd>. Saved as <kbd>name (frame index).png</kbd> image sequence.</li>
<li> Both modes can render in the background. </li>
<li> You may need to disbale <kbd>vsyn</kbd> in the GPU panel for this program. </li>
</ul>
</li>
<li>Lens
<ul class="squarelist">
<li> Panorama Projection: <kbd>Lens->Pano</kbd>. Set image size <kbd> width = height x 2</kbd></li>
<li> Focus: can fix or set focus distance by numbers.</li>
<li> Depth of Field effect can be enabled in all camera projection modes. </li>
<li> Fixed bugs for camera blades (images become darker) and grids. </li>
</ul>
</li>
<li>Camera Control
<ul class="squarelist">
<li> <kbd>X+left click</kbd> to set the camera rotation center in both editing and rendering modes. </li>
</ul>
</li>
<li>Export
<ul class="squarelist">
<li> add <kbd>slices/cubes/point clouds</kbd> export options</li>
<li> export settings (scale, axis, etc.) can be found in <kbd>config/config.txt/io_*</kbd> </li>
<li> export objects are named as <kbd>[project name]-[index]-[object name].[ext]</kbd> </li>
<li> the vertices of the mesh exports are using their global positions in the world editor. </li>
</ul>
</li>
<li>Config
<ul class="squarelist">
<li> can modify <kbd>edge/ground/background/fade color</kbd> of the editor </li>
<li> add <kbd>hotkey.txt</kbd> in <kbd>config/</kbd> folder to bind keys to commands. </li>
<li> the keys <kbd>A-Z</kbd>, <kbd>0-9</kbd>, <kbd>F1-F12</kbd> are recommended. </li>
<li> <kbd>repeat</kbd> token means that you can hold the keys to automatically perform multilple times of actions, e.g. undo/redo </kbd>
<li> commands may be refactorred in the future. The feature is not robust. Use it carefully. </li>
</ul>
</li>
</div>
<div id="update_099_2">
<div class="updatelog_header text-warning">0.99.2 - 9/29/2018</div>
<ul class="decimallist">
<li>New Interface
<ul class="squarelist">
<li> Redesigned the interface</li>
<li> Slidable and resizable panels</li>
<li> SDF font rendering</li>
<li> <kbd>CTRL+/-</kbd> to scale UI size</li>
<li> a basic object list to show the scene graph, will be improved in future updates</li>
</ul>
</li>
<li>Renderer
<ul class="squarelist">
<li> Large Sparse Volume: <kbd>Sample->Geometry->SV</kbd> the rendering volume increases to <kbd>2048x2048x1024</kbd>. But the total number of solid voxels is still limited. SV Mode works with cubic voxel only</li>
<li> Voxel Shapes: new <kbd>Clay</kbd> shape with the previous supported shapes (<kbd>Lego</kbd>, <kbd>Marching Cubes</kbd>, etc.)</li>
<li> World Scale: rectangular voxels</li>
<li> Pixelated Illumination: <kbd>Sample->PX</kbd></li>
<li> Can show sun disk in the sky; added Ozone attenuation</li>
<li> Fix bugs in orthogonal views</li>
<li> Voxel shapes and SV mode will be improved in future updates</li>
</ul>
</li>
<li>Palette
<ul class="squarelist">
<li> <kbd>CTRL+Drag</kbd>: swap (move) color </li>
<li> <kbd>CTRL+SHIFT+Drag</kbd>: duplicate color </li>
<li> cmd <kbd>pal sort [+-hsvrgb]</kbd>: sort palette colors (e.g. <kbd>pal sort vsh</kbd>) </li>
</ul>
</li>
<li>Voxel Shader
<ul class="squarelist">
<li> add <kbd>xs_shader</kbd> in config.txt</li>
<li> can execute subfolder shaders: <kbd>xs sub/poly</kbd> </li>
</ul>
</li>
</div>
<div id="update_099_1">
<div class="updatelog_header text-warning">0.99.1 - 3/12/2018</div>
<ul class="decimallist">
<li>Renderer (hidden menu)
<ul class="squarelist">
<li> Atmospheric Scattering Skydome: Rayleigh/Mie scattering</li>
<li> Bladed Bokeu: for large depth of field </li>
<li> Stretched Bloom Filter </li>
<li> Grids: can change Spacing, Width, and Color </li>
<li> Field of View (FOV): change range to: <kbd>1-360</kbd> </li>
<li> Fix some bugs: e.g. Bloom dark points</li>
<li> More options are saved into file, format is changed as well </li>
</ul>
</li>
<li>Editor
<ul class="squarelist">
<li> Align Objects in Editor </li>
<li> New object is using last model size </li>
<li> Fix importing files with unicode paths </li>
<li> Add default export and snapshots folders in config </li>
</ul>
</li>
</div>
<div id="update_099">
<div class="updatelog_header text-warning">0.99 - 11/23/2017</div>
<ul class="decimallist">
<li>World Editor
<ul class="squarelist">
<li> Support multiple objects </li>
<li> Larger scene area: (<kbd>-1024</kbd>, <kbd>+1024</kbd>) </li>
<li> Group objects</li>
<li> Reference objects/groups: modifying one of the references will affect the others </li>
<li> Transform objects: rotate, flip, move</li>
<li> Rectangle select: <kbd>SHIFT</kbd> to add selection, <kbd>ALT+SHIFT</kbd> to remove selection </li>
<li> Translation gizmo and free movement: <kbd>Shift+move</kbd> to get a referenced copy </li>
<li> Union combine objects </li>
<li> Copy/paste objects between world editor and model editor </li>
<li> Hide objects </li>
<li> Change order of objects for drawing and combination</li>
<li> Layers: to hide objects with same layer tag </li>
<li> Hotkey <kbd>TAB</kbd> to switch between model editor and world editor</li>
<li> Hotkey <kbd>TAB</kbd>/<kbd>SHIFT+TAB</kbd> to enter/leave groups</li>
</ul>
</li>
<li>Renderer
<ul class="squarelist">
<li> Performance optimizations </li>
<li> Support larger volumes: <kbd>512x512x512</kbd>, <kbd>1024x512x256</kbd> or <kbd>1024x1024x128</kbd> </li>
<li> Can copy/paste materials using <kbd>CTRL+C/V</kbd> or <kbd>Matter->C/P</kbd> </li>
<li> Rendering settings are saved into file: lighting, lens, ground/edge colors, etc. </li>
<li> Blooming effect is automaticlly calculated, and can be paused as well </li>
<li> Can display constant color background: <kbd>View->Back</kbd> </li>
</ul>
</li>
<li>View Cube
<ul class="squarelist">
<li> Smooth camera transition </li>
<li> Click the cube face/edge/vertex to set to 26 standard view angles (90/45) </li>
<li> Left-drag the view cube to rotate view </li>
<li> Hotkey <kbd>4</kbd> to recenter view; hotkey <kbd>5</kbd> to show one of the 6 face views (front, back, etc.)</li>
<li> <kbd>Z+left drag</kbd> to zoom view</li>
<li> <kbd>X+left drag</kbd> to rotate view</li>
<li> <kbd>Space+left drag</kbd> to move view</li>
<li> <kbd>7/8</kbd> to save/load view</li>
</ul>
</li>
<li>Editing
<ul class="squarelist">
<li> Auto-saved to <kbd>cache/</kbd> folder every 25 steps </li>
</ul>
</li>
<li>UI
<ul class="squarelist">
<li> UI scaling for High DPI screens: enter <kbd>ui scale 1.5</kbd> in console or change <kbd>ui_scale</kbd> in <kbd>config.txt</kbd></li>
<li> Panel is scalable (some UI elements are hidden behind) </li>
<li> Palette: pick color from screen: <kbd>ALT+left drag</kbd> </li>
<li> Lower CPU usage: only redraw when needed </li>
</ul>
</li>
<li>Limitations: will be improved in future version
<ul class="squarelist">
<li> Not stable </li>
<li> Export: can only export single models, cannot export models with offsets and names </li>
<li> Render: no voxel shapes </li>
<li> Animation: no frame based animation </li>
</ul>
</li>
</ul>
</div>
<div id="update_098_2">
<div class="updatelog_header text-warning">0.98.2 - 4/1/2017</div>
<ul class="decimallist">
<li>Bloom
<ul class="squarelist">
<li> Click the button in Bloom section to calculate bloom effect when any rendeirng setting has been changed </li>
<li> It has its own progress bar, and uses the same number of samples from the top </li>
<li> When adjusting the weight with the slider, it won't restart rendering</li>
<li> It will enable <kbd>Camera->ACES</kbd> automatically </li>
</ul>
</li>
<li>Bokeh
<ul class="squarelist">
<li> It has larger aperture size for DOF (depth of field)</li>
</ul>
</li>
<li>HDR Emissive Material
<ul class="squarelist">
<li> Formula is changed to <kbd>Emit * (10 ^ Power)</kbd> </li>
<li> <kbd>Glow</kbd> is only used to enhance Bloom and Bokeh effects </li>
</ul>
</li>
<li>Pause Rendering and Instant Feedback
<ul class="squarelist">
<li> Click <kbd>Image->||</kbd> to pause progressive rendering </li>
<li> Enable <kbd>Sample->GI</kbd> </li>
<li> Every change of material will be immediately displayed in viewport </li>
<li> (*expensive option, higher end GPU recommended)</li>
</ul>
</li>
<li>Sky Background
<ul class="squarelist">
<li> Enable <kbd>View->Back</kbd> (<kbd>CTRL+B</kbd>) to display sky as background</li>
<li> The fading ground into horizon is controled by <kbd>Fog</kbd> slider</li>
<li> For real fog, enable <kbd>Fog</kbd> firstly</li>
</ul>
</li>
<li>Ground Material
<ul class="squarelist">
<li> Now you can use <kbd>Alt+LButton</kbd> to click the ground, and then assign <kbd>Metal</kbd> material to it </li>
</ul>
</li>
<li>Pixelated Rendering
<ul class="squarelist">
<li> Turn off <kbd>View->AA</kbd> to disable Anti-Aliasing and set image size small (128, e.g.)</li>
</ul>
</li>
</ul>
</div>
<div id="update_098_1">
<div class="updatelog_header text-warning">0.98.1 Beta - 12/30/2016</div>
<ul class="decimallist">
<li>Selection
<ul class="squarelist">
<li> New <kbd>Box/Rect/Region</kbd> selection brushes </li>
<li> New selection tools <kbd>Edit->Select</kbd>: Copy/Paste, Deselect/Inverse Select, etc.</li>
<li> <kbd>Attach/Erase/Paint</kbd> brushes can only operate on unselected voxels </li>
<li> <kbd>Move/Remove Color/Replace Color</kbd> brushes can operate on both selected and unselected voxels </li>
<li> Edit Tools can only operate on selected voxels </li>
<li> Transform Tools <kbd>Flip/Rot/Loop/Scale/Repeat</kbd> modify selected voxels around local center </li>
<li> <kbd>Export</kbd> only exports selected voxels if selection exists </li>
</ul>
</li>
<li>Selection Brushes
<ul class="squarelist">
<li> <kbd>+SHIFT</kbd> to add selection, <kbd>+SHIFT+ALT</kbd> to subtract selection</li>
<li> Box Select: select voxels within a box </li>
<li> Rect Select: select voxels within a screen rect: <kbd>K+RButton</kbd> click voxel to navigate to 90 degree view</li>
<li> Region Select: select voxels within same volume, same face, or with same color</li>
</ul>
</li>
<li>Pattern Brush
<ul class="squarelist">
<li> Can create Pattern directly from selection: very helpful for texturing surface/duplicating small shapes </li>
<li> Can rotate Pattern around z, x, y axes with keys <kbd>-/+, 9, 0</kbd></li>
<li> Can add local offset to Pattern with arrow and page keys</li>
<li> Reset local offset to 0 with <kbd>Home</kbd> key </li>
</ul>
</li>
<li>Bounding Box and Frame Grids
<ul class="squarelist">
<li> Can select on all six faces of bounding box now </li>
<li> <kbd>View->Frame</kbd>: can change spacing, very helpful for measurement </li>
</ul>
</li>
<li>Camera Setting
<ul class="squarelist">
<li> <kbd>Camera->ton</kbd>: ACES Filmic Tone Mapping </li>
<li> <kbd>Camera->dof</kbd>: Depth of Field, click voxel with <kbd>LButton</kbd> to set camera focus </li>
</ul>
</li>
<li>Misc
<ul class="squarelist">
<li> Command <kbd>dia [axis]</kbd>: diagonal symmetry </li>
<li> Command <kbd>o slice</kbd>: export volume as an image of size (width, height x depth) </li>
</ul>
</li>
</ul>
</div>
<div id="update_098">
<div class="updatelog_header text-warning">0.98 - 10/22/2016</div>
<ul class="decimallist">
<li>Frame-Based Animation
<ul class="squarelist">
<li> Supports up to 24 frames animation </li>
<li> <kbd>Ctrl+Drag</kbd> to move frame, <kbd>Ctrl+Shift+Drag</kbd> to duplicate frame </li>
<li> Press on the prev/next button to play animation (you can also change time step) </li>
<li> Drag and drop multiple models to import as animation </li>
<li> It can also be used for other purposes, like assets of same category</li>
<li> However, features of importing and exporting anim are not fully supported yet</li>
</ul>
</li>
<li>New Interface
<ul class="squarelist">
<li> Materials are saved into <kbd>.vox</kbd> file now </li>
<li> If there are unsaved changes, the tiny button besides name field will become orange, click it to save </li>
<li> Program will ask for saving changes when opening new models or closing the program </li>
<li> Click the title of each panel to close it </li>
<li> <kbd>Tool->Scale, Repeat, Rotate</kbd> are removed, use console commands <kbd>scale, repeat, rot</kbd> instead </li>
</ul>
</li>
<li>Voxel Shader also supports generating anim now
<ul class="squarelist">
<li> [New inputs] </li>
<li> <kbd>iFrame</kbd>: current frame index </li>
<li> <kbd>iNumFrames</kbd>: total num of frames </li>
<li> <kbd>iIter</kbd>: current iteration index </li>
<li> <kbd>iRand</kbd>: a <kbd>vec4</kbd> random number updated every iter and frame </li>
<li> [New Options] </li>
<li> <kbd>-n</kbd>: specify number of iterations, eg. <kbd>xs -n 8 [shaderName]</kbd></li>
<li> <kbd>-prev/-cur</kbd>: specify input frame, <kbd>-prev</kbd> for previous frame, <kbd>-cur</kbd> for current frame (default is <kbd>-prev</kbd>) </li>
</ul>
</li>
</ul>
</div>
<div id="update_097_5">
<div class="updatelog_header text-warning">0.97.5 - 09/25/2016</div>
<ul class="decimallist">
<li>Fog Scattering: can scatter all types of lights (Sun/Sky/Area)
<ul class="squarelist">
<li> Only works in Pers/Free camera modes </li>
<li> Works for glass/metal materials (can get reflection/refraction from sun light) </li>
<li> Surface can also be lit by scattered light </li>
<li> Can create light shafts </li>
<li> Can create background with small fog density </li>
<li> Fog color mainly depends on light color and in-scattering color </li>
</ul>
</li>
<li>Ground is changed to infinity large in all camera modes </li>
<li>Optimized shaders by removing unused branches </li>
</ul>
</div>
<div id="update_097_4">
<div class="updatelog_header text-warning">0.97.4 - 07/05/2016</div>
<ul class="decimallist">
<li>New Emissive Area Lighting
<ul class="squarelist">
<li> <kbd>Emit->Power</kbd>: Radiant Flux for Area Lighting </li>
<li> <kbd>Emit->Glow</kbd>: Energy loss on closer surface </li>
<li> <kbd>Emit->Total</kbd>: Total power for all voxels or power density </li>
</ul>
</li>
<li>Hints:
<ul class="squarelist">
<li> Requires <kbd>GI</kbd> option enabled for advanced effects </li>
<li> Only supports Cubic/RG/RE voxel shape </li>
<li> For small but strong light source (e.g. point lights), use <kbd>Emit->Total</kbd> </li>
<li> It is recommended to use lower image resolution (e.g. <kbd>640x480</kbd>) when adjusting parameters </li>
<li> For better quality of final image, use more samples (e.g. <kbd>5000</kbd>) </li>
<li> Not very robust for this version (has several potential artifacts) </li>
<li> If it is still too dark, do not forget to use <kbd>Post->E</kbd> to increase exposure</li>
</ul>
</li>
<li>Fix several artifacts for <kbd>Glass</kbd> material</li>
</ul>
</div>
<div id="update_097_3">
<div class="updatelog_header text-warning">0.97.3 - 06/05/2016</div>
<ul class="decimallist">
<li>New Metal/Plastic Material with GGX NDF
<li>Post Effects
<ul class="squarelist">
<li> <kbd>Post->E</kbd>: Exposure, when the scene is too dark, you can increase this</li>
<li> <kbd>Post->V</kbd>: Vignette </li>
<li> <kbd>Camera->G</kbd>: Gamma Correction</li>
</ul>
</li>
<li>Pick up Sun/Sky Color from Palette</li>
<li>Better Quality of Soft Shadow</li>
<li><kbd>Sample->GI</kbd> : on the top right, enable stochastic sampling for better indirect illumination
<ul class="squarelist">
<li> It's slower (~50%) and noisy (requires <kbd>3000+</kbd> samples) </li>
<li> Use it for indoor scenes, larger exposure, or final render </li>
</ul>
</li>
</ul>
</div>
<div id="update_097_2">
<div class="updatelog_header text-warning">0.97.2 - 03/02/2016</div>
<ul class="decimallist">
<li><kbd>Export->bake</kbd>: bake voxel mesh with ambient occlusion and soft shadow:
<ul class="squarelist">
<li><a href="https://skfb.ly/L7zB">Example on Sketchfab</a> </li>
<li> Must support the built-in renderer, if program crashed, recover model from <kbd>cache/</kbd> directory </li>
<li> It may take from several seconds to half a minute, depending on machine, model, and sample number</li>
<li> Set sample number, direction and intensity of light sources in renderer mode </li>
<li> <kbd>config->bake->perface</kbd>: bake per face (pixelated) or per vertex (smooth) </li>
<li> <kbd>config->bake->ambient</kbd>: constant ambient color to make scene brighter </li>
<li> <kbd>config->bake->gamma</kbd>: for app with gamma correction, set it to 2.2 to avoid color washed out </li>
</ul>
</li>
<li>New CMD <kbd>odir</kbd>: export all models in current folder, e.g. <kbd>odir obj</kbd></li>
<li>Palette <kbd>ALT+DRAG</kbd>: swap palette color without changing model, make it easier to organize palette</li>
<li>Fixed a bug in <kbd>.qb</kbd> export </li>
</ul>
</div>
<div id="update_097_1">
<div class="updatelog_header text-warning">0.97.1 - 02/15/2016</div>
<ul class="decimallist">
<li>New Voxel Shader:
<ul class="squarelist">
<li> Supports GLSL based shader script to generate your custom volume </li>
<li> Shaders are in the new folder <kbd>shader/</kbd> </li>
<li> Try typing <kbd>[xs wave]</kbd> in console to start </li>
<li> Basic command format is: <kbd>xs [shader name] [arg0] [arg1] [..]</kbd> </li>
<li> If you want to run the shader multiple times in one run, use: <kbd>xs [num] [shader name ] [args...]</kbd> </li>
</ul>
</li>
<li>New Brush Options:
<ul class="squarelist">
<li> [V]oxel Mode: 3D (Volume: Cube, Sphere), 2D (Flat: Square, Disc), Su (Surface, only operates on surface) </li>
<li> - Added hotkeys <kbd>1</kbd>-<kbd>9</kbd> to set brush size quickly </li>
<li> [C]enter Mode: supports both square and circle shape now </li>
<li> [P]attern Mode: can choose using either original model color or current palette color </li>
<li> - Can be applied on erasing and painting now </li>
</ul>
</li>
<li>New Marching Cube Export <kbd>Export->mc</kbd>: export your voxel model as Marching Cube meshes (<kbd>.ply</kbd>) </li>
<li>Camera Control: use middle button to move camera </li>
<li>Cache Folder <kbd>cache/</kbd>: program will automatically backup model before quitting program or rendering model </li>
<li>Obj Export Pivot: fixed bugs for obj pivot, you can also set your custom pivot in <kbd>config.txt->file_obj</kbd> </li>
<li>Palette Command: added command <kbd>pal mask</kbd> to mask out unused color in palette </li>
<li>Fixed a little rendering bug with orth/iso camera, still not very robust though </li>
</ul>
</div>
<div id="update_097">
<div class="updatelog_header text-warning">0.97 - 11/30/2015</div>
<ul class="decimallist">
<li>Enhanced Brushes, Improved UI and File System:
<ul class="squarelist">
<li> Save and Open dialog for all Palette, Model, Export, Screenshot files </li>
<li> Face Brush: extrude surface by dragging with various modes </li>
<li> Voxel Brush: has been integrated with Cube and Sphere Brushes, working with mirror and axis modes now</li>
<li> Circle Brush: center voxel of circle is not operated; support even diameter size </li>
<li> HUD: voxel coordinates, volume size, face layers, circle radius are displayed in console now </li>
<li> Camera: added <kbd>X+RButton</kbd> to select camera focus center, and yellow button to toggle auto camera focus </li>
<li> Export: fixed <kbd>obj</kbd> export and more config options for isometric and 2d sprite export </li>
<li> Render: <kbd>Light->0</kbd> is changed to pure color model; the ground in orth/iso mode will be infinity large </li>
<li> Multiple UI improvements </li>
</ul>
</li>
</ul>
</div>
<div id="update_096_3">
<div class="updatelog_header text-warning">0.96.3 - 08/15/2015</div>
<ul class="decimallist">
<li> <kbd>Matter->Glass</kbd>: new transparent voxels with refraction and attenuation </li>
</ul>
</div>
<div id="update_096_2">
<div class="updatelog_header text-warning">0.96.2 - 08/09/2015</div>
<ul class="decimallist">
<li> <kbd>Matter->Sel</kbd>: per palette material setting (use <kbd>Alt+LButton</kbd> or <kbd>LButton</kbd> to select material) </li>
<li> New <kbd>Emissive</kbd> material; perfect mirror reflection (Rough = 0); over 8 light bounces </li>
<li> Folder path setting in config file; bug fixed for <kbd>.obj</kbd> export </li>
</ul>
</div>
<div id="update_096_1">
<div class="updatelog_header text-warning">0.96.1 - 07/05/2015</div>
<ul class="decimallist">
<li> <kbd>Export->iso</kbd>: new isometric sprites export </li>
<li> <kbd>Export->obj</kbd>: color based mesh simplification for <kbd>.obj</kbd> format </li>
<li> Model List: drag 'n drop folder to model list to change its root path </li>
</ul>
</div>
<div id="update_096">
<div class="updatelog_header text-warning">0.96 - 05/24/2015</div>
<ul class="decimallist">
<li> Renderer supports various voxel shapes (Lego, Marching Cube, Sphere, Cylinder) and rounded corners, colored grids </li>
<li> Camera supports stereographics projection, radial distortion, Escher Droste effect </li>
<li> Use <kbd>F5/F7</kbd> to save/load current camera </li>
<li> Performance improvement and bug fixes </li>
</ul>
</div>
</div>
</div>
</div>
</div>