/// <summary> /// Initializes a new instance of the <see cref="ShaderProgram"/> class. /// </summary> /// <param name="renderContextImp">The <see cref="IRenderContextImp"/>.</param> /// <param name="shaderProgramImp">The <see cref="IShaderProgramImp"/>.</param> internal ShaderProgram(IRenderContextImp renderContextImp, IShaderProgramImp shaderProgramImp) { _spi = shaderProgramImp; _rci = renderContextImp; _paramsByName = new Dictionary <string, ShaderParamInfo>(); foreach (ShaderParamInfo info in _rci.GetShaderParamList(_spi)) { _paramsByName.Add(info.Name, info); } }
/// <summary> /// Initializes a new instance of the <see cref="ShaderProgram"/> class. /// </summary> /// <param name="renderContextImp">The <see cref="IRenderContextImp"/>.</param> /// <param name="shaderProgramImp">The <see cref="IShaderProgramImp"/>.</param> internal ShaderProgram(IRenderContextImp renderContextImp, IShaderProgramImp shaderProgramImp) { _spi = shaderProgramImp; _rci = renderContextImp; _paramsByName = new Dictionary<string, IShaderParam>(); foreach (ShaderParamInfo info in _rci.GetShaderParamList(_spi)) { _paramsByName.Add(info.Name, info.Handle); } //_paramsByName = new Dictionary<string, ShaderParamInfo>(); //foreach (ShaderParamInfo info in _rci.GetShaderParamList(_spi)) //{ // ShaderParamInfo newInfo = new ShaderParamInfo() // { // Handle = info.Handle, // Name = info.Name, // Type = info.Type, // Size = info.Size, // }; // _paramsByName.Add(info.Name, newInfo); //} }