Next Q: Multiple materials per object?

Discussion in 'Content Creation' started by Goosah, Nov 28, 2014.

  1. Goosah

    Goosah
    Expand Collapse
    Global Moderator
    BeamNG Team

    Joined:
    Aug 30, 2013
    Messages:
    790
    In max I have the interior of the car with material ke17_interior, and exterior of the car with material ke17_body. I want to use ke17_interior_d.dds for the interior, and ke17_body_d.dds for the exterior, but both interior and exterior are a single object.

    Is this possible with Torque? I tried a test to map the textures to the two materials but it seems to have broken my UVs, now I have a normal map all willy nilly across both the interior and exterior.

    If this doesn't work I'm gonna be really bummed, I'll have to redo all my UV packing to get everything into one texture.
     
  2. Dummiesman

    Dummiesman
    Expand Collapse

    Joined:
    Sep 17, 2013
    Messages:
    4,700
    Yep :)
    Code:
    singleton Material(ke17_interior)
    {
       //Map to this material in the model
       mapTo = "ke17_interior";
       diffuseMap[0] = "ke17_interior_d.dds";
       specular[0] = "0.2 0.2 0.2 1";
       translucentBlendOp = "None";
    };
    
    singleton Material(ke17_body)
    {
       mapTo = "ke17_body";
       diffuseMap[0] = "ke17_body_d.dds";
       specular[0] = "0.2 0.2 0.2 1";
       translucentBlendOp = "None";
    };
    
     
  3. Goosah

    Goosah
    Expand Collapse
    Global Moderator
    BeamNG Team

    Joined:
    Aug 30, 2013
    Messages:
    790
    Yes that's what I did. It works fine with seperate objects, but if both materials are on the same object my UVs break.

    singleton Material(ke17_body)
    {
    mapTo = "ke17_body";
    diffuseMap[0] = "vehicles/ke17/null.dds";
    diffuseMap[1] = "vehicles/ke17/null.dds";
    normalMap[0] = "vehicles/ke17/ke17_body_n.png";
    diffuseColor[0] = "1 1 1 1";
    diffuseColor[1] = "0.7 0.07 0.01 0.85";
    specularPower[0] = "16";
    specularPower[1] = "16";
    useAnisotropic[0] = "1";
    useAnisotropic[1] = "1";
    castShadows = "1";
    translucent = "1";
    translucentBlendOp = "None";
    alphaTest = "1";
    alphaRef = "0";
    cubemap = "BNG_Sky_02_cubemap";
    materialTag0 = "beamng"; materialTag1 = "vehicle";
    };

    singleton Material(ke17_interior)
    {
    mapTo = "ke17_interior";
    diffuseMap[0] = "vehicles/ke17/null.dds";;
    diffuseMap[1] = "vehicles/ke17/null.dds";;
    diffuseColor[0] = "1 1 1 1";
    diffuseColor[1] = "0.1 0.8 0.7 0.7";
    castShadows = "1";
    translucent = "1";
    translucentBlendOp = "None";
    alphaTest = "1";
    alphaRef = "0";
    cubemap = "BNG_Sky_02_cubemap";
    materialTag0 = "beamng"; materialTag1 = "vehicle";
    };
     
  4. Dummiesman

    Dummiesman
    Expand Collapse

    Joined:
    Sep 17, 2013
    Messages:
    4,700
    Your UVs shouldn't break. There sometimes is that rare case where 3DSmax will flip then and you will need to flip your texture ingame though.

    Also you are closing your lines twice in the second material (;;)
     
  5. Goosah

    Goosah
    Expand Collapse
    Global Moderator
    BeamNG Team

    Joined:
    Aug 30, 2013
    Messages:
    790
    Doh!

    Well, searching has come up with Mythbuster having the same problem back when he was building the Caddy in 2013, using Maya and OpenCollada.

    1949-Cadillac-Series-62-Convertible/page3


    Being that I'm using OpenCollada, I checked to see if the info was being lost on export, but re importing the .dae into 3dsmax shows the UVs are still correct. I wonder what Mythbuster did to fix it?

    - - - Updated - - -

    Once I added in another object with uvs and material ke17_interior, the uvs on the "multimaterial" object were fixed. Not entirely sure whether this is a t3d bug or if I just don't understand the workings well enough, but I've found a way to move forward!
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice