Information Security ˗ˋˏ ♡ ˎˊ˗

Programming/C#

[C#자료구조와알고리즘] 환경설정

토오쓰 2020. 8. 4. 13:08

환경설정

게임은 무한루프 안에서 대부분 동작이 된다.

3가지 단계로 진행

- 입력: 사용자가 키보드나 마우스로 입력하는 INPUT을 감지하는 단계
- 로직 
- 렌더링: 게임 그래픽을 이용하여 화면에 출력하는 단계

 

 

프레임 고정, 프레임 관리

- FPS 프레임: 1초에 몇 번 수행되고 있는가?

- 60프레임 OK, 30 프레임 이하로 NO

 

코드

using System;

namespace CSharpAlgorithm
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.CursorVisible = false;
            const int WAIT_TICK = 1000 / 30;
            const char CIRCLE = '\u25cf';
            int lastTick = 0;
            while (true)
            {
                
                #region 프레임 관리
                //만약에 경과한 시간이 1/30초보다 작다면
                int currentTick = System.Environment.TickCount;
                if (currentTick - lastTick < WAIT_TICK)
                    continue;
                lastTick = currentTick;
                #endregion

                //입력
                //로직
                //렌더링
                Console.SetCursorPosition(0, 0);

                for (int i = 0; i < 25; i++)
                {
                    for (int j = 0; j < 25; j++)
                    {
                        Console.ForegroundColor = ConsoleColor.Blue;
                        Console.Write(CIRCLE);
                    }
                    Console.WriteLine();
                }
            }
        }
    }
}

 

 

실행결과