Jump to content

Need some updated info on texture map with Ksp 1.1.3


Recommended Posts

I need to know wich map exactly Ksp support for his shader for better visual result with Substance Painter 2 and Designer 5.

Base Color/Albedoe,Height,Roughness,Metallic,Normal,Ambient Occlusion,Emissive,Diffuse,Opacity,Specular,Glossiness,Reflection,Displacement,Etc

Unity 5 use PBR, how we can use PBR in Ksp if we can.

How many polygons for each models and collision mesh. My collision mesh can be multiple collision box ?

How i can use Rescale Factor on X/y/z only ?

How i can use dynamic material in Ksp ?

I searched on forums but they look outdated for Unity 5.3

Link to comment
Share on other sites

58 minutes ago, Warsoul said:

How many polygons for each models and collision mesh. My collision mesh can be multiple collision box ?

You'll find varying answers on this, I've been advised that even around 10k shouldn't affect performance much, but I've rarely pushed anywhere close to that. The real performance hit is the physics, so you should keep your colliders as low poly as absolutely possible or even use Unity's primitive colliders if you can. Yes, you can have multiple collider meshes.

 

58 minutes ago, Warsoul said:

How i can use Rescale Factor on X/y/z only

Instead of:

mesh = model.mu
rescaleFactor = x

Use:

MODEL
    {
        model = yourmoddirectory/model
        scale = x,y,z
    }

Unlike using rescaleFactor, you will need to manually adjust the attachment node locations in the config when scaling in this manner.

Dunno about the rest, hopefully someone can answer them for you.

Edited by Randazzo
Link to comment
Share on other sites

Model polycount is apparently not an issue at all, although that's no reason to be excessive :P if you can use multiple primitive colliders instead of a mesh collider do that - also remember mesh colliders can't be higher than 255 tris ( or polys? I forget ) and have to be convex.

Shaders are usually still diffuse+specular/opacity with a seperate normal map - PBR isn't officially supported yet, there is a mod around to config & load a PBR shader. Writing your own is fairly trivial. AO would be a layer in your diffuse map, the rest aren't supported as maps unless you write your own shader.

KSP is unity 5.2.

Link to comment
Share on other sites

What's in the alpha channel depends on the shader - usually Specular, each shader will tell you what's where in the Unity inspector. For KSP/Specular it's RGB diffuse, A specular. KSP/Bumped Specular is the same, with a seperate bumpmap ( not a displacement/height map ).

