프로페셔널 게임 프로그래머에게 필요한 기본 기술은 무엇입니까? [닫은]


11

나는 나를 귀찮게하는 매우 일반적인 질문이 있지만 먼저 세부 사항을 추가하고 싶습니다. 저는 핵심 Java 프로그래머입니다. 재미있게 자바로 작은 게임을 만들었습니다. 이제 전문적인 게임 개발에 관심이 많을수록 혼란스러워집니다. Google이 게임 개발 주제에 대해 Google을 방문하거나 포럼 등을 방문 할 때마다 다른 제안을 발견하기 때문입니다.

어떤 사람들은 C ++가 좋다고 말하고 어떤 사람들은 자바가 더 낫다고 말할 것이고, 다른 사람들은 파이썬, 루아, 언리얼 스크립트 등과 같은 다른 언어는 ur 언어라고 말할 것입니다. Unreal, Torque, Blender, Panda 등과 같은 게임 엔진과 OpenGL, AI, Collision Detection에 대한 지식이 필요합니다. 나는 안드로이드 SDK를 사용하여 게임을 만들었습니다.

내가 묻고 싶은 것은 :

  • 프로페셔널 게임 프로그래머에게 필요한 기본 기술은 무엇입니까? 1 프로그래밍 언어 + 1 스크립팅 언어 + 1 게임 엔진 지식 + OpenGL입니까? (휴 !!)
  • 게임 산업에 Gameplay Programmer 또는 AI 프로그래머로 들어가려면 현재 기술 및 포트폴리오 (위에서 언급 한)를 사용하여 게임 산업에 참여할 수 있습니까?
  • 하나의 프로그래밍 언어를 배우는 것이 게임 개발에 충분합니까?

모든 지침이 도움이 될 것입니다.

답변:


6
  1. 최소한 하나의 프로그래밍 언어에 능숙하고 유능해야합니다. 그렇게하면 다른 언어를 더 쉽게 습득 할 수 있습니다. 지원하는 직업의 종류는 미리 알아야 할 언어에 따라 다릅니다. PC와 콘솔에서 출시 된 대부분의 트리플 A 타이틀은 C ++로 개발 될 것입니다. 반면에 모바일 애플리케이션과 게임은 Java (Google Android 및 기타 전화) 또는 Objective-C (iPhone)를 사용합니다. 개발자 웹 사이트에서 소프트웨어 엔지니어의 작업 목록을 살펴보면 일반적으로 필요한 언어 경험이 언급됩니다. 예를 들어 "C ++에 능숙하고 지식이 풍부함"또는 "2 년 이상 C ++에 대한 경험" 스크립팅 언어를 배우더라도 문제가되지 않습니다. 당신에게만 도움이됩니다. 학습은 항상 유익합니다. 게임 엔진에 대한 실무 지식이 필요하지는 않지만 특정 엔진을 사용하는 회사에 지원하는 경우 재개하는 데 도움이 될 것입니다. 소스 엔진 전문가이지만 id 소프트웨어에 적용하고 id 기술 엔진에 대해 전혀 모르는 경우 실제로 도움이되지는 않지만 유익한 원인 학습은 항상 유익합니다.

  2. 프로젝트를 처음부터 끝까지 완료했고 자신이 가지고 있음을 보여 주면 이력서가 재개되도록 도움이 될 것입니다. 그래도 많은 기술 데모에 대해서는 잘 모르겠습니다. 많은 사람들이 기술 데모를하고있는 것으로 보이며 게임 프로젝트가 완료되지 않았습니다. 게임 플레이 프로그래머는 jr 인 경향이 있습니다. 예, 이력서에 따라 어딘가에서 일자리를 찾을 수 있어야합니다.

  3. 한 언어를 알고 능숙하고 능숙하게 사용하는 것이 5 개 언어를 알고 사용하는 방법을 아는 것보다 낫다고 생각합니다.

면책 조항 : 업계에서 일한 적이 없으며, 내가 읽은 가장 현명한 기사 / 의견이라고 생각한 것을 기반으로 게임 프로그래밍 작업에 대한 여러 스레드와 기사를 읽은 후에 형성된 의견입니다.


7
" 포인터를 사용하는 하나의 프로그래밍 언어에 대한 지식"으로 글 머리 기호 1을 보강 합니다 . 포인터는 경험이없는 언어로 무슨 일이 일어나고 있는지 이해하기위한 근본적인 요구 사항입니다. C ++은 웹 게임이 아닌 게임에서 널리 사용되므로 시작하는 것이 좋습니다.
Tetrad

@ShrimpCrackers 편집기를 사용하여 실제 "총알 포인트"를 만들 수 있다는 것을 알고 있습니까? ;)
Ben

최소한 산업계에서 널리 사용되지는 않지만 흥미로운 특성을 가지고있는 프로그래밍 언어를 아는 것을 보여 주어야합니다. 이것은 기회에 대한 관심 때문에 배우고, 다른 철학 / 접근법을 이해하는 폴리 글롯이라는 것을 알려줍니다. ) 두 세계의 최고를 병합합니다.
FxIII

2

