I need to quickly convert high-poly complex models to low-poly textured models.

Hello there, I’ve asked this on IRC but we couldn’t find a good solution.

I have some very complex models here composed of many objects and materials, and I’d like to somehow quickly convert them to low-poly textured models (diffuse texture only).

I gave an example on IRC that I think is the best way to understand what I want:

let’s say you have a very detailed building model, with lots of different materials and objects, and say that building loosely resembles a cube, so what i want is to create a cube and somehow tell blender to magically ‘map’ the renders of the building in the cube texture, i could do that manually very easily, for example, rendering the façade and then mapping it on the frontal face of the cube and so on. the problem, is we’re not talking cubes here

I want to somehow create a single ‘shell’ mesh around my entire object, and then I want to somehow ‘project’ the render data on each individual triangle separately, here’s another quote:

in theory it would be possible to automate that i think, it’s just a matter of ‘projecting’ the render on each individual triangle of the ‘shell’ mesh, i think it’s even possible to make a python script to automate that somehow, like positioning an ortho camera on each triangle (with an offset from the normal) and then rendering and somehow mapping the result to the triangle.

If there’s no way to do that automatically, it’s no big deal, something like that may generate artifacts that need to be manually fixed, so I might just do the whole thing manually as well.

Sounds like you want to create a low-poly version, then bake the high-poly details on to it. You wouldn’t have to map each face individually, either - just UV Unwrap the low-poly object, and your eventual bake will match the texture to your UV layout. Personally, I would also use a normal map in addition to the diffuse map, but that’s up to you.

I don’t know of a way to automate this whole process, but maybe someone else does.

Search for baking tutorials, and let us know if that’s what you’re looking for or not.

To transfer texture from a high res model to a lower res model. They can have entirely different UVs

Decimate or retoplogise your high res model to a lower res version
UV unwrap your lower poly modela nd give it a texture
Ensure the high res and low res models are in the same location.
Use Render / Bake to bake the textures from the high res model to the texture of the low res model. Ensure you have ‘Selected to Active’ enables and have the high res model selected and the low res model selected as the currently active object

Thanks guys, the problem is, since the model is not a single mesh, and it’s very complex, it’s gonna be too hard to create a lower poly version of every object, in the example of the building, for the whole façade I want a all the materials and objects baked into a single quad, including different materials and stuff. It’s like rendering the whole façade and then manually mapping it to the front quad of the cube.

I don’t want just a lower poly version of a mesh, I want the whole shebang to be baked as a diffuse texture in a separate low-poly mesh.

I know the proper way to do that would be using multires but I want REALLY low-poly versions, so it’s gonna be faster to just render some angles, merge and manually map the textures.

EDIT: Nevermind guys, you can achieve that by using the so-called “Cage” or fine-tuning the ‘ray distance’ thing in the bake panel (and baking a combined render). The final result is really good :). Blender is simply awesome :D.