"동적 생성"과 "절차 생성"의 차이점은 무엇입니까?


15

동적으로 생성 된 게임을 생각할 때 임의로 생성 된 레벨이있는 ​​디아블로와 같은 것을 생각합니다. 절차 적으로 생성 된 게임을 생각할 때 Flappy Bird 및 기타 무한 러너와 같은 것을 생각합니다.

그러나이 두 가지 모두 레벨을 무작위로 지정합니다. 절차 적으로 생성 된 게임이 지속적으로 생성되고 동적으로 생성 된 게임이 모두 먼저 생성됩니까? 아니면이 용어들은 서로 바꿔 쓸 수 있습니까?

동적으로 생성 된 게임절차 상 생성 된 게임 의 차이점은 무엇입니까 ?

답변:


21

"절차"는 일부 알고리즘이 내용을 만들었다는 것을 의미합니다. 이는 사람이 수동으로 컨텐츠를 작성하는 것과 반대입니다.

"동적"은 시간이 지남에 따라 내용이 변경됨을 의미합니다. 이것은 생성 된 후에 변경되지 않거나 미리 정의 된 방식 (예 : 키 프레임 문자 애니메이션)으로 만 변경되는 "정적"컨텐츠와 반대됩니다.

게임 내 플레이어 제작 콘텐츠를 보유 할 수도 있습니다. 이는 외부 도구를 사용하여 게임을 수정하지 않고 게임 중 레벨이나 게임을 변경할 수있는 게임 기능입니다. 다음 몇 단락을 위해 플레이어 제작 콘텐츠에 대해 이야기하고 있지 않다고 가정합니다.

코드를 사용하여 절대 변하지 않는 것을 생성 할 수 있습니다. 이러한 내용은 절차 적 임에도 불구하고 정적이며 동적이 아닙니다. 모든 동적 컨텐츠는 절차 적이지만 모든 절차 적 컨텐츠는 동적이 아닙니다.

수동, 절차 적, 정적 및 동적 컨텐츠를 모든 종류의 방식으로 혼합 할 수 있습니다. 예를 들어, 아티스트는 건물 모델을 수동으로 생성하고 도구를 사용하여 모델에 대한 다양한 텍스처 맵을 절차 적으로 생성 한 다음 물리 또는 게임 플레이 시스템에 대한 데이터를 설정하여 건물을 동적으로 파괴하고 정적 파편을 생성 할 수 있습니다.

참고 : 이러한 정의는 공식적이지 않습니다 . 이 단어들에 대한 의미론을 영원히 주장 할 수 있습니다. 당신은이 단어들에 대해 다른 정의를 가진 사람들을 만날 가능성이 높으며 우리 중 어느 것도 반드시 틀리지 않을 것입니다. 기술 전문 용어조차도 프로그래머 유형이 선호하는 것보다 훨씬 유동적입니다. :)


1
"모든 동적 컨텐츠는 절차 적"-다른 플레이어의 액션으로 작성된 컨텐츠는 어떻습니까? 예를 들어 Eve Online에는 전적으로 플레이어가 제작 한 끊임없이 변화하는 궤도 전초 기지가 있습니다.
Mołot

1
@Molot : 마지막 단락의 첫 번째 예가 있습니다. :) 나는이 답변에 대해 개발자가 게시 한 콘텐츠에 대해서만 실제로 생각하고 있다고 생각합니다. 개발자 대 플레이어가 만든 콘텐츠는 동적 / 정적 또는 수동 / 절차와는 별개의 축이라고 생각할 수 있습니다. 예를 들어, 많은 게임에서 플레이어는 건물 모드에서 구조물을 만들 수 있지만 맵은 게임의 나머지 부분에 대해 정적이므로 정적 플레이어 제작 콘텐츠를 가질 수 있습니다. 그러나 다시 말하지만, 나는 용어에 대해 지나치게 구체적이지 않습니다. :)
Sean Middleditch

4

"동적"이란

"(프로세스 또는 시스템의) 지속적인 변화, 활동 또는 진행을 특징으로합니다."

(Google이라고 말합니다.)

이 두 용어를 구별하기 위해 "동적 생성"을 의미합니다.

그리고 "절차 생성"은 알고리즘 적으로 생성 된 것을 의미합니다.


1
내 초기 생각의 반대?
Evorlor

2
@ Evorlor : 그렇게 말할 것입니다. "절차"는 일부 알고리즘이 내용을 만들었다는 것을 의미합니다. "동적"은 시간이 지남에 따라 내용이 변경됨을 의미합니다. 코드를 사용하여 무언가를 한 번만 생성 할 수 있으므로 정적이며 동적이 아닙니다. 모든 동적 컨텐츠는 절차 적이지만 모든 절차 적 컨텐츠는 동적이 아닙니다. 이 두 가지를 모든 종류의 방식으로 혼합 할 수도 있습니다. 예를 들어 정적 컨텐츠로 절차 적으로 자신을 채우는 동적 레벨. :)
Sean Middleditch

@SeanMiddleditch 답장으로 변환하십시오 :-)
Evorlor

@ Evorlor : 완료되었지만 David van Brink가 이미 한 것보다 더 말한 것이 확실하지 않습니다.
Sean Middleditch

@SeanMiddleditch는 아닐 수도 있지만 설명이 명확했습니다. 감사!
Evorlor

1

다음은 간단한 개요입니다.

  • 동적 생성

'동적'이라는 단어는 변화를 의미합니다. '세대'라는 단어는 사물의 생성을 의미하므로 '동적 세대'는 세대를 바꾸고 있습니다. 따라서 '동적 생성'은 끊임없이 변화하는 컨텐츠를 말합니다.

  • 절차 생성

'절차'라는 단어는 사람이 아닌 컴퓨터 알고리즘으로 만든 콘텐츠를 나타냅니다. 우리가 설립 한 '생성'은 생성을 의미하므로 '절차 생성'은 컴퓨터 알고리즘을 통해 생성되는 콘텐츠를 의미합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.