UE4를 사용하여 게임을 제작하는 산업 전문가들은 블루 프린트를 전혀 사용하지 않습니까? 아니면 C ++ 만 독점적으로 사용합니까?


15

게임 개발 모듈을 가르치는 교사로서 저는 사용자가 C ++을 사용하라고 주장했습니다. C ++은 업계에서 더 많이 찾는 기술이기 때문에 언리얼 엔진 4의 C ++에 대한 온라인 지원과 정보는 비교적 약한 것 같습니다. 전문가들이 이제 블루 프린트 를 사용하고 있습니까?


11
문서는 사용되는 양을 나타내는 좋은 척도가 아닙니다.
MichaelHouse

코드를 직접 읽고 읽어 보니 언리얼 엔진 4 C ++에 대한 문서가 부족합니다. 소스 코드에 액세스 할 수있는 경우 반드시 설명서가 필요하지 않습니다. 그래도 좋을 것 같습니다.
옥시

1
@Oxy 소스 코드는 문서를 대체하지 않습니다. 기간. 소스는 정의에 따라 문서보다 읽기 가 훨씬 어렵습니다. 문서의 요점은 함수의 기능을 읽을 수있는 형식으로 추출하는 것입니다. 이것은 Unreal과 같은 고성능의 매우 유능한 코드의 경우에도 마찬가지입니다.
Fund Monica의 소송

1
정당화하지 않고 무슨 일이 일어나는지 설명하고 있습니다. "하지만 그래도 좋을 것 같습니다." 그리고 중요한 함수에는 "foo (x) {/ * foo와 같이 골든 너겟이 있기 때문에 사용하는 함수의 코드를 읽는 편이 더 좋습니다. 일반적으로 foo (x ) 완료 * / bar (x);}. 나는 아직 코드 진화에 보조를 맞추는 문서 시스템을보아야 만한다. 헤더 읽기
Oxy

답변:


25

예, 전문 게임은 블루 프린트를 사용합니다.

일부는 C ++과 블루 프린트를 혼합하여 사용합니다. Dead by Daylight에서 둘 다 사용합니다.

블루 프린트의 장점 중 하나는 프로그래머가 아닌 사람이 행동을 스크립팅하는 능력에 접근 할 수 있다는 것입니다. 모든 프로젝트가 이러한 방식으로 이러한 프로젝트를 사용하는 것은 아니지만 이들이 설계 한 이유 중 하나입니다. C ++에 영향을주지 않고 동작을 변경하는 수단으로 UnrealScript를 대체했으며 Unreal 3의 시각적 스크립팅 시스템 인 Kismet도 대체했습니다.


확장 할 수 있습니까? 프로그래머 만이 블루 프린트를 사용합니까, 아니면 "비 기술적 인"스탭 만 사용합니까, 아니면 둘 다 사용합니까? 특정 목적이나 거의 모든 용도로 사용됩니까?
KABoissonneault

7
@KABoissonneault 그것은 매우 혼합입니다. 대부분의 경우 프로그래머가 작동하는 것과 비 프로그래머가 작동하는 것을 명확하게 구분할 수있는 방법이 없습니다. 코드 전체를 조정하려는 디자이너가있는 경우 특히 그렇습니다 . 블루 프린트는 또한 빠른 프로토 타이핑에 많이 사용되며, 성능에 필요하지 않은 경우 반드시 C ++로 변환 할 필요는 없습니다. 또한 스튜디오와 프로젝트마다 많이 다르므로 답이 없습니다.
Fund Monica의 소송

9

게임 산업 외부의 약간의 일화 : VR에서 아키텍처 시각화를 위해 UE4를 사용합니다.

C ++로 빌드 한 대부분의 것들이 있지만, 라이트 스위치, 도어 등과 같은 모든 종류의 "추가 로직"에 블루 프린트를 많이 사용합니다.

2 년이 조금 넘는 시간이 지났고이 작업을 시작할 때 유일한 프로그래머였습니다. 내 관찰은 다음과 같습니다.

  • 프로그래머가 아닌 사람들이 블루 프린트로 할 수있는 일은 놀랍습니다!
  • 초보자 프로그래머가 블루 프린트로하는 일을 두려워 할 수 있습니다.)
  • 결국 C ++로 변환하더라도 블루 프린트는 빠른 RnD 단계에 적합합니다.

그리고 저에게 가장 큰 것은 : 많은 대화에서 Blueprints가 비 기술적 인 동료의 프로그래머가 되고자하는 바람을 불러 일으켰습니다. 이것이 발생한 주된 이유는 시각적으로 디버깅 할 수있는 매우 복잡한 논리를 구현할 수 있기 때문입니다.

그들은 실제로 소프트웨어 아키텍처와 거대한 스파게티 청사진의 함정에 대한 몇 가지 어려운 교훈을 배웠습니다. 그러나 그 길을 따라 많은 성공을 거둔 후에야! 그래서 그들은 전혀 낙담하지 않고 오히려 스스로 더 잘하고 스스로하는 방법을 찾도록 동기를 부여했습니다.

이후 C ++, Python 및 C # 과정을 수강하여 전체 청사진의 품질이 훨씬 좋아졌지만 무엇보다도 핵심 라이브러리를 개발할 때 도움이되었습니다. :)

TLDR;

예, 우리는 블루 프린트를 사용하고 있으며, 초기에 비 기술적 인 동료들을 더 나은 코더로 만들었습니다.


1
블루 프린트와 같은 시각적 언어의 좋은 점 중 하나는 구문에 대해 걱정할 필요가 없으며 일반적으로 추상화되어 보일러 플레이트를 거의 사용하지 않고도 많은 작업을 수행 할 수 있다는 것 입니다. 구문에 의해 방해받지 않고 코딩하는 방법을 쉽게 배울 수 있습니다. 그들은 또한 일반적으로 너무 높은 수준의 마법사 를 수행하지만 비코 더가 게임의 행동에 직접적인 영향을 미치도록하려는 트레이드 오프입니다.
Fund Monica의 소송

@NicHartley myVector.x += otherVector.x는 블루 프린트에서 해보십시오 . : o
Almo

1
@Almo 정말 90 % 정도 가능합니다. 정말로 "한 줄"이 아니라면 가능합니다 . 그냥 (get myVector x) (get otherVector x) -> (+) -> (assign myVector x)(와우, 텍스트로 블루 프린트를 작성하는 것은 어렵습니다 ...). 그래도 테스트 할 언리얼 사본이 없습니다. 또는 벡터가 불변 인 경우, 새로운 벡터를 만드십시오(myVector.x + otherVector.x, myVector.y, myVector.z)
Fund Monica 's Lawsuit

1
확실히 가능하지만 지저분합니다. x, y, z 출력을 갖는 Break 상자에 벡터 라인. 하나는 myVector.x를 얻기 위해 다른 하나는 otherVector.x를 얻기 위해 두 번 수행하고 추가하고 할당 상자에 라우팅하십시오.
Almo

1
나는 당신이 할 수 없다고 말하지 않았습니다. 그냥 끔찍 해요
Almo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.