Various stride utilities / projects (stride3d.net)
Implementation of https://github.com/sebh/UnrealEngineSkyAtmosphere
- Add
TR.Stride.Atmosphereto your project - Add AtmosphereRenderFeature to graphics compositor
- Add SimpleGroupToRenderStageSelector to the newly added render feature, set effect name to AtmosphereRenderSkyRayMarchingEffect
- In MeshRenderFeature add a new sub render feature `AtmosphereTransparentRenderFeature
- MeshRenderFeature render stage selector change effect name in Mesh Transaprent render stage selector from ForwardShadingEffect to AtmosphereForwardShadingEffect
- Change LightDirectionalGroupRenderer to AtmosphereLightDirectionalGroupRenderer in MeshRenderFeature -> ForwardLightingRenderFeeature
- Make sure "Bind Depth As Resource During Transparent Rendering" is checked on the Forward renderer node (this is the default setting)
- Create game object, add light component with type = Sun, this is basically just a regular directional light.
- Create game object, add atmosphere component, link with sun light
- Done :)
- Atmosphere can not be moved
- Diretional light might be incorrect in editor after a hot reload, this is due to an issue in stride where component references are not correctly restored
Implementation of https://github.com/gasgiant/FFT-Ocean/
- Add
TR.Stride.Oceanto your project - Create an empty entity
- Add OceanComponent to the entity
Custom materials and models can be generated by implementing the IOceanMesh and IOceanMaterial interfaces, default implementations of a basic lod material and corresponding clip mesh are provided. The material implementation can be set to return null in case custom render features are used instead of the regular material system.
- Currently requires that you have at least one other model in your scene, it will crash due to a missing model processor otherwise.
- No MipMaps atm, generation exists in the code base but it does not look very well. Uncomment code in
WaveCascade.csto enable, and modifyOceanEmissive.sdslto useTextureName.Sample(sampler, uv)instead ofTextureName.SampleLevel(sampler, uv, 0)to enable usage in pixel shader.