3D Modeling improvements to the Designer. - Printable Version +- Hazeron Forums (https://hazeron.com/mybb) +-- Forum: Shores of Hazeron (https://hazeron.com/mybb/forumdisplay.php?fid=1) +--- Forum: Arena of Ideas (https://hazeron.com/mybb/forumdisplay.php?fid=15) +--- Thread: 3D Modeling improvements to the Designer. (/showthread.php?tid=3003) |
3D Modeling improvements to the Designer. - Strik3r - 12-10-2023 Before we begin, a little story. I got my first taste of 3D modeling when Shores of Hazeron was still an MMO and free-to-play, on the early OpenCascade designer test-thing. Since then I've gained some experience with Blender. So now I feel full of myself and qualified to suggest improvements to Hazeron's designer. Anyway, without further ado, here are some tools and changes that i feel would improve the 3D modeling experience of the designer: Make Face The most basic 3D modeling feature in existence. Takes a set of selected verts and forms a face between them, creating edges as necessary. This should be doable with a single keybind. Similarly, there should be a keybind for pulling (or ripping) a set of vertices apart. Edge Slide I would argue this is a really basic tool. Slides selected vertices along connecting edges. If multiple connected verts are selected, they are slid in a common direction (edges are slid along faces). Face Cut multi-cut Add a keybind to the Face Cut operation to start a new cut without finalizing the current operation. If snap-to-verts is on, the cursor should snap to the end points of the cut preview lines. Allow multiple disconnected cuts with one operation. In addition, Face Cut should not create unnecessary edges and faces. If the cut can be performed using only the lines the user has defined, then Face Cut should limit the edges to that. If possible, Face Cut should stick to the mesh surface. It makes no sense to allow points to be lifted off the mesh. Plane Cut Takes a 2d line and projects it as a cut through the entire mesh along a selected plane. Edges are created on all faces where the cut intersects the mesh, and verts on the intersections of edges. Inset Face Either as a standalone tool or an extension to push/pull. Takes a set of selected faces and insets them, together or individually, and creates a loop of faces around the perimeter. Bevel Takes a set of verts/edges and bevels them, with configurable number of loops on the bevel. Ideally also a choice of shapes (Flat, Superellipse). Triangles are formed if the bevel is not continuous and ends anywhere at an intersection. Merge Verts by Distance Blender has this and it's an incredibly useful tool for cleaning stuff up. Merges (selected) verts based on a configurable distance, collapsing shared edges and faces. Improvements to selection A toggle to limit selection to mesh elements which face the camera. Another which makes faces act opaque to the selection tools, only permitting elements which aren't obscured by faces to be selected. Currently, holding ctrl only inverts the selection of elements in face mode. This is spectacularly annoying.
Jig cut and other tools should strive to create as few new elements as possible, while ensuring that they do not create things like unintended breaks in the geometry. This is usually done by connecting all new verts at the boundary directly to existing verts with an edge. The issue can be easily seen by following the basic ship tutorial on Hazeron's website, until you get to the part where you make a cut with the door jig. It creates a bunch of disconnected verts at the corners, where they seem like they're connected to the edge they're on, but they're actually not, creating a break in the model. Topology Matters While it may seem generally unimportant to someone not deep into 3D modeling, topology and edge flow matter. While not as important in Hazeron perhaps, good topology is the foundation of good models. Tools should behave predictably and consistently, and at the very least, should not resist the user's attempts to clean up the mesh to their liking. Good topology also often uses fewer elements than poor topology. Even if somebody uses external modeling tools to create their model, and then imports it into the designer, that model is still gonna come in contact with the designer's tools when they need to do things like cut windows/doors or anything else. So it is best that the designer's tools be as good as they can be. It should be possible to create a design entirely within the designer without sacrificing potential quality. Further Improvements I'm sure there are further dozens of concrete improvements that could be suggested that could be made to Hazeron's designer. But for now, I'll leave it at this. RE: 3D Modeling improvements to the Designer. - Neils Iyssada - 12-13-2023 This 100%. I was slightly annoyed yesterday when I tried to texture a complexe room, and I often unadvertedly selected faces that were either behind the camera (which shouldn't happen in any CAD software anyway) or behind another face. As a further improvement, I could add that having a player model toggled on by default and inertia is not a good idea. I need to press space every couple seconds, while the body hide what I need to see sometimes when looking down, and it's annoying. Talking about the camera, we need a way to "zoom" on small faces. Right now you either can't properly select them because of face culling (iirc that's what removes faces that are too close to the camera), or you need to upscale the mesh, texture it, then downscale it to former size. Further improvements :
RE: 3D Modeling improvements to the Designer. - Strik3r - 12-13-2023 Those are a lot of good additions. I'd like to add to that the issue of command bleed. For example, pressing 'X' while having a bunch of verts grabbed for movement to limit it to the X axis will cause the avatar to go prone. Same with Shift+S causing the avatar to sit and potentially a bunch of others. But back on the geometry side: Since making that post and playing more with the designer, i've come to find out that "Jig Cut" is way more busted than i thought! It is practically unusable. The geometry it creates in the cut areas is horrendous! Sometimes it creates geometry(faces) which extends out of the cut area. The more complex the cut area is, the more likely this issue is to crop up, limiting the usability of Jig Cut basically to rectangular cuts on flat faces. Even then, i've seen it affect things in unrelated areas of the mesh. It behaves nothing like i'd expect a typical boolean difference operation to behave. Regarding which: The three standard Bool operations should be included: Difference, Union and Intersection. |