Jeremy Hu
0bf64eeb2d
Fix build
2018-09-06 23:29:26 +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
87b0f70460
Add mtl export with obj
2018-09-05 11:14:36 +08:00
Jeremy Hu
9a3dfb8ff2
Add view rotation
2018-09-03 15:05:05 +08:00
Jeremy Hu
10160285b8
Fix mesh cache
...
When origin changed by user, all parts should be regenerated.
2018-09-02 10:24:39 +08:00
Jeremy Hu
fe401a5f13
Change connect nodes behavor.
...
If hovered target is not editable, create new node instead of connect existed nodes.
2018-09-02 07:48:38 +08:00
Jeremy Hu
6693365543
Fix invalid mesh cache
2018-09-01 18:18:28 +08:00
Jeremy Hu
717c8ef266
Add select by component
2018-09-01 10:17:26 +08:00
Jeremy Hu
b945ab9725
Fix focus lost
2018-09-01 08:47:10 +08:00
Jeremy Hu
80ccbc51bf
Validate points before doing convex hull
2018-09-01 07:17:36 +08:00
Jeremy Hu
7320568d1d
Fix crash on union empty meshs
2018-08-31 23:49:32 +08:00
Jeremy Hu
1bac6c4c53
Fix undo/redo on color picking
2018-08-31 20:19:56 +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
6bab154cf5
Fix component remove
2018-08-31 09:40:53 +08:00
Jeremy Hu
134078fc05
Fix direction key conflict with zoom function
2018-08-29 23:42:04 +08:00
Jeremy Hu
623dda6ecf
Replace parts list with parts tree and remove immature features
2018-08-27 16:50:40 +08:00
Jeremy Hu
f89117fd91
Fix typo
2018-06-30 19:37:46 +08:00
Jeremy Hu
5001453ce3
Add joint constraint
2018-06-30 18:46:23 +08:00
Jeremy Hu
51bf40de01
Add rotate along single node.
...
If multiple nodes or end effector node been selected and rotate, the behaves remain the same as before, however, if single node in the middle been selected and rotated, all the children of this node will be rotated. This could be useful to rotate the tail or leg from joint.
2018-06-29 14:55:32 +08:00
Jeremy Hu
057d615275
Fix leg start orientation
2018-06-29 11:28:37 +08:00
Jeremy Hu
e8aabef903
Merge branch 'walk'
2018-06-28 21:18:43 +08:00
Jeremy Hu
289fe1fbf4
Add experiment walk animation clip generation.
...
- Fix intermediate bones remove;
- Add locomotion controller;
- Add head, tail node marks for animation.
2018-06-28 21:17:21 +08:00
Jeremy Hu
4fa276c9e2
Remove g++-4.9 requirement
2018-06-27 08:19:14 +08:00
Jeremy Hu
4679381512
Add XZ switching menu item
2018-06-21 16:24:18 +08:00
Jeremy Hu
aeca656c76
Remove trivial bones
...
- Fix intermediate bone weights
- Remove trivial bones
- Introduce bullet physics engine
2018-06-19 23:49:25 +08:00
Jeremy Hu
cddc4c15cc
Make root node and direct children as breathe scaling target if no spine node marked.
2018-06-16 20:04:17 +08:00
Jeremy Hu
22910028e9
Add parts subtract operation.
...
This is useful for making hole surface. For example, without subtraction, it's difficult to make a bucket like mesh, now, you just need to copy and paste the nodes, invert it from the Parts List Panel Context Menu, then down scale and move up a little bit.
2018-06-16 14:41:52 +08:00
Jeremy Hu
35635534c2
Fix typo
2018-06-15 22:54:19 +08:00
Jeremy Hu
082b470f8a
Fix block caused by delete operation
2018-06-15 19:54:13 +08:00
Jeremy Hu
e26095981b
Add rotate operation to menu
...
- Add rotate 90/-90 degree to facilitate nodes editing
- Enable docs.dust3d.org domain
2018-06-15 17:58:46 +08:00
Jeremy Hu
d05c43d714
Add animation clip: Idle
...
This is an experiment test of animation clip generation. Mark leg and spine nodes to enable it or check it with the latest mosquito.ds3 example;
Skeleton offset is been fixed in this commit.
2018-06-15 13:34:41 +08:00
Jeremy Hu
0829ef818a
Add animation clip generator
...
- Fix skeleton weights
- Add rig controller
- Add animation clip generator
- Implement basic experiment animation(squat)
2018-06-11 22:24:25 +08:00
Jeremy Hu
f2625a7ca2
Add more align options.
...
- Add local align.
- Fix crash in multiple nodes collapse case.
2018-06-02 17:34:48 +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
6c10ad1ee2
Add node mark.
...
User can mark selected nodes as specified body location explictly. This will help the rigging step generating more reasonable result, also prepared for the future animation clip generation.
2018-05-30 09:51:38 +08:00
Jeremy Hu
473fa9f7d9
Add alternative method to zoom rendered model.
...
- Add "ALT + <Minus | Equal>" combined key to zoom rendred model besides the wheel event.
Special thanks to @glasyalabolas for https://github.com/huxingyi/dust3d/issues/4
2018-05-24 15:08:57 +08:00
Jeremy Hu
df98193091
Add end-effector pulling (Shift + Left Button on end-effector).
...
- Implement CCD (Cyclic Coordinate Descent) IK (Inverse Kinematics) algorithm
- Add end-effector pulling operation, this would be useful when you want to pull a group of nodes in line to align straight or mimic curl.
2018-05-24 09:44:40 +08:00
Jeremy Hu
6268852e59
Fix copy/paste selection state.
...
In the previous version, the nodes get selected and copied, without lost selection after new nodes pasted.
This commit fix this problem. Now, the old nodes lose selection while new pasted nodes gettting selected.
This feature will make the following use case much easier:
Extrude:
Select some nodes, copy, paste then scale.
2018-05-12 18:07:46 +08:00
Jeremy Hu
429e2c98c1
Fix symmetry.
...
The symmetry feature is not funtional when there is no turnaround reference sheet loaded.
This should fix the problem by load a empty background image.
Thanks @xtvjxk123456 for addressed this issue, https://github.com/huxingyi/dust3d/issues/6
2018-05-11 23:06:54 +08:00
Jeremy Hu
0cecff71c7
Separate ambient occlusion baker to a different phase.
...
This is mainly for resolving the baking time consuming issue when running in software OpenGL.
Compare to normal OpenGL which would only take seconds to bake, software OpenGL take minutes to bake a complex model.
Separating the baking phase would allow the user to export the result without baking.
2018-05-11 13:27:29 +08:00
huxingyi
db0f0b3ed2
Fix ubuntu build
2018-05-10 23:18:22 +08:00
huxingyi
8a6a2a6640
Fix windows build
2018-05-10 03:21:24 -07: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
huxingyi
d7fb742d7b
Fix build
2018-05-07 10:16:58 -07: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
331051879d
Add parts color configure and round-able configure.
...
- Add End-Round Type Toggle to Parts List Panel (Thanks @Alistair401 for proposing this feature).
- Add Parts Color Picker to Parts List Panel.
- Add Parts List Panel Context Menu to facilitate multiple parts visible toggle.
- Add Material Export to Export Menu.
- Prepare the source code for the auto skeleton exporter and uv unwrapper.
2018-04-26 10:23:22 +08:00
Jeremy Hu
d930ceec96
Add alt key to enable rendered model rotate and move.
...
ALT + LEFT BUTTON: Rotate rendered model
ALT + SHIFT + LEFT BUTTON: Move rendered model
Thanks @Zireael07 and @glasyalabolas for proposing this feature.
Closes #4
2018-04-23 10:14:32 +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
ca1b938e2c
Highlight all profiles when mouse hovered
...
Implement the feature as been proposed in this video:
https://www.youtube.com/watch?v=YBnEQk_5D70
Thanks Serapth and his amazing youtube channel - Gamefromscratch for proposed this feature
Serapth's Reddit: https://www.reddit.com/user/Serapth
Gamefromscratch Youtube Channel: https://www.youtube.com/channel/UCr-5TdGkKszdbboXXsFZJTQ
2018-04-21 08:23:27 +08:00
Jeremy Hu
71e1a51b43
Fix export y-flipped.
...
> Another problem is your model seems to have an inverted Z export.
> by https://www.reddit.com/user/Skullfurious
Node coord system: Screen
Mesh generation coord system:
x-axis: --- Main Profile (Red) --->
z-axis: --- Side Profile (Green) --->
y-axis: UP
Thanks the follow reddit users:
https://www.reddit.com/user/Skullfurious
2018-04-20 20:00:57 +08:00
Jeremy Hu
e9c0bf8a3c
Fix overlapped nodes pick
...
> The circles representing nodes in the model get overlapped very easily and it can be hard to select individual ones
> @Alistair401
> For overlapping nodes, you can make it a bit better by selecting the node center nearest the mouse, rather than simply checking against the wider circle.
> @hdu
Thanks the following reddit users:
https://www.reddit.com/user/Alistair401
https://www.reddit.com/user/shadowndacorner
https://www.reddit.com/user/hdu
2018-04-20 15:38:08 +08:00
Jeremy Hu
c61665c8a4
Add reference guide link to help menu
2018-04-18 21:18:10 +08:00
Jeremy Hu
06e5635a80
Fix graphics node visible state when recover from snapshot
2018-04-18 11:25:36 +08:00
Jeremy Hu
b0bdfe3742
Add more shortcuts for part manipulation.
...
H: (H)idden
J: (J)join
L: (L)ock
B: (B)ox
M: (M)irror
When xyz pressed without ctrl modifer:
X: X-axis
Y: Y-axis
Z: Z-axis
2018-04-18 11:14:48 +08:00
Jeremy Hu
a7d45a9458
Fix undo not added when operate on part list
2018-04-18 10:37:50 +08:00
Jeremy Hu
402ee09350
Add selection profile switch.
...
Tab key press switch the profile of selection, this makes the item more easy to be selected on the other profile and then switch to this profile to edit, while the item is very hard to be selected in this profile.
2018-04-18 10:16:54 +08:00
Jeremy Hu
fe11e097d9
Add check part and show part check status.
...
Now can check part from part list widget, double click it will check the whole part to graphics view, and also, if the part's node or edge been hovered or checked, the first one's part will be highlighted in the part list.
2018-04-18 09:49:23 +08:00
Jeremy Hu
f1b219333f
Fix deform
2018-04-18 00:14:31 +08:00
Jeremy Hu
ce41e654fb
Add thickness parameter for part.
...
It's showed as mini button on part list widget, this parameter can be use to make fish body like mesh.
2018-04-17 21:13:32 +08:00
Jeremy Hu
a1107b5412
Add xyz lock
2018-04-17 06:54:41 +08:00
Jeremy Hu
dd976b7fc2
Adjust color theme for part list mini button to make a better visible effect
2018-04-16 20:06:48 +08:00
Jeremy Hu
bdb893eb1d
Add [align to center] action
2018-04-16 15:12:53 +08:00
Jeremy Hu
a201d09535
Change subdiv from global to cut face, this makes the final result far much better
2018-04-16 08:58:04 +08:00
Jeremy Hu
e9d0696be6
Reduce faces
2018-04-15 23:55:48 +08:00
Jeremy Hu
ba61019b5b
Fix mesh hole
2018-04-15 23:15:29 +08:00
Jeremy Hu
0d4c926476
Fix origin item position not get updated when window resized
2018-04-15 20:50:56 +08:00
Jeremy Hu
a441c73f55
Add rendered model wireframe toggle action inside view mesh
2018-04-15 20:48:54 +08:00
Jeremy Hu
44a8ca6351
Add part mirror
2018-04-15 20:11:51 +08:00
Jeremy Hu
3295c1b767
Fix incorrect initial edit mode
2018-04-13 09:42:19 +08:00
Jeremy Hu
30971048de
Add zoom/scale/rotate/move key
2018-04-13 09:27:28 +08:00
Jeremy Hu
8a6dd60450
Add editable check when select
2018-04-13 08:19:31 +08:00
Jeremy Hu
8c37bc06dc
Add group rotation
2018-04-13 08:04:18 +08:00
Jeremy Hu
8773ddd7ef
Fix group move
2018-04-12 22:35:50 +08:00
Jeremy Hu
47bb8b5f0b
Add alt modifier for range selection
2018-04-12 21:24:51 +08:00
Jeremy Hu
dbe7f1828d
Add nodes connect
2018-04-12 20:46:13 +08:00
Jeremy Hu
2d5b6eca9b
Add edge break
2018-04-12 20:27:21 +08:00
huxingyi
534c472b53
Fix build error on vc2017
2018-04-12 01:34:00 -07:00
Jeremy Hu
235233fe5d
Add shortcuts(S: Select Mode / D: Drag Mode)
2018-04-11 23:15:38 +08:00
Jeremy Hu
e1e4953dec
Seperate model render view control and edit view control
2018-04-11 23:06:30 +08:00
Jeremy Hu
f0e68d9f7a
Change rendered model move button from left to middle
2018-04-11 20:49:00 +08:00
Jeremy Hu
5ac8968cee
Keep part attributes while been splitted
2018-04-11 17:48:43 +08:00
Jeremy Hu
c9efa79ddb
Fix union mesh, add missing files.
2018-04-11 17:37:28 +08:00
Jeremy Hu
982ee45a16
Add part enable/disable
2018-04-11 17:19:27 +08:00
Jeremy Hu
2d9f64ebc2
Collect version info macros in one header file
2018-04-11 16:34:51 +08:00
Jeremy Hu
86afcd0e7e
Fix boundingbox
2018-04-11 14:28:37 +08:00
Jeremy Hu
b95276ec06
Change subdiv stratege: subdiv after union.
2018-04-11 14:15:11 +08:00
Jeremy Hu
28a95aedee
Only allow item been selected when visible
2018-04-10 16:44:02 +08:00
Jeremy Hu
38fb0c022a
Add main menu.
...
- Add about window,
- Add acknowlegements window,
- Add multiple documents support.
2018-04-10 15:59:20 +08:00
Jeremy Hu
f47148a537
Cleanup and reset initial render angle
2018-04-09 23:10:23 +08:00
Jeremy Hu
2a7554b852
Make uncheckable menu items invisible
2018-04-09 22:37:20 +08:00
Jeremy Hu
62fdcbdced
Add flip
2018-04-09 22:24:30 +08:00
Jeremy Hu
5e97e3d268
Add single node mesh
2018-04-09 19:13:34 +08:00
Jeremy Hu
f49e88484f
Add cut/copy/paste
2018-04-09 16:46:06 +08:00
Jeremy Hu
de0075bab4
Add select all; fix undo.
2018-04-09 13:22:25 +08:00
Jeremy Hu
b8e5d31169
Add context menu
2018-04-09 11:39:04 +08:00
Jeremy Hu
cd6a973fe7
Fix repeat(no-further-actions) snapshot
2018-04-09 08:32:02 +08:00
Jeremy Hu
5407eedad7
Fix undo/redo
2018-04-09 07:42:59 +08:00
Jeremy Hu
35a62960ca
Add undo/redo
2018-04-09 07:34:46 +08:00
Jeremy Hu
7b3540f0c1
Add multiple selection
2018-04-08 23:08:23 +08:00
Jeremy Hu
8ee0dee3db
Remove carve and other no-use deps
2018-04-08 16:05:12 +08:00
Jeremy Hu
1c4515abd7
Finish part mini buttons
2018-04-08 09:30:55 +08:00
Jeremy Hu
8d558aa19f
Add mini buttons for part list
2018-04-07 20:30:26 +08:00
Jeremy Hu
65b14200a5
Make part list more tidy
2018-04-07 19:51:33 +08:00
Jeremy Hu
af451bd5ab
Introduce new UI,
...
Introduce part list,
Add log viewer,
Add QtAwesome icons.
2018-04-07 16:44:39 +08:00
Jeremy Hu
b99e0db0b2
Seperate the shader program and mesh binder to seperated source files
2018-04-02 14:05:06 +08:00
Jeremy Hu
ec154633be
Add logo.
...
Jezzasoft
Font family: Myriad Pro Bold
Font size: 32px
Dust3D
Font family: Klavika Bold
Font size: 48px
GIMP:
Font color: black
Adjust brightness and Contrast
Contrast: -50
2018-04-01 22:21:47 +08:00
Jeremy Hu
d86004b46a
Add toggleable options for generating
2018-03-30 22:05:47 +08:00
Jeremy Hu
01e8abf0cc
Fix event conflicts between model and graphics view
2018-03-30 15:41:29 +08:00
Jeremy Hu
94cd279ef3
Render generated model in graphics viewer
2018-03-30 07:32:30 +08:00
Jeremy Hu
f48d6bd5f5
Seperate mesh union as single source file
2018-03-29 17:10:59 +08:00
Jeremy Hu
53dfb62460
Generate coords around root joint
2018-03-29 16:01:57 +08:00
Jeremy Hu
9892d1bc2c
Make cgal no-crash when fail
2018-03-29 14:27:31 +08:00
Jeremy Hu
cac5c2094c
Fix boolean operations
2018-03-29 14:10:17 +08:00
Jeremy Hu
7df312cff5
Add branch sperate joint wrap
2018-03-29 09:46:43 +08:00
Jeremy Hu
64ce4e6843
Add trival control of radius
2018-03-28 19:41:33 +08:00
Jeremy Hu
09d21e8935
Add skeleton snapshot support (Prepare for undo/redo feature)
2018-03-26 20:41:46 +08:00
Jeremy Hu
4c9767835f
Export working model as obj
2018-03-20 15:56:49 +08:00
Jeremy Hu
4661e2bc94
Fix node group saving
2018-03-20 11:31:05 +08:00
Jeremy Hu
a4cdb4e551
Make wireframe line more thick
2018-03-19 22:03:22 +08:00
Jeremy Hu
2aed6b768a
Add wireframe render
2018-03-19 21:56:10 +08:00
Jeremy Hu
f405ac0ede
Add thickness support
2018-03-19 15:58:51 +08:00
Jeremy Hu
24fbff4218
Add node delete operation
2018-03-18 16:46:53 +08:00
Jeremy Hu
de0fa135fb
Add CGAL library to compare with Carve
2018-03-18 07:43:04 +08:00
Jeremy Hu
425962921e
Add carve library to support better mesh boolean operations
2018-03-17 17:21:17 +08:00
Jeremy Hu
a749324e79
Add mesh generation group
2018-03-16 11:06:51 +08:00
Jeremy Hu
ff19efa188
Add project file(.ds3) reader and writer
2018-03-15 23:40:30 +08:00
Jeremy Hu
130ffdae79
Add parts loader and saver
2018-03-14 23:22:00 +08:00
Jeremy Hu
5dbff8b9e3
Add styled tab header
2018-03-14 14:43:16 +08:00
Jeremy Hu
d3dfffcc59
Fix turnaround resize
2018-03-14 10:55:59 +08:00
Jeremy Hu
20f4b669bb
Add icons
2018-03-13 20:49:24 +08:00
Jeremy Hu
ce20e49883
Add turnaround image loader
2018-03-13 14:39:36 +08:00
Jeremy Hu
0ee18d41a8
Make skeleton UI more fluent
2018-03-12 21:40:42 +08:00
Jeremy Hu
5b597b0f0c
Add skeleton to mesh generation(finished other side)
2018-03-12 17:41:16 +08:00
Jeremy Hu
14bce78a4a
Add skeleton to mesh generation(finished one side)
2018-03-12 13:27:22 +08:00
Jeremy Hu
d3e82ea306
Add skeleton edit UI
2018-03-12 00:02:15 +08:00
Jeremy Hu
283e76b1b6
Add base UI layout
2018-03-11 11:18:24 +08:00
Jeremy Hu
10a4a21183
Add base UI layout
2018-03-11 11:16:38 +08:00
Jeremy Hu
7d8e8c4bc5
Test QOpenGLWidget example with meshlite
2018-03-10 14:57:14 +08:00