Creating textures for custom voxel style models for own project


I’m having trouble figuring out a quick way to create textures for models i’m creating for a game project i’m going to be starting in the near future, but i’m struggling with creating the textures after I optimize the model.

The texture that comes with the export from the program i’m using is basically useless in all sense, i am using magicavoxel a free voxel editing program as I don’t have the $40 which is needed for the OBJ

anyone here got tips?


What formats can you export to? Maybe I can assist in the conversion process.


I am exporting to .obj, it gives me an .mtl file, an .obj file and a .tga, but the tga file is kind of useless in any engine, due to the fact engines work on the rule of 2 when it comes to textures, eg 64, 128, 256, 512, 1024 etc.


Engines usually do not work on explicitly power-of-two, they usually just work better on it - which means some may enforce it.

The .obj defines the mesh, the .mtl the mapping between the texture and said mesh. If you had any other format (such as qb, binvox or similar), I could create an .obj that would work without a texture (by using material colors, which should work in more engines).


Well I use marmoset TB 2 for my rendering to check how the AO and such is, and it crashes everytime I try to use a texture that isn’t power of 2, and the engine I hope to create my game in will probably be UDK. yet again another engine that requires power of 2.


You could try to read whatever format Magicavoxel is giving you (I’m assuming they do more than just .obj) natively in your engine. It’s going to be more work, of course, but it would save you the hassle of converting models all the time. That way, you could create the textures yourself (or, more simply, just create a bunch of cubes until you really need it optimized, when you could start merging cubes of the same color before you move to a texture-based solution).

So, I would suggest you re-think if you really want to go through some converting process every time a new model is created or changed. That will get annoying, believe me.


UDK only handles FBX files for static meshes. so I have to export from obj, put that into 3ds max, retopo, export to fbx then into my engine., its a bit of a pain in my butt, but its either that or have tons of objects around 2k tris each time being constantly duplicated throughout my environment.