공장 게임에서 자원을 분배하는 방식은 크게 2가지로 정의할 수 있다.
Balacing과 Manifold이다.
간단하게 비유하자면 Balancing은 병렬, Manifold는 직렬 방식이라고 이해하면 된다.
사실 이렇게 용어로 정의하는 것도 크게 의미가 있다고 생각되진 않는다. 왜냐하면 게임을 하다보면 알아서 습득하는 기술이기 때문이다.
Balancing
Balacing은 말 그대로 모두 균일하게 아이템을 분배하는 것이다.
맨 위에서 아이템이 들어올 때 분배 기능을 통해 각 분기마다 필요한 출력의 개수 만큼 나눈다. 위 그림의 경우 1개의 input을 4개의 output으로 쪼갰으며, 이에 따라 각각 25%씩 아이템을 받는 것을 알 수 있다.
이러한 방식은 분배 설계가 큰 크기를 가지고 있기 때문에 공간을 최적화 하기에는 적합하진 않지만 장점은 존재한다.
바로 적은 생산량이 input으로 들어올 때 output으로 아이템을 받는 기계가 그 아이템의 개수에 의해 영향을 많이 받는 경우이다.
예를드렁 input 아이템이 분 당 4개만 생산되고 입력될 때, 기계가 input으로 들어온 아이템 1개마다 1분씩 작업한다고 가정할 때 최대한 효율적인 설계를 하기 위해서는 당연히 4개의 기계를 병렬적으로 설치하는 것이다.
왜 이런 당연한 것을 예시로 드는지 의문이 들 수 있지만 아래의 다른 방식을 살펴보자.
Manifold
Manifold방식은 input을 나누고, 나눈 결과값을 재활용해서 다시 나누는 과정의 반복이라고 생각하면 된다.
위 그림에서 볼 수 있듯, input으로 100개의 아이템이 들어오면 첫 번째 분기에서는 50만큼이 빠져나가고, 두 번째 분기에서는 그의 절반인 25, 세 번째는 그의 절반인 12.5 와 같이 계속해서 결과값을 나누면서 분배하는 방식이다.
이 방식은 다량의 아이템이 들어올 때 적합하다.
예를 들어, 어떤 기계에서 분당 철을 300개를 만들고, 어떤 철 판을 제작하는 기계에서는 분당 10개의 철이 필요한 경우와 같다. 왜 이게 효과적이냐면 지금과 같이 input이 많이 들어오는 경우 어짜피 첫번째 분기에서 절반 만큼 아이템을 나눠서 기계가 가져간다고 해도, 그 기계의 수용량에는 한계가 있기 때문에 자동으로 다음 분기점이 50으로 설정될 것이다.
위 그림에서 볼 수 있듯, 기계1이 가득 차면 그 기계에 공급하던 분기점의 분배기는 더이상 분할할 필요가 없기 때문에 다음 분기의 분배기에 온전히 아이템을 전달하게 된다. 그러면 시간이 지날 수록 모든 기계가 균일하게 아이템을 받을 수 있게 된다.
따라서 manifold의 장점은 매우 간단하게 설계가 가능하며, 효과도 뛰어나기 때문에 대부분의 공장을 만들 때 이 방식을 통해 설계하면 대부분 효과적이다.
다만 Manifold 방식의 단점으로는 Balacing 방식과 반대로 input이 적을 경우 첫 번째 분기에서 절반이 첫 번째 기계에 들어가기 때문에 최대한의 효율을 내지 못한다.
따라서 필자는 아래 표와 같은 분배 방식을 채택한다.
기계 수용량 많음 | 기계 수용량 적음 | |
input 아이템 개수 많음 | Manifold | Manifold |
input 아이템 개수 적음 | Balacing | Manifold |
즉, 대부분의 경우 Manifold 방식을 사용하면 편하고, 아이템의 생산량이 적지만 기계의 수용량이 많은 경우와 같이 특수한 상황만 Balancing 방식을 통해 아이템을 분배한다.
'기타 > 게임' 카테고리의 다른 글
게임 추천 - Bloxorz (0) | 2024.12.23 |
---|---|
게임은 영화가 아니다. (0) | 2024.12.05 |
공장 게임에서 컨베이어 위 아이템 관리 방식의 특징 (0) | 2024.11.23 |
몬스터 헌터 - 모드 폴더 (0) | 2024.11.19 |
osu! 시작하기 (1) | 2024.11.18 |