Jump to content

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


Nertea

Recommended Posts

Hello all. Nertea, I would like to highly commend your art work and thank you and your team of fantastic contributors for maintaining a series of mods I have used since I started playing KSP a few years ago. If I had a background beyond SOLIDWORKS and PLC programming I would want to know how I could contribute, however, I digress. I was re-entering Kerbin earlier today at a fairly high velocity (restock inflatable heatsheild deployed) feeling a pang of disappointment not only in the performance hit I was experiencing given my fairly beefy laptop, but also the quality of the reentry particle effects themselves (I do have “5reentry particle effect” mod installed that does help visually and it is worth noting my visual mods list surely contributed to the performance hit). As I am a regular reader of these forums (have not posted much as I have nothing of value to contribute) I became aware of waterfall and was quite impressed. I am not sure how heatsheild particle effects are generated in comparison to engine effects, however, if they are similar would it be possible to use waterfall to fill this roll? In your opinion, are the  capabilities of waterfall (assuming it could even be used for these effects) adequate for replicating  reentry heating / plasma trail? If so, what resources are available so that I could possibly explore this and potentially  contribute? 
  Of course, if it is not possible then please disregard, apologies for the long winded and off-topic question, and thank you again for truly enhancing what I already consider my personal favorite game. Cheers.

Edited by ROV_OPS
Spelling / grammar
Link to comment
Share on other sites

On 8/25/2020 at 12:34 PM, Starseeker said:

Alrighty, lemme generate a new log (since I loaded up a different install since).

Here it is: https://drive.google.com/file/d/10NV7QINpaK8wkVDUSPEsmDOpklLnoM1v/view?usp=sharing

I couldn't work it out from the log so it'll have to wait until the modding computer gets back. It's weird that the template doesn't work on one particular engine but works on others (that was implied from your statements).

On 8/25/2020 at 2:27 PM, ROV_OPS said:

Hello all. Nertea, I would like to highly commend your art work and thank you and your team of fantastic contributors for maintaining a series of mods I have used since I started playing KSP a few years ago. If I had a background beyond SOLIDWORKS and PLC programming I would want to know how I could contribute, however, I digress. I was re-entering Kerbin earlier today at a fairly high velocity (restock inflatable heatsheild deployed) feeling a pang of disappointment not only in the performance hit I was experiencing given my fairly beefy laptop, but also the quality of the reentry particle effects themselves (I do have “5reentry particle effect” mod installed that does help visually and it is worth noting my visual mods list surely contributed to the performance hit). As I am a regular reader of these forums (have not posted much as I have nothing of value to contribute) I became aware of waterfall and was quite impressed. I am not sure how heatsheild particle effects are generated in comparison to engine effects, however, if they are similar would it be possible to use waterfall to fill this roll? In your opinion, are the  capabilities of waterfall (assuming it could even be used for these effects) adequate for replicating  reentry heating / plasma trail? If so, what resources are available so that I could possibly explore this and potentially  contribute? 
  Of course, if it is not possible then please disregard, apologies for the long winded and off-topic question, and thank you again for truly enhancing what I already consider my personal favorite game. Cheers.

Hey that would be pretty cool, but it's a completely different problem. The re-entry flames involve procedural generation of trail meshes that conform to the craft shape, which is pretty performance intensive. I'm sure it could be done better (most things in KSP can be), but it's not something that this solution would help with. 

Link to comment
Share on other sites

1 minute ago, Nertea said:

I couldn't work it out from the log so it'll have to wait until the modding computer gets back. It's weird that the template doesn't work on one particular engine but works on others (that was implied from your statements).

Ah yeah, sorry, should probably have been more explicit on that: it's working perfectly fine on all other engines I've applied it to.

Is there another engine in the stock/ReStock+/CryoEngines that has multiple independent thrust points like the Tharsis? I could try applying the template to that engine, see if it has the same error.

Link to comment
Share on other sites

2 minutes ago, Starseeker said:

Ah yeah, sorry, should probably have been more explicit on that: it's working perfectly fine on all other engines I've applied it to.

Is there another engine in the stock/ReStock+/CryoEngines that has multiple independent thrust points like the Tharsis? I could try applying the template to that engine, see if it has the same error.

Well, I'm pretty sure it's not the multiple thrust points, considering that the templated FX works for the Poodle, Twin Boar and the Ursa. It really seems like something more subtle. 

Can you post your template and your template application patch maybe?

Link to comment
Share on other sites

2 minutes ago, Nertea said:

Well, I'm pretty sure it's not the multiple thrust points, considering that the templated FX works for the Poodle, Twin Boar and the Ursa. It really seems like something more subtle. 

Can you post your template and your template application patch maybe?

Yeah, here's a Google Drive folder with the two:

https://drive.google.com/drive/folders/10rV3hyrE-wntLpCKaMBn6GjlS2Wouubk?usp=sharing

cryoEngineTharsisWaterfallFX.cfg is the application patch, and starseeker-hydrolox-rl10.cfg is the template. I also added the application patch for the Hecate (cryoEngineHecateWaterfallFX.cfg) to use as a comparison.

Link to comment
Share on other sites

1 hour ago, Starseeker said:

Yeah, here's a Google Drive folder with the two:

https://drive.google.com/drive/folders/10rV3hyrE-wntLpCKaMBn6GjlS2Wouubk?usp=sharing

cryoEngineTharsisWaterfallFX.cfg is the application patch, and starseeker-hydrolox-rl10.cfg is the template. I also added the application patch for the Hecate (cryoEngineHecateWaterfallFX.cfg) to use as a comparison.

Nothing immediately obvious but I'll keep these to look when I get a chance. 

Link to comment
Share on other sites

16 hours ago, Starseeker said:

Oh, one thing that might have to do with it: should the engineID = basicEngine line instead be engineID = Tharsis?

Nope, that should map to the EngineID in the ModuleEnginesFX. If it doesn't match, it will fall back to 'first engine' without any issues (and the log will definitely tell me if that is failing).

Link to comment
Share on other sites

On 8/26/2020 at 5:05 PM, Starseeker said:

Oh, one thing that might have to do with it: should the engineID = basicEngine line instead be engineID = Tharsis?

Laptop's back, I found the bug related to this, I will be issuing a new release soon. 

Link to comment
Share on other sites

31 minutes ago, Souptime said:

So i need to make then configs for it to work?

For most engines (at least outside of a couple external mods that may have updated to use it), yeah. There is an ingame editor though, so you only need to set up the basic frame of a config, then you can go ingame and edit it visually.

Link to comment
Share on other sites

18 hours ago, WarriorSabe said:

For most engines (at least outside of a couple external mods that may have updated to use it), yeah. There is an ingame editor though, so you only need to set up the basic frame of a config, then you can go ingame and edit it visually.

Darn, i dont know how to write configs for poopoo. Guess i gotta wait for the mod to update

Link to comment
Share on other sites

Small updates

  •  Fixed a number of bugs related to the Material Editor and new effect creation
  •  Fixed Color Modifiers not working on multi-engine setups
  •  Improved behaviour of Transform effect blending modes (still not perfect but eh)
Link to comment
Share on other sites

I was going to start making some configs of my own for the engines I was using, and I noticed something: your Mainsail patch modifies liquidEngineMainsail_v2, but the actual Mainsail engine seems to be liquidEngine1-2. That's the only one I can find in the Squad folder, and only the latter shows up in my .craft files.

Edit: I just realized I'm on 1.8 and v2 is probably the 1.9 (or was it 1.10?) one, never mind

Edited by WarriorSabe
Link to comment
Share on other sites

Alright, I'm actually going to start making some configs now, but there's some stuff I can't find on the wiki. What are each of the models and materials, and what do I use for what? e.g., which one do I use if I want mach diamonds or what have you?

Also, how do I remove the particles from the Cheetah? It has no EFFECTS node

Edited by WarriorSabe
Link to comment
Share on other sites

21 hours ago, WarriorSabe said:

Alright, I'm actually going to start making some configs now, but there's some stuff I can't find on the wiki. What are each of the models and materials, and what do I use for what? e.g., which one do I use if I want mach diamonds or what have you?

Also, how do I remove the particles from the Cheetah? It has no EFFECTS node

The material and shader list has been evolving too rapidly for me to keep the wiki up to date, apologies. The best way is to look at example configs.

To remove effects from engines, best to look at the restock patch configs, lots of examples there as they strip them and replace them with EFFECTS based fx.

 

