Jump to content

[1.9.x] Textures Unlimited - PBR-Shader, Texture Set, and Model Loading API


Shadowmage

Recommended Posts

Is it compatible with all parts from any mods or i have to manually write configs for each part?

Compatible with IFS/FSTextureSwitch/B9PartSwitch/stock part variants?

Edited by Gapone
Link to comment
Share on other sites

8 hours ago, Gapone said:

Is it compatible with all parts from any mods or i have to manually write configs for each part?

This mod is only an API -- it provides a framework that others can make use of.  Basically the mod does nothing on its own.  I do not provide configs for -anything-, as nobody else seems to like the same aesthetics as I do (I strongly dislike 'stock-alike' texturing), so I've not bothered to spend my time on a publishing a bunch of configs that would only increase my support burden.

So yes, you can write your own, or find one of the other config packs that are floating around.  I think that both @Manwith Noname and @Electrocutor have config sets, both with their own thread (I'll try to dig up links...).

 

8 hours ago, Gapone said:

Compatible with IFS/FSTextureSwitch/B9PartSwitch/stock part variants?

In order, No, No, No, Yes (with caveats, see below).

As this mod facilitates its own texture switching... using other texture-switch mods will generally result in conflicts.  TU can be setup to handle most/any of the other texture-switching mods' functions, at least as far as actual texture switching is concerned (TU does not touch part resources or anything beyond visual textures).  TU can play alongside those other mods as long as they don't target the same parts/textures/materials (or should be able to, in theory, not sure anyone has tested it much).  Those other texture switch mods' are more than welcome to integrate with the code-side of TU to allow use of the PBR shaders, but I cannot force such compatibility upon them; I have offered and made available the functionality, which is all that I can do.

TU does have some WIP integration with the stock part-variant module (again, by writing configs).  But due to bugs in stock code there are some minor edge cases that are not accounted for in regards to part-icons.  Aside from that, it is possible to use the stock part-variant setup for UI control only, and relegate all actual texture switching to TU code, or nearly any other combination (e.g. set only some textures/properties from TU, and the rest the default stock handling).

Link to comment
Share on other sites

58 minutes ago, darkerdadorito said:

How does one write their own configs?

With a text editor :)   (just had to...)

Documentation is available on the TU wiki --  https://github.com/shadowmage45/TexturesUnlimited/wiki/Config-Documentation

You can also see some examples of the system in active use in SSTU's configs (though this is also including several other layers of SSTU setup) --  https://github.com/shadowmage45/SSTULabs/tree/master/GameData/SSTU/Data/TextureSets/updated

Good examples can also be found at both of the previously linked threads...

Link to comment
Share on other sites

@Shadowmage

Hi

I installed tu on new instance of 1.6.1 and no matter what type of forcing i tried (d3d9, d3d11 or opengl) the game crashes, the vga is nvidia 1080 ti, is there any sort of log file i can send you to see what is the problem?

 

the crash happens after the ksp is loaded inside the station buildings or at the launch of a flight, the screen goes black and the vga fan goes crazy have to restart the pc to solve it

Edited by Jiraiyah
Link to comment
Share on other sites

22 minutes ago, Jiraiyah said:

I installed tu on new instance of 1.6.1 and no matter what type of forcing i tried (d3d9, d3d11 or opengl) the game crashes, the vga is nvidia 1080 ti, is there any sort of log file i can send you to see what is the problem?

Hi;  the issue you are describing sounds like a hardware or driver issue to me.  If the game is actually loading properly into the main screen, then TU is more than likely functioning as it should.  But, it will also utilize far more of the GFX resources than stock KSP, so may well be triggering an existing hardware/driver issue that stock KSP doesn't.

You an try uploading/linking a copy of your KSP.log file (found in the main KSP directory with the executables), but if it is actually crashing your computer, that log file does not likely contain much.  Probably a good place to start though, so as to verify that there are no errors with your mods/setup.

Past that, I would start by updating graphics drivers, and checking on hardware temps during runtime (CPU, GPU, Main RAM, GPU-RAM, chipsets, voltage converters, even hard-drives).  What you describe sounds very much like a temperature/overheating related failure; things get too hot, and the OS/hardware shuts down as a failsafe.

Link to comment
Share on other sites

