← Back to Blog

OBJ and FBX File Rendering Service

Architectural rendering illustration for: OBJ and FBX File Rendering Service

Quick answer: Send the .obj with its .mtl and textures, or the .fbx with media embedded. Neutral formats keep shape and lose intelligence, and OBJ carries no units at all, so tell us the source program and one known dimension so we can verify scale.

Why OBJ and FBX are the universal handshake

Not every project lives in a program we can open directly. A contractor has a model from a CAD package we have never heard of. A product designer exports from engineering software. A previous studio delivered a mesh and disappeared. In all of these cases the common ground is a neutral mesh format, and the two most common are OBJ and FBX.

A neutral format is a translation. It keeps the shapes and, with luck, the surface names and the texture coordinates. It drops most of what the original program knew: the parametric history, the layers, the intelligent objects. For a rendering that is acceptable, because a rendering needs surfaces, not history. What matters is knowing what did survive and what has to be rebuilt.

OBJ versus FBX: what each one carries

  • OBJ. Very old, very simple and supported everywhere. It stores geometry, normals and texture coordinates, and points to a separate .mtl file for materials and to image files for textures. It has no cameras, no lights and no real hierarchy. Units are not stored, which is its most common source of trouble.
  • FBX. Richer. It can carry hierarchy, cameras, lights, animation and embedded textures. It also stores a unit setting, which helps. Its weakness is that different exporters interpret it differently, so a file from one program can look slightly different in another.

If you can choose, FBX with embedded media is usually the more complete package. If the source program exports only OBJ, that is workable. In both cases, keep the export settings consistent and tell us which program made the file.

Six checks before you export

1. Units and scale

The most frequent problem with OBJ files is scale. A building that arrives as a tiny speck, or as a mountain, has been exported in the wrong unit. Tell us the unit the model was drawn in, and add one known dimension, such as a door height or the overall length. It takes ten seconds and removes the guesswork.

2. Textures

For OBJ, send the .obj, the .mtl and every image in the same folder. For FBX, either embed the media or send the texture folder alongside. A model without its textures is a gray sculpture.

3. Orientation and up axis

Some programs treat Z as up, others Y. A model lying on its back is a sign of this. It is trivial to correct, but only if we know that it is intentional.

4. Normals and face direction

Flipped faces render black or transparent from one side. Exporters rarely fix them. If your program has a "unify normals" or "recalculate outside" option, use it.

5. Grouping and naming

A model exported as one enormous single object is slow to work on, because every material assignment must be done by selecting faces. If it is possible to export grouped by material or by building element, do it. Clear names such as "glass_curtainwall" and "concrete_slab" save real time.

6. Polygon count

Files with many millions of triangles come from scans, subdivision or over-tessellated CAD. Heavy files are workable, but it helps to know beforehand. Tell us the file size.

What we do with a neutral mesh

The steps are the same in outline every time. We import the file and verify scale against the dimension you gave us. We inspect the mesh for holes, flipped faces, duplicates and stray objects. We rebuild the material structure, assigning surfaces by name or by region. We add materials with real behavior, light, context and camera, then send previews.

The geometry is treated as final. If a wall has a hole in it because the exporter broke a boolean, we tell you and repair it if you agree. If a curved surface arrived faceted because the tessellation was coarse, we tell you that too, and we can smooth it visually or request a finer export. What we never do is redesign.

A worked example: a mesh with no history

A developer inherits a hotel concept from a former architect who is no longer reachable. All that exists is a 260 megabyte FBX with no textures and a note that says "final massing". The developer wants three exterior images for a financing presentation.

Review shows the model is in centimeters but was tagged as meters, so it arrives a hundred times too large. The glass and the balustrades are the same material, and the roof plane has flipped normals. We correct the scale using the stated overall height, separate the glass by name pattern and repair the normals. Because there were no finishes on record, we propose two facade options in previews and the developer picks one.

The three final images arrive on the agreed date. The client did not remodel anything, and never had to find the original architect.

Multiple files, LODs and export by parts

Large projects are often exported in pieces: the building in one file, the site in another, the furniture in a third. That is a good habit, because each part can be checked and replaced separately. The only requirement is that all pieces share the same origin and the same units. If the building was exported with its own origin and the site with another, they will not meet. A simple test is to export a small marker object, such as a one-meter cube at the project origin, into every file. If the cubes line up, the files line up.

