diff options
Diffstat (limited to 'src/Simulation.cpp')
| -rw-r--r-- | src/Simulation.cpp | 220 |
1 files changed, 110 insertions, 110 deletions
diff --git a/src/Simulation.cpp b/src/Simulation.cpp index 039d191..146fc7d 100644 --- a/src/Simulation.cpp +++ b/src/Simulation.cpp @@ -242,92 +242,92 @@ enum ShaderInputsGL2 #if WAVEWORKS_ENABLE_D3D11 const GFSDK_WaveWorks_ShaderInput_Desc ShaderInputDescsD3D11[NumShaderInputsD3D11] = { - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_ConstantBuffer, "nvsf_attr_vs_buffer", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "nvsf_g_samplerDisplacementMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "nvsf_g_samplerDisplacementMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "nvsf_g_samplerDisplacementMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "nvsf_g_samplerDisplacementMap3", 3 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "nvsf_g_textureDisplacementMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "nvsf_g_textureDisplacementMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "nvsf_g_textureDisplacementMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "nvsf_g_textureDisplacementMap3", 3 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_ConstantBuffer, "nvsf_attr_vs_buffer", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "nvsf_g_samplerDisplacementMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "nvsf_g_samplerDisplacementMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "nvsf_g_samplerDisplacementMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "nvsf_g_samplerDisplacementMap3", 3 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "nvsf_g_textureDisplacementMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "nvsf_g_textureDisplacementMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "nvsf_g_textureDisplacementMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "nvsf_g_textureDisplacementMap3", 3 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_ConstantBuffer, "nvsf_attr_ps_buffer", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "nvsf_g_samplerGradientMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "nvsf_g_samplerGradientMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "nvsf_g_samplerGradientMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "nvsf_g_samplerGradientMap3", 3 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "nvsf_g_textureGradientMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "nvsf_g_textureGradientMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "nvsf_g_textureGradientMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "nvsf_g_textureGradientMap3", 3 } + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_ConstantBuffer, "attr_vs_buffer", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "g_samplerDisplacementMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "g_samplerDisplacementMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "g_samplerDisplacementMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "g_samplerDisplacementMap3", 3 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "g_textureDisplacementMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "g_textureDisplacementMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "g_textureDisplacementMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "g_textureDisplacementMap3", 3 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_ConstantBuffer, "attr_vs_buffer", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "g_samplerDisplacementMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "g_samplerDisplacementMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "g_samplerDisplacementMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "g_samplerDisplacementMap3", 3 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "g_textureDisplacementMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "g_textureDisplacementMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "g_textureDisplacementMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "g_textureDisplacementMap3", 3 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_ConstantBuffer, "attr_ps_buffer", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "g_samplerGradientMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "g_samplerGradientMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "g_samplerGradientMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "g_samplerGradientMap3", 3 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "g_textureGradientMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "g_textureGradientMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "g_textureGradientMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "g_textureGradientMap3", 3 } }; #endif // WAVEWORKS_ENABLE_D3D11 #if WAVEWORKS_ENABLE_GNM const GFSDK_WaveWorks_ShaderInput_Desc ShaderInputDescsGnm[NumShaderInputsGnm] = { - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_ConstantBuffer, "nvsf_attr_vs_buffer", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "nvsf_g_samplerDisplacementMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "nvsf_g_samplerDisplacementMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "nvsf_g_samplerDisplacementMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "nvsf_g_samplerDisplacementMap3", 3 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "nvsf_g_textureDisplacementMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "nvsf_g_textureDisplacementMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "nvsf_g_textureDisplacementMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "nvsf_g_textureDisplacementMap3", 3 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_ConstantBuffer, "nvsf_attr_vs_buffer", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "nvsf_g_samplerDisplacementMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "nvsf_g_samplerDisplacementMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "nvsf_g_samplerDisplacementMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "nvsf_g_samplerDisplacementMap3", 3 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "nvsf_g_textureDisplacementMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "nvsf_g_textureDisplacementMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "nvsf_g_textureDisplacementMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "nvsf_g_textureDisplacementMap3", 3 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_ConstantBuffer, "nvsf_attr_ps_buffer", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "nvsf_g_samplerGradientMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "nvsf_g_samplerGradientMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "nvsf_g_samplerGradientMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "nvsf_g_samplerGradientMap3", 3 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "nvsf_g_textureGradientMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "nvsf_g_textureGradientMap1", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "nvsf_g_textureGradientMap2", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "nvsf_g_textureGradientMap3", 3 } + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_ConstantBuffer, "attr_vs_buffer", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "g_samplerDisplacementMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "g_samplerDisplacementMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "g_samplerDisplacementMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Sampler, "g_samplerDisplacementMap3", 3 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "g_textureDisplacementMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "g_textureDisplacementMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "g_textureDisplacementMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::VertexShader_Texture, "g_textureDisplacementMap3", 3 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_ConstantBuffer, "attr_vs_buffer", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "g_samplerDisplacementMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "g_samplerDisplacementMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "g_samplerDisplacementMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Sampler, "g_samplerDisplacementMap3", 3 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "g_textureDisplacementMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "g_textureDisplacementMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "g_textureDisplacementMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::DomainShader_Texture, "g_textureDisplacementMap3", 3 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_ConstantBuffer, "attr_ps_buffer", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "g_samplerGradientMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "g_samplerGradientMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "g_samplerGradientMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Sampler, "g_samplerGradientMap3", 3 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "g_textureGradientMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "g_textureGradientMap1", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "g_textureGradientMap2", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::PixelShader_Texture, "g_textureGradientMap3", 3 } }; #endif // WAVEWORKS_ENABLE_GNM #if WAVEWORKS_ENABLE_GL const GFSDK_WaveWorks_ShaderInput_Desc ShaderInputDescsGL2[NumShaderInputsGL2] = { - { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_TextureBindLocation, "nvsf_g_samplerDisplacementMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_TextureBindLocation, "nvsf_g_samplerDisplacementMap1", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_TextureBindLocation, "nvsf_g_samplerDisplacementMap2", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_TextureBindLocation, "nvsf_g_samplerDisplacementMap3", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_TextureBindLocation, "nvsf_g_samplerGradientMap0", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_TextureBindLocation, "nvsf_g_samplerGradientMap1", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_TextureBindLocation, "nvsf_g_samplerGradientMap2", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_TextureBindLocation, "nvsf_g_samplerGradientMap3", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_TextureArrayBindLocation, "nvsf_g_samplerDisplacementMapTextureArray", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_TextureArrayBindLocation, "nvsf_g_samplerGradientMapTextureArray", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_UniformLocation, "nvsf_g_WorldEye", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_UniformLocation, "nvsf_g_UseTextureArrays", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_UniformLocation, "nvsf_g_UVScaleCascade0123", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "nvsf_g_TexelLength_x2_PS", 0 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "nvsf_g_Cascade1Scale_PS", 1 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "nvsf_g_Cascade1TexelScale_PS", 2 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "nvsf_g_Cascade1UVOffset_PS", 3 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "nvsf_g_Cascade2Scale_PS", 4 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "nvsf_g_Cascade2TexelScale_PS", 5 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "nvsf_g_Cascade2UVOffset_PS", 6 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "nvsf_g_Cascade3Scale_PS", 7 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "nvsf_g_Cascade3TexelScale_PS", 8 }, - { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "nvsf_g_Cascade3UVOffset_PS", 9 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_TextureBindLocation, "g_samplerDisplacementMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_TextureBindLocation, "g_samplerDisplacementMap1", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_TextureBindLocation, "g_samplerDisplacementMap2", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_TextureBindLocation, "g_samplerDisplacementMap3", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_TextureBindLocation, "g_samplerGradientMap0", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_TextureBindLocation, "g_samplerGradientMap1", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_TextureBindLocation, "g_samplerGradientMap2", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_TextureBindLocation, "g_samplerGradientMap3", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_TextureArrayBindLocation, "g_samplerDisplacementMapTextureArray", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_TextureArrayBindLocation, "g_samplerGradientMapTextureArray", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_UniformLocation, "g_WorldEye", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_UniformLocation, "g_UseTextureArrays", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_VertexShader_UniformLocation, "g_UVScaleCascade0123", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "g_TexelLength_x2_PS", 0 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "g_Cascade1Scale_PS", 1 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "g_Cascade1TexelScale_PS", 2 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "g_Cascade1UVOffset_PS", 3 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "g_Cascade2Scale_PS", 4 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "g_Cascade2TexelScale_PS", 5 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "g_Cascade2UVOffset_PS", 6 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "g_Cascade3Scale_PS", 7 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "g_Cascade3TexelScale_PS", 8 }, + { GFSDK_WaveWorks_ShaderInput_Desc::GL_FragmentShader_UniformLocation, "g_Cascade3UVOffset_PS", 9 }, }; #endif // __GL__ struct ps_calcgradient_cbuffer @@ -353,10 +353,10 @@ struct vs_attr_cbuffer struct ps_foamgeneration_cbuffer { - float nvsf_g_DissipationFactors_BlurExtents; - float nvsf_g_DissipationFactors_Fadeout; - float nvsf_g_DissipationFactors_Accumulation; - float nvsf_g_FoamGenerationThreshold; + float g_DissipationFactors_BlurExtents; + float g_DissipationFactors_Fadeout; + float g_DissipationFactors_Accumulation; + float g_FoamGenerationThreshold; gfsdk_float4 g_SourceComponents; gfsdk_float4 g_UVOffsets; }; @@ -772,15 +772,15 @@ HRESULT GFSDK_WaveWorks_Simulation::initShaders() if(m_d3d._GL2.m_GradCalcProgram == 0) return E_FAIL; // Gradient calculation program binding - m_d3d._GL2.m_GradCalcUniformLocation_Scales = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"nvsf_g_Scales"); CHECK_GL_ERRORS; - m_d3d._GL2.m_GradCalcUniformLocation_OneBack = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"nvsf_g_OneTexel_Back"); CHECK_GL_ERRORS; - m_d3d._GL2.m_GradCalcUniformLocation_OneFront = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"nvsf_g_OneTexel_Front"); CHECK_GL_ERRORS; - m_d3d._GL2.m_GradCalcUniformLocation_OneLeft = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"nvsf_g_OneTexel_Left"); CHECK_GL_ERRORS; - m_d3d._GL2.m_GradCalcUniformLocation_OneRight = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"nvsf_g_OneTexel_Right"); CHECK_GL_ERRORS; - m_d3d._GL2.m_GradCalcTextureBindLocation_DisplacementMap = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"nvsf_g_samplerDisplacementMap"); CHECK_GL_ERRORS; + m_d3d._GL2.m_GradCalcUniformLocation_Scales = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"g_Scales"); CHECK_GL_ERRORS; + m_d3d._GL2.m_GradCalcUniformLocation_OneBack = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"g_OneTexel_Back"); CHECK_GL_ERRORS; + m_d3d._GL2.m_GradCalcUniformLocation_OneFront = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"g_OneTexel_Front"); CHECK_GL_ERRORS; + m_d3d._GL2.m_GradCalcUniformLocation_OneLeft = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"g_OneTexel_Left"); CHECK_GL_ERRORS; + m_d3d._GL2.m_GradCalcUniformLocation_OneRight = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"g_OneTexel_Right"); CHECK_GL_ERRORS; + m_d3d._GL2.m_GradCalcTextureBindLocation_DisplacementMap = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_GradCalcProgram,"g_samplerDisplacementMap"); CHECK_GL_ERRORS; m_d3d._GL2.m_GradCalcTextureUnit_DisplacementMap = 0; - m_d3d._GL2.m_GradCalcAttributeLocation_Pos = NVSDK_GLFunctions.glGetAttribLocation(m_d3d._GL2.m_GradCalcProgram, "nvsf_vInPos"); CHECK_GL_ERRORS; - m_d3d._GL2.m_GradCalcAttributeLocation_TexCoord = NVSDK_GLFunctions.glGetAttribLocation(m_d3d._GL2.m_GradCalcProgram, "nvsf_vInTexCoord"); CHECK_GL_ERRORS; + m_d3d._GL2.m_GradCalcAttributeLocation_Pos = NVSDK_GLFunctions.glGetAttribLocation(m_d3d._GL2.m_GradCalcProgram, "vInPos"); CHECK_GL_ERRORS; + m_d3d._GL2.m_GradCalcAttributeLocation_TexCoord = NVSDK_GLFunctions.glGetAttribLocation(m_d3d._GL2.m_GradCalcProgram, "vInTexCoord"); CHECK_GL_ERRORS; // Creating foam generation program if(m_d3d._GL2.m_FoamGenProgram != 0) NVSDK_GLFunctions.glDeleteProgram(m_d3d._GL2.m_FoamGenProgram); CHECK_GL_ERRORS; @@ -788,13 +788,13 @@ HRESULT GFSDK_WaveWorks_Simulation::initShaders() if(m_d3d._GL2.m_FoamGenProgram == 0) return E_FAIL; // Foam accumulation program binding - m_d3d._GL2.m_FoamGenUniformLocation_DissipationFactors = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_FoamGenProgram,"nvsf_g_DissipationFactors"); CHECK_GL_ERRORS; - m_d3d._GL2.m_FoamGenUniformLocation_SourceComponents = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_FoamGenProgram,"nvsf_g_SourceComponents"); CHECK_GL_ERRORS; - m_d3d._GL2.m_FoamGenUniformLocation_UVOffsets = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_FoamGenProgram,"nvsf_g_UVOffsets"); CHECK_GL_ERRORS; - m_d3d._GL2.m_FoamGenTextureBindLocation_EnergyMap = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_FoamGenProgram,"nvsf_g_samplerEnergyMap"); CHECK_GL_ERRORS; + m_d3d._GL2.m_FoamGenUniformLocation_DissipationFactors = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_FoamGenProgram,"g_DissipationFactors"); CHECK_GL_ERRORS; + m_d3d._GL2.m_FoamGenUniformLocation_SourceComponents = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_FoamGenProgram,"g_SourceComponents"); CHECK_GL_ERRORS; + m_d3d._GL2.m_FoamGenUniformLocation_UVOffsets = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_FoamGenProgram,"g_UVOffsets"); CHECK_GL_ERRORS; + m_d3d._GL2.m_FoamGenTextureBindLocation_EnergyMap = NVSDK_GLFunctions.glGetUniformLocation(m_d3d._GL2.m_FoamGenProgram,"g_samplerEnergyMap"); CHECK_GL_ERRORS; m_d3d._GL2.m_FoamGenTextureUnit_EnergyMap = 0; - m_d3d._GL2.m_FoamGenAttributeLocation_Pos = NVSDK_GLFunctions.glGetAttribLocation(m_d3d._GL2.m_FoamGenProgram, "nvsf_vInPos"); CHECK_GL_ERRORS; - m_d3d._GL2.m_FoamGenAttributeLocation_TexCoord = NVSDK_GLFunctions.glGetAttribLocation(m_d3d._GL2.m_FoamGenProgram, "nvsf_vInTexCoord"); CHECK_GL_ERRORS; + m_d3d._GL2.m_FoamGenAttributeLocation_Pos = NVSDK_GLFunctions.glGetAttribLocation(m_d3d._GL2.m_FoamGenProgram, "vInPos"); CHECK_GL_ERRORS; + m_d3d._GL2.m_FoamGenAttributeLocation_TexCoord = NVSDK_GLFunctions.glGetAttribLocation(m_d3d._GL2.m_FoamGenProgram, "vInTexCoord"); CHECK_GL_ERRORS; } break; #endif @@ -1457,10 +1457,10 @@ HRESULT GFSDK_WaveWorks_Simulation::updateGradientMapsD3D11(Graphics_Context* pG D3D11_CB_Updater<ps_foamgeneration_cbuffer> cbu(pDC_d3d11,m_d3d._11.m_pd3d11FoamGenPixelShaderCB); cbu.cb().g_SourceComponents = gfsdk_make_float4(0,0,0.0f,1.0f); // getting component W of grad map as source for energy cbu.cb().g_UVOffsets = gfsdk_make_float4(0,1.0f,0,0); // blurring by Y - cbu.cb().nvsf_g_DissipationFactors_Accumulation = m_params.cascades[cascade].foam_generation_amount*(float)m_dFoamSimDeltaTime*50.0f; - cbu.cb().nvsf_g_DissipationFactors_Fadeout = pow(m_params.cascades[cascade].foam_falloff_speed,(float)m_dFoamSimDeltaTime*50.0f); - cbu.cb().nvsf_g_DissipationFactors_BlurExtents = min(0.5f,m_params.cascades[cascade].foam_dissipation_speed*(float)m_dFoamSimDeltaTime*m_params.cascades[0].fft_period * (1000.0f/m_params.cascades[0].fft_period)/m_params.cascades[cascade].fft_period)/dmap_dim; - cbu.cb().nvsf_g_FoamGenerationThreshold = m_params.cascades[cascade].foam_generation_threshold; + cbu.cb().g_DissipationFactors_Accumulation = m_params.cascades[cascade].foam_generation_amount*(float)m_dFoamSimDeltaTime*50.0f; + cbu.cb().g_DissipationFactors_Fadeout = pow(m_params.cascades[cascade].foam_falloff_speed,(float)m_dFoamSimDeltaTime*50.0f); + cbu.cb().g_DissipationFactors_BlurExtents = min(0.5f,m_params.cascades[cascade].foam_dissipation_speed*(float)m_dFoamSimDeltaTime*m_params.cascades[0].fft_period * (1000.0f/m_params.cascades[0].fft_period)/m_params.cascades[cascade].fft_period)/dmap_dim; + cbu.cb().g_FoamGenerationThreshold = m_params.cascades[cascade].foam_generation_threshold; } pDC_d3d11->PSSetConstantBuffers(0, 1, &m_d3d._11.m_pd3d11FoamGenPixelShaderCB); @@ -1507,10 +1507,10 @@ HRESULT GFSDK_WaveWorks_Simulation::updateGradientMapsD3D11(Graphics_Context* pG D3D11_CB_Updater<ps_foamgeneration_cbuffer> cbu(pDC_d3d11,m_d3d._11.m_pd3d11FoamGenPixelShaderCB); cbu.cb().g_SourceComponents = gfsdk_make_float4(1.0f,0,0,0); // getting component R of energy map as source for energy cbu.cb().g_UVOffsets = gfsdk_make_float4(1.0f,0,0,0); // blurring by X - cbu.cb().nvsf_g_DissipationFactors_Accumulation = 0.0f; - cbu.cb().nvsf_g_DissipationFactors_Fadeout = 1.0f; - cbu.cb().nvsf_g_DissipationFactors_BlurExtents = min(0.5f,m_params.cascades[cascade].foam_dissipation_speed*(float)m_dFoamSimDeltaTime* (1000.0f/m_params.cascades[0].fft_period) * m_params.cascades[0].fft_period/m_params.cascades[cascade].fft_period)/dmap_dim; - cbu.cb().nvsf_g_FoamGenerationThreshold = m_params.cascades[cascade].foam_generation_threshold; + cbu.cb().g_DissipationFactors_Accumulation = 0.0f; + cbu.cb().g_DissipationFactors_Fadeout = 1.0f; + cbu.cb().g_DissipationFactors_BlurExtents = min(0.5f,m_params.cascades[cascade].foam_dissipation_speed*(float)m_dFoamSimDeltaTime* (1000.0f/m_params.cascades[0].fft_period) * m_params.cascades[0].fft_period/m_params.cascades[cascade].fft_period)/dmap_dim; + cbu.cb().g_FoamGenerationThreshold = m_params.cascades[cascade].foam_generation_threshold; } pDC_d3d11->PSSetConstantBuffers(0, 1, &m_d3d._11.m_pd3d11FoamGenPixelShaderCB); @@ -1840,10 +1840,10 @@ HRESULT GFSDK_WaveWorks_Simulation::updateGradientMapsGnm(Graphics_Context* GNM_ ps_foamgeneration_cbuffer* pFGCB = (ps_foamgeneration_cbuffer*)gnmxWrap->allocateFromCommandBuffer(*gfxContext, sizeof(ps_foamgeneration_cbuffer), Gnm::kEmbeddedDataAlignment4); pFGCB->g_SourceComponents = gfsdk_make_float4(0,0,0.0f,1.0f); // getting component W of grad map as source for energy pFGCB->g_UVOffsets = gfsdk_make_float4(0,1.0f,0,0); // blurring by Y - pFGCB->nvsf_g_DissipationFactors_Accumulation = m_params.cascades[cascade].foam_generation_amount*(float)m_dFoamSimDeltaTime*50.0f; - pFGCB->nvsf_g_DissipationFactors_Fadeout = pow(m_params.cascades[cascade].foam_falloff_speed,(float)m_dFoamSimDeltaTime*50.0f); - pFGCB->nvsf_g_DissipationFactors_BlurExtents = min(0.5f,m_params.cascades[cascade].foam_dissipation_speed*(float)m_dFoamSimDeltaTime*m_params.cascades[0].fft_period * (1000.0f/m_params.cascades[0].fft_period)/m_params.cascades[cascade].fft_period)/dmap_dim; - pFGCB->nvsf_g_FoamGenerationThreshold = m_params.cascades[cascade].foam_generation_threshold; + pFGCB->g_DissipationFactors_Accumulation = m_params.cascades[cascade].foam_generation_amount*(float)m_dFoamSimDeltaTime*50.0f; + pFGCB->g_DissipationFactors_Fadeout = pow(m_params.cascades[cascade].foam_falloff_speed,(float)m_dFoamSimDeltaTime*50.0f); + pFGCB->g_DissipationFactors_BlurExtents = min(0.5f,m_params.cascades[cascade].foam_dissipation_speed*(float)m_dFoamSimDeltaTime*m_params.cascades[0].fft_period * (1000.0f/m_params.cascades[0].fft_period)/m_params.cascades[cascade].fft_period)/dmap_dim; + pFGCB->g_FoamGenerationThreshold = m_params.cascades[cascade].foam_generation_threshold; Gnm::Buffer buffer; buffer.initAsConstantBuffer(pFGCB, sizeof(*pFGCB)); @@ -1891,9 +1891,9 @@ HRESULT GFSDK_WaveWorks_Simulation::updateGradientMapsGnm(Graphics_Context* GNM_ ps_foamgeneration_cbuffer* pFGCB = (ps_foamgeneration_cbuffer*)gnmxWrap->allocateFromCommandBuffer(*gfxContext, sizeof(ps_foamgeneration_cbuffer), Gnm::kEmbeddedDataAlignment4); pFGCB->g_SourceComponents = gfsdk_make_float4(1.0f,0,0,0); // getting component R of energy map as source for energy pFGCB->g_UVOffsets = gfsdk_make_float4(1.0f,0,0,0); // blurring by X - pFGCB->nvsf_g_DissipationFactors_Accumulation = 0.0f; - pFGCB->nvsf_g_DissipationFactors_Fadeout = 1.0f; - pFGCB->nvsf_g_DissipationFactors_BlurExtents = min(0.5f,m_params.cascades[cascade].foam_dissipation_speed*(float)m_dFoamSimDeltaTime* (1000.0f/m_params.cascades[0].fft_period) * m_params.cascades[0].fft_period/m_params.cascades[cascade].fft_period)/dmap_dim; + pFGCB->g_DissipationFactors_Accumulation = 0.0f; + pFGCB->g_DissipationFactors_Fadeout = 1.0f; + pFGCB->g_DissipationFactors_BlurExtents = min(0.5f,m_params.cascades[cascade].foam_dissipation_speed*(float)m_dFoamSimDeltaTime* (1000.0f/m_params.cascades[0].fft_period) * m_params.cascades[0].fft_period/m_params.cascades[cascade].fft_period)/dmap_dim; Gnm::Buffer buffer; buffer.initAsConstantBuffer(pFGCB, sizeof(*pFGCB)); |