Jump to content

[1.12.x] Waterfall - a framework for continuous, mesh-driven engine effects (October 9)


Nertea

Recommended Posts

Also a few bug reports:

As soon as any scale/rotation/position modifier is used the offsets get locked out. So long as a modifier exists the associated offset gets locked out.

using multiple modifiers set to multiply (or anything else) doesn't work properly, tested with scale on the instance, not the mesh: When using a scale modifier to modify the Z axis based on throttle it works, when adding another, seperate modifier that changes x and y axis with both set to multiply both modifiers show no effects when throttle is changed.

the random controller doesn't appear to work properly: using a position modifier with a curve on a single axis and the controller set to random as a controller nothing happened, when then checking the "use randomness" button the effect started moving on all axis, ignoring the set-up axis.

a minor one, when adding a new materialFloat modifier then this one only works on the mesh itself. the instance button gets hidden when selecting material float. However the button does not get hidden when the previous added modifier also was a materialFloat and so materialFloat is already pre-selected as the modifier type.

And a few last words, I truly think this mod is amazing, keep the awesome work up! The more I learn how to use this mod the better my FX get, also thanks to the help I  got here. My plan is to release a patch pack for all airbreathing engines soon.

Edited by HB Stratos
Link to comment
Share on other sites

  On 8/17/2020 at 1:11 AM, HB Stratos said:

As soon as any scale/rotation/position modifier is used the offsets get locked out. So long as a modifier exists the associated offset gets locked out.

Expand  

This is intended behaviour. The offsets are shortcuts for the root object  only - if you modify it with a modifier, the modifier becomes the primary controller. If you want to use offsets AND modifiers, target the lower objects in the hierarchy with the modifier. 

  On 8/17/2020 at 1:11 AM, HB Stratos said:

using multiple modifiers set to multiply (or anything else) doesn't work properly, tested with scale on the instance, not the mesh: When using a scale modifier to modify the Z axis based on throttle it works, when adding another, seperate modifier that changes x and y axis with both set to multiply both modifiers show no effects when throttle is changed.

Expand  

This seems to work fine for me (tested this morning).

  • I placed a Scale modifier set to Replace, with values of 1, 1, 1 tied to throttle
  • I placed a Scale modifier set to Multiply, with values of 1, 1, 1 tied to throttle

As expected, this set the plume scale to 1,1,1 and multiplied it by 1,1,1, so no change. Changing the second effect multiplied the values of the first correctly (halved at 0.5, doubled at 2.0).

  On 8/17/2020 at 1:11 AM, HB Stratos said:

the random controller doesn't appear to work properly: using a position modifier with a curve on a single axis and the controller set to random as a controller nothing happened, when then checking the "use randomness" button the effect started moving on all axis, ignoring the set-up axis.

Expand  

Modifiers don't have a concept of single, double, etc axis at all, so definitely when using the use randomness function - that's a shortcut to allow easy use of randomness. If you want to use specific, axial randomness, you will use a separate modifier set to multiply, using a curve set to 1 on the axes you don't want to multiply. 

When using randomness, ensure the editor has appropriate randomness sample boxes set. Default is 0,0 so you won't see any effect unless you change those. When verifying this I noticed a bug where you can't put negative values in there so I'll look at that.

  On 8/17/2020 at 1:11 AM, HB Stratos said:

a minor one, when adding a new materialFloat modifier then this one only works on the mesh itself. the instance button gets hidden when selecting material float. However the button does not get hidden when the previous added modifier also was a materialFloat and so materialFloat is already pre-selected as the modifier type.

 

Expand  

I think you really could use some screenshots here, I *think* I see what you mean but it took like 5 minutes of squinting :P

 

 

  On 8/17/2020 at 12:58 AM, HB Stratos said:

I wasn't able to find any resourches that teach how to actually get code and not just models into ksp, if you could show me some that would helpme a lot. And I understand, your projects, your decisions.

 

Expand  

I learned by looking at other people's projects. Lots of source on Git - check out a simple one to get started.

  On 8/17/2020 at 12:58 AM, HB Stratos said:

Well yes but no, it just isn't possible to spawn enough particles to stop them getting ripped apart on laggy craft. As for black smoke, all shaders ksp provides for particles are as far as I have seen additive and therefore do not allow black smoke.

Expand  

I disagree, you're operating with the mindset that all that is available is what KSP gives you. That is not true!

  On 8/17/2020 at 12:58 AM, HB Stratos said:

I want to distort a plume based on gimbal deflection, I know that parenting is possible and I already used it on my engines.

 

Expand  

I see, so you're realistically looking for a way to lock a transform's position to another transform with a specific offset. That's likely possible. 

  On 8/17/2020 at 1:11 AM, HB Stratos said:

And a few last words, I truly think this mod is amazing, keep the awesome work up! The more I learn how to use this mod the better my FX get, also thanks to the help I  got here. My plan is to release a patch pack for all airbreathing engines soon.

Expand  

Great!

I really suggest you don't release anything until this mod is at least version controlled. 

Link to comment
Share on other sites

I'm not expecting high level mod with all things done already, I understand that this is WIP mod that is new and has a lot of parts that needs to be done. Good luck developing this mod Nertea

Link to comment
Share on other sites

  On 8/17/2020 at 5:53 PM, GuessingEveryDay said:

I'm looking at the OP, and I see the words:

Will this mean, that if we use a differnet engine, and try to edit it with Waterfall, it will make a new config for that engine @Nertea?

Expand  

No, you need to follow the documentation. A new module needs to be added in the config first. 

Link to comment
Share on other sites

