Jump to content

[1.11.x] Parallax, A PBR Terrain Shader [1.2.1]


Recommended Posts

18 hours ago, Gameslinx said:

PlanetShine is not optimized very well

This happens without Parallax, I'm fairly sure. If not, it's something planet shine sided

After some more testing, this is definitely the case. I thought it was Parallax's fault, but nope, definitely Planetshine. Such a shame, I love the  lighting effects it brings to the game. Appreciate the response! 

Link to post
Share on other sites
4 hours ago, The Kerbal Ruler said:

But i want to use it in 1.8

This mod is for 1.9 and 1.10 only. It will not work on any other version

10 hours ago, Folkhoer said:

My terrain looks very wobly, its constantly moving a little bit back and forth like everything is shaking a bit.
Is this a known bug?

Can you send a video?

Link to post
Share on other sites
12 hours ago, Mr. Ship Crasher said:

Your file path is odd.

C:/Users/alexwang/Downloads/Kerbal.Space.Program.v1.10.1/Kerbal.Space.Program.v1.10.1/Kerbal Space Program Shared Horizons/Kerbal Space Program Shared HGameData/Kopernicus/Config/System.cfg

Why is Kerbal Space Program in your downloads folder?

The file path is being detected wrongly, and this will be fixed in a future update. For now, please rename your Kerbal Space Program Shared Horizons folder to just Kerbal Space Program and see if that works

Link to post
Share on other sites
53 minutes ago, HitSpecK0 said:

hello, i have a weird bug that looks like the tessellation is constantly turning on and off

Very odd, your vessel seems to be in a constant state of unpacking: 

Unpacking eve rover boat Probe

This isn't Parallax related because the light on your craft is changing as well as the ground (this would not happen if it was just Parallax)

You have a lot of other mods which is making this difficult to debug, as well as this being spammed in the log, probably from the offending mod:

VesselView.VesselViewPlugin.OnGUI, settings is null

 

Link to post
Share on other sites
3 hours ago, Gameslinx said:

Very odd, your vessel seems to be in a constant state of unpacking: 

Unpacking eve rover boat Probe

This isn't Parallax related because the light on your craft is changing as well as the ground (this would not happen if it was just Parallax)

You have a lot of other mods which is making this difficult to debug, as well as this being spammed in the log, probably from the offending mod:

VesselView.VesselViewPlugin.OnGUI, settings is null

 

i managed to isolate rescale as the reason for it

here is a log with only rescale, parallax and their dependencies and it looks like it gives out specific errors from parallax

https://drive.google.com/file/d/1Ox6olUOsNc0PIgV97vEzPnFrdjFyzq2H/view?usp=sharing

Link to post
Share on other sites
31 minutes ago, HitSpecK0 said:

i managed to isolate rescale as the reason for it

here is a log with only rescale, parallax and their dependencies and it looks like it gives out specific errors from parallax

https://drive.google.com/file/d/1Ox6olUOsNc0PIgV97vEzPnFrdjFyzq2H/view?usp=sharing

Parallax loads properly with that log

 

Link to post
Share on other sites
15 hours ago, Gameslinx said:

Your file path is odd.

Why is Kerbal Space Program in your downloads folder?

The file path is being detected wrongly, and this will be fixed in a future update. For now, please rename your Kerbal Space Program Shared Horizons folder to just Kerbal Space Program and see if that works

Didn't work. So, I think I understand, basically Parallax can't find its dependencies? 

 

So I wait for the new update to fix it, right?

Edited by Mr. Ship Crasher
Link to post
Share on other sites

I have been playing with this mod for a while, and i really like it. however, there are a few (small, visual and non-game breaking) glitches that I noticed:

I know this not a proper bug report (lacking logs and stuff), but these small glitches happened a handful of time over the course of weeks, I will try to get my hands on a log report next time it happens. My install has other mods, but none that modifies planet terrain or that is too disruptive of the stock game.

finally, a few thoughts/questions, given I am really impressed by what you did and achieved:

  • is it possible/sensible/worth your time to apply the parallax technology to comets and asteroids?
  • similarly, to cloud textures?
  • similarly, to ocean textures?

 

Link to post
Share on other sites
35 minutes ago, vinix said:

Underwater, the terrain does not render properly. I could totally see this being something parallax was not meant for, but I'm curious to know if it could/is meant to support underwater terrain.

Noted. This is a conflict with Scatterer, so I'll need to try and find a way around that

35 minutes ago, vinix said:

On some planets, lighting is not applied correctly. On a few occasions, the surface looked fine except for the quad where the craft was landed, which looked much darker. (forgot to take picture of this bug, my bad).

This could be an error in how Quads are calculated by KSP. If it happens again, write down the latitude and longitude and see if it persists after reloading / restarting

36 minutes ago, vinix said:

On another occasion, while I was landing on Eloo, the quads close to the ship were a lot darker than the surrounding one. But it only affected terrain eastward of the craft position. However, this glitch disapeares if you zoom out enough or use the map view (but comes back when zooming in again or switching back to vessel view)

Same thing here - Let me know what the latitude and longitude of that location is because it must be region specific

Thank you for the bug reports, I'll try and look into these before the next update

37 minutes ago, vinix said:

is it possible/sensible/worth your time to apply the parallax technology to comets and asteroids?

I would need to write another shader because asteroids and comets don't work using quads, and are instead one big part (I think). This could be done in the future but it's not something I'm working on right now

37 minutes ago, vinix said:

similarly, to cloud textures?

I would need to write another shader for this, too, but yes clouds could be tessellated. The only issue comes down to UV precision. I'm not sure how EVE gets around this - it's something I stumbled into when developing detail textures for the next update

39 minutes ago, vinix said:

similarly, to ocean textures?

I don't need to - Install Scatterer and it already does that

Link to post
Share on other sites

This mod is working perfectly fine in my windows install, but recently I decided to start migrating to linux again with most of my stuff, when I install KSP with steam in linux and copy over my GameData folder, I get pink textures and NRE spam. Maybe case sensitive files?

Full log here: https://yadi.sk/d/5LNB77AIxU0Keg

Quote

[LOG 19:23:18.328] [Parallax]Starting...
[LOG 19:23:18.334] [Parallax]Retrieving config nodes...
[LOG 19:23:18.334] This parallax node has: 15 nodes
[LOG 19:23:18.334] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.334] [Parallax]////////////////Kerbin////////////////
[LOG 19:23:18.334] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.334] [Parallax] - Retrieved body node
[LOG 19:23:18.337] Critical error: Input was a string, but it should have been a float: Textures / normalSpecularInfluence
[LOG 19:23:18.337] Error parsing bool: hasEmission
[LOG 19:23:18.337] [Parallax] - Assigned parallax body material
[LOG 19:23:18.337] [Parallax] - Added Kerbin's parallax config successfully
[LOG 19:23:18.337] [Parallax]Kerbin
[LOG 19:23:18.337] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.337] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.337] [Parallax]////////////////Mun////////////////
[LOG 19:23:18.337] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.337] [Parallax] - Retrieved body node
[LOG 19:23:18.337] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.337] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.337] Critical error: Input was a string, but it should have been a float: Textures / normalSpecularInfluence
[LOG 19:23:18.337] Error parsing bool: hasEmission
[LOG 19:23:18.338] [Parallax] - Assigned parallax body material
[LOG 19:23:18.338] [Parallax] - Added Mun's parallax config successfully
[LOG 19:23:18.338] [Parallax]Mun
[LOG 19:23:18.338] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.338] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.338] [Parallax]////////////////Duna////////////////
[LOG 19:23:18.338] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.338] [Parallax] - Retrieved body node
[LOG 19:23:18.338] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.338] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.338] Critical error: Input was a string, but it should have been a float: Textures / normalSpecularInfluence
[LOG 19:23:18.338] Error parsing bool: hasEmission
[LOG 19:23:18.338] [Parallax] - Assigned parallax body material
[LOG 19:23:18.338] [Parallax] - Added Duna's parallax config successfully
[LOG 19:23:18.338] [Parallax]Duna
[LOG 19:23:18.338] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.338] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.338] [Parallax]////////////////Gilly////////////////
[LOG 19:23:18.338] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.338] [Parallax] - Retrieved body node
[LOG 19:23:18.338] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.338] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.338] Critical error: Input was a string, but it should have been a float: Textures / normalSpecularInfluence
[LOG 19:23:18.338] Error parsing bool: hasEmission
[LOG 19:23:18.338] [Parallax] - Assigned parallax body material
[LOG 19:23:18.338] [Parallax] - Added Gilly's parallax config successfully
[LOG 19:23:18.338] [Parallax]Gilly
[LOG 19:23:18.338] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.338] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.338] [Parallax]////////////////Eve////////////////
[LOG 19:23:18.338] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.339] [Parallax] - Retrieved body node
[LOG 19:23:18.339] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.339] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.339] Critical error: Input was a string, but it should have been a float: Textures / normalSpecularInfluence
[LOG 19:23:18.339] Error parsing bool: hasEmission
[LOG 19:23:18.339] [Parallax] - Assigned parallax body material
[LOG 19:23:18.339] [Parallax] - Added Eve's parallax config successfully
[LOG 19:23:18.339] [Parallax]Eve
[LOG 19:23:18.339] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.339] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.339] [Parallax]////////////////Moho////////////////
[LOG 19:23:18.339] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.339] [Parallax] - Retrieved body node
[LOG 19:23:18.339] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.339] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.339] Critical error: Input was a string, but it should have been a float: Textures / normalSpecularInfluence
[LOG 19:23:18.339] Error parsing bool: hasEmission
[LOG 19:23:18.339] [Parallax] - Assigned parallax body material
[LOG 19:23:18.339] [Parallax] - Added Moho's parallax config successfully
[LOG 19:23:18.339] [Parallax]Moho
[LOG 19:23:18.339] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.339] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.339] [Parallax]////////////////Ike////////////////
[LOG 19:23:18.339] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.339] [Parallax] - Retrieved body node
[LOG 19:23:18.339] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.339] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.339] Critical error: Input was a string, but it should have been a float: Textures / normalSpecularInfluence
[LOG 19:23:18.339] Error parsing bool: hasEmission
[LOG 19:23:18.339] [Parallax] - Assigned parallax body material
[LOG 19:23:18.339] [Parallax] - Added Ike's parallax config successfully
[LOG 19:23:18.339] [Parallax]Ike
[LOG 19:23:18.340] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.340] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.340] [Parallax]////////////////Eeloo////////////////
[LOG 19:23:18.340] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.340] [Parallax] - Retrieved body node
[LOG 19:23:18.340] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.340] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.340] Error parsing bool: hasEmission
[LOG 19:23:18.340] [Parallax] - Assigned parallax body material
[LOG 19:23:18.340] [Parallax] - Added Eeloo's parallax config successfully
[LOG 19:23:18.340] [Parallax]Eeloo
[LOG 19:23:18.340] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.340] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.340] [Parallax]////////////////Minmus////////////////
[LOG 19:23:18.340] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.340] [Parallax] - Retrieved body node
[LOG 19:23:18.340] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.340] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.340] Error parsing bool: hasEmission
[LOG 19:23:18.340] [Parallax] - Assigned parallax body material
[LOG 19:23:18.340] [Parallax] - Added Minmus's parallax config successfully
[LOG 19:23:18.340] [Parallax]Minmus
[LOG 19:23:18.340] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.340] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.340] [Parallax]////////////////Laythe////////////////
[LOG 19:23:18.340] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.340] [Parallax] - Retrieved body node
[LOG 19:23:18.340] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.340] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.340] [Parallax] - Assigned parallax body material
[LOG 19:23:18.340] [Parallax] - Added Laythe's parallax config successfully
[LOG 19:23:18.341] [Parallax]Laythe
[LOG 19:23:18.341] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.341] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.341] [Parallax]////////////////Dres////////////////
[LOG 19:23:18.341] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.341] [Parallax] - Retrieved body node
[LOG 19:23:18.341] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.341] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.341] [Parallax] - Assigned parallax body material
[LOG 19:23:18.341] [Parallax] - Added Dres's parallax config successfully
[LOG 19:23:18.341] [Parallax]Dres
[LOG 19:23:18.341] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.341] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.341] [Parallax]////////////////Vall////////////////
[LOG 19:23:18.341] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.341] [Parallax] - Retrieved body node
[LOG 19:23:18.341] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.341] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.341] [Parallax] - Assigned parallax body material
[LOG 19:23:18.341] [Parallax] - Added Vall's parallax config successfully
[LOG 19:23:18.341] [Parallax]Vall
[LOG 19:23:18.341] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.341] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.341] [Parallax]////////////////Tylo////////////////
[LOG 19:23:18.341] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.341] [Parallax] - Retrieved body node
[LOG 19:23:18.341] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.341] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.341] [Parallax] - Assigned parallax body material
[LOG 19:23:18.341] [Parallax] - Added Tylo's parallax config successfully
[LOG 19:23:18.341] [Parallax]Tylo
[LOG 19:23:18.341] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.341] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.342] [Parallax]////////////////Bop////////////////
[LOG 19:23:18.342] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.342] [Parallax] - Retrieved body node
[LOG 19:23:18.342] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.342] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.342] [Parallax] - Assigned parallax body material
[LOG 19:23:18.342] [Parallax] - Added Bop's parallax config successfully
[LOG 19:23:18.342] [Parallax]Bop
[LOG 19:23:18.342] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.342] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.342] [Parallax]////////////////Pol////////////////
[LOG 19:23:18.342] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.342] [Parallax] - Retrieved body node
[LOG 19:23:18.342] Critical error: Input was a string, but it should have been a float: Textures / fogRange
[LOG 19:23:18.342] Critical error: Input was a string, but it should have been a float: Textures / displacementOffset
[LOG 19:23:18.342] [Parallax] - Assigned parallax body material
[LOG 19:23:18.342] [Parallax] - Added Pol's parallax config successfully
[LOG 19:23:18.342] [Parallax]Pol
[LOG 19:23:18.342] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.342] [Parallax]Activating config nodes...
[LOG 19:23:18.343] [Parallax]////////////////////////////////////////////////
[LOG 19:23:18.343] [Parallax]////////////////Kerbin////////////////
[LOG 19:23:18.343] [Parallax]////////////////////////////////////////////////

[LOG 19:23:18.347]     Beginning material creation
[EXC 19:23:19.113] KeyNotFoundException: The given key was not present in the dictionary.
    System.Collections.Generic.Dictionary`2[TKey,TValue].get_Item (TKey key) (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)
    ParallaxShader.ParallaxLoader.GetShader (System.String name) (at <0e962ee0d677445f832ed458f7108ca3>:0)
    ParallaxShader.ParallaxBodyMaterial.CreateMaterial () (at <0e962ee0d677445f832ed458f7108ca3>:0)
    ParallaxShader.ParallaxBody.CreateMaterial () (at <0e962ee0d677445f832ed458f7108ca3>:0)
    ParallaxShader.ParallaxShaderLoader.ActivateConfigNodes () (at <0e962ee0d677445f832ed458f7108ca3>:0)
    ParallaxShader.ParallaxShaderLoader.Start () (at <0e962ee0d677445f832ed458f7108ca3>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    KSPe.Util.Log.UnityLogDecorator:UnityEngine.ILogHandler.LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)
[EXC 19:23:19.859] KeyNotFoundException: The given key was not present in the dictionary.
    System.Collections.Generic.Dictionary`2[TKey,TValue].get_Item (TKey key) (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)
    ParallaxShader.ParallaxLoader.GetShader (System.String name) (at <0e962ee0d677445f832ed458f7108ca3>:0)
    PQSModExpansion.GrassLoader.Start () (at <b6b3af8f70dd42d7adac8493f5bd45d3>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    KSPe.Util.Log.UnityLogDecorator:UnityEngine.ILogHandler.LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)
[LOG 19:23:19.861] PRESET: Low
[LOG 19:23:19.861]      - SPHERE PRESET: Kerbin
[LOG 19:23:19.861]      - minSubDiv: 1
[LOG 19:23:19.861]      - maxSubDiv: 8
[LOG 19:23:19.861]      - Kerbin max subdivision is too low! Set to 10
[LOG 19:23:19.861]      - SPHERE PRESET: KerbinOcean
[LOG 19:23:19.861]      - minSubDiv: 1
[LOG 19:23:19.861]      - maxSubDiv: 7
[LOG 19:23:19.861]      - KerbinOcean max subdivision is too low! Set to 10
[LOG 19:23:19.861]      - SPHERE PRESET: Mun
[LOG 19:23:19.861]      - minSubDiv: 1
[LOG 19:23:19.861]      - maxSubDiv: 7
[LOG 19:23:19.861]      - Mun max subdivision is too low! Set to 10
[LOG 19:23:19.861]      - SPHERE PRESET: Minmus
[LOG 19:23:19.861]      - minSubDiv: 1
[LOG 19:23:19.861]      - maxSubDiv: 6
[LOG 19:23:19.861]      - Minmus max subdivision is too low! Set to 10
[LOG 19:23:19.861]      - SPHERE PRESET: Bop
[LOG 19:23:19.861]      - minSubDiv: 1
[LOG 19:23:19.861]      - maxSubDiv: 6
[LOG 19:23:19.861]      - Bop max subdivision is too low! Set to 10
[LOG 19:23:19.861]      - SPHERE PRESET: Duna
[LOG 19:23:19.861]      - minSubDiv: 1
[LOG 19:23:19.861]      - maxSubDiv: 7
[LOG 19:23:19.862]      - Duna max subdivision is too low! Set to 10
[LOG 19:23:19.862]      - SPHERE PRESET: Eve
[LOG 19:23:19.862]      - minSubDiv: 1
[LOG 19:23:19.862]      - maxSubDiv: 7
[LOG 19:23:19.862]      - Eve max subdivision is too low! Set to 10
[LOG 19:23:19.862]      - SPHERE PRESET: EveOcean
[LOG 19:23:19.862]      - minSubDiv: 1
[LOG 19:23:19.862]      - maxSubDiv: 7
[LOG 19:23:19.862]      - EveOcean max subdivision is too low! Set to 10
[LOG 19:23:19.862]      - SPHERE PRESET: Gilly
[LOG 19:23:19.862]      - minSubDiv: 1
[LOG 19:23:19.862]      - maxSubDiv: 6
[LOG 19:23:19.862]      - Gilly max subdivision is too low! Set to 10
[LOG 19:23:19.862]      - SPHERE PRESET: Ike
[LOG 19:23:19.862]      - minSubDiv: 1
[LOG 19:23:19.862]      - maxSubDiv: 7
[LOG 19:23:19.862]      - Ike max subdivision is too low! Set to 10
[LOG 19:23:19.862]      - SPHERE PRESET: Laythe
[LOG 19:23:19.862]      - minSubDiv: 1
[LOG 19:23:19.862]      - maxSubDiv: 7
[LOG 19:23:19.862]      - Laythe max subdivision is too low! Set to 10
[LOG 19:23:19.862]      - SPHERE PRESET: LaytheOcean
[LOG 19:23:19.862]      - minSubDiv: 1
[LOG 19:23:19.862]      - maxSubDiv: 7
[LOG 19:23:19.862]      - LaytheOcean max subdivision is too low! Set to 10
[LOG 19:23:19.862]      - SPHERE PRESET: Moho
[LOG 19:23:19.862]      - minSubDiv: 1
[LOG 19:23:19.862]      - maxSubDiv: 7
[LOG 19:23:19.862]      - Moho max subdivision is too low! Set to 10
[LOG 19:23:19.862]      - SPHERE PRESET: Tylo
[LOG 19:23:19.862]      - minSubDiv: 1
[LOG 19:23:19.862]      - maxSubDiv: 7
[LOG 19:23:19.862]      - Tylo max subdivision is too low! Set to 10
[LOG 19:23:19.862]      - SPHERE PRESET: Vall
[LOG 19:23:19.862]      - minSubDiv: 1
[LOG 19:23:19.862]      - maxSubDiv: 7
[LOG 19:23:19.862]      - Vall max subdivision is too low! Set to 10
[LOG 19:23:19.862]      - SPHERE PRESET: Dres
[LOG 19:23:19.862]      - minSubDiv: 1
[LOG 19:23:19.862]      - maxSubDiv: 7
[LOG 19:23:19.862]      - Dres max subdivision is too low! Set to 10
[LOG 19:23:19.863]      - SPHERE PRESET: Pol
[LOG 19:23:19.863]      - minSubDiv: 1
[LOG 19:23:19.863]      - maxSubDiv: 7
[LOG 19:23:19.863]      - Pol max subdivision is too low! Set to 10
[LOG 19:23:19.863]      - SPHERE PRESET: Eeloo
[LOG 19:23:19.863]      - minSubDiv: 1
[LOG 19:23:19.863]      - maxSubDiv: 7
[LOG 19:23:19.863]      - Eeloo max subdivision is too low! Set to 10
[LOG 19:23:19.863] PRESET: Default
[LOG 19:23:19.863]      - SPHERE PRESET: Kerbin
[LOG 19:23:19.863]      - minSubDiv: 1
[LOG 19:23:19.863]      - maxSubDiv: 9
[LOG 19:23:19.863]      - SPHERE PRESET: KerbinOcean
[LOG 19:23:19.863]      - minSubDiv: 1
[LOG 19:23:19.863]      - maxSubDiv: 7
[LOG 19:23:19.863]      - KerbinOcean max subdivision is too low! Set to 10
[LOG 19:23:19.863]      - SPHERE PRESET: Mun
[LOG 19:23:19.863]      - minSubDiv: 1
[LOG 19:23:19.863]      - maxSubDiv: 8
[LOG 19:23:19.863]      - Mun max subdivision is too low! Set to 10
[LOG 19:23:19.863]      - SPHERE PRESET: Minmus
[LOG 19:23:19.863]      - minSubDiv: 1
[LOG 19:23:19.863]      - maxSubDiv: 6
[LOG 19:23:19.863]      - Minmus max subdivision is too low! Set to 10
[LOG 19:23:19.863]      - SPHERE PRESET: Bop
[LOG 19:23:19.863]      - minSubDiv: 1
[LOG 19:23:19.863]      - maxSubDiv: 6
[LOG 19:23:19.863]      - Bop max subdivision is too low! Set to 10
[LOG 19:23:19.863]      - SPHERE PRESET: Duna
[LOG 19:23:19.863]      - minSubDiv: 1
[LOG 19:23:19.863]      - maxSubDiv: 8
[LOG 19:23:19.863]      - Duna max subdivision is too low! Set to 10
[LOG 19:23:19.863]      - SPHERE PRESET: Eve
[LOG 19:23:19.863]      - minSubDiv: 1
[LOG 19:23:19.863]      - maxSubDiv: 9
[LOG 19:23:19.863]      - SPHERE PRESET: EveOcean
[LOG 19:23:19.863]      - minSubDiv: 1
[LOG 19:23:19.863]      - maxSubDiv: 7
[LOG 19:23:19.863]      - EveOcean max subdivision is too low! Set to 10
[LOG 19:23:19.863]      - SPHERE PRESET: Gilly
[LOG 19:23:19.863]      - minSubDiv: 1
[LOG 19:23:19.864]      - maxSubDiv: 6
[LOG 19:23:19.864]      - Gilly max subdivision is too low! Set to 10
[LOG 19:23:19.864]      - SPHERE PRESET: Ike
[LOG 19:23:19.864]      - minSubDiv: 1
[LOG 19:23:19.864]      - maxSubDiv: 6
[LOG 19:23:19.864]      - Ike max subdivision is too low! Set to 10
[LOG 19:23:19.864]      - SPHERE PRESET: Laythe
[LOG 19:23:19.864]      - minSubDiv: 1
[LOG 19:23:19.864]      - maxSubDiv: 9
[LOG 19:23:19.864]      - SPHERE PRESET: LaytheOcean
[LOG 19:23:19.864]      - minSubDiv: 1
[LOG 19:23:19.864]      - maxSubDiv: 7
[LOG 19:23:19.864]      - LaytheOcean max subdivision is too low! Set to 10
[LOG 19:23:19.864]      - SPHERE PRESET: Moho
[LOG 19:23:19.864]      - minSubDiv: 1
[LOG 19:23:19.864]      - maxSubDiv: 8
[LOG 19:23:19.864]      - Moho max subdivision is too low! Set to 10
[LOG 19:23:19.864]      - SPHERE PRESET: Tylo
[LOG 19:23:19.864]      - minSubDiv: 1
[LOG 19:23:19.864]      - maxSubDiv: 8
[LOG 19:23:19.864]      - Tylo max subdivision is too low! Set to 10
[LOG 19:23:19.864]      - SPHERE PRESET: Vall
[LOG 19:23:19.864]      - minSubDiv: 1
[LOG 19:23:19.864]      - maxSubDiv: 8
[LOG 19:23:19.864]      - Vall max subdivision is too low! Set to 10
[LOG 19:23:19.864]      - SPHERE PRESET: Dres
[LOG 19:23:19.864]      - minSubDiv: 1
[LOG 19:23:19.864]      - maxSubDiv: 8
[LOG 19:23:19.864]      - Dres max subdivision is too low! Set to 10
[LOG 19:23:19.864]      - SPHERE PRESET: Pol
[LOG 19:23:19.864]      - minSubDiv: 1
[LOG 19:23:19.864]      - maxSubDiv: 8
[LOG 19:23:19.864]      - Pol max subdivision is too low! Set to 10
[LOG 19:23:19.864]      - SPHERE PRESET: Eeloo
[LOG 19:23:19.864]      - minSubDiv: 1
[LOG 19:23:19.864]      - maxSubDiv: 8
[LOG 19:23:19.864]      - Eeloo max subdivision is too low! Set to 10
[LOG 19:23:19.864] PRESET: High
[LOG 19:23:19.864]      - SPHERE PRESET: Kerbin
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 10
[LOG 19:23:19.865]      - SPHERE PRESET: KerbinOcean
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 7
[LOG 19:23:19.865]      - KerbinOcean max subdivision is too low! Set to 10
[LOG 19:23:19.865]      - SPHERE PRESET: Mun
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 9
[LOG 19:23:19.865]      - SPHERE PRESET: Minmus
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 7
[LOG 19:23:19.865]      - Minmus max subdivision is too low! Set to 10
[LOG 19:23:19.865]      - SPHERE PRESET: Bop
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 6
[LOG 19:23:19.865]      - Bop max subdivision is too low! Set to 10
[LOG 19:23:19.865]      - SPHERE PRESET: Duna
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 9
[LOG 19:23:19.865]      - SPHERE PRESET: Eve
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 10
[LOG 19:23:19.865]      - SPHERE PRESET: EveOcean
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 7
[LOG 19:23:19.865]      - EveOcean max subdivision is too low! Set to 10
[LOG 19:23:19.865]      - SPHERE PRESET: Gilly
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 7
[LOG 19:23:19.865]      - Gilly max subdivision is too low! Set to 10
[LOG 19:23:19.865]      - SPHERE PRESET: Ike
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 7
[LOG 19:23:19.865]      - Ike max subdivision is too low! Set to 10
[LOG 19:23:19.865]      - SPHERE PRESET: Laythe
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 10
[LOG 19:23:19.865]      - SPHERE PRESET: LaytheOcean
[LOG 19:23:19.865]      - minSubDiv: 1
[LOG 19:23:19.865]      - maxSubDiv: 7
[LOG 19:23:19.865]      - LaytheOcean max subdivision is too low! Set to 10
[LOG 19:23:19.866]      - SPHERE PRESET: Moho
[LOG 19:23:19.866]      - minSubDiv: 1
[LOG 19:23:19.866]      - maxSubDiv: 9
[LOG 19:23:19.866]      - SPHERE PRESET: Tylo
[LOG 19:23:19.866]      - minSubDiv: 1
[LOG 19:23:19.866]      - maxSubDiv: 9
[LOG 19:23:19.866]      - SPHERE PRESET: Vall
[LOG 19:23:19.866]      - minSubDiv: 1
[LOG 19:23:19.866]      - maxSubDiv: 9
[LOG 19:23:19.866]      - SPHERE PRESET: Dres
[LOG 19:23:19.866]      - minSubDiv: 1
[LOG 19:23:19.866]      - maxSubDiv: 9
[LOG 19:23:19.866]      - SPHERE PRESET: Pol
[LOG 19:23:19.866]      - minSubDiv: 1
[LOG 19:23:19.866]      - maxSubDiv: 9
[LOG 19:23:19.866]      - SPHERE PRESET: Eeloo
[LOG 19:23:19.866]      - minSubDiv: 1
[LOG 19:23:19.866]      - maxSubDiv: 9

 

Edited by hendrack
Link to post
Share on other sites
14 minutes ago, hendrack said:

This mod is working perfectly fine in my windows install, but recently I decided to start migrating to linux again with most of my stuff,

Linux is still not supported. I'm working on it for the next update

Link to post
Share on other sites
17 minutes ago, Dhruv said:

I am a little bit confused on which one to download, only parallax(2 MB) or parallax stock config.(1 GB)??

If you are playing with stock planets, you need both. You also need Kopernicus bleeding edge and modular flight integrator as dependancies. 

Link to post
Share on other sites

Small development update :)

Optimization - Biplanar Mapping

unknown.png

Now that I'm back home, development has sped up. You'll all be happy to hear about the performance improvements coming in this update.

Those who have been following development closely will know that I've moved away from Triplanar mapping (what the stock KSP shader uses) to Biplanar mapping. Visually, the two methods are almost identical however the massive benefit is in the performance!

gfx06.gif

Thanks to https://iquilezles.org/www/articles/biplanar/biplanar.htm?fbclid=IwAR2kgAFfQ_QY8-Cc-UaH2vQriqv6Qfl-cFlLvRLemZ7A4a-ea6zrscpI36Y 's implementation of biplanar mapping, I managed to extend it beyond just diffuse maps - The shader can also use normal maps using this technique.

Using Biplanar mapping I have managed to reduce the texture samples by a further 33% across the board. The GPU will do slightly more arithmetic to calculate the texture colour, but this is vastly offset by the reduced sample count.

With this performance uplift I have used some of the extra wiggle room to add detail textures to the surfaces of the planets. I still have most of the planets to do, but these are the changes coming to the config:

Textures:

  • detailTexLow
  • detailTexMid
  • detailTexHigh
  • detailNormalLow
  • detailNormalMid
  • detailNormalHigh
  • detailTexSteepLow
  • detailTexSteepMid
  • detailTexSteepHigh
  • detailNormalLow
  • detailNormalMid
  • detailNormalHigh

Properties:

  • detailResolution - The resolution of the detail textures for the current planet - this is important because they must all be the same size!
  • detailOffset - Height on the displacement map at which the detail textures display
  • detailPower - Blending power between detail and no detail
  • detailRange - Range at which the detail texture is visible
  • detail<Low/Mid/High/SteepLow/SteepMid/SteepHigh>Scale - Scale of the detail textures

Even with the introduction of the new detail textures, performance is still much faster than Parallax 1.1.1 (the current version). I'm also working on MacOSX and Linux support, and I hope to get it working in time so you guys can use the mod too :)

Feature - Collision

I'm sure most of you are looking forward to this - Collisions! Disclaimer: Not tried and tested ingame. This is not a confirmed feature.

By casting a ray from the ship towards the ground, I can sample the textures at that position and perform the biplanar coordinates calculation to get the displacement and vertex normal direction. I can then move a plane in the normal direction to push the craft's wheels up and down. Here's a demo of this in action:

Please note that this is a gif and the framerate is not representative of the framerate you should expect. I've tested 50 orbs rolling at the same time and maintaining 60fps

https://thumbs.gfycat.com/WhichElatedGecko-mobile.mp4

I look forward to being able to release this to you all :) 

 

Edited by Gameslinx
Link to post
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...