Commit Graph

479 Commits

Author SHA1 Message Date
be14831b47 Undo redo support for world generator's RectView. 2022-01-21 23:24:55 +01:00
181189f515 Now the world generator's editor plugin distributes the plugin itself to every class that will need it. 2022-01-21 22:58:14 +01:00
23344760e7 Now ignore changes in MatMakerGDEditor is done with an int instad of a bool, so it won't matter if ignore is set multiple times. Also ignore changes in recreate, and don't allow multiple recreate()s to run. 2022-01-21 19:03:56 +01:00
52a367239c Small improvements to MMMaterial. Also call the new threadpool method. 2022-01-21 19:01:50 +01:00
2ada5fa3b1 Don't connect to the MMnode's changed event in mm_graph_node as it's not needed. Also set ignore changes when a texture is changed. 2022-01-21 18:59:55 +01:00
edd698504b Call each MMNode's init_properties in MMMaterial's init. This fixes broken node connections when you open an MMMaterial in the material editor. 2022-01-21 13:43:36 +01:00
b7a5f6bcbd Connect to material's change event after calling recreate(). 2022-01-21 13:35:46 +01:00
4237b0c7c9 Properly call initialize() in mm material 's render. 2022-01-21 13:35:14 +01:00
b5dbe0b6dd Add the do and undo methods in one after the other in add_mesh_seam_change_undo_redo because the docs say it has to be like that. 2022-01-21 13:25:23 +01:00
2ce6e4d466 Implemented undo redo support for mat_maker_gd. It does have some issues with undoing some of the changes, those will be fixed later. However all actions seems to properly mark the resource as dirty. 2022-01-21 13:22:39 +01:00
87336f55e8 Added undo redo support for the rest of the action of mdr ed. 2022-01-20 23:32:00 +01:00
3a6c705201 Added undo redo support for mdr ed's handle operations. 2022-01-20 23:06:01 +01:00
3337cfdc3c Added undo redo support for more actions in mdr ed. 2022-01-20 22:31:30 +01:00
6b56563056 Added undo redo support for uv_unwrap, apply_seam, mark_seam, and unmark_seam. 2022-01-20 21:48:21 +01:00
62fc405cc5 Undo redo support for the uv editor. 2022-01-20 21:12:05 +01:00
42918bc5fc Implemented the ok and cancel buttons for the uv editor. 2022-01-20 19:30:58 +01:00
1bec27b886 Now after a drag operation the rect view node will actually update the uvs. 2022-01-20 19:16:08 +01:00
5e6e17a3b2 Remove rect y axis flipping code, as it's not needed here. (Both uvs and the gui is y+ down.) 2022-01-20 19:00:57 +01:00
df502c5e5e Fix typo. 2022-01-20 18:57:23 +01:00
ea96a36996 A bit better colors. 2022-01-20 18:56:22 +01:00
2d43cace5d Normalize uvs in the rect view node. Also cleaned up draw a bit. 2022-01-20 18:53:29 +01:00
4484c0e0c9 Implemented mesh partitioning for the uv editor. 2022-01-20 18:34:49 +01:00
9916554d94 Set up drawing and resource handling logic for the rect view nodes. They also get instanced now. 2022-01-20 17:56:30 +01:00
34b6877afc Initial cleanups and setup for the uv editor. 2022-01-20 17:21:50 +01:00
1629224aeb Renamed rect editor and added it to the uv editor popup. 2022-01-20 14:57:59 +01:00
2a6768a8ca Copied over the rect editor from the world generator addon to med ed as a base for a uv editor. 2022-01-20 14:42:01 +01:00
1f48d44a5f Now the uv preview will show the mesh data instance's active texture as a background. 2022-01-20 00:21:23 +01:00
b2e6c037f4 Grouped together the uv related widgets in mdr ed's side panel. Also added an uv edit button with a popup. 2022-01-20 00:01:13 +01:00
2d88f4d6b4 Apply seams should properly work now in every cases (hopefully). 2022-01-19 23:34:04 +01:00
9daff0f907 More work on the apply seam algorithm. 2022-01-19 23:00:57 +01:00
a5ba62ba65 Work on a new seam apply algorithm. 2022-01-19 14:51:37 +01:00
bee904f077 An another shot at implementing the apply_seams action. Still doesn't work, need to think more about the algorithm. 2022-01-19 11:32:19 +01:00
04e95a0814 Wrote my own generate_normals method as apparently surface tool creates new vertices during normal generation. 2022-01-19 02:10:22 +01:00
2e2d22574d Recalculate seam edges after normal and tangent generation. Also smaller improvements to the gizmo. 2022-01-19 01:46:33 +01:00
8d68969ab5 Fix apply_seam creating duplicate faces. 2022-01-19 01:28:28 +01:00
670a059fbd Don't set half baked arrays into mesh data resource. 2022-01-19 01:18:10 +01:00
5a56b91e6a Call uv_unwrap properly in the plugin, and fixed the uv_unwrap method in the gizmo. 2022-01-19 01:01:32 +01:00
1a38232d51 Move the code for the uv unwrapping action from the plugin to the gizmo. 2022-01-19 00:17:39 +01:00
28138e86d4 Implemented apply seam command. 2022-01-18 23:02:26 +01:00
a973b875b9 Setup call paths for the apply seam button. 2022-01-18 22:24:22 +01:00
1637395eef Set the seam's material to always on to. 2022-01-18 22:22:32 +01:00
9ab64c2301 Implement mechanism to transfer seams after a merge or cleanup. 2022-01-18 22:21:50 +01:00
5c70ceb63f Removing a triangle will also remove it's marked edges. 2022-01-18 21:47:18 +01:00
25c71e2c14 Moved some of the new helper methods to the mesh utils script. 2022-01-18 21:41:39 +01:00
272e34a06a Refactored the mesh outline generator a bit. Also made it offset the outline along the normal if available to reduce z-fighting. 2022-01-18 21:34:25 +01:00
302e0a9680 Implemented seam visualization. Also changed the color of the default mesh outline to gray. 2022-01-18 21:11:37 +01:00
d0d636554d Implemented seam marking and unmarking. 2022-01-18 20:51:05 +01:00
7af44898eb Removed vertex disconnect action. I don't think it would have been that useful. 2022-01-18 20:23:27 +01:00
def030986a Reset selection after appending triangles or quads. Also don't rely on the changed event during these methods. 2022-01-15 17:12:01 +01:00
c3c35c7e37 Moved the add at buttons to under edge's options. 2022-01-15 17:06:38 +01:00
86a9e1edc2 More tweaks to mdr ed's sidebar. Also added 2 new buttons. They are not yet implemented. 2022-01-15 17:03:19 +01:00
d7ee2b9993 More smaller tweaks to mdr ed's sidebar. 2022-01-15 16:52:26 +01:00
b9cf5e7d7c Moved the uv preview node out of it's container. 2022-01-15 16:41:06 +01:00
aec3098df1 Added a scroll container to mdr ed's sidebar. 2022-01-15 16:35:47 +01:00
f5371f511f Small improvements to the mdr ed's sidebar. 2022-01-15 16:30:26 +01:00
51960419b4 Added mark and unmark seam buttons to the edges. Also smaller fixes to the mrd_ed's gui. 2022-01-15 16:24:34 +01:00
d32b9a50ea Removed per vertex/edge/face merge option. Also hidden extrude in edge for now. 2022-01-15 16:16:11 +01:00
8ee90e179c Now there are 3 types of connect action. 2022-01-15 16:13:09 +01:00
69ba7ac15a Implemented generate normals, remove doubles, merge optimize and generate tangent actions. 2022-01-15 15:53:08 +01:00
76d5818c34 Implemented face deletion. 2022-01-15 15:18:14 +01:00
18583e66f9 Implemented a very crude face creation algorithm. Also did the gui for it. I't not perfect, it does depend on the selection order if you have more than 3 vertices selected. I'll implement a better one later. 2022-01-15 13:44:14 +01:00
0019d2f784 Also implemented add quad to edge operation. 2022-01-15 01:29:09 +01:00
5185d29150 Fix triangle winding order issues. 2022-01-15 01:01:40 +01:00
2a93318ff8 Implemented ad triangle at command for mdr_ed. It still has issues determining the proper winding order though. 2022-01-14 23:21:50 +01:00
50074bf677 Added an another helper method. 2022-01-14 16:22:40 +01:00
bdb0b956a7 Moved the new helper to the bottom of the mesh utils. Also the reflect helpers will reflect v2 instead of v1. 2022-01-14 15:50:54 +01:00
8e546e113f Added add quad at and add triangle at options to mdr's gui, adn set up call paths for them. 2022-01-14 15:24:59 +01:00
7b0d382f57 Split up the operations into a per vertex/edge/face panel and one that's permanent. 2022-01-14 15:16:06 +01:00
7fcafe7ac0 Added more helper methods. 2022-01-14 14:29:36 +01:00
5a0cfe213d Renamed mesh_add_utils to mdred_mesh_utils. 2022-01-14 13:17:31 +01:00
6dfb97cb39 Added a few helper methods to mesh add utils. 2022-01-14 13:03:11 +01:00
c9dce50315 Implemented connect for the vertex selection mode. 2022-01-03 18:05:19 +01:00
dbbad9871d Set up call paths to the connect, disconnect, and merge, split buttons. 2022-01-03 17:33:34 +01:00
0bb573a2ee Implemented add box and add quad. 2022-01-03 16:54:28 +01:00
b66331f8ab Cleanups for mesh add utils. 2022-01-03 16:44:11 +01:00
535f55d54c Change the sidebar's operations and add containers to vboxcontainer. 2022-01-03 14:47:24 +01:00
847fbd35dd Added more buttons to the mesh data editor's sidebar. 2022-01-03 14:45:40 +01:00
e2a43ac587 Changed up the keybinds. 2021-12-31 14:48:25 +01:00
57a58a58ab Fix typo in edge map generation code. This should just make it more optimal by not not adding vertices multiple times to a single edge vertex map. 2021-12-31 14:39:17 +01:00
8a2da58680 Implemented face selection mode. 2021-12-31 14:37:07 +01:00
17bc926810 Don't process the current events in the mesh data resource editor if a key modifier is pressed. 2021-12-31 13:52:23 +01:00
6629fa503c Implemented outline for face selection. (Face selection itself is not yet implemented though.) 2021-12-31 08:54:12 +01:00
6733787c46 Fix get_handle_edge_to_vertex_map. 2021-12-31 08:42:19 +01:00
4303e94617 Implemented a different outline for the edge select mode. 2021-12-31 08:41:25 +01:00
2067291890 Implemented switching selection modes through the ui. 2021-12-31 08:18:56 +01:00
34f080e03e The ui will now reflect axis constaint state. 2021-12-31 08:08:02 +01:00
81bfa4b6bd Fix axis constraint logic. 2021-12-31 08:07:13 +01:00
9962ef777a Set up the edit mode buttons to actually reflect state. 2021-12-31 07:51:23 +01:00
6fe4eaa7fa Fix regression with the vertex selection mode. 2021-12-31 00:54:14 +01:00
1e71822982 Add in missing return. Also removed now obsolete comment. 2021-12-31 00:53:21 +01:00
881528f77b Now the mesh data resource plugin's gizmo will watch for changes in the edited mesh data resource when it's not messing with it. 2021-12-31 00:52:39 +01:00
71662367ae Small tweaks to the mesh outline generator. 2021-12-31 00:47:08 +01:00
5e63f45f0d The mesh outline generator now won't connect to the mdr's changed event. 2021-12-31 00:44:01 +01:00
5db3ff2eb3 Initial edge select mode implementation. It's still a bit buggy, that will be fixed later. 2021-12-31 00:12:02 +01:00
ae56bf8b56 Fix error on plugin reload. 2021-12-30 01:23:54 +01:00
bed06568e4 Handle more edge cases in recalculate_handle_points. 2021-12-30 01:21:38 +01:00
2bffe4dc68 Fix visual server array len == 0 errors. 2021-12-30 01:18:03 +01:00
e0db0b0379 Fix an error, remove a now unneeded comment, and an apply call. 2021-12-30 01:14:05 +01:00
2217c1d4dc Remove commented line. 2021-12-30 00:13:53 +01:00
7565993faa Copy the required data in recalculate_handle_points, so the original mesh doesn't get modified as a side effect. 2021-12-29 23:42:19 +01:00