이 주제를 연구하고 전문 게임 개발자와 이야기할수록 실제로 몇 가지 사항에 더 가깝다고 생각합니다. 특별한 순서는 없습니다 :

  • 팀 분위기에서 함께 일할 수있는 능력. 게임을 만들려면 엄청난 양의 사람들이 필요합니다. 요즘 AAA 게임 중 일부에서 크레딧을 읽는 데 10 분 이상 걸립니다. 사람과 잘 어울리지 않고 다른 사람들과 협력하여 훌륭한 게임을 만드는 것이면 이것이 올바른 산업이 아니라고 두려워하십시오. 이것은 일반적으로 다른 사람들과 프로젝트를 수행하면서 개발 된 부드러운 기술 중 하나입니다.
  • 원하는 것을 찾으십시오. 이것은 일종의 개방형이지만 게임 개발에 대해 좋아하는 점과이를 달성하는 데 필요한 기술을 찾으십시오. 나는 이것이 당신이 찾고있는 대답이라는 것을 알고 있지만 엔진 개발자, 그래픽 개발자 또는 게임 플레이 개발자가 될 수있는 모든 기술을 약화시킬 수는 있지만 온라인에서 쉽게 많은 정보를 찾을 수 있습니다. 여러분의 기술은 관심있는 것과 매우 밀접하게 연결되어야합니다. 예 : 서버 측 개발에 관심이 있거나 그 반대 인 경우 OpenGL 및 DirectX의 입 / 출력에 대해 걱정할 필요가 없습니다.
  • 저수준 언어에 능숙 함 위와 같은 말로 저수준 언어가 배우는 것이 좋다는 다른 포스터에 동의합니다. C #에서 C ++로 갔을 때 C #의 마법이 어떻게 작동하는지 많이 배웠습니다. 이것은 언어에 관계없이 컴퓨터와 효과적으로 통신하는 방법을 잘 이해하는 지식입니다.
  • 컴퓨터 아키텍처 이해 -이것은 컴퓨터 아키텍처의 모든 부분을 실제로 이해하기 위해 CE 또는 EE 학위를 취득해야한다는 의미는 아니지만 메모리, CPU 및 GPU의 작동 방식에 대한 기본 사항을 알고 있습니다. 게임 개발 영역에 관계없이 게임 개발 영역에 관계없이 최소한 이러한 작업 방식을 파악하는 것이 좋습니다. 그래픽 프로그래밍 또는 엔진 프로그래밍에 뛰어들려면이 공간에서 더 많은 것을 이해해야합니다.

5
사람들이 C ++을 저수준 언어라고 부르면 정말
늙게

@dreta 나는 그렇게 오래되지 않았으며 저수준 언어로도 보지 않습니다. 아마도 내가 사용한 첫 번째 언어 인 C ++과 관련이있을 것입니다.
Paul Manta

2

경력 목표에 따라 다릅니다. 필수 5.5 년을하고 불타고 떠나기 전에 "직업 만들기 게임"만 있으면 엔트리 레벨 일자리를보고 그들이 원하는 것을 찾고 배우고 적용 할 수있을 것입니다. 단순한. (그러나, 만일 당신의 질문이 정말로 "직업을 구하기 위해해야하는 최소한의 노력은 무엇입니까?"에 해당한다면, 대답은 "최소한 노력을 기울이면 최소한의 직업을 얻게 될 것입니다!" ")

그러나 장기적으로, 나는 그것이 많은 언어를 알고 있거나 특정 언어를 배우는 것에 대해 그렇게 많이 생각하지 않습니다. 10 년 전 어느 누구도 Objective-C, XNA, C # 또는 AS3를 사용하지 않았으며, 10 년이 지난 지금은 오늘날 배우는 언어가 더 이상 사용되지 않을 것입니다.

따라서 미래를 보장하는 한 가지는 "언어를 배우는 것"뿐만 아니라 새로운 언어를 배우는 방법을 배우는 것입니다. 3 개 언어에 능숙 해지면 새로운 언어를 선택하는 것이 그리 나쁘지 않다는 것을 알게 될 것입니다. 어쨌든 대부분의 핵심 구성 요소는 동일합니다. 모든 언어에는 변수, 배열, 루프, 조건 등이 있으므로 구문 학습에 관한 것입니다.

이것의 다른 절반은 프로그래밍과 컴퓨터 과학의 핵심 개념을 이해하는 것입니다. 메모리 관리, 포인터, 재귀 등을 이해합니다. 개념을 이해하면 거의 모든 언어로 개념을 적용 할 수 있습니다.

자신을보다 시장성있게 만들고 싶다면 AI, 데이터베이스, 네트워킹, 도구 등 게임과 관련된 프로그래밍 전문 분야를 배우십시오.


1

약간 간과 된 것으로 보이는 또 다른 매우 중요한 기술이 필요합니다. 다른 게임 개발자에서 디자이너 및 프로젝트 관리자 및 기타 분야에 이르기까지 여러 사람들과 어울리고 협력하는 방법을 알아야합니다. 그것은 기술적 인 기술은 아니지만 집안에서 최고의 개발자가 될 수 있고 사람들과 함께 할 수 없다면 큰 게임이 문제가 될 수 있으므로 여전히 매우 중요합니다!

또한 한 언어를 잘 아는 ShrimpCrackers가 대략 5 개 언어를 아는 것보다 낫고 게임에서와 같이 해당 언어 중 하나가 어떤 언어로 진행되는지 이해하는 것이 훨씬 좋습니다. 게임과 마찬가지로 최고의 성능을 얻는 방법을 알아야합니다 언어에서.

마지막으로 하드웨어에 대해 조금만 알고 있으면 특히 GPU가 아프지 않습니다!


0

소셜 게임을 프로그래밍하기 위해서는 필요한 유일한 기술이 있습니다.

  1. 프로그램 작업 스크립트 (elipse 환경 및 svn을 사용할 수 있음), 게임의 프론트 엔드 (웹 페이지)에 사용됩니다.

  2. 프로그램 java (이클립스에서 svn을 사용할 수도 있음)는 웹 페이지의 요청에서 서버 측 작업에 사용됩니다.

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