ok, here a little update : i'm sure it's not tu, but maybe another graphics enhancing mod, at the same time it's not gpu temp. because it's around 53, used after burner to declock gpu by -25 and even the entering power by -15% so it's not hardware itself, but i read in different forums that ti series have some issues with overlaying stuff like nvidia experience, will update the vga once more ( a new version came after 6 days ! ) and if it didn't solve uninstall the esperience and will inform everyone the result

Link to comment
Share on other sites

3 minutes ago, Jiraiyah said:

ok, here a little update : i'm sure it's not tu, but maybe another graphics enhancing mod, at the same time it's not gpu temp. because it's around 53, used after burner to declock gpu by -25 and even the entering power by -15% so it's not hardware itself, but i read in different forums that ti series have some issues with overlaying stuff like nvidia experience, will update the vga once more ( a new version came after 6 days ! ) and if it didn't solve uninstall the esperience and will inform everyone the result

Thanks for doing the investigation, and please let me know what you find out either way :)   (having debugged my share of these types of problems, I'm always curious what they end up being caused by)

Link to comment
Share on other sites

first culprit : ks3p, definitely has issues with 1.6.1, part of the terrain missing around, this can be the real cause of everything, after all, when reflections are looking for terrain around and it's missing...... but after updating the driver and removing the experience, at least the game didn't crash to black screen immediately.

Link to comment
Share on other sites

first culprit : ks3p, definitely has issues with 1.6.1, part of the terrain missing around, this can be the real cause of everything, after all, when reflections are looking for terrain around and it's missing...... but after updating the driver and removing the experience, at least the game didn't crash to black screen immediately.

 

EDIT : That was it ! KS3P causes the crash, updating the driver, uninstalling nvidia experience, had no help even in stabilizing the game a little

Link to comment
Share on other sites

15 minutes ago, Jiraiyah said:

EDIT : That was it ! KS3P causes the crash, updating the driver, uninstalling nvidia experience, had no help even in stabilizing the game a little

Glad you got it figured out.  Always fun trying to diagnose issues like that.  Good work :)

Link to comment
Share on other sites

1 hour ago, Electrocutor said:

Have you had any luck in creating preset color groups/collections or not messed with that?

Not yet; still working on cleaning up backlogged WIP projects.  Currently nearing completion of the KerbalFoundries PBR texture reworking (1-2 weeks left maybe?), and then on to the next project.  Likely next up will be another set of bugfixes for all of my published mods that need it (another week perhaps).  Beyond that?  Nothing planned currently, so might be a good time to start onto something new.

The main issue standing in the way of creating any new UI related functionality for TU is actually the UI portion of it.  My last series of investigations was into how to use the 'standard' Unity UI system from within KSP, which concluded with 'best case scenario is its going to be a massive PITA'.  Can't compile the UIs with the application as is the intended method, because its not my application.  Can't export the UI's through asset-bundles, as there is going to be a ton of plugin code that would need to be used by and linked with the UI, and you can't export plugin code with asset-bundles.  Which is about where my investigations stopped;  the last option to look at is creating the UIs entirely from plugin code and compile that code into the TU plugin, but I'm very hesitant to go down that route as I know how painful it is to try and create UIs from code that were meant to be setup with an interactive designer (extremely inefficient, at best).

On that note -- if you have any idea of what a functional UI layout might look like for the feature, I'm open to suggestions/ideas.  I didn't get around to any design prototypes or any layout work previously, but that is something that will need to be worked out before any real work can be done towards implementing it.

Link to comment
Share on other sites

27 minutes ago, Shadowmage said:

On that note -- if you have any idea of what a functional UI layout might look like for the feature, I'm open to suggestions/ideas.  I didn't get around to any design prototypes or any layout work previously, but that is something that will need to be worked out before any real work can be done towards implementing it.

My first thought would be to borrow the idea of how XAML works. Build a singular generic plugin that reads .cfg data to build UI elements. You would also need a predefined list of basic UI functionality, such as hiding/showing things or executing scripts on-click and what not. I've not thought it through much yet.

Link to comment
Share on other sites

4 minutes ago, Electrocutor said:

My first thought would be to borrow the idea of how XAML works.

