예제 #1
0
        private void Update()
        {
            CharacterState state = character.state;

            if (inputBuffer.Count != 0)
            {
                lastInput = inputBuffer.Dequeue();
            }

            state = character.Move(state, lastInput, serverTick);
            character.SyncState(state);

            state.position  = transform.position;
            character.state = state;
            character.OnServerStateChange(state, state);
        }
예제 #2
0
 public void AddInput(CharacterInput input)
 {
     pendingInputs.AddLast(input);
     ApplyInput(input);
     character.SyncState(predictedState);
 }
예제 #3
0
 private void SetObservedState(CharacterState newState)
 {
     character.SyncState(newState);
 }