@sacboi It's all good. We both arrived at roughly the same conclusion and offered similar advice. Always worth considering the more straightforward modeling operations.
This whole thread makes me wonder are all those thing gamedev related? Because support loops are big NO in game dev usually. How would you do LODs with those support loops ? Aren't hard /split edges and normal maps been invented to fix all this and editing vertex normals is a way to fix unwanted shading gradients on cylindrical things in gamedev?
I always thought that right or specific kind of topology is necessary only for meshes with deformed /animated surface aka rigged characters. For static hard surface meshes the topology is irrelevant . Only important thing is same shading through switching lods.
If the purpose is hires models for normal map baking isn't Zbrush and such have solved it long ago with dynamesh sort of things where topology is automatic?
Is it all Unreal5 related where you can be careless about your polycount theoretically so lots of support loops is ok? Bet you couldn't in actual production but I am not sure.
"This whole thread makes me wonder are all those thing gamedev related? Because support loops are big NO in game dev usually."
I disagree, because in terms of modeling a subdivided hard surface high poly object/shape, their use is an established technique whether game oriented or not and that images in the very first post illustrate or in more detail:
So the purpose is high poly to bake normal maps from, right? Isn't it easier to just "dynamesh" hi poly in Zbrush and once polygon density is high enough the edge flow is irrelevant too?
I am just curious. I also did it subdivision way years ago but after Zbrush dynamesh got picker and sub-projection I never ever used sudivizion based modelling since. And now after Fusion, moi and other CAD modellers started to export perfect shading by vertex normas I thought that art of subdivision is a thing from the past.
Usually this is about models that will be baked onto low poly. But no one says it has to be gamedev. People might be making production models too.
About workflows part: Every workflow has it's advantages, the sub-d *we are doing* is a non-destructive workflow which is different from traditional workflow which you hear myths about. If you know what you are doing it is not hard at all compared to automated remeshing workflows, and this workflow being non-destructive while not being slow (contrary to popular belief) is a big advantage.
Also not everything can be made in same dynamesh way, ie. vehicles.
gnoop - just because a particular method can be perceived as obsolete due to a number of factors whether subjective reasoning, inefficiency or relative preference...etc doesn't in my opinion demonstratively represent a precedent against further utility/application.
Specifically what I mean, is why then do senior industry vehicle - weapon - hard surface artists currently continue too implement a sub-d support edge loop related workflow, especially when authoring their individual tutorial based content?!
is hardly for subdiv too and IMO still has redundant geometry around those round holes . Perfectly doable just by splitting edges and transferring /projecting normals from initial cylindrical shape .
And the thing doesn't require a hires model at all actually. You can just bake in rounding corners/bevel shader + painting few details in SPainter.
As of why senior artists continue to use subdiv it's actually what I am curious about. From my point of view it's an extra pain in your a... but seems people think otherwise. I myself do environment stuff mostly and never use subdivs so perhaps missing something.
Subdivs are only a pain if you haven't developed the skills to use them. Fusion and other solid surface modelers aren't any faster than subdivs. And you need to pay for another license to use them - and switch to another piece of software.
I find it strange that you don't use subdivs? I use them daily and I'm an environment artist. I've used them for making trees, bricks, machinery, and all kinds of architecture. The basic techniques of subdivision modeling, such as the ones in this thread, work in any major piece of 3d software so you can be guaranteed that knowing these principles is not time wasted.
As the industry moves into higher and higher resolution meshes it will become increasingly difficult for anyone to avoid being able to create hi-poly models at the same standard as a film industry modeler.
With dynamesh you can only have one bevel size. Support loops and subdiv surfaces give you more precise control over the geometry than dynamesh can. With support loops the edges can fade into each other and change from a bevel to a rounded corner at will. It's a more accurate representation of a real object.
Well, I did use subdiv modelling in the past but once Zbrush got sub-projection slider in its dynamesh and a density picker I gradually stopped to do subdivids at all. Then a few years later I stopped to do hi res models for hard surface things too mostly because of rounding corners shaders + adding details straight inside Designer/Painter.
I use neither Fusion nor Moi actually. For very same mentioned reasons. Why learn and buy another software when you perfectly ok with your current one. So totally understandable.
Still doing basically two different models. One for in game, designed for smooth LODs switching without shading popups when you sometimes have to thought out every face vertex normals and triangulation . Then another one for perfect subdivision , all quads model looks like double job for me . Actually triple job since you have to do a cage model. parts naming etc.
From what I see people mostly use same mesh they do for subdivision as in game one . Resulting in lots of redundant edge loops where you could just face weight or transfer vertex normals . So my guess it's for Unreal5 , right? Because in our game where once people get their FPS lower than 100 on their ancient hardware they start to look for their forks and torches :)
Hi guys, I run into a problem that struggling quite a lot of the secondary shape and primary shape, I spent sometime trying to figure out but all the outcome doesn't look nice, hope anyone can help me out with it, the original artwork is a concept art so that's only one point of view 😥 Thanks in advance!
More I think about it more it seems to me not exactly subdivision question in general. I use Zbrush after all and it's all about subdivision. I meant rather all those extra loops people do for nice shading of subdivided meshes that ended up into in game models ( not subdivided models themselves). A special topology that helps to avoid shading gradients. And those loops are often totally redundant for in game models where you could just split few edges here and there and transfer or face weight normals.
As of modeling itself I mostly use booleans . Now with geo nodes it's totally non destructive. If I see shading artifacts I just transfer normals from what was before boolean operation but often just face weighting is enough . If it's for hires mesh it's just more tessellation before boolean etc and if the mesh have shading artifact I open it with dynamesh and sub-projection set to 0,8 >>> no more shading artifacts.
Not sure I got the idea about substance painter and older hardware . I meant that hard surface hi-res models are mostly about rounding corners and edges . And it works perfectly with just baking rounding shader into normal map. No ray missing waves . Other things are just normal map or height decalls in SPainter.
I didn't have to do those shading support loops for so long I am starting to forget the art of it .
I use a variation of the dynamesh workflow sometimes, and the one size bevel limitation isn't really accurate. You can do one of 4 things. Do large soft bevels in your 3d package before dynamesh. Do booleans and dynamesh in a few phases with the softest bevels first, and repeating. Break up a model by material and have each material with its own bevel amount. Or doing some sculpting and going over the bevels.
Do you have some examples of games where they have left the support loops on the in-game mesh? You seem to think this is really widespread but I've never seen it on any project I'm working on or on any professional example of an in game model.
What I meant by "using older hardware" is creating games for systems with less power. The newer consoles/pcs allow you to have more polygons. This means you don't use decals as much - you're modeling in things you'd leave as textures before. So a workflow that relies on placing details with textures doesn't work well when you're trying to support the details with more geometry.
No, I don't have examples . I just often see it in this forum pictures but perhaps it's all hi-res models not in games ones. Like your last picture here . I assume the thing in the middle is in game one. right? I sort of see a few of what I guess are support loops . Aren't they?
I do not critique , just wonder if it's a modern trend or something.
"I assume the thing in the middle is in game one. right? I sort of see a few of what I guess are support loops . Aren't they?"
That object, is typically known as a base mesh.
In the main an iteration often used too define a targeted silhouette before finalising secondary albeit tertiary details seen on the right, high poly cage.
"...just wonder if it's a modern trend or something."
Well, afaik been around since the advent of polygonal - subdiv modleiing.
Edit:
Also this might be of interest, a fairly comprehensive breakdown article of tasks from a first person perspective:
There is no "game model" in that image. That image shows me adding more and more detail to a mesh to create a hipoly mesh. I just saved off a copy of the mesh half way through making the final version.
I might use it to make the game mesh. But that depends on how much detail I need for that piece. I'd definitely edit it to remove some of the loops.
You should keep in mind that a lot of the work on this forum is student and amateur work. It's not necessarily work from a real game and not properly optimized.
I am well aware of subdivision modelling but always though it's a part of movies/ animation pipelines. The all quad approach paired with Zbrsh subdivision and displacement mapping. Where lods are just subdivision levels. My guess it could be used in games too especially with DX displacement.
But usually in my experience we never used all quads meshes , even before final triangulation. Nor support loops because they usually make you troubles in lods. So subdivision style of modelling kind of gradually went out of fashion in games once editing vertex normals and transfer attributes became available in 3d packages . Or at least it's what I thought.
like in this typically troublesome example . You couldn't care less of what the topology is once you transfer vertex normal from initial cylinder before the hole. Works same perfect in lods too. Never any shading jerks.
"I am well aware of subdivision modelling but always though it's a part of movies/ animation pipelines. The all quad approach paired with Zbrsh subdivision and displacement mapping. Where lods are just subdivision levels.,,"
No worries, this thread's purpose after all is a resource so what may be irrelevant to some whereas others seeking help could possibly gain additional insight, hence linked info. Basically for what it's worth I've only recently decided to switch-up Blender (...my app of choice) versions via 2.79a too 3.x.x which I must confess has been quite a steep learning curve over the preceding months, trying by trial and error to learn new modeling workflows/techniques, particularly the native bevel shader alongside PBR baking/texturing pipeline as well, a right 'head-spinner' but nevertheless making I think steady progress.
Anyway perhaps at the end of the day, really is just a simple matter of preference.
Hello! I was wondering if anyone had some tips on how to go about the topology around this nose area. It's very dense, it kinda messes with the eye topology and it's difficult to keep the curvature in shape... I'm not sure if my planned approach is good.
this is mostly for hard-surface artist to post there issue.
however, I think the questions here should be, will it deform? will it animate? if not, is it OK to use triangles there? also remember that you can google for character topology to see how other artist have done them.
My take away is that the topology gets narrower towards the nose.
So it could help not to have that big of a gap between face edges. Like your overpaint.
Sorry for any character artist out there if I butchered this!
I don't think it's supposed to be just hard surface models in this thread. It's just that most of the difficult modeling issues are how to make that kind of mesh.
here's a page from the wiki you might find useful:
So I have been struggling with this for a while and figured it is time to reach out for help!
What I get from the image and reference is that number 1) is an eclipse shape and 2) is a perfectly round cylinder. They both meet at 90 degree turned angel. Any suggestions on how to approach this?
Right I can get that as well, but you are not really getting that junction there is when the two ends of the cylinder/oval meets which is the difficult part. Appreciate your input still tho.
I think a lot of the difficulty is coming from there being 3 over lapping shape ideas. The functional 2 circles of different sizes meeting at 90 degrees, what's being suggested by the the outer ribs, and the inset detail.
I'd suggest model the ends before where it bends and transitions, then separate out the ribs and the inset details into different parts, and merge them once you got them figured out. I personally think the 45 degree rib is hiding a lot of the inset shape.
Great to see all of the community input on different approaches for the modeling operations.
@abronee Have to agree with @ZacD: The primary issue here is figuring out the basic shapes that the designer used to generate the overall form. Gathering some additional references [Turn around images.] should make it easier to see exactly what's going on. Shape analysis and iterative block outs will also make it a lot easier to solve each shape issue individually.
Shape analysis: Both ends of the 90° sweep appear to be circular segments that are truncated by a shared edge. It is possible to generate a similar shape by lofting between two perpendicular circle segments but the curvature on the inside and outside of the turn tend to vary slightly from what appears in the reference images. There's a couple of relatively straight lines that run from the bottom of the circular arcs to the shared edge. Which, when combined with the difference in the radii of the major and minor arcs of the loft, suggest that the shape may have been generated from a truncated elbow shape.
The example below compares a set of perpendicular, linear paths to a loft between the two circular features. It also demonstrates how sectioning this lofted elbow form produces both a distinct transition line near the midpoint and straight lines that connect the bottom of the circular segments to the shared edge. Which closely matches the shape in the reference images.
Block out: There's a number of different ways to approach modeling the primary shape. Which one makes the most sense depends on the application. Lofting with parametric tools or curves would probably be the most accurate and possibly the easiest solution but may not be available or produce reliable results in all packages. Subdividing a cage mesh could be a workable solution but it would be difficult to precisely control both the accuracy of the form and exact number of segments in the shape.
It's also possible to use a series of bevel / chamfer operations. Which is essentially the same modeling process that @KebabEmperor recommended. It's relatively accurate and provides a lot of control over the number of segments in each circle and the lofted curve. While it does take a little bit of time to setup, the combination of adaptability and simplified control geometry makes it easier to experiment with different shape profiles and geometry density. Manual bevel / chamfer tools can also be used to replicate this workflow but they tend to be slightly slower and don't provide the immediate feedback of the modifier based approach.
Below is an example of what the block out process could look like when using some basic geometry with a couple of bevel / chamfer and boolean modifiers to non-destructively model the primary forms.
Focus on developing the primary forms first. Once the overall shape is accurately represented, adjust the number of segments in the curves to support the surface details and move on to re-routing whatever topology doesn't align with the edges of the triangular cut outs. Major topology changes tend to generate unintended surface deformation and smoothing artifacts. So, try to maintain a relatively consistent segment spacing when adjusting the topology flow and keep everything relatively co-planar with the underlying surface.
Finish routing the topology flow around the secondary shapes then generate the surface features with basic inset or extrude operations. Support loops can be automatically generated with a bevel / chamfer operation around the shapes. Preview the subdivided surface and check for any smoothing artifacts. The complexity of the intersecting shapes is bound to produce some stray triangles. If they aren't causing any visible smoothing artifacts then there's marginal benefit to resolving the mesh to all quads.
After the primary and secondary forms are fully developed and subdivide cleanly, continue adding the remaining details. Most of the remaining shapes are relatively straightforward but remember to use segment matching when connecting other shapes to curved surfaces.
Though it's generally advisable to keep the mesh as simple as possible for as long as possible, there are certain situations where it's necessary to apply one or two levels of subdivision before merging small surface details. Floating geometry can be a good workaround for complex surface details but may not work well for large surface features.
The rest of the bite valve system and mouth piece are fairly straightforward but also have some interesting shapes.
Subdivision previews: Here's a look at the underside of the valve assembly. The truncated elbow shape is what produces the compound curve between the two circle segments and the straight edge that connects everything to that shared edge.
While it's definitely possible to work through and figure out a segment count and topology routing strategy that resolves to all quads, it's much faster to just leave a few of those triangles where they are. Most of the smoothing stress they cause is either averaged out over a wider area or constrained by the existing geometry and the support loops.
Any minor smoothing artifacts would be covered by the grainy plastic texture. Which can be added during the texturing process. Parting lines run down the middle of the part and can be added with the same bevel / chamfer modifier used to generate the support loops. Plastic injection marks can be made part of the base mesh, left as floaters or added when texturing.
Recap: Gather additional reference images and solve shape issues one at a time with an iterative block out process. Analyze the references to identify subtle shape features that provide clues to how the primary forms were generated. Try to simplify the shapes and resolve any transitional issues in the primary forms before adding details. Keep things relatively simple and adjust the topology of complex shape intersections as required. Maintain relatively consistent segment spacing and co-planer geometry to avoid generating unintended surface deformation and smoothing artifacts.
Hi everyone, my first post here, and I can't believe how useful this forum is. I thought other ones were helpful, but there are so many amazing resources here.
I'd like to show you a project I'm working on, and an area I'd like to improve
I'm trying to build an AT-AT walker and I decided to actually model the panel lines as a test.
I first tried modelling the panels as one mesh, including the sunken areas so it was all connected and would flow properly (on the right)
But then decided it would be better in separate meshes (on left) as it would keep the amount of polygons down a little.
I've done okay so far, but one area has become painful, and that involves an area where two curved corners intersect (below)
The square panel line (green) is held in the corners with the usual holding lines, and the panel itself in the centre is a separate mesh. Above the panel is a circular recessed 'pellet'. I need to bring the bottom edge of the pellet to join at the top of the panel (in pink). This then unbalances my green panel line so I put in another loop to the left (in yellow) but to me, it starts to destroy the geometry of the area around the square panel as none of it feels even. The top edge of the panel line is now different from the bottom one. I then start to add geometry down there (dotted) and it starts messing with the large curve near the bottom of the model!
Now, as far as I am aware, all of these lines really should flow exactly with the lines in the centre panel, therefore showing that the topology weight carries the exact same shape through. BUT... Is it the done thing to just move the verts manually to try and correct the curve and account for increased topology? It would work, but seems inaccurate to me.
I hope this all makes the slightest bit of sense, and I am extremely appreciative of any advice you may have.
I've rebuilt this part better I think, and I've now mirrored it to the corresponding part of the model, so at least any changes in the curve are even on each side!
Hey guys, just asking how I model this part on a Colt 1851:
I know with cylinders and boolean I have to match the number of sides so that the natural geometry can be looped without causing distortions when SubD is applied. But in this case it isn't a cylinder but spherical. I tried using a standard sphere out of MAX but the geo is just too strange with uneven edges everywhere. I also tried using a straight cube and then subdividing it and applying Spherify on top for cleaner geo but then it became too dense because SubD almost quadruples the geo with no inbetween.
I tried then starting for a plane and manually moving everything:
The geo is bad and I have pinching in the very centre. I'm sure I'm going about it the wrong way. Any pointers without going the whole "3DS to Zbrush Live Boolean" method?
The topology layout on the updated sample panel looks a lot cleaner. Splitting the model into individual components does tend to simplify the loop flow and is generally considered best practice whenever a watertight mesh isn't required. Whether or not the edge flow needs to be perfect really depends on the use case. The basics of subdivision modeling are fairly universal but each discipline has its own approach(s) to meeting specific technical requirements. E.g. Topology that's acceptable for games may not be acceptable for VFX. There's similar differences between hard surface and organic modeling, etc.
It's often helpful to focus on blocking out all of the larger shapes and most of the important details then solving the major topology flow issues before adding the final support loops. Adding too much complexity too early can make it difficult to capture the larger shapes. Constantly re-working large sections of the mesh to integrate minor details can also become a huge time sink. So, creating iterative block outs and planning out the order of operations can be helpful.
If the goal is to create game art then perfect can be the enemy of good enough. For most game art assets, high poly topology that smooths and bakes cleanly is usually passable. Most players won't ever see or care about the high poly model's wireframe. If a model subdivides without generating any major smoothing artifacts then there's often marginal benefit to manually resolving a few minor triangles to all quads. Especially when dealing with flat surfaces that have matte materials on them. That time can be better spent polishing the in-game model and textures or adding additional content that furthers the story.
If the goal is to create a VFX style hero model and brush up on quad grid topology strategies then continue working through samples here and consider checking out Andrew Hodgson's blog. It covers a lot of the workflow elements used to create high quality subdivision models with clean, quad grid topology layouts.
Ebal Studios also has a few in-depth writeups on high quality subdivision surfaces for automotive visualization.
@guitarguy00 The method shown by @KebabEmperor should work. A regular sphere provides more flexibility for segment matching. Just turn the poles so they are perpendicular to each other then match the segments. Any remaining triangles can be resolved by adding a vertex to the hypotenuse and connecting it to the adjacent corner vertex. That will allow the loop flow to turn and transition from a curve to a grid.
Thank you so much. Can I ask you what segments you used for the two regular spheres? I could not for the life of me to get them to match. Did you have to scale up the size of the sphere that is doing the cutting(the clear one in your picture).
For me, whenever I get the segments to match the top of the sphere, the side of the sphere contains too many edges, or vice versa.
You're most of the way there, just a couple of further adjustments and done, anyhow regardless of technique a few points I think worthwhile keeping in mind:
Firstly, since your reference is basically a flat - planar surface so instead of a traditional continuous poly strip subd method, I decided on terminating loops when and where possible once sketching a basic layout during the initial blocking out, then iterated as required.
Wires
Reflection tests - to error check volumes
Fairly straightforward approach, mostly copy & pasteing shapes or extruded vertex normal support loops whilst also using vertex snapping, in order to maintain overall accuracy especially both vertically and horizontally.
Further info using similar workflows creating consistently uniform edgeflow:
Since this area is for "feeding" the rounds into the revolver i added some "context" geoemtry.. i didn't meet the size correctly but i was concentrating about the topology.. because this is also nott just a halfsphere i squeezed this also a little along the longidutinal axis ( to not start a XYZ-axis war )..
@sacboi thanks very much indeed for the demonstration. I feel like a monkey watching Beethoven at work. 😂
I do like the way you are terminating edges in the centre of that lower panel, I take it this is because it is keeping all the unnecessary geometry from impacting on the curves? Once thing I noticed is that you have used a lot of tris. Is that because it is a planar surface, so the topology doesn't need to hold up on bends? I hugely appreciate your effort here, it is very humbling to have such help available. I hope it didn't take too long to do?
Much appreciated @FrankPolygon for your insight. I do think that I should create a block out stage in future, as I can see it would help to see an overview of the flow and it would definitely help with planning. It is something I will look into further, as for the moment, I try to get one area perfect, and then move to another, which I realise is the enemy of efficiency. Its funny, but this is just like painting - it is arguably better to work on all areas of the painting simultaneously in a broad fashion, and then begin to refine in passes. I'm familiar with Andrew Hodgson's blog, and I will look into the other recommendations.
I feel with time, block outs will become easier, as once the knowledge of Sub-D methods really gets embedded and I know what behaviour to anticipate with edge loops etc, it will mean I can leave them out until further down the line, allowing for larger changes to be made more easily. I really appreciate your time.
You're welcome glad to help plus correct! re-routing geometry typically enables minimal effect upon adjacent topology throughout the iterative process.
Put simply, for example's sake in terms of triangulation. A 'high flow' or high too low poly mesh projection technique when creating an asset to be potentially rendered out in a realtime engine, will tend to interpret a given object via a triangulated biased computation/algorithm, hence primary reasoning behind my choice in manually optimizing where appropriate. Furthermore I might also add that, ngons alongside tris are also very useful in manipulating a consistent high resolution edgeflow on flat surfaces, as well.
Edit:
Personally, pretty rare I'll model a response but in this case had thought worthwhile spending a few hours of effort on it, not only because I'm a certified SciFi - Cyberpunk nerd 😬 but really "old-school" methodologies in my opinion remain fundamentally relevant.
Replies
@Joao Sapiro u too.
@sacboi It's all good. We both arrived at roughly the same conclusion and offered similar advice. Always worth considering the more straightforward modeling operations.
Happy new year everyone.
This whole thread makes me wonder are all those thing gamedev related? Because support loops are big NO in game dev usually. How would you do LODs with those support loops ? Aren't hard /split edges and normal maps been invented to fix all this and editing vertex normals is a way to fix unwanted shading gradients on cylindrical things in gamedev?
I always thought that right or specific kind of topology is necessary only for meshes with deformed /animated surface aka rigged characters. For static hard surface meshes the topology is irrelevant . Only important thing is same shading through switching lods.
If the purpose is hires models for normal map baking isn't Zbrush and such have solved it long ago with dynamesh sort of things where topology is automatic?
Is it all Unreal5 related where you can be careless about your polycount theoretically so lots of support loops is ok? Bet you couldn't in actual production but I am not sure.
"This whole thread makes me wonder are all those thing gamedev related? Because support loops are big NO in game dev usually."
I disagree, because in terms of modeling a subdivided hard surface high poly object/shape, their use is an established technique whether game oriented or not and that images in the very first post illustrate or in more detail:
https://polycount.com/discussion/166058/ak-337-modular-rifle-system/p1
So the purpose is high poly to bake normal maps from, right? Isn't it easier to just "dynamesh" hi poly in Zbrush and once polygon density is high enough the edge flow is irrelevant too?
I am just curious. I also did it subdivision way years ago but after Zbrush dynamesh got picker and sub-projection I never ever used sudivizion based modelling since. And now after Fusion, moi and other CAD modellers started to export perfect shading by vertex normas I thought that art of subdivision is a thing from the past.
Usually this is about models that will be baked onto low poly. But no one says it has to be gamedev. People might be making production models too.
About workflows part: Every workflow has it's advantages, the sub-d *we are doing* is a non-destructive workflow which is different from traditional workflow which you hear myths about. If you know what you are doing it is not hard at all compared to automated remeshing workflows, and this workflow being non-destructive while not being slow (contrary to popular belief) is a big advantage.
Also not everything can be made in same dynamesh way, ie. vehicles.
gnoop - just because a particular method can be perceived as obsolete due to a number of factors whether subjective reasoning, inefficiency or relative preference...etc doesn't in my opinion demonstratively represent a precedent against further utility/application.
Specifically what I mean, is why then do senior industry vehicle - weapon - hard surface artists currently continue too implement a sub-d support edge loop related workflow, especially when authoring their individual tutorial based content?!
I totally understand . It's just I see people use Fusion and MOi for those things lately rather than subdiv modelling.
Also this picture from your link https://us.v-cdn.net/5021068/uploads/editor/x1/nfwvw6ounikm.jpg
is hardly for subdiv too and IMO still has redundant geometry around those round holes . Perfectly doable just by splitting edges and transferring /projecting normals from initial cylindrical shape .
And the thing doesn't require a hires model at all actually. You can just bake in rounding corners/bevel shader + painting few details in SPainter.
As of why senior artists continue to use subdiv it's actually what I am curious about. From my point of view it's an extra pain in your a... but seems people think otherwise. I myself do environment stuff mostly and never use subdivs so perhaps missing something.
Subdivs are only a pain if you haven't developed the skills to use them. Fusion and other solid surface modelers aren't any faster than subdivs. And you need to pay for another license to use them - and switch to another piece of software.
I find it strange that you don't use subdivs? I use them daily and I'm an environment artist. I've used them for making trees, bricks, machinery, and all kinds of architecture. The basic techniques of subdivision modeling, such as the ones in this thread, work in any major piece of 3d software so you can be guaranteed that knowing these principles is not time wasted.
As the industry moves into higher and higher resolution meshes it will become increasingly difficult for anyone to avoid being able to create hi-poly models at the same standard as a film industry modeler.
With dynamesh you can only have one bevel size. Support loops and subdiv surfaces give you more precise control over the geometry than dynamesh can. With support loops the edges can fade into each other and change from a bevel to a rounded corner at will. It's a more accurate representation of a real object.
Well, I did use subdiv modelling in the past but once Zbrush got sub-projection slider in its dynamesh and a density picker I gradually stopped to do subdivids at all. Then a few years later I stopped to do hi res models for hard surface things too mostly because of rounding corners shaders + adding details straight inside Designer/Painter.
I use neither Fusion nor Moi actually. For very same mentioned reasons. Why learn and buy another software when you perfectly ok with your current one. So totally understandable.
Still doing basically two different models. One for in game, designed for smooth LODs switching without shading popups when you sometimes have to thought out every face vertex normals and triangulation . Then another one for perfect subdivision , all quads model looks like double job for me . Actually triple job since you have to do a cage model. parts naming etc.
From what I see people mostly use same mesh they do for subdivision as in game one . Resulting in lots of redundant edge loops where you could just face weight or transfer vertex normals . So my guess it's for Unreal5 , right? Because in our game where once people get their FPS lower than 100 on their ancient hardware they start to look for their forks and torches :)
Hi guys, I run into a problem that struggling quite a lot of the secondary shape and primary shape, I spent sometime trying to figure out but all the outcome doesn't look nice, hope anyone can help me out with it, the original artwork is a concept art so that's only one point of view 😥 Thanks in advance!
I have never seen anyone using the subdiv mesh as an in game mesh.
Adding on details in substance painter works fine if you’re still using older hardware. But where do you get the detail textures from?
If I wanted to make my own bolts and panels for a painter decal set I’d probably model them using subdivs and bake the hipoly to a texture.
It’s the same in zbrush. A lot of those kitbash IMM brushes were all made using subdivs.
More I think about it more it seems to me not exactly subdivision question in general. I use Zbrush after all and it's all about subdivision. I meant rather all those extra loops people do for nice shading of subdivided meshes that ended up into in game models ( not subdivided models themselves). A special topology that helps to avoid shading gradients. And those loops are often totally redundant for in game models where you could just split few edges here and there and transfer or face weight normals.
As of modeling itself I mostly use booleans . Now with geo nodes it's totally non destructive. If I see shading artifacts I just transfer normals from what was before boolean operation but often just face weighting is enough . If it's for hires mesh it's just more tessellation before boolean etc and if the mesh have shading artifact I open it with dynamesh and sub-projection set to 0,8 >>> no more shading artifacts.
Not sure I got the idea about substance painter and older hardware . I meant that hard surface hi-res models are mostly about rounding corners and edges . And it works perfectly with just baking rounding shader into normal map. No ray missing waves . Other things are just normal map or height decalls in SPainter.
I didn't have to do those shading support loops for so long I am starting to forget the art of it .
I use a variation of the dynamesh workflow sometimes, and the one size bevel limitation isn't really accurate. You can do one of 4 things. Do large soft bevels in your 3d package before dynamesh. Do booleans and dynamesh in a few phases with the softest bevels first, and repeating. Break up a model by material and have each material with its own bevel amount. Or doing some sculpting and going over the bevels.
Do you have some examples of games where they have left the support loops on the in-game mesh? You seem to think this is really widespread but I've never seen it on any project I'm working on or on any professional example of an in game model.
What I meant by "using older hardware" is creating games for systems with less power. The newer consoles/pcs allow you to have more polygons. This means you don't use decals as much - you're modeling in things you'd leave as textures before. So a workflow that relies on placing details with textures doesn't work well when you're trying to support the details with more geometry.
I'd start with the front face and work backwards - like this:
Hi, thanks you for the demonstration, I get it now and is working nice 😆
No, I don't have examples . I just often see it in this forum pictures but perhaps it's all hi-res models not in games ones. Like your last picture here . I assume the thing in the middle is in game one. right? I sort of see a few of what I guess are support loops . Aren't they?
I do not critique , just wonder if it's a modern trend or something.
"I assume the thing in the middle is in game one. right? I sort of see a few of what I guess are support loops . Aren't they?"
That object, is typically known as a base mesh.
In the main an iteration often used too define a targeted silhouette before finalising secondary albeit tertiary details seen on the right, high poly cage.
"...just wonder if it's a modern trend or something."
Well, afaik been around since the advent of polygonal - subdiv modleiing.
Edit:
Also this might be of interest, a fairly comprehensive breakdown article of tasks from a first person perspective:
http://piratportfolio.com/fpp_eng/
There is no "game model" in that image. That image shows me adding more and more detail to a mesh to create a hipoly mesh. I just saved off a copy of the mesh half way through making the final version.
I might use it to make the game mesh. But that depends on how much detail I need for that piece. I'd definitely edit it to remove some of the loops.
You should keep in mind that a lot of the work on this forum is student and amateur work. It's not necessarily work from a real game and not properly optimized.
I am well aware of subdivision modelling but always though it's a part of movies/ animation pipelines. The all quad approach paired with Zbrsh subdivision and displacement mapping. Where lods are just subdivision levels. My guess it could be used in games too especially with DX displacement.
But usually in my experience we never used all quads meshes , even before final triangulation. Nor support loops because they usually make you troubles in lods. So subdivision style of modelling kind of gradually went out of fashion in games once editing vertex normals and transfer attributes became available in 3d packages . Or at least it's what I thought.
like in this typically troublesome example . You couldn't care less of what the topology is once you transfer vertex normal from initial cylinder before the hole. Works same perfect in lods too. Never any shading jerks.
"I am well aware of subdivision modelling but always though it's a part of movies/ animation pipelines. The all quad approach paired with Zbrsh subdivision and displacement mapping. Where lods are just subdivision levels.,,"
No worries, this thread's purpose after all is a resource so what may be irrelevant to some whereas others seeking help could possibly gain additional insight, hence linked info. Basically for what it's worth I've only recently decided to switch-up Blender (...my app of choice) versions via 2.79a too 3.x.x which I must confess has been quite a steep learning curve over the preceding months, trying by trial and error to learn new modeling workflows/techniques, particularly the native bevel shader alongside PBR baking/texturing pipeline as well, a right 'head-spinner' but nevertheless making I think steady progress.
Anyway perhaps at the end of the day, really is just a simple matter of preference.
this is mostly for hard-surface artist to post there issue.
however, I think the questions here should be, will it deform? will it animate? if not, is it OK to use triangles there? also remember that you can google for character topology to see how other artist have done them.
My take away is that the topology gets narrower towards the nose.
So it could help not to have that big of a gap between face edges. Like your overpaint.
Sorry for any character artist out there if I butchered this!
I apologize, it wasn't clear to me that "specific shapes" referred to hard surface models! This helps a lot, thank you very much!
I don't think it's supposed to be just hard surface models in this thread. It's just that most of the difficult modeling issues are how to make that kind of mesh.
here's a page from the wiki you might find useful:
https://polycount.com/discussion/80005/face-topology-breakdown-guide/p1
It just came to my mind while recommending this thread on another forum and following another meme:
(Maybe this already came up somewhere else??)
Some
martialpolygon art masters chat:Master 1: I can do only 20k polygons.. how much can you do?
Master 2: Hmm. i can properly do 24k or maybe even up to 26k polygons.. and you?
FrankPolygon: All of them.
Hi!
So I have been struggling with this for a while and figured it is time to reach out for help!
What I get from the image and reference is that number 1) is an eclipse shape and 2) is a perfectly round cylinder. They both meet at 90 degree turned angel. Any suggestions on how to approach this?
I would make a normal bent cylinder and then scale the height of the bent section until it's oval (see image)
Right I can get that as well, but you are not really getting that junction there is when the two ends of the cylinder/oval meets which is the difficult part. Appreciate your input still tho.
Hi, not sure if this what u mentioning about the two ends meet with each other for 90 degree, here is how I will approach to that kind of shape.
I think sprunghunt example is pretty excellent also, maybe it just matter of moving around the shape/form
hope it will help u
Yea you can just make a mesh like this and bevel will you give the desired result:
Then just add couple support loops to hold the edges.
After some fiddling.. the ellipsoid or oval ring seems to bigger than the other.. but..
.. i remembered Reference is everything .. and so both seems to circle but with differend diameter..:
.. but now i'm somekind of tired of this for a while ... ;-) ( emojiis seems to broken for me...)
Oh well o well.. for the basic form maybe also just some subdiv...
I think a lot of the difficulty is coming from there being 3 over lapping shape ideas. The functional 2 circles of different sizes meeting at 90 degrees, what's being suggested by the the outer ribs, and the inset detail.
I'd suggest model the ends before where it bends and transitions, then separate out the ribs and the inset details into different parts, and merge them once you got them figured out. I personally think the 45 degree rib is hiding a lot of the inset shape.
Great to see all of the community input on different approaches for the modeling operations.
@abronee Have to agree with @ZacD: The primary issue here is figuring out the basic shapes that the designer used to generate the overall form. Gathering some additional references [Turn around images.] should make it easier to see exactly what's going on. Shape analysis and iterative block outs will also make it a lot easier to solve each shape issue individually.
Shape analysis: Both ends of the 90° sweep appear to be circular segments that are truncated by a shared edge. It is possible to generate a similar shape by lofting between two perpendicular circle segments but the curvature on the inside and outside of the turn tend to vary slightly from what appears in the reference images. There's a couple of relatively straight lines that run from the bottom of the circular arcs to the shared edge. Which, when combined with the difference in the radii of the major and minor arcs of the loft, suggest that the shape may have been generated from a truncated elbow shape.
The example below compares a set of perpendicular, linear paths to a loft between the two circular features. It also demonstrates how sectioning this lofted elbow form produces both a distinct transition line near the midpoint and straight lines that connect the bottom of the circular segments to the shared edge. Which closely matches the shape in the reference images.
Block out: There's a number of different ways to approach modeling the primary shape. Which one makes the most sense depends on the application. Lofting with parametric tools or curves would probably be the most accurate and possibly the easiest solution but may not be available or produce reliable results in all packages. Subdividing a cage mesh could be a workable solution but it would be difficult to precisely control both the accuracy of the form and exact number of segments in the shape.
It's also possible to use a series of bevel / chamfer operations. Which is essentially the same modeling process that @KebabEmperor recommended. It's relatively accurate and provides a lot of control over the number of segments in each circle and the lofted curve. While it does take a little bit of time to setup, the combination of adaptability and simplified control geometry makes it easier to experiment with different shape profiles and geometry density. Manual bevel / chamfer tools can also be used to replicate this workflow but they tend to be slightly slower and don't provide the immediate feedback of the modifier based approach.
Below is an example of what the block out process could look like when using some basic geometry with a couple of bevel / chamfer and boolean modifiers to non-destructively model the primary forms.
Focus on developing the primary forms first. Once the overall shape is accurately represented, adjust the number of segments in the curves to support the surface details and move on to re-routing whatever topology doesn't align with the edges of the triangular cut outs. Major topology changes tend to generate unintended surface deformation and smoothing artifacts. So, try to maintain a relatively consistent segment spacing when adjusting the topology flow and keep everything relatively co-planar with the underlying surface.
Finish routing the topology flow around the secondary shapes then generate the surface features with basic inset or extrude operations. Support loops can be automatically generated with a bevel / chamfer operation around the shapes. Preview the subdivided surface and check for any smoothing artifacts. The complexity of the intersecting shapes is bound to produce some stray triangles. If they aren't causing any visible smoothing artifacts then there's marginal benefit to resolving the mesh to all quads.
After the primary and secondary forms are fully developed and subdivide cleanly, continue adding the remaining details. Most of the remaining shapes are relatively straightforward but remember to use segment matching when connecting other shapes to curved surfaces.
Though it's generally advisable to keep the mesh as simple as possible for as long as possible, there are certain situations where it's necessary to apply one or two levels of subdivision before merging small surface details. Floating geometry can be a good workaround for complex surface details but may not work well for large surface features.
The rest of the bite valve system and mouth piece are fairly straightforward but also have some interesting shapes.
Subdivision previews: Here's a look at the underside of the valve assembly. The truncated elbow shape is what produces the compound curve between the two circle segments and the straight edge that connects everything to that shared edge.
While it's definitely possible to work through and figure out a segment count and topology routing strategy that resolves to all quads, it's much faster to just leave a few of those triangles where they are. Most of the smoothing stress they cause is either averaged out over a wider area or constrained by the existing geometry and the support loops.
Any minor smoothing artifacts would be covered by the grainy plastic texture. Which can be added during the texturing process. Parting lines run down the middle of the part and can be added with the same bevel / chamfer modifier used to generate the support loops. Plastic injection marks can be made part of the base mesh, left as floaters or added when texturing.
Recap: Gather additional reference images and solve shape issues one at a time with an iterative block out process. Analyze the references to identify subtle shape features that provide clues to how the primary forms were generated. Try to simplify the shapes and resolve any transitional issues in the primary forms before adding details. Keep things relatively simple and adjust the topology of complex shape intersections as required. Maintain relatively consistent segment spacing and co-planer geometry to avoid generating unintended surface deformation and smoothing artifacts.
Hi everyone, my first post here, and I can't believe how useful this forum is. I thought other ones were helpful, but there are so many amazing resources here.
I'd like to show you a project I'm working on, and an area I'd like to improve
I'm trying to build an AT-AT walker and I decided to actually model the panel lines as a test.
I first tried modelling the panels as one mesh, including the sunken areas so it was all connected and would flow properly (on the right)
But then decided it would be better in separate meshes (on left) as it would keep the amount of polygons down a little.
I've done okay so far, but one area has become painful, and that involves an area where two curved corners intersect (below)
The square panel line (green) is held in the corners with the usual holding lines, and the panel itself in the centre is a separate mesh. Above the panel is a circular recessed 'pellet'. I need to bring the bottom edge of the pellet to join at the top of the panel (in pink). This then unbalances my green panel line so I put in another loop to the left (in yellow) but to me, it starts to destroy the geometry of the area around the square panel as none of it feels even. The top edge of the panel line is now different from the bottom one. I then start to add geometry down there (dotted) and it starts messing with the large curve near the bottom of the model!
Now, as far as I am aware, all of these lines really should flow exactly with the lines in the centre panel, therefore showing that the topology weight carries the exact same shape through. BUT... Is it the done thing to just move the verts manually to try and correct the curve and account for increased topology? It would work, but seems inaccurate to me.
I hope this all makes the slightest bit of sense, and I am extremely appreciative of any advice you may have.
Further to my last post...
I've rebuilt this part better I think, and I've now mirrored it to the corresponding part of the model, so at least any changes in the curve are even on each side!
Hey guys, just asking how I model this part on a Colt 1851:
I know with cylinders and boolean I have to match the number of sides so that the natural geometry can be looped without causing distortions when SubD is applied. But in this case it isn't a cylinder but spherical. I tried using a standard sphere out of MAX but the geo is just too strange with uneven edges everywhere. I also tried using a straight cube and then subdividing it and applying Spherify on top for cleaner geo but then it became too dense because SubD almost quadruples the geo with no inbetween.
I tried then starting for a plane and manually moving everything:
The geo is bad and I have pinching in the very centre. I'm sure I'm going about it the wrong way. Any pointers without going the whole "3DS to Zbrush Live Boolean" method?
Hi guitarguy. You can achieve that shape by booleaning two cubic spheres:
After applying boolean you can just quickly clean & improve topology and evenly space the edges.
Rest is bevel & sub-d.
I really couldn't eliminate the triangles. Using a UV Sphere didn't help either.
You can rotate a UV Sphere 90 degrees and boolean them like this:
Which gives good topology but the pole of UV Spheres are always problematic. But you can try to inset and minimize it:
@christrom Welcome to Polycount. Consider checking out the forum information and introduction thread.
The topology layout on the updated sample panel looks a lot cleaner. Splitting the model into individual components does tend to simplify the loop flow and is generally considered best practice whenever a watertight mesh isn't required. Whether or not the edge flow needs to be perfect really depends on the use case. The basics of subdivision modeling are fairly universal but each discipline has its own approach(s) to meeting specific technical requirements. E.g. Topology that's acceptable for games may not be acceptable for VFX. There's similar differences between hard surface and organic modeling, etc.
It's often helpful to focus on blocking out all of the larger shapes and most of the important details then solving the major topology flow issues before adding the final support loops. Adding too much complexity too early can make it difficult to capture the larger shapes. Constantly re-working large sections of the mesh to integrate minor details can also become a huge time sink. So, creating iterative block outs and planning out the order of operations can be helpful.
If the goal is to create game art then perfect can be the enemy of good enough. For most game art assets, high poly topology that smooths and bakes cleanly is usually passable. Most players won't ever see or care about the high poly model's wireframe. If a model subdivides without generating any major smoothing artifacts then there's often marginal benefit to manually resolving a few minor triangles to all quads. Especially when dealing with flat surfaces that have matte materials on them. That time can be better spent polishing the in-game model and textures or adding additional content that furthers the story.
If the goal is to create a VFX style hero model and brush up on quad grid topology strategies then continue working through samples here and consider checking out Andrew Hodgson's blog. It covers a lot of the workflow elements used to create high quality subdivision models with clean, quad grid topology layouts.
Ebal Studios also has a few in-depth writeups on high quality subdivision surfaces for automotive visualization.
@guitarguy00 The method shown by @KebabEmperor should work. A regular sphere provides more flexibility for segment matching. Just turn the poles so they are perpendicular to each other then match the segments. Any remaining triangles can be resolved by adding a vertex to the hypotenuse and connecting it to the adjacent corner vertex. That will allow the loop flow to turn and transition from a curve to a grid.
Thank you so much. Just tried both methods, both worked as you said. Very cool.
Thank you so much. Can I ask you what segments you used for the two regular spheres? I could not for the life of me to get them to match. Did you have to scale up the size of the sphere that is doing the cutting(the clear one in your picture).
For me, whenever I get the segments to match the top of the sphere, the side of the sphere contains too many edges, or vice versa.
Equal amount on the side:
Too many edges on the top:
Using Quad sphere, basically a Cube that has 1-2 turbosmooth going on.
You're most of the way there, just a couple of further adjustments and done, anyhow regardless of technique a few points I think worthwhile keeping in mind:
Firstly, since your reference is basically a flat - planar surface so instead of a traditional continuous poly strip subd method, I decided on terminating loops when and where possible once sketching a basic layout during the initial blocking out, then iterated as required.
Wires
Reflection tests - to error check volumes
Fairly straightforward approach, mostly copy & pasteing shapes or extruded vertex normal support loops whilst also using vertex snapping, in order to maintain overall accuracy especially both vertically and horizontally.
Further info using similar workflows creating consistently uniform edgeflow:
www.youtube.com/watch?v=HoVfUfSRFVg
Since this area is for "feeding" the rounds into the revolver i added some "context" geoemtry.. i didn't meet the size correctly but i was concentrating about the topology.. because this is also nott just a halfsphere i squeezed this also a little along the longidutinal axis ( to not start a XYZ-axis war )..
ignore the left side topo...
@sacboi thanks very much indeed for the demonstration. I feel like a monkey watching Beethoven at work. 😂
I do like the way you are terminating edges in the centre of that lower panel, I take it this is because it is keeping all the unnecessary geometry from impacting on the curves? Once thing I noticed is that you have used a lot of tris. Is that because it is a planar surface, so the topology doesn't need to hold up on bends? I hugely appreciate your effort here, it is very humbling to have such help available. I hope it didn't take too long to do?
Many thanks again :)
Much appreciated @FrankPolygon for your insight. I do think that I should create a block out stage in future, as I can see it would help to see an overview of the flow and it would definitely help with planning. It is something I will look into further, as for the moment, I try to get one area perfect, and then move to another, which I realise is the enemy of efficiency. Its funny, but this is just like painting - it is arguably better to work on all areas of the painting simultaneously in a broad fashion, and then begin to refine in passes. I'm familiar with Andrew Hodgson's blog, and I will look into the other recommendations.
I feel with time, block outs will become easier, as once the knowledge of Sub-D methods really gets embedded and I know what behaviour to anticipate with edge loops etc, it will mean I can leave them out until further down the line, allowing for larger changes to be made more easily. I really appreciate your time.
You're welcome glad to help plus correct! re-routing geometry typically enables minimal effect upon adjacent topology throughout the iterative process.
Put simply, for example's sake in terms of triangulation. A 'high flow' or high too low poly mesh projection technique when creating an asset to be potentially rendered out in a realtime engine, will tend to interpret a given object via a triangulated biased computation/algorithm, hence primary reasoning behind my choice in manually optimizing where appropriate. Furthermore I might also add that, ngons alongside tris are also very useful in manipulating a consistent high resolution edgeflow on flat surfaces, as well.
Edit:
Personally, pretty rare I'll model a response but in this case had thought worthwhile spending a few hours of effort on it, not only because I'm a certified SciFi - Cyberpunk nerd 😬 but really "old-school" methodologies in my opinion remain fundamentally relevant.
Any tips on how can I model this one? I am having a hard time with the shape of the wood pillar 😐️