skip to Main Content

I worked with a freelancer to create a few 3D models and I’m now trying to apply materials to them in Xcode, but some of the models are behaving weirdly. When I import the .dae file, instead of the default gray color models usually have, they are part green, part black, and part transparent. When I try to apply a material, the material only applies to the green parts, and any color seems to blend with the green.

The freelancer is at a loss because he says there shouldn’t be anything different about the models that are working and the ones that aren’t.

I’ve attached a screenshot of one of the broken models and one of the working ones, both with the same material applied.

Any help would be much appreciated!

Broken Model
Working Model

I tried playing around with different material settings and searching for materials that were secretly applied to broken model, but to no avail.

2

Answers


  1. Chosen as BEST ANSWER

    I fixed this issue by removing a Colors item that was in Geometry Sources. I'm still not sure exactly what it is (I'm a SceneKit noob), but removing it did the trick.

    Screenshot of Xcode showing Geometry Sources (before removing Colors item)


  2. This answer is just to illustrate the issue you might have with the texture coordinates. If you use one single color and not textures, you’ll be good. But if you plan to add some texturing, you might want to unwrap your model in a different way. the following images should illustrate that.

    This model shows texture coordinates that looks like a perspective projection and you loose a lot of space. It cannot be textured in a good manner. it should be unwrapped differently (illustration from Blender).
    illustration from Blender

    This model here is perfectly unwrapped with non overlapping textures and alomst every free space on the image texture is used for anything (illustration from Blender).
    illustration from Blender

    hope I could help in some manner.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search