2019-12-05 15:34:47 -05:00
|
|
|
using Ryujinx.Graphics.Gpu.Memory;
|
2019-10-13 02:02:07 -04:00
|
|
|
using Ryujinx.Graphics.Gpu.State;
|
|
|
|
|
|
|
|
namespace Ryujinx.Graphics.Gpu.Engine
|
|
|
|
{
|
|
|
|
partial class Methods
|
|
|
|
{
|
2019-11-21 21:46:14 -05:00
|
|
|
private void UniformBufferUpdate(GpuState state, int argument)
|
2019-10-13 02:02:07 -04:00
|
|
|
{
|
2019-11-21 21:46:14 -05:00
|
|
|
var uniformBuffer = state.Get<UniformBufferState>(MethodOffset.UniformBufferState);
|
2019-10-13 02:02:07 -04:00
|
|
|
|
2019-12-05 15:34:47 -05:00
|
|
|
if (_context.MemoryManager.Translate(uniformBuffer.Address.Pack() + (uint)uniformBuffer.Offset) == MemoryManager.BadAddress)
|
|
|
|
{
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2019-10-13 02:02:07 -04:00
|
|
|
_context.MemoryAccessor.Write(uniformBuffer.Address.Pack() + (uint)uniformBuffer.Offset, argument);
|
|
|
|
|
2019-11-21 21:46:14 -05:00
|
|
|
state.SetUniformBufferOffset(uniformBuffer.Offset + 4);
|
2019-10-13 02:02:07 -04:00
|
|
|
|
|
|
|
_context.AdvanceSequence();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|