Link to comment
Share on other sites

5 hours ago, Nertea said:

The material and shader list has been evolving too rapidly for me to keep the wiki up to date, apologies. The best way is to look at example configs.

To remove effects from engines, best to look at the restock patch configs, lots of examples there as they strip them and replace them with EFFECTS based fx.

 

Alright, I can check those for the materials and shaders.

I had already gathered how you removed EFFECTS{} node and added a new one sans engine plume, my problem was with the Cheetah (as in, the Making History engine): it has no EFFECTS{} node to remove, looking at its config, but it still makes particles somehow.

Link to comment
Share on other sites

41 minutes ago, WarriorSabe said:

Alright, I can check those for the materials and shaders.

I had already gathered how you removed EFFECTS{} node and added a new one sans engine plume, my problem was with the Cheetah (as in, the Making History engine): it has no EFFECTS{} node to remove, looking at its config, but it still makes particles somehow.

There here 


	fx_exhaustFlame_blue = 0.0, -2, 0.0, 0.0, 1.0, 0.0, running
	fx_exhaustLight_blue = 0.0, -2, 0.0, 0.0, 0.0, 1.0, running
	fx_smokeTrail_light = 0.0, -2, 0.0, 0.0, 1.0, 0.0, running
	fx_exhaustSparks_flameout = 0.0, -2, 0.0, 0.0, 1.0, 0.0, flameout
	sound_vent_medium = engage
	sound_rocket_hard = running
	sound_vent_soft = disengage
	sound_explosion_low = flameout

its using the old ModuleEngines you have to change it to ModuleEnginesFX

	MODULE
	{
		name = ModuleEngines
		thrustVectorTransformName = thrustTransform
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 125
		heatProduction = 175
		fxOffset = 0, 0, 0.1
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.35
		PROPELLANT
		{
			name = LiquidFuel
			ratio = 0.9
			DrawGauge = True
		}
		PROPELLANT
		{
			name = Oxidizer
			ratio = 1.1
		}
		atmosphereCurve
		{
			key = 0 355
			key = 1 150
			key = 9 0.001
		}
	}
	EFFECTS
	{
		running
		{
			AUDIO
			{
				channel = Ship
				clip = sound_rocket_mini
				volume = 0.0 0.0
				volume = 1.0 1.0
				pitch = 0.0 0.8
				pitch = 1.0 1.0
				loop = true
			}
			PREFAB_PARTICLE
			{
				prefabName = fx_exhaustFlame_yellow_tiny_Z
				transformName = thrustTransform
				emission = 0.0 0.0
				emission = 1.0 1.0
				speed = 0.0 0.8
				speed = 1.0 1.0
			}
		}
		engage
		{
			AUDIO
			{
				channel = Ship
				clip = sound_vent_medium
				loop = false
			}
		}
		disengage
		{
			AUDIO
			{
				channel = Ship
				clip = sound_vent_soft
				loop = false
			}
		}
	}
	MODULE
	{
		name = ModuleEnginesFX
		thrustVectorTransformName = thrustTransform
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 16
		heatProduction = 150
		fxOffset = 0, 0, 0.01
		localPosition = 0, 0, 0.12
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.12
		PROPELLANT
		{
			name = LiquidFuel
			ratio = 0.9
			DrawGauge = True
		}
		PROPELLANT
		{
			name = Oxidizer
			ratio = 1.1
		}
		atmosphereCurve
		{
			key = 0 290
			key = 1 275
			key = 7 0.001
		}
	}

 

Link to comment
Share on other sites

4 hours ago, WarriorSabe said:

Alright, I can check those for the materials and shaders.

I had already gathered how you removed EFFECTS{} node and added a new one sans engine plume, my problem was with the Cheetah (as in, the Making History engine): it has no EFFECTS{} node to remove, looking at its config, but it still makes particles somehow.

Indeed, this gets done a number of times by restock, so that's why I suggested looking there. Reliant, swivel, etc all have their old style plumes removed in patches.

Link to comment
Share on other sites

57 minutes ago, Nertea said:

Indeed, this gets done a number of times by restock, so that's why I suggested looking there. Reliant, swivel, etc all have their old style plumes removed in patches.

Ohhh, ok. I misunderstood and thought you meant the Restock+ patch in Waterfall

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