답변:
회사가 게임 플레이 프로그래머 를 고용하는 것에 대해 이야기 할 때 , 그들이 이야기하는 것은 게임 경험에 직접적으로 영향을 미치는 코드를 책임질 프로그래머입니다. 즉, 프로그래머는 엔진 또는 더 큰 게임 시스템이 아닌 실제로 게임을 구성해야합니다. 그러나 그 이상으로 많은 변화가 있습니다.
일부 회사는 게임 플레이 프로그래머 가 사용자 인터페이스를 구현하기를 기대 합니다 . 일부는 그렇지 않습니다. 일부 회사는 AI 코드를 구현하기를 기대하지만 일부는 그렇지 않습니다. 일부는 오디오 코드를 구현하기를 기대하지만 일부는 그렇지 않습니다. 솔직히 말하면, 게임 플레이 프로그래머 의 "게임 플레이" 는 "전문가를 고용하지 않은 모든 것"의 업계 속기입니다. 따라서이 프로그래머들은 매우 다재다능해야하며 새로운 분야를 빨리 배울 수 있어야합니다.
저는 15 년 동안 5 개의 다른 회사에서 상용 산업의 게임 플레이 프로그래머로 일했습니다.
내 경험에 따르면 일부 회사에서는 게임 플레이 프로그래머 가 주니어 또는 엔트리 레벨 직책으로 간주됩니다. 결국 개별 게임에서만 작업하는 프로그래머는 엔진 프로그래머가 필요로하는 방식으로 다양한 게임을 동시에 지원해야하는 시스템에서 작업하는 사람만큼 정교하지 않아도됩니다. 이런 종류의 회사에서 게임 플레이 프로그래머가 정말 잘한다면, 언젠가 자신의 가치를 입증 할 수 있다면 엔진 팀으로 승진 할 수 있습니다. 또는 특정 지역에 적성을 보이면 전문가가 될 수도 있습니다.
다른 회사에서는 게임 플레이 프로그래머 가 중간 수준의 위치로 간주됩니다. 개별 게임에서 작업하는 프로그래머는 유용한 경험이 있어야하며 신뢰할 수 있어야합니다. 경험이없는 프로그래머에게는 데이터 파이프 라인, 도구 등의 이빨을 자르기 위해 바람직하지 않은 작업이 주어질 수 있으며 결국 "게임 플레이 프로그래머"작업으로 넘어갈 수 있습니다. 이런 종류의 시스템에서, 계속해서 잘하는 게임 플레이 프로그래머는 프로젝트 리더십 역할 또는 엔진 팀으로 이동할 수 있습니다.
또 다른 회사에서 게임 플레이 프로그래머 는 선임 직으로, 반 설계직 으로 간주됩니다. 이 프로그래머는 우수하고 입증 된 프로그래머 일 것으로 예상되지만, 플레이어의 게임 경험에 가장 큰 영향을 미치는 코드에 직접 영향을 미치기 때문에 강력한 디자인 감수성과 자격을 갖추어야합니다. 이런 종류의 시스템에서 정말 좋은 게임 플레이 프로그래머는 게임 플레이 프로그래머로 영원히 남아있을 것입니다. 이것은 그가 채울 수있는 가장 귀중한 위치로 간주됩니다.
일반적으로 회사의 게임이 좋을수록 게임 플레이 프로그래머 는 더 고위직에 있다고 생각 합니다 (따라서 실제로 그러한 일자리를 얻는 것이 더 어려울 것입니다).
나는 항상 예를 들어 설명하는 것이 도움이된다는 것을 알게되었습니다.
게임 플레이 프로그래머에게는 근접 전투 시스템 구현, 체력 재생 메커니즘 구현 또는 플레이어 점프 컨트롤 구현과 같은 작업이 제공됩니다.
엔진 프로그래머 (특히 게임 플레이 프로그래머가 아닌 사람이라고 부름)는 연기 된 조명 구현, 애니메이션 시스템 또는 네트워킹 계층에 따라 작업을 수행합니다.
중요한 차이점은 '고객'이 누구인지입니다. 게임 플레이 프로그래머에게는 디자인 팀이 작업을 수행합니다. 작업은 디자인을 현실로 만드는 것입니다. 엔진 프로그래머에게는 일반적으로 다른 프로그래머 입니다. 엔진 프로그래머는 게임 플레이 프로그래머와 콘텐츠 제작자가 디자인을 실현하는 데 사용할 수있는 기술과 시스템을 만듭니다.
엔진 프로그래머는 대체로 게임에 구애받지 않는 코드를 작성합니다. 동일한 기술을 여러 게임에서 자주 사용할 수 있습니다. 게임 플레이 프로그래머는 제작중인 게임에 매우 특정한 코드를 작성하는 경향이 있습니다. 그리고 항상 겹치는 부분이 있습니다. 때로는 게임 플레이를 구현하려면 새로운 엔진 코드가 필요합니다.
게임 플레이 코딩은 엔진 코딩보다 어렵거나 쉽지 않습니다. 그러나 분명히 약간 다른 기술 세트입니다. 더 창의적이고 솔루션 을 습득 할 수 있어야합니다 . 목표는 완벽한 재사용 시스템 (엔진 프로그래머에게 이상적)을 만드는 것이 아니라 최고의 게임 구현을 만드는 것입니다. 따라서 엔진 프로그래밍에서 자산이 될 수있는 것 (세부 사항 및 잘 설계된 구조에 대한주의)은 게임 플레이 프로그래밍에있어 방해가 될 수 있습니다 (적응성과 반복 시간이 더 중요한 곳). 좋은 게임 플레이 프로그래머는 언제 (올바른 디자인이고 코드가 많은 곳에서 사용될 때), 언제 (디자인이 여전히 진행되고있을 때) 코드가 좋은 기회인지 알고 있습니다 한 번 테스트되면 버림).
무엇보다도 게임 플레이 프로그래머는 엔진 프로그래머가하지 않는 수준에서 디자인 팀과 협력 할 수 있어야합니다. 명백한 의사 소통 기술 외에도, 엔진 프로그래머가하는 것보다 훨씬 많은 다른 게임 디자인에 익숙해야하므로 디자이너가 "젤다와 같이 작동하게"이라고 말하면 그들이 무슨 말을하고 있는지 알 수 있습니다.
엔진 프로그래머가되는 방법을 배우려면 기술을 자세히 살펴보고 작동 방식을 배우고 자신의 버전을 구현해야합니다. 게임은 기술을 보여줄 수있는 경기장 일뿐입니다.
게임 플레이 프로그래머가되는 법을 배우려면 다른 사람의 엔진을 사용하여 가능한 많은 방법으로 사용하십시오. 다시 말해, 게임 플레이 프로그래머가 되려면 기술이 아닌 게임을 만드십시오 .
정확히 말하면, 게임 플레이 메커니즘을 구현하고 유지하는 프로그래머입니다.
http://en.wikipedia.org/wiki/Game_programmer#Gameplay_programmer