OK, so big update was deployed. I've moved to a release/version controlled model - please download packages from the Releases page. This means, overall that I will try to preserve stability a bit more with releases, but it does not mean it is ready for public consumption

Major changes

  • Improved templating system (see many examples in the repo)
  • Support for templating in the UI
  • Several new seamless noise textures for use in effects. 
  • New Additive Directional shader that can improve the look of effects from behind in many cases
  • New Alpha shader that is suitable for film cooling effects (but not much else)
  • Changed rotation specification to euler instead of vector. This will cause problems with existing effects. Sorry. Fixes are very easy though.
  • A number of under the hood improvements and fixes
  • New effect replacements, lineup is currently:
    • Squad: Vector, Mammoth, Mainsail, Twin Boar, Poodle, Reliant, Swivel, Terrier, LV-N, Kodiak, RCS blocks, Mk3-1 RCS jets
    • Restock+: Boar, Ursa, Valiant, Pug, large RCS blocks

Likely in the next version this mod will split in two - one to provide stock configuration, one for the plugin+templates only. 

Edited by Nertea
Link to comment
Share on other sites

So, testing out the new effect replacements (using ReStock & ReStock+), and they're pretty good; there's a couple issues, however.
First, at least for the ReStock model, the Poodle's engine plume is rotated to the side and seems a bit undersized. I was able to tweak the offset values to get it looking good, though:

  Reveal hidden contents

The Mainsail uses the stock particle system instead of using a Waterfall plume; I'm guessing a broken config file.
The Terrier also has the same problem as the Poodle in terms of plume rotation & scale. Here's the offset values I found worked well:

  Reveal hidden contents

The plumes all look gorgeous, by the way!

Oh, also: on a few engines, the plume model shows up as part of the green selection highlight thingy in flight. Here's a list:

  Reveal hidden contents

 

Link to comment
Share on other sites

  On 8/21/2020 at 7:50 PM, Starseeker said:

So, testing out the new effect replacements (using ReStock & ReStock+), and they're pretty good; there's a couple issues, however.
First, at least for the ReStock model, the Poodle's engine plume is rotated to the side and seems a bit undersized. I was able to tweak the offset values to get it looking good, though:

  Reveal hidden contents

The Mainsail uses the stock particle system instead of using a Waterfall plume; I'm guessing a broken config file.
The Terrier also has the same problem as the Poodle in terms of plume rotation & scale. Here's the offset values I found worked well:

  Reveal hidden contents

The plumes all look gorgeous, by the way!

Oh, also: on a few engines, the plume model shows up as part of the green selection highlight thingy in flight. Here's a list:

  Reveal hidden contents

 

Expand  

It's not that, it's that the Squad method I'm using for parsing offsets seems to fail if there are spaces in the string. 10/10 would hire development team.

I'll write my own and issue a fix shortly.

Link to comment
Share on other sites

  On 8/21/2020 at 9:08 PM, Nertea said:

It's not that, it's that the Squad method I'm using for parsing offsets seems to fail if there are spaces in the string. 10/10 would hire development team.

I'll write my own and issue a fix shortly.

Expand  

Ah, gotcha! Yeah that seems like... odd behavior.

On a separate topic, would configurations for engines from, say, Cryo Engines be welcome? Or are you wanting to keep that to the team you have?

Link to comment
Share on other sites

Latest release (0.1.1) seems to have corrected the parsing issue. 

  On 8/21/2020 at 9:38 PM, Starseeker said:

On a separate topic, would configurations for engines from, say, Cryo Engines be welcome? Or are you wanting to keep that to the team you have?

Expand  

Yes absolutely welcome. I planned to do them eventually but if someone else makes high quality effects, I'll use them for sure. 

The medium term goal is to split actual patches out from this mod and keep it as a framework. This mod should supply primarily templates and resources. So:

  • Waterfall: contains plugin, templates appropriate for all stock engines, maybe a few more
  • WaterfallStock: contains patches applying templates to stock engines
  • Other Mods: contains patches applying templates to their own engines, and their own engines

In this model we would probably place the CE effects in CE itself. 

Link to comment
Share on other sites

  On 8/22/2020 at 5:28 AM, Nertea said:

Yes absolutely welcome. I planned to do them eventually but if someone else makes high quality effects, I'll use them for sure. 

The medium term goal is to split actual patches out from this mod and keep it as a framework. This mod should supply primarily templates and resources. So:

  • Waterfall: contains plugin, templates appropriate for all stock engines, maybe a few more
  • WaterfallStock: contains patches applying templates to stock engines
  • Other Mods: contains patches applying templates to their own engines, and their own engines

In this model we would probably place the CE effects in CE itself. 

Expand  

Alrighty!

Do you have a list of what engines are based on what IRL ones? I'm guessing the 1.25m, 1.875m, and 3.75m extendable ones are based on the RL-10, and the 3.75m sustainer on the Delta IV's engine(s). (also, should I move that to the cryo engines thread?)

Edited by Starseeker
Found the IRL engines named in the files
Link to comment
Share on other sites

A patch I wrote (well, "wrote" :wink:), while it's successfully applying the waterfall FX module to the engine so that I can play around with the in-game editor, isn't applying the template I'm asking it to.

Here's the patch, targeting the Vesuvius from CryoEngines (copy/pasted from the SSME patch with the relevant names changed):

  Reveal hidden contents

The filepath is "GameData\WaterfallCustom\CryoEngines\125\cryoEngineVesuviusWaterfallFX.cfg", do I need to specify the filepath of the template I'm trying to use?

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