Having been doing a lot of WPF/XAML based development at work lately, and that is pretty much exactly what I'm looking for from an in-game UI system -- config file based UI layout with dynamic runtime databinding.  Unfortunately it doesn't actually exist for Unity (WPF being a Windows only framework, AFAIK), and I'm not sure I feel up for creating an entire UI framework just to use for KSP.  Would be weeks or months just to get the UI framework implemented to a point where it would be usable.  Hmm.. seems like a reasonable thing though... so perhaps someone else has done something similar?  I'd even be willing to pay for an asset/plugin for such a feature if it existed (and the cost was reasonable).

Re-reading your post though, it seems that I responded with the wrong information/to an un-asked question;  you were inquiring about the 'Preset Color Grouping', for instance, specifying in the texture-set config that the available preset colors should be taken from this list or from that list; correct?  (e.g. PresetColorGroup = SSTU-PBR; or PresetColorGroup = LegacySpecular; or PresetColorGroup = SomeOtherCustomGroupOfColors;  where the group-name then references list of colors built in other config files)

^^ That might be doable with the current UI.  Mostly would need to find how to tell the UI which color list to pull in, and switch between these lists when different 'sections' in the UI were selected.  Seem to remember that, when last I looked, there were some additional complexities with this due to how it was original coded, so it might not be a 'simple' change to make and may require a bit more effort to implement (but still far easier/faster than any new UI system).

Link to comment
Share on other sites

Hmm... some investigation reveals that I might be on a usable track -- https://www.noesisengine.com/forums/

XAML based UI design with data-binding, in Unity.  Unfortunately I'm not sure how compatible it will be with the 'KSP Mod' setup -- e.g. I'm not sure if its yet-another-UI that needs to be compiled with the application to be usable.

1 hour ago, DStaal said:

I believe RealGecko had a UI framework (as well as a reskin) that LinuxGuruGamer has taken over maint of.  Here's the original thread (focused on the reskin...)

Thanks for the info -- if my other endeavors don't pan out I'll definitely take a look at that.  From a brief look it appears to be more of a reskin of the existing KSP/Unity UI stuff rather than its own UI framework, but I may well have glossed over something.

Link to comment
Share on other sites

8 minutes ago, Shadowmage said:

Thanks for the info -- if my other endeavors don't pan out I'll definitely take a look at that.  From a brief look it appears to be more of a reskin of the existing KSP/Unity UI stuff rather than its own UI framework, but I may well have glossed over something.

That was the main thrust - but I think UICore (which is mentioned, but doesn't appear to have a separate thread) was more of a UI framework.

Link to comment
Share on other sites

Good news is that the folks from NoesisUI got back to me, stating that it should be perfectly usable from within KSP.  So now I have exactly one potentially usable UI framework to investigate (I don't consider the built in Unity UI system to be usable for KSP mods due to its necessity to compile the UIs into the application).  Not sure at this point if I'll have to purchase a license for it... but I'm willing to if I must -- whatever it takes to get a functional and usable UI framework.  Hard to believe that Unity has come this far and not addressed their terrible UIs...

Link to comment
Share on other sites

1 hour ago, sslaptnhablhat said:

I have absolutely no clue how to start KSP with Dx11 and there isn't a very detailed explanation in the OP, could someone please enlighten me?

  1. Create shortcut for KSP
  2. Open its properties
  3. In the target line, add " -force-d3d11" without the quotes (the intial space does matter) ( If there are quotes in the target, then put it outside of it.)
Edited by Agustin
Link to comment
Share on other sites

18 minutes ago, Agustin said:
  1. Create shortcut for KSP
  2. Open its properties
  3. In the target line, add " -force-d3d11" without the quotes (the intial space does matter) ( If there are quotes in the target, then put it outside of it.)

Thanks, but it only works with OpenGL for some reason.

Link to comment
Share on other sites

19 minutes ago, Shadowmage said:

Updated release is available:

https://github.com/shadowmage45/TexturesUnlimited/releases/tag/1.3.6.20

Adds support for some texture-reloading functions for external mod integration.  Will be used by the upcoming KerbalFoundries releases.

hi, so is this mod pack the one that has all the shiny textures or is it just meant to act as a foundation for texture makers and other mod makers?

Link to comment
Share on other sites

9 minutes ago, The-Doctor said:

hi, so is this mod pack the one that has all the shiny textures or is it just meant to act as a foundation for texture makers and other mod makers?

It does nothing by itself -- it is purely for use of mod authors, and should be bundled with the mods that intend to use it.

Edit:  But when used it does make things shiny :)

Edited by Shadowmage
Link to comment
Share on other sites

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...