View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000067 | DarkRadiant | Map Editing | public | 28.01.2007 19:38 | 21.08.2022 11:55 |
Reporter | SneaksieDave | Assigned To | greebo | ||
Priority | none | Severity | feature | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Summary | 0000067: Patch Splitting | ||||
Description | I'm not even sure this is possible, but if so, this would be a big one. :) Basically, the same way the clipper operates on brushes, the same tool or one similar to clip patches. I assume it would be a matter of deleting the current patch and then rebuilding the same geometry with two patches split along the cut line. Sounds simplistic enough, and I imagine D3 would handle it - you can make some really flexible geometry with patches - but I guess the math could be a nightmare. Example: A round tower with windows cut out of it. Currently this must be done by hand-shaping all required patches. It is managable, but tricky and time consuming. With this functionality, it'd be a matter of making a cylinder, and then a few appropriate cuts. | ||||
Tags | No tags attached. | ||||
It should be possible to cut patches by creating two new patches, with matching edge vertices along the cut line. However, it cannot be guaranteed that the curvature will match the original patch, so there might be visible bump along the join. | |
I believe keeping the curvature is very hard to do, as the tesselation of the patch consists of a lot of bezier curves. Cutting through the curve means that you have to reversely calculate two patches that end exactly at that edge, which I doubt to be possible with appropriate accuracy. Maybe it would be possible to split a patch along its control vertices (as Orbweaver suggested), but this could be hard as well. Imagine a 90° patch where you cut along the "corner" vertices. The new patches would form a perfectly sharp edge (similar to the turning off the "smoothing" of faces in Blender). |
|
I set this to suspended, I don't quite believe that this is feasible. | |
Can this be marked as resolved: http://forums.thedarkmod.com/topic/16090-patch-splitting-in-dark-radiant-new-version-29-mar/ ? |
|
I didn't know about this tracker issue when fiddling with that script. To be clear, the script doesn't solve the hardest problem discussed here, which would let a patch be cut along any line. It only makes a cut along an existing row or column of control vertices. But it does let you do the thing requsted in the original OP -- cut window and door holes in a round cylinder, as demo'd in the video. You just have to add some control verts first. In my map which I make very slow progress on, I have round towers with thick walls and cross-shaped loopholes on the outside that the player can apparently look in and out of ("apparently": there's a cheat for performance). You just have to set up your control verts first and then texture it before cutting up the patch because you'll have no chance of getting the textures lined up again if you try to adjust it in any way after snipping the cylinder into 40-odd parts. |
|
Can this be looked at for DR 2.9..? that said this is a very old bug so I will check if it is even relevant any more. |
|
Patch splitting along control vertices has been implemented for a long time. Patch splitting along any plane accurately would not be feasible, as greebo says, due to the bezier curve nature of patches. | |
Date Modified | Username | Field | Change |
---|---|---|---|
28.01.2007 19:38 | SneaksieDave | New Issue | |
29.01.2007 11:13 | orbweaver | Note Added: 0000046 | |
29.01.2007 11:13 | orbweaver | Status | new => acknowledged |
29.01.2007 12:08 | greebo | Note Added: 0000047 | |
29.01.2007 12:08 | greebo | Note Edited: 0000047 | |
21.06.2007 10:00 | greebo | Note Added: 0000715 | |
21.06.2007 10:00 | greebo | Status | acknowledged => suspended |
24.07.2014 13:05 | nbohr1more | Note Added: 0006800 | |
24.07.2014 15:50 | SteveL | Note Added: 0006801 | |
24.07.2014 15:51 | SteveL | Note Edited: 0006801 | |
03.11.2020 12:39 | Bikerdude | Note Added: 0012859 | |
03.11.2020 12:39 | Bikerdude | Note Edited: 0012859 | |
21.08.2022 11:55 | Dragofer | Assigned To | => greebo |
21.08.2022 11:55 | Dragofer | Status | suspended => closed |
21.08.2022 11:55 | Dragofer | Resolution | open => fixed |
21.08.2022 11:55 | Dragofer | Note Added: 0015186 |