Commit Graph

62 Commits (b8c3557d9cf5612d6f6f095d20e541ce9bad42b1)

Author SHA1 Message Date
Jeremy Hu 69b371adb9 Fix base normal 2019-03-09 23:30:19 +09:30
Jeremy Hu 4ac83a9626 Speed up mesh generating
Use CGAL inexact kernel for mesh combination.
2019-03-08 23:26:01 +09:30
Jeremy Hu 8f5bbfd758 Fix crash on linux 2019-03-08 20:25:24 +09:30
Jeremy Hu 499c3f439a Use CGAL triangulation
Replace triangulation algorithm with CGAL triangulate_faces, the quality of generated mesh improved a lot.
This commit also reduced max uv packer times.
2019-03-07 22:43:41 +09:30
huxingyi 2d841fb58b Fix build on ubuntu 2019-03-03 14:44:48 +08:00
Jeremy Hu ae32a4693b Remove comments. 2019-02-27 23:08:39 +09:30
Jeremy Hu cbaccb0116 Add cut face chamfer tool. 2019-02-27 22:29:03 +09:30
Jeremy Hu 2b44576f22 Fix cut face base normal. 2019-02-26 22:54:58 +09:30
Jeremy Hu 02bb32391e Add cut face customizing.
This commit introduce a new tool, allow user to customize the face template for automatical extruding.
2019-02-24 23:12:23 +09:30
Jeremy Hu b2fdb7f4e8 Fix cut rotation 2019-02-23 00:03:04 +09:30
Jeremy Hu d866e0147b Add cut rotation tool
Cut rotation tool allow user to adjust the generated face's rotation.
Convex hull wrapping tool removed in this commit.
2019-02-22 08:18:15 +09:30
Jeremy Hu 3e1fde4260 Fix build 2019-02-19 20:51:12 +09:30
Jeremy Hu 4bdbdd496a Introduce new mesh generator: nodemesh
Remove meshlite, introduce nodemesh: https://github.com/huxingyi/nodemesh
Now, all the codebase move to C++, no rust language dependency.
2019-02-18 22:27:18 +09:30
Jeremy Hu 8ace5b43de Fix triangulation of uv unwrapping 2019-01-24 23:57:47 +09:30
Jeremy Hu 3f3134cc0e Fix typo 2018-12-29 09:32:53 +09:30
Jeremy Hu f0334c3eec Fix crash on uvunwrapping #18 2018-12-01 23:21:53 +09:30
Jeremy Hu a2a5b774aa Fix uvunwrap
The As-Rigid-As-Possible method of parametrization sometimes failed, so added Least-Squares-Conformal-Maps method as a fallback option.
2018-11-29 11:55:55 +09:30
Jeremy Hu f6bafdb720 Fix typo 2018-11-18 07:02:12 +08:00
huxingyi 724e745f2e Update meshlite_ffi
Fix radius setting for single node
2018-11-14 13:27:36 +08:00
Jeremy Hu 955ebce009 Fix build 2018-10-25 14:46:21 +08:00
Jeremy Hu 637356e895 Fix undo
Add a crc64 hash check for history keeping to avoid repeated snapshot.
Besides, before, there is a logic error in the undo implementation, which recover the most recent snapshot from undo stack, so user need undo twice and at the second undo get the expected result. This incorrect behavior got fixed.
2018-10-25 14:27:59 +08:00
Jeremy Hu 096c107775 Add fbx export support (2/3)
Currently, only mesh exported. Tested in Blender 2.79 and Unity 2017.4.1f1 Personal (64bit).
2018-10-20 13:07:11 +08:00
Jeremy Hu 328f26429b Optimize deform
see 3ff01306d0
2018-10-18 15:43:58 +08:00
Jeremy Hu c06a23d52e Fix build 2018-10-17 12:53:18 +08:00
Jeremy Hu b2a77caffc Fix build 2018-10-17 12:35:15 +08:00
Jeremy Hu 660e3d6a58 Fix fbx build 2018-10-17 11:59:21 +08:00
Jeremy Hu 0608e2af1c Fix uv unwrapper
UV unwrapper may run into infinite loop if the parametrization failed with some infinite value.
2018-10-17 11:19:17 +08:00
Jeremy Hu f0783e2a1e Add fbx support (1/2)
Add dependencies for fbx format exporter.
2018-10-17 11:06:45 +08:00
Jeremy Hu 7fbdf6a8bd Remove thekla_atlas
Now, we have our own automatic uv unwrapping library: simpleuv
thekla_atlas works good on good mesh, however, sometimes, it crashs and cann't handle bad cases very well.
2018-10-16 08:09:04 +08:00
Jeremy Hu 7fa29dcc48 Fix texture generation 2018-10-16 08:04:08 +08:00
Jeremy Hu 7e0591de6b Fix build 2018-10-16 00:21:05 +08:00
Jeremy Hu 640b84b2f2 Fix build 2018-10-15 23:22:49 +08:00
Jeremy Hu a4a734a67b Repleace the uv unwrapping library with simpleuv
https://github.com/huxingyi/simpleuv
2018-10-15 23:02:31 +08:00
Jeremy Hu 1623d7d782 Update to the latest thekla_atlas 2018-10-11 08:56:09 +08:00
Jeremy Hu 7eb5a325a0 Add MetalicRoughness material manager
Besides adding the PBR material manager, this commit hide some unnecessary features such as toggle wireframes and toggle normal smooth.
Add a regenerate button to indicate mesh is generating by showing a spiner, user can click this button to regenerate if the final result is not good.
Please note that, we generate the texture map by default compared to before we only generate texture map when user export glTF result. Current uvunwrap library cann't handle bad mesh very well, so it will crash on the wires model.
2018-10-09 10:19:12 +08:00
Jeremy Hu 308bc48c54 Add author @anderejd from meshlite library 2018-10-05 23:58:00 +08:00
Jeremy Hu 9c0da8f38f Replace the render with PBR
In this commit, another PBR render, come from website: https://learnopengl.com/PBR, also included as shaders/pbr-joey.frag
2018-10-05 15:37:01 +08:00
Jeremy Hu dbb23b9029 Rename library name meshlite to meshlite_ffi 2018-09-28 10:45:39 +08:00
Jeremy Hu 3c2d4f7480 Add mesh smooth slider
This feature could be useful for smooth one component and soften the seam of combination,
This commit also include a crash fix about incorrect use of CGAL.
2018-09-06 23:04:59 +08:00
Jeremy Hu e0621edff1 Fix deform width 2018-09-03 17:16:40 +08:00
Jeremy Hu df9c8e8e3c Add wrap button to enable use controlled convex hull generation for part.
This feature could be useful to generate complex mesh as part.
2018-08-31 12:54:32 +08:00
Jeremy Hu 4fa276c9e2 Remove g++-4.9 requirement 2018-06-27 08:19:14 +08:00
Jeremy Hu c4505ba788 Add intermediate bone remover.
- Remove intermediate bones when user marked leg nodes
- Add flags to toggle gltf comment and normal output
- Fix face normal
- Adjust the skeleton bone mesh radius
2018-06-01 12:38:16 +08:00
Jeremy Hu 03e81e0cdb Fix single node deform 2018-05-12 07:19:04 +08:00
huxingyi db0f0b3ed2 Fix ubuntu build 2018-05-10 23:18:22 +08:00
Jeremy Hu 078543b80e Add ambient occlusion baker.
- Add @ands 's lightmapper to generate ambient occlusion image.
- Refactor parts list UI.
- Add interpolated normal to .gltf export result.
- Remove bones preview and texture preview window(Integrated to export preview UI).
- Add export preview UI.
2018-05-10 17:16:22 +08:00
Jeremy Hu 1376af237b Add auto uv unwrapping.
Use https://github.com/Thekla/thekla_atlas to generate the texture.
This commit still have some issues, some faces not satisfy thekla_atlas in some cases.

- Add texture preview widget.
- Fix single node black color issue.
- Export texture in .gltf file.
- Fix node order random issue in mesh generation.
2018-05-08 00:08:19 +08:00
Jeremy Hu 3fef6c4463 Add auto-generated skeleton(skinned mesh) and glTF exporter.
And added a CONTRIBUTORS file to list the users who have done great work to help Dust3D become better, thank you!

@Alistair401
@hdu
@shadowndacorner
@Skullfurious
@RSDuck
@xtvjxk123456
@Zireael07
@glasyalabolas
@dlpatri

PS. please feel free to make a pull request or email me to change the ID or contact info listed in the CONTRIBUTORS file, and if you are mistakenly been missed in the file, please MUST edit this file and make a PR or email me.
2018-04-30 19:31:09 +08:00
Jeremy Hu 9643920515 Fix UI too small and crash on bad mesh problem.
The model generating speed may become slightly slower than the previous version because of the extra checks.

This closes #1, and closes #3
2018-04-23 08:10:01 +08:00
Jeremy Hu f1b219333f Fix deform 2018-04-18 00:14:31 +08:00