0
$\begingroup$

I have a obj model that I imported into blender. The model is a render of a city so its fairly large. As can be seen from the stats in screenshot below (this is after decimating with a ratio of 0.5) enter image description here

I also have the texture file for it in png format and I want to map this texture onto the model in blender.

Below is the image I want mapped on the model:

enter image description here

Ive watched a number of tutorials on how to do this and all direct towards changing the material from base color to texture image and then using UV editing to wrap or unwrap the texture onto the model, but the tutorials show cubes and simple objects and when a face of the model is clicked the region of texture is shown that its taken from. But thats not happening in my case, maybe due to the large number of vertices?

See below the screenshot, on the right the model is zoomed in to show what I mean and nothing is being mapped (other than a solid green color)

enter image description here

How do I get the texture mapped onto the model?

Thanks

Update:

Adding the attempts screenshot based on suggestions in answer:

UV Mapping

enter image description here

World Coordinates

enter image description here

edit

Updated model:

enter image description here

$\endgroup$

1 Answer 1

1
$\begingroup$

In order to solve this problem we have two ways. Which one to choose depends on the type of geometry we are working with, as well as the goals.

UV Mapping

Judging by the grid shown in the last screenshot you can just Unwrap the model:

  • Select all by pressing A in Edit Mode
  • U > Unwrap, (in case of complex geometry you can press 7, U > Project from View
  • Use simple texture mappig set in Shader Editor to make texture follow the UV. enter image description here

Use World Coordinates

If the mesh contains so many vertices that blender freezes when you try to unwrap the model - solve this with projecting the texture using Position from Geometry Node as Vector for Image Texture Node. Also you can use mapping node to edit the position of the texture relative to object.
For this solution, you don't need UV. enter image description here

$\endgroup$
9
  • $\begingroup$ Thanks for the answer Yuri and yes please I will appreciate he edit as Im very new to blender and dont know where to find the options you just mentioned. Thanks $\endgroup$ Jul 27, 2022 at 14:46
  • $\begingroup$ Many thanks for the detailed answer Yuri, but I tried your suggestions and my model and image is not behaving the same way as you have shown in your screenshots. What may the reason be? Ive uploaded the new screenshots to my original question $\endgroup$ Jul 27, 2022 at 16:11
  • $\begingroup$ Can you attach the file, or if it's too big - append the link to some cloud service, please. Don't forget to include textures, you can do it by File > External Data > Automatically Pack into .blend $\endgroup$
    – Yuri Titko
    Jul 27, 2022 at 16:17
  • 1
    $\begingroup$ @StuckInPhDNoMore Not a problem =). You've got that blinking atrifacts because of small camera cliping for such an huge object. To fix that you can increase cliping amount or just scale down your object to fit in camera clipping. What about scale factor, I just applied it after changing by pressing Ctrl+A > Scale, so it changed back to regular 1. For nicer look you need to go a bit deeper in Shader Editor and how Roughness, Specular and Basic Color works together in Principled BSDF node. To get the same result you can just set Roughness to 1 and Specular to 0. $\endgroup$
    – Yuri Titko
    Jul 28, 2022 at 14:42
  • 1
    $\begingroup$ Thank you <3 :) $\endgroup$ Jul 29, 2022 at 15:30

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .