Jump to content

rbray89

Members
  • Posts

    2,719
  • Joined

  • Last visited

Everything posted by rbray89

  1. Yeah I really should have thought about this from the get-go. Luckily it is a pretty easy manual change to make in configs. I had to do this to be compatible with module manager, but it should let people do some cool things going forward I hope. The texture updates are the most exciting though, given that we can now either use similar memory for better looks, or lower memory and similar resolution.
  2. Yup! I posted a proof of concept on reddit a while back... https://www.reddit.com/r/KerbalSpaceProgram/comments/3s3m9g/working_on_celestial_shadows/ This is fixed Think better lighting for clouds
  3. Alrighty... So a slew of updates coming soon... unfortunately, there will be a big config change, but it will also allow better ModuleManager support. The new format is something like EVE_CLOUDS { OBJECT { name = Kerbin-clouds1 body = Kerbin altitude = 4000 detailSpeed = 0,6,0 settings { _DetailTex = BoulderCo/Atmosphere/Textures/detail1 _Color = 255,255,255,255 _MainTex { value = BoulderCo/Atmosphere/Textures/Clouds type = AlphaCubeMap alphaMask = ALPHAMAP_R } } ... TEXTURE_CONFIG { OBJECT { name=BoulderCo/Atmosphere/Textures/Clouds format=RGB24 isCubeMap=True texXn=BoulderCo/Atmosphere/Textures/CloudsXn texYn=BoulderCo/Atmosphere/Textures/CloudsYn texZn=BoulderCo/Atmosphere/Textures/CloudsZn texXp=BoulderCo/Atmosphere/Textures/CloudsXp texYp=BoulderCo/Atmosphere/Textures/CloudsYp texZp=BoulderCo/Atmosphere/Textures/CloudsZp } } You'll also notice that the _MainTex has a new form... this is an optional form for textures where more parameters can be edited. I've also added a new Texture Config Manager that allows detailed control over textures. No more relying on ATM and whatnot to ensure textures shipped in EVE configs are setup properly. These two changes allow us to introduce cube maps! This should address high-res issues on Macintosh machines (2k*2k textures look GREAT as it is) but will also allow some crazy levels of detail when using >2k textures. To save memory, we now allow alpha mapping (using RGB of textures to map to alpha). This allows us to use the same texture for multiple cloud maps! It just has to be created properly, and I would recommend using RGB24/RGBA32 as the format to avoid loss with Compressed textures. If you do use the uncompressed versions with alpha mapping, the memory will be the same, but the quality should be noticeably better! Expect pretty poor quality alpha if using DXT, but a QUARTER/THIRD of the memory usage when combined with alpha mapping. The GUI is also very slick now, being almost entirely procedurally built, allowing me to focus on other tasks rather than GUI maintenance, and I've been building lots of awesome functionality into it, so hopefully it will save me lots of time going forward. I'll probably post this update within the next week, along with a nice surprise! After that, I'll be working on lighting. Specifically celestial shadows and clouds.
  4. Alrighty... So a slew of updates coming soon... unfortunately, there will be a big config change, but it will also allow better ModuleManager support. The new format is something like EVE_CLOUDS { OBJECT { name = Kerbin-clouds1 body = Kerbin altitude = 4000 detailSpeed = 0,6,0 settings { _DetailTex = BoulderCo/Atmosphere/Textures/detail1 _Color = 255,255,255,255 _MainTex { value = BoulderCo/Atmosphere/Textures/Clouds type = AlphaCubeMap alphaMask = ALPHAMAP_R } } ... TEXTURE_CONFIG { OBJECT { name=BoulderCo/Atmosphere/Textures/Clouds format=RGB24 isCubeMap=True texXn=BoulderCo/Atmosphere/Textures/CloudsXn texYn=BoulderCo/Atmosphere/Textures/CloudsYn texZn=BoulderCo/Atmosphere/Textures/CloudsZn texXp=BoulderCo/Atmosphere/Textures/CloudsXp texYp=BoulderCo/Atmosphere/Textures/CloudsYp texZp=BoulderCo/Atmosphere/Textures/CloudsZp } } You'll also notice that the _MainTex has a new form... this is an optional form for textures where more parameters can be edited. I've also added a new Texture Config Manager that allows detailed control over textures. No more relying on ATM and whatnot to ensure textures shipped in EVE configs are setup properly. These two changes allow us to introduce cube maps! This should address high-res issues on Macintosh machines (2k*2k textures look GREAT as it is) but will also allow some crazy levels of detail when using >2k textures. To save memory, we now allow alpha mapping (using RGB of textures to map to alpha). This allows us to use the same texture for multiple cloud maps! It just has to be created properly, and I would recommend using RGB24/RGBA32 as the format to avoid loss with Compressed textures. If you do use the uncompressed versions with alpha mapping, the memory will be the same, but the quality should be noticeably better! Expect pretty poor quality alpha if using DXT, but a QUARTER/THIRD of the memory usage when combined with alpha mapping. The GUI is also very slick now, being almost entirely procedurally built, allowing me to focus on other tasks rather than GUI maintenance, and I've been building lots of awesome functionality into it, so hopefully it will save me lots of time going forward. I'll probably post this update within the next week, along with a nice surprise! After that, I'll be working on lighting. Specifically celestial shadows and clouds.
  5. I maintain a separate thread for development that includes the GUI key-combination. The reason for this is simple: some people probably shouldn't be messing around with the GUI. Those who find the development thread at least demonstrate the ability to search out other avenues of information. This is important as there are LOTS of parameters in the GUI, and I simply don't have the bandwidth to answer everyone's questions regarding them.
  6. There is a fix for this ready to be released soon.
  7. Ah! Figured the ocean out! I'll send you the info. Basically, I replace the ocean PQS with a "fake" clone that has isFakeBuild permanently set to false. This also leaves all the ocean FX in place as well.
  8. "Kopernicus" "RSS" If you are using RSS and others, you'll need to get config files that use the new body names. Look up RVE.
  9. I feel like I'm so close. I just need to figure out what is throwing a null reference exception in PQS.ResetSphere () PQS ocean = sphere.ChildSpheres[0]; ocean.parentSphere = null; ocean.transform.parent = null; FieldInfo field = typeof(PQS).GetFields(BindingFlags.Instance | BindingFlags.NonPublic).First( f => f.FieldType == typeof(PQS[])); field.SetValue(sphere, new PQS[] { }); PQSMod[] mods = ocean.GetComponentsInChildren<PQSMod>(); foreach (PQSMod mod in mods) { mod.transform.parent = null; GameObject.DestroyImmediate(mod); } GameObject.DestroyImmediate(ocean.gameObject); PQSMod_CelestialBodyTransform cbt = sphere.GetComponentsInChildren<PQSMod_CelestialBodyTransform>()[0]; cbt.secondaryFades = new PQSMod_CelestialBodyTransform.AltitudeFade[] { }; sphere.mapOcean = false;
  10. You may have to use reflection to get at the private members... //hack to get protected variable FieldInfo field = typeof(Sun).GetFields(BindingFlags.Instance | BindingFlags.NonPublic).First( f => f.Name == "scaledSunLight" ); Sunlight = (Light)field.GetValue(Sun.Instance);
  11. Techincally that would be Kopernicus. Needs to rename the Mun and Kerbin main-menu bodies.
  12. Is the extinction/sky shader working on scaled space? Whatever is working in scaled space should probably be on the render queue above the clouds. What are teh render queues of everything you render? Macro only: Particles: "Queue"="Transparent" Macro/scaled Clouds: "Queue" = "Transparent"
  13. Right now, cubemap support is a BIT iffy, but I hope to fix that soon. Basically, in the textures that support it (main texture of clouds only for now) The box gets checked, and that expands the options. The Type is changed to the cubemap type desired, and then the texture is set. Right now I plan to support 3! different cube mapping techniques. The first, is where -/+x, -/+y, -/+z = RGB in two different square textures are used to compute alpha. This method is a bit buggy right now, and results in visible seams. The next, is where 6 different square textures are stitched into the different sides. (-X, +Z, +X, -Z, +Y, -Y) Should work, but eats up lots of memory due to being uncompressed. Future: Same as above, but alpha-mapped so that the uncompressed textures can be "Compressed" to just re-map R/G/B/A to alpha. This will achieve the same memory savings as though they were compressed, but should offer significant quality improvements. I primarily wanted to get this release out there so the clouds would be visible in the main menu Yeah, I'm aware... the only person who can address this is blackrack.
  14. This does not help me in ANY capacity to help solve your issue. What version are you using? Logs? KSP Version?
  15. Hmm... well if you are removing the default ocean anyways, You may as well bump the order up As well, it looks like my PQS ocean removal doesn't hold when the PQS is Rebuilt. I think the flag might be cleared then. Not sure what to do about it, but I'll keep looking.
  16. Exactly. Ah, makes sense. Figured I'd check in-case. Yeah, that is what you want to make sure that the terrain doesn't "bleed-through" the ocean when cloud coverage is present. It won't let cloud shadows show on the ocean, but it will stop some of the glitches.
  17. Oh, and to fix the Shadows issue with terrain, just put the render queue higher. I'd put it on Transparent or transparent offset. "Queue" = "Transparent-20"
  18. I just had a great thought as well, you could halve the vertex/pixel count on the ocean plane and get a small performance boost that way.
  19. You'll need to create it as a component: GameObject go = new GameObject(); materialPQS = go.AddComponent<OceanDisable>(); materialPQS.Apply(celestialBody); You won't have to remove the material either now.
  20. For the most part, but there is some weirdness with cloud shadows.
×
×
  • Create New...