To integrate AO map into that, load your RGB diffuse into a paint package & put the AO map in as a layer on top of it, blendmode Multiply ( or Overlay, whatever looks better when you've finished tweaking ) and use the combined result. Well, that's the traditional way using baked AO maps from say, Max, I don't know anything about Sketchfab or the minutae of it's terminology.

Normal maps I'm not sure about now - I try not to use them, the one time I did I exported one of the blue ones directly from PS as I'm used to for other things, but apparently Unity does something itself. I'd rather spend polys on detail & not have the drawcall for the extra map, but that is a bit mad for rough surfaces.

Edited by Van Disaster
Link to comment
Share on other sites

Quote

Instead of:


mesh = model.mu
rescaleFactor = x

Use:


MODEL
    {
        model = yourmoddirectory/model
        scale = x,y,z
    }

I tried but my part wnt show if i do this.

Spoiler

PART
{
    //-------------------------------------------------------  Info -------------------------------------------------------
    name = Atlander Supersize
    module = Part
    author = MaErDa Corp
//    mesh = model.mu
//    scale = 1,1,2
MODEL
    {
        model = MaErDa/Atlander Supersize/model.mu
        scale = 1,1,2
    }    
//    rescaleFactor = 1.35
    TechRequired = MaErDaT2
    entryCost = 13000
    cost = 4750
    category = FuelTank
    subcategory = 0
    title = Atlander Supersize
    manufacturer = MaErDa Corp
    description = Recycled Atlander crashed on moon. The pod, monopropellant was striped off in exchange off better SAS and Fuel capacity.
    attachRules = 1,0,1,1,0
    mass = 3.5
    dragModelType = default
    maximum_drag = 0.20
    minimum_drag = 0.15
    angularDrag = 2
    crashTolerance = 30
    maxTemp = 1200
    skinMaxTemp = 2000

    //----------------------------------------------------  Node  ----------------------------------------------
    NODE
    {
    name = node_Top
    transform = node_Top
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Bottom
    transform = node_Bottom
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Up_Center
    transform = node_Up_Center
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Up_Right
    transform = node_Up_Right
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Up_Left
    transform = node_Up_Left
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Down
    transform = node_Down
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Down_Right
    transform = node_Down_Right
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Down_Left
    transform = node_Down_Left
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Side_Center_1
    transform = node_Side_Center_1
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Side_Center_2
    transform = node_Side_Center_2
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Side_Center_3
    transform = node_Side_Center_3
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Side_Center_4
    transform = node_Side_Center_4
    size = 2
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Engine_1
    transform = node_Engine_1
    size = 1
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Engine_2
    transform = node_Engine_2
    size = 1
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Engine_3
    transform = node_Engine_3
    size = 1
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
    NODE
    {
    name = node_Engine_4
    transform = node_Engine_4
    size = 1
    method = FIXED_JOINT //FIXED_JOINT, HINGE_JOINT, LOCKED_JOINT, MERGED_PHYSICS or NO_PHYSICS
    }
        
    //node_stack_bottom = 0.0, -0.4035744, 0.0, 0.0, -1.0, 0.0, 2
    //node_stack_top = 0.0, 0.7519293, 0.0, 0.0, 1.0, 0.0, 2


    
//--------------------------------------------------------  Tank  -----------------------------------------------
    
    
    RESOURCE
    {
        name = LiquidFuel
        amount = 1750
        maxAmount = 1750
    }
    RESOURCE
    {
        name = Oxidizer
        amount = 2140
        maxAmount = 2140
    }
    MODULE
    {
        name = ModuleReactionWheel
        PitchTorque = 15
        YawTorque = 15
        RollTorque = 15
        RESOURCE
        {
            name = ElectricCharge
            rate = 0.85
        }
    }
    
}
 

 

Link to comment
Share on other sites

19 hours ago, Van Disaster said:

What's in the alpha channel depends on the shader - usually Specular, each shader will tell you what's where in the Unity inspector. For KSP/Specular it's RGB diffuse, A specular. KSP/Bumped Specular is the same, with a seperate bumpmap ( not a displacement/height map ).

To integrate AO map into that, load your RGB diffuse into a paint package & put the AO map in as a layer on top of it, blendmode Multiply ( or Overlay, whatever looks better when you've finished tweaking ) and use the combined result. Well, that's the traditional way using baked AO maps from say, Max, I don't know anything about Sketchfab or the minutae of it's terminology.

Normal maps I'm not sure about now - I try not to use them, the one time I did I exported one of the blue ones directly from PS as I'm used to for other things, but apparently Unity does something itself. I'd rather spend polys on detail & not have the drawcall for the extra map, but that is a bit mad for rough surfaces.

Thank you; thats an clear answer. Too bad Ksp don't use height map and PBR.

RGB = Diffuse+AO(Blended) A=Specular

Bump Map instead of Normal Map

Bump Map 8bit grayscale ?

Can't find any tuto for addind fairing to my engines.

Edited by Warsoul
Link to comment
Share on other sites

5 hours ago, Warsoul said:

I tried but my part wnt show if i do this.

  Hide contents

MODEL
    {
        model = MaErDa/Atlander Supersize/model.mu
        scale = 1,1,2
    }    

 

Don't use spaces, and don't use .mu

model = MaErDa/AtlanderSupersize/model

Link to comment
Share on other sites

8 hours ago, Warsoul said:

Thank you; thats an clear answer. Too bad Ksp don't use height map and PBR.

RGB = Diffuse+AO(Blended) A=Specular

Bump Map instead of Normal Map

Bump Map 8bit grayscale ?

Can't find any tuto for addind fairing to my engines.

No idea about fairings, I suspect it's a named gameobject with a specific layer. You could try using the KSP PBR shader, I don't think it's officially supported but it's in the Parttools distribution already. I haven't tried it myself.

Link to comment
Share on other sites

2 hours ago, Van Disaster said:

No idea about fairings, I suspect it's a named gameobject with a specific layer. You could try using the KSP PBR shader, I don't think it's officially supported but it's in the Parttools distribution already. I haven't tried it myself.

Can't find your Ksp PBR in my Parttools. I think i have the last Parttools version.

 

Edited by Warsoul
Link to comment
Share on other sites

Hi sounds to me like you'd be better off taking a look at a couple of part modelling for ksp tutorials, than just picking random advice.  Although the the game itself has moved on to a new version of unity most of the old part modelling tutorials with the exception of wheels and landing legs, are still current and still valid.

There is no need to use a matching version of unity to process your parts, unless for some reason you want to use the new asset bundle format ( which converts the parts and scripts into a machine readable package instead of the normal .mu and associated textures)

I'm sure I'm not the only modder who converted projects to unity 5 and then wished they hadn't.  It's probably easier if you're just starting out as you wont know how easy animations and heat/emissive animations were to do in unity 4,2,2 compared with the convoluted U5 onward methods.

It's considered good practice to carry out all your scaling in unity than through the cfg and it's very rare to find anything scaled as you intend (there was for a long time a scaling bug with the model node)

I'm in no way inferring that you are new to modelling or texturing, but a couple of good tutorials are easily capable of saving hours of wasted time, and will give a good grounding in the basic procedure for unity etc. The tutorial below is generally considered  to be one of the best and many popular modders have used it as a first step.

 

Link to comment
Share on other sites

I do most of my texturing in Painter 2. I just use the Unity4 Diffuse option when exporting, which creates a spec map from the roughness/metallic values and puts it in the Alpha channel; then convert to DDS once texturing has been finalized. Other maps such as normal and emissive can be used without issues.

Link to comment
Share on other sites

  • 1 month later...
This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...