Skip to content

Commit

Permalink
DiligentCore.NET: Fixed the method IShaderResourceVariable:SetArray
Browse files Browse the repository at this point in the history
  • Loading branch information
MikhailGorobets committed Oct 28, 2023
1 parent a5e20cc commit bd79ae8
Showing 1 changed file with 42 additions and 0 deletions.
42 changes: 42 additions & 0 deletions Graphics/GraphicsEngine.NET/ShaderResourceVariable.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
/*
* Copyright 2019-2023 Diligent Graphics LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* In no event and under no legal theory, whether in tort (including negligence),
* contract, or otherwise, unless required by applicable law (such as deliberate
* and grossly negligent acts) or agreed to in writing, shall any Contributor be
* liable for any damages, including any direct, indirect, special, incidental,
* or consequential damages of any character arising as a result of this License or
* out of the use or inability to use the software (including but not limited to damages
* for loss of goodwill, work stoppage, computer failure or malfunction, or any and
* all other commercial damages or losses), even if such Contributor has been advised
* of the possibility of such damages.
*/

using System;

namespace Diligent;

public partial class IShaderResourceVariable
{
public unsafe void SetArray(IDeviceObject[] objects, uint firstElement, SetShaderResourceFlags flags)
{
var ppObjects = stackalloc IntPtr[objects.Length];
for (var i = 0; i < objects.Length; i++)
ppObjects[i] = objects[i].NativePointer;

SetArray(ppObjects, firstElement, (uint)objects.Length, flags);
GC.KeepAlive(objects);
}
}

0 comments on commit bd79ae8

Please sign in to comment.