Hey, finally got the videos and information you wanted. I had to reset all my Terra code to ogre3d's version and update to the latest pso branch in order to compile with the OptimizationStrategy.
So Latest source and identical shaders and Terra code. it is a lot better than it was now, but some problems remain
As with ourselves and our users, things tend to only get fixed when someone actually uses the codebase system and finds it needs fixed lol
So we understand how this feels
Keep it up!
Here are the materials: 1 is glossy and the other is fully rough.
I have pm'd you the textures to use
Lets look at the issues now
Issue 1) Forward 3D. This is mostly solved and works very well with lights that do not cast shadows. The moment you add a spot light with shadow casting in DX11 it will crash with this error in the Log:
Code: Select all
High-level program 3758096645PixelShader_ps encountered an error during loading and is thus not supported.
OGRE EXCEPTION(-2147467259:RenderingAPIException): Cannot compile D3D11 high-level shader 3758096645PixelShader_ps Errors:
E:\00_Skyline_SDK\Skyline - New Renderer\Win32_Release\3758096645PixelShader_ps.hlsl(128,14-26): error X4510: maximum ps_5_0 sampler register index (16) exceeded
in D3D11HLSLProgram::compileMicrocode at E:\00_Skyline Integrations\Ogre3D SDK\Source\v2-1-pso\RenderSystems\Direct3D11\src\OgreD3D11HLSLProgram.cpp (line 545)
High-level program 3758162181PixelShader_ps encountered an error during loading and is thus not supported.
OGRE EXCEPTION(-2147467259:RenderingAPIException): Cannot compile D3D11 high-level shader 3758162181PixelShader_ps Errors:
E:\00_Skyline_SDK\Skyline - New Renderer\Win32_Release\3758162181PixelShader_ps.hlsl(128,14-26): error X4510: maximum ps_5_0 sampler register index (16) exceeded
in D3D11HLSLProgram::compileMicrocode at E:\00_Skyline Integrations\Ogre3D SDK\Source\v2-1-pso\RenderSystems\Direct3D11\src\OgreD3D11HLSLProgram.cpp (line 545)
WARNING: Texture instance '[Hash 0x3a8c545d]' was defined as manually loaded, but no manual loader was provided. This Resource will be lost if it has to be reloaded.
And in OpenGL, this happens
If you keep adding spotlights, you will eventually lose all textures.
[youtube]k4fo9W-S214[/youtube]
The more spot lights added removes the other layers. I suspect the shadow maps are overwriting the other textures.
Does this mean we can have lights on terrain, but we cant have any shadows?
Issue 2) (Terra's fast Shadows that shadow over the landscape)
I have recorded a video from our engine, but the same happens in the demo.
Firstly, the scene with a skybox is OpenGL and the Black Sky is DX11 as the postFX sky issue seems to be there still from early 2.1
[youtube]_hNJbfQv3vM[/youtube]
Issue 3) Normal maps are now working and have nothing to report on them [SOLVED]
Issue 4)I can happily report that the Alpha channel does work well and can use all 4 textures correctly. [SOLVED]
The only thing that mislead me was the use of a png which does not support alpha, but transparency only using a layer mask, which didnt work to well.
So i used a DXT5 DDS and it seemed to resolve the problem
Anyway, here is a screenshot:
--------------------- Thats the end of the older issues --------------------------
Now for the newer issues i have located while testing, and have recorded videos if possible.
Issue 5) "reflection_map": Like the normal maps originally. You cannot add a envmap to the terrain. It simply does not generate the shaders. Again like shadows, maybe running out of slots in the shader.
Issue 6) A strange blackening when looking towards the lights direction with full roughness or black moving mess with Glossy.
This just makes the terrain look a bit strange and have tried to capture it the best i can for you in a video
Its hard to describe so best to watch the videos
Glossy Terrain material from folder:
[youtube]epCvPvmntoA[/youtube]
Rough Terrain material from folder:
[youtube]RF14k9RFEfg[/youtube]
--------------------- Just some extra info from a users perspective --------------------------
CTD means - Crash To Desktop
Q) How many terrains do you see with metallic textures? I understand its too provide a ful PBR shader for the terrain but most use cases this is not required and would be great to turn off.
Q) Will there be a base layer that covers the entire terrain with no blend map like in the older terrain system.
Another pointer is texture packing, if the shader is running out of texture space, then how about packing them like:
- Diffuse: (RGB - Diffuse) (A - Roughness), since roughness is a monochrome texture.
- Normal: (RGB - Normal) map (A - Displacement) - Would love to have POM on the terrain.
- (Optional) Metallic: (RGB - Metallic) (A - Detail map) - The detail map is a monochrome texture that adds more detail to the surface of the terrain so rocks that are large at a distance still have detail when close. Like Cryengine or Torque3D did.
Even in this packed form, it has the same amount of textures for full PBR and more, but saves another 4 textures. This could be another 4 shadow maps or something else.
Other things we would love to see, is a global normal map to pop those mountains right out haha
Q) How would we go about getting more paint layers?
wow. so much typing and videos. lol
I hope this helps
We understand that this is still being developed and have full faith that you will be able to pull it off
Good work so far!
Thanks for your time again