Jump to content

Electrocutor

Members
  • Posts

    699
  • Joined

  • Last visited

Everything posted by Electrocutor

  1. Does KSP_TEXTURE_SET also support the model= config nodes to restrict which model names the TextureSet will apply to, or is that only for KSP_MODEL_SHADER? Basically I want to use TextureSwitcher and the Recolor GUI, which require TextureSets, but these are defined by part, not model; so if another mod has replaced the model for a given part, then the TextureSet properties would no longer be valid unless you could also restrict the properties by model.
  2. @Shadowmage Do you have any inclination to expand on the TextureSwitcher to allow model switching as well? For example, simply have an arrow to switch between the T400 fuel tank that is stock, Ven, and Porkjet while just having a single part? I think just having a model location and scale would be sufficient as far as options go and it'd be up to the modder to make sure the models used had their hard points line up properly. I'm not sure if Unity or KSP would get angry at doing that though.
  3. I'm currently redoing it to make better use of more available features. I'm using Porkjet's part overhauls as a grinding stone. You can still pull the file with the same link from a few pages back. I just uploaded a new Porket's Part Overhauls cfg...
  4. It could still be accomplished with RGB values. The idea is that you have 3 color selections, and you want to assign them to something that is already colored. So for example: change everything that is gray to metal, everything that is orange to blue, and everything that is white to gold. The question is how to equate primary, secondary, and tertiary colors into RGB ranges, as it is mostly about ratios between the R, G, and B value to know the difference. If you can come up with a really intelligent way of accomplishing it, I suspect that many others that use Unity would be interested in such a shader for modding because it would create an ability to customize without any texture work on the modder's time. That said, the current implementation works fine, it's just a bit clunky and requires some thought about Main replacing Red, Secondary replacing Green, and Detail replacing Blue.
  5. Okay... As you know, I am making these quick patches by just using cfgs and not creating any textures for them. Using the diffuse as input for the mask works in mediocrity, but it will at least give people the ability to adjust most colors around a bit even if they will not equate to the actual color they are selecting (it will instead be hue shifting). The most obvious parts will be those originally painted near-white, which coincides with how most people have created their textures for mods.
  6. For tinting, what should be the default color to maintain the original texture colors? It seems that 127,127,127 makes everything darker and 255,255,255 causes everything to become washed out.
  7. Seems to work as intended. I am using it by setting _MaskTex to the diffuse texture. Doing so allows me to change any redness, greenness, or blueness to different colors while maintaining the original as default. It occurs to me that it'd be nice to be able to assign Main, Secondary, and Detail to one or more white, gray, black, primary, secondary, or tertiary colors so as to replace the colors specified in the original diffuse to whatever is set in the GUI. A shader like that would need some thinking though as you would want to maintain the color intensity even while shifting hues. Being able to do this would likely also get more people to adopt this mod as it would then require no extra changing or adding of textures to accomplish the desired result while still being extremely accurate. ---- Unrelated: I updated the stock cfg to _Metal for v1.0.0.5 I added a cfg for @Porkjet's part overhaul (https://drive.google.com/open?id=1Soer13EMGcRYZbq9Rty4A1LTCN1IMXHG) It utilizes some different different features than the stock one on a trial basis to see if people like the options or would rather just have a fixed 'make it metal' without having right-click spam in the editor. ----
  8. I'll think about it. I made it because it was easy, took little time, and seemed useful to make stock parts shiny. I never really intended to support it or anything since it's just a cfg. It will probably be a very long time before my mod is released. I've been working on parts of it for a few years now; am hoping to make it usable and polished enough to release sometime after 1.4. The vast majority is non-graphical so I will probably just make/keep a couple cfgs for making shiny parts for the time being. Also, the patches weren't hard at all, just takes some preview time to check that there aren't any strange-looking parts (like the super-shiny parachutes that were caught earlier). You mean your plugin? No, I just wrote my own code, and the Texture2Ds are just created in RAM and not written out.
  9. I believe that _Metallic is what Unity actually uses in the editor (not as a multiplier), so if I had to guess, your default value was probably working, but all the materials already have it set to 0 from the Unity editor from Squad, and since you pull existing values it uses those instead of the default. I'll make the change when I have time. Honestly, I had originally thought you'd want to include a generic cfg for use with stock parts and made it with that in mind, but you've made it very clear you do not wish for this mod to be used except in a mod-component scope, so I have instead begun working on my own mod. As far as tinting via GUI goes, the ideal would be to have a red, green, and blue channel config such that you could assign different meshes into each channel. I've done this on my own by traversing the mesh uv and just procedurally created a texture to dump into the _MaskTex.
  10. For quick reference: The word 'force' seems like something bad, but in fact this is the officially supported way that Unity uses to select between different rendering APIs. MacOS or Linux -force-glcore Windows Nvidia 600, 700, 900, 1000 series: -force-d3d11 Nvidia older than 600 series: *Need more data; likely is a combination of -force-glcore and -force-d3d11 with -force-feature-level or -force-driver-type-warp. All of my testing so far has shown that vanilla KSP does not have any graphical errors regardless of which mode you use as long as it's supported by your hardware. As mentioned earlier, you cannot trust the manufacturer's website for what your card supports. That said, there are several mods that seem to have incompatibilities with d3d11 and d3d12 resulting in failure to render, shading errors, freezing, shadow banding, etc. *As far as I can tell, -force-vulkan is the only mode not supported by KSP. -force-d3d12 works, but is flaky (don't use it until v1.4).
  11. Unfortunately, graphics card manufacturers horribly misrepresent their products which causes confusion. For example, a GTX 780 is listed as being DirectX12, but the reality is that it only supports 11.0; and does not support 11.1, 11.2, 11.3, 11.4, 12.0, or 12.1. They can get away with this because the software driver supports the DirectX12 API, even if the card itself does not support any of the Direct3D 12 (or even the majority of Direct3D 11) features. This all devolves into the mess that is DirectX vs Direct3D API vs Direct3D Feature Level vs Unified Shader Model, and is further complicated by some cards having partial support. It gets even more complicated when a previous model is revisioned to a different architecture, which leads to the same model of GPU from different times having different sets of features.
  12. Unity itself supports d3d 9-12, opengl, and vulcan; but I do not know what Squad includes in their Graphics API list for compile.
  13. @JPLRepo Did you accomplish this via making a clone of the IVA in the normal layer, have the transparent mesh actually be a camera to the existing IVA layer, or something else? I am trying to get the IVAs on stock parts to show all the time and setting the windows to transparent (so you can see inside, and use an actual unity light in the IVA when you turn on lights), but if I move the existing IVA objects out of the IVA layer it gets angry. (also having issues that the stock IVAs have parts that are actually outside of the model in which they reside, but that is a different matter)
  14. From most feedback I've gotten, the only reason people like using the stock cfg is mostly because it does not use additional maps (which requires additional vram, more hdd access, etc). The reason why they like it is because it effectively loses no frame-rate, but still achieves improved visuals. The people who don't mind using additional vram usually use Vens or other stock part replacement models/textures. Currently, my solution is to just have a 1 pixel red, blue, and green texture that can be assigned as _MaskTex. Honestly, it'd be nice if you created a list of generator texture names, such "white", "black", "gray", "bump", "metal", "red", "green", and "blue" that would auto-generate a single pixel texture. shader = SSTU/PBR/Masked mesh = fueltank texture = _MaskTex,red The shader keyword support sounds fun; if you can access them within ShaderLab, that'd give you more freedom to do interesting things without having to create additional shaders with tiny differences between them: for example, a cfg option of whether or not a diffuse texture is desaturated before applying the _Color1 blend (a GUI option), the ability to make procedural textures, etc. I had once changed all the Standard shader ginc to be MULTI_COMPILE and then offloaded the result into an asset bundle. Unfortunately, I could not get them to load into KSP: not sure if it was an issue in code or if it just doesn't like have the Standard shader names being imported like that. ---- Some things I've found while tinkering: The PBR Masked shader has issues with overloading the metallic and smoothness numbers (perhaps others as well that I just didn't notice). I've not had time to narrow down the cause, but the result is that 100% metallic and smoothness is achieved by setting the GUI to 127 instead of 255. I imagine this is some combination of color and alpha values of the various maps. The reflection probe has the age-old same problem as the TRReflection probe: it blocks the GUI and physics thread too long, which causes a micro-stutter every time the reflection surface textures update. This is not an issue when using a Unity default reflection probe even when set to update in real-time with all 6 faces; so some efficiency work likely needs done on the spaghetti code that is needed to show everything in reflections. My guess is that simply employing coroutines would likely alleviate the problem for the time being until a more efficient method can be devised.
  15. Do the mask textures need to be the same dimensions as the diffuse, or can we make a smaller mask (to save vram and decrease load) and your shader will stretch it to match the diffuse dimensions?
  16. Thanks for the input. I'll see what I can do; given that some bits have the bed included in the same mesh along with other bits, I am somewhat limited until I go the route of making mask textures (which I am trying to avoid). If you'd like to take a look what I have so far, you can install TexturesUnlimited, then drop these .cfgs in: https://drive.google.com/open?id=1IgTVpC299MD3cRgzdt4uRK5y2IrMr4l3 If you like what you see and want to make it look even better; for textures/models that you still have the source files for: it makes a dramatic difference for normals to be present when using specular and reflections. Things like rivets, vents, and panel edges especially; but even just how course, smooth, or scratched a surface is makes a big difference. I'll have a better example of this once I get to the Karbonite stuff, as they have quite a few normals. Have you ever seen: An Akita loaded on a PackRat which is loaded along with an Otter on a Mulemate which is loaded on a Karibou which loaded on a HoneyBadger?
  17. Are the bed of the Karibou Cargo Bay and Flatbed supposed to be bronze-plated or what was their intended material? I'm working on a PBR cfg for USI parts.
  18. Kerbals are not treated as parts, so the mod does not currently support them. He has that on the someday to-do list though.
  19. What are the requirements for the Recolor GUI to affect things? It seems there are 3 colors available per part that can be set, but how do you define the mesh names for each of these colors?
  20. Okay... so before I get too carried away. What kinds of options do you all want to see (none of this affects fps or requires any textures to be loaded)?
  21. The IVA is actually much easier because IVA uses a fake sun (Unity light source) so you don't have to worry about pulling in the fake lights from PQS.
  22. The new transparency PBR shader works well. I've set it up on @RoverDude's Life Support pods that have transparent domes. The Viewing Cupola actually has an armchair inside.
×
×
  • Create New...