@dark_sylinc, just a question: have you managed to work on the Terra terrain code you posted anymore as i am excited to see this
I have downloaded it to check, have the demo compiling and from the code, it seems a great way of handling a new terrain system and love the way the info is passed to shaders now for hlms.
You mentioned it works on your PC, so i wonder if its something related to my card. I have a GTX 560ti and i receive these errors from the vertex shader:
Code: Select all
0(114) : error C7011: implicit cast from "int" to "uint"
0(120) : error C7011: implicit cast from "ivec2" to "uvec2"
12:06:23: OGRE EXCEPTION(3:RenderingAPIException): Vertex Program 3758096384VertexShader_vs failed to compile. See compile log above for details. in GLSLShader::compile at E:\00_Skyline Integrations\Ogre3D SDK\Source\v2-1\RenderSystems\GL3Plus\src\GLSL\OgreGLSLShader.cpp (line 297)
vertexShader_vs.glsl for Terra
I can remove the top error by placing a uint around gl_VertexID on this line:
Code: Select all
uVertexPos.y += gl_VertexID / cellData.numVertsPerLine.x;
like you did on a previous line.
The other error is on this line:
Code: Select all
uVertexPos = ivec2( uvec2(uVertexPos) << lodLevel );
i know this is a dirty hack, but i placed a uvec2 around the ivec2 and it compiled and moved onto the Fragment program which also had errors.
pixelShader_vs.glsl for Terra
This then throws an error like:
Code: Select all
12:32:14: GLSL compile log: 3758096384PixelShader_ps
0(280) : error C7563: assignment to uniform material
12:32:14: OGRE EXCEPTION(3:RenderingAPIException): Fragment Program 3758096384PixelShader_ps failed to compile. See compile log above for details. in GLSLShader::compile at E:\00_Skyline Integrations\Ogre3D SDK\Source\v2-1\RenderSystems\GL3Plus\src\GLSL\OgreGLSLShader.cpp (line 297)
and i haven't been able to get around this error.
Any ideas or a full solution?