public void BeginInstance(Backend backend, Camera camera, int renderStateId) { if (!Initialized) { Initialize(backend); } backend.BeginInstance(Shader.Handle, TextureHandles, samplers: Samplers, renderStateId: renderStateId); for (var i = 0; i < SamplerToTexture.Length; i++) { backend.BindShaderVariable(SamplerToTexture[i], i); } backend.BindShaderVariable(Handles.Time, backend.ElapsedTime); backend.BindShaderVariable(Handles.CameraPosition, ref camera.Position); }