Some models also carry several levels of detail, a high-polygon version and a simplified one. Send the one that matches the views you need, and tell us which it is. A detailed model for close interiors and a lighter one for distant context is a reasonable combination, but it needs to be described so that neither is used in the wrong place.

Texture coordinates and why they decide whether wood looks like wood

A texture is a flat image wrapped around a three-dimensional shape, and the instructions for how it wraps are called texture coordinates or UVs. Models exported from CAD software often arrive without proper UVs, or with automatic ones that stretch. Wood grain that runs the wrong way across a floor, brick that shrinks and grows from one wall to the next and tiles that do not align at corners all come from this.

For flat architectural surfaces the fix is usually fast: we project the texture with the right scale and direction. For complex curved shapes it takes more care. If your model already has good UVs, say so, and they will be kept. If it has none, no problem, because we generate them. Either way, knowing which case applies helps us plan the time honestly.

When a mesh is not enough

  • Very low-polygon massing. A block model with no openings or details can be rendered, but it will look like a block. If you want a realistic facade, the detail has to be added, which is modeling and is quoted as such.
  • Scans and point clouds. A raw scan is not a clean model. It can be turned into one, but that is a separate task.
  • Broken geometry beyond repair. Occasionally a mesh is so damaged that rebuilding parts is faster than repairing them. We say so before starting.

What to send

  • The .obj with its .mtl and textures, or the .fbx with media embedded or alongside.
  • The program that produced the file and the unit it was drawn in.
  • One known dimension to check the scale.
  • Finish intentions for the main surfaces, in words or with photos.
  • The views you want and what the images are for.
  • The deadline.

Questions worth asking any studio about neutral formats

  1. How do you verify scale when the file does not carry units?
  2. What happens when a mesh arrives with broken geometry, and do I approve repairs?
  3. Do you assign materials by name or region, and how do you report what you did?
  4. Can I get the cleaned scene back if I want to reuse it?

Common OBJ and FBX problems, what they look like and how they are fixed

  • Everything is one color. Materials did not travel, or the whole model is one object. We separate by name or region and assign surfaces again.
  • Textures stretched or scrambled. Texture coordinates were lost or overwritten in the export. We regenerate them where it is worth doing.
  • Black patches. Flipped faces. A single tool corrects them across the model.
  • The model appears sideways or upside down. Up-axis mismatch between programs. It is quick to fix once known.
  • Jagged curves. Coarse tessellation at export. A finer export is the honest fix; smoothing helps in distant views.
  • Gaps and slivers between pieces. The exporter did not weld surfaces. We check them in close shots and report anything visible.

None of these is unusual. They are the normal price of moving a model between programs, and a file review finds them before the render starts.

Why neutral formats deserve a proper review, not a quick look

A mesh that looks perfect in a viewer can behave badly in a renderer. Viewers are forgiving. They show back faces, ignore duplicate surfaces and never compute light. A path tracer is unforgiving in the opposite way: it reveals every overlapping face as flicker, every open edge as a light leak and every wrong normal as a black shape. That is why we open every neutral file and inspect it properly before any material is assigned. It is also why you should not read a clean preview in your own viewer as proof that the file is ready. It usually is close, and the review is the step that confirms it.

Frequently asked questions

Should I send OBJ or FBX?

FBX with embedded media is usually more complete. OBJ works well if you also send the .mtl and all textures. Tell us which program produced it.

My file has no textures. Is that a problem?

No. Textures are added during rendering. Send finish intentions or reference photos and we assign real materials.

How do you handle scale?

We check it against a dimension you provide, such as a door height or the overall length, because OBJ files carry no unit.

Can you fix broken geometry?

Minor problems such as flipped normals and duplicate faces yes. Larger repairs we report first, and you approve them.

What if my model is very heavy?

Tell us the file size. Heavy meshes are workable, and we can often reduce them without changing the visible result.

Can you render a scan?

Only after it has been turned into a clean model. A raw scan or point cloud is a separate task.

Can you use the cameras in my FBX?

Yes when they are meaningful. Tell us which ones are the final views.

Will I get the cleaned scene back?

Yes on request. Ask early so we keep the scene organized for reuse.

Related guides

This guide is part of our series on rendering when the 3D model already exists. Start with the overview, rendering only when you already have the model. Related: upgrading a Lumion or Enscape scene, SketchUp model rendering, Revit model rendering. When you are ready, send the file and the deadline through our quote request.

Planning a project?

Renderings, walkthroughs, animation and VR since 2004. Tell us what you are building and we reply within one business day with scope, timeline and price.

Get a quote See all our visualization services