Optimizing models for source?

I’m next-to-brand-new to modelling. I know some basic stuff like polishing the final mesh, rigging, animating, uv skinning, etc. What I don’t know is how to complete your model for optimal use in hl2. It’s a very broad topic and there are a number of factors that affect how tuned-up your model should look, but I’m just looking for very basic advice, like how many verts should constitute a viewmodel, or a low-visibility prop (like a skybox building or something) as well what the resolution for the texture should be. For reference, I’ll include an image and some info about a whip I made in Blender, which I plan to use in a sfm video and possibly as a wmodel.

It’s made up of 240 verts and 230 faces, and its rig consists of nine bones. Right now, it’s uv resolution is 1040x1040, which is absurdly high (you don’t need to tell me that.)

Are there any major changes I can add to make it more source-friendly? Thanks


Bump :\

Honestly it’s kind of tricky territory when it comes to Source specifically. The HL2 citizens are around 7,000 polygons on average but modern playermodels when ported are between 20,000 and 35,000. Some games may even run higher than that simply because developers slap turbosmooth or tessellation on and call it quality work.

For what you have now you should be fine adding some more polygons if you really want them to smooth or extend the whip. The handle looks like it needs smoothing groups. Faces can be cut from the model entirely if it is never seen by the viewer even with animations although for a whip you might not have that many opportunities that you need to worry about.

Models rendered in first person generally have the highest quality compared to nearly everything else – you’re welcome to splurge in polycount as long as you don’t overdo it. You only render one viewmodel on your screen at a time.

Props in SFM are more welcoming for higher poly counts. It just depends on how often the item is going to be used in the scene, how relevant it is, and where it’s going to be.

General props can be fairly low in quality, especially if they aren’t relevant. Flatten micro details in to the texture / normal map. Only give polygons to the large necessary shapes and avoid small unnecessary bevels. Other than that the specific poly count is still up to you. Use LoDs wisely and you might be able to squeeze a few extra in fine enough.

Keep in mind that polygons aren’t the only thing that contributes to lag. Things like number of times the model is being used, the number of materials being drawn, the number of entities being networked, the processes being ran on that entity (complex AI), and so on.

Okay so source is an old engine that has been expanded over time. The first models from HL2 were ballpark 20k for heroes, 10k for characters, 1k for viewmodels and hero props, less for everything else. Textures ranged from 128x128 to 1024x1024, with a few specific textures that were 2048x2048.

That was 2004.

It’s 2014 today, and we’ve seen that source can play ball with some impressive numbers. Fakefactory, even if you hate the quality of the models, proves that the engine is able to push 100k models with multiple 4096x4096 textures; even games that are optimized for mutliplayer (CS:GO) have viewmodels that offload all detail to polycount, pushing viewmodels that are 30k triangles and 2048x2048 textures.

Source Filmmaker is capable of more - I’ve worked on projects where single frames had everything mapped at 2048x2048 to 4096x4096 textures on models that had to be assembled in-editor to bypass the roughly 100k poly-limit, we’re talking a few million polys in one image. It’s slow, but SFM isn’t a real time engine either.

It’ll likely handle whatever you throw at it, provided it’s at least targeted to real-time polycounts. I’d say that anything past 10k polygons for non-organics is wasteful, and 50k for humans is where diminishing returns start to kick in. Even that is really high, you could do things on 1/5th those numbers and still make things look good if you are decent with low poly modeling. (For hard surface, you can generally block out most shapes in 1k polys or less, it’s an artform in itself)

Short answer: As long as you’re not intentionally doing a bad job with your model, you shouldn’t really have to worry about polycount in terms of having it actually work in source. Just bear in mind that you run into problems with older model compiles at 30k polygons for a single portion of a model (i.e. the head or hair of a character) and .vtf files stop providing guaranteed rendering at 4096x4096 uncompressed, or about 40MB per map per vmt. 4096 or even 8192 is possible, provided you compress the texture - not that you should. ‘High end’ by today’s standards is really 2048x2048.

Now that said, just because you can do it doesn’t mean you should, a big part of the art of game art is not just aesthetics but also optimization.

Oh jeez yeah I hadn’t really considered how graphically badass hl2 is for being from 2004 lol. That aside, I’ll make note of the numbers and this is all wonderful information to have. Thanks, guys.