示例#1
0
        internal unsafe override void OnUpdateResource(object sender, EventArgs e)
        {
            base.OnUpdateResource(sender, e);

            (var vs, var ps) = GetShaderBytesCode();
            fixed(byte *vsPtr = vs)
            fixed(byte *psPtr = ps)
            {
                var data = new ShadersGroupData
                {
                    VertexShader       = new IntPtr(vsPtr),
                    VertexShaderLength = (uint?)vs?.Length ?? 0,
                    PixelShader        = new IntPtr(psPtr),
                    PixelShaderLength  = (uint?)ps?.Length ?? 0
                };

                MediaResourceManager.Current.UpdateShadersGroup(_shadersRes.Value, ref data);
            }
        }
示例#2
0
 public void UpdateShadersGroup(IResource res, ref ShadersGroupData data)
 {
     _resourceManager.UpdateShadersGroup(res, ref data);
 }