2017-03-27 9 views
0

게임 엔진을 만들고 있지만 벽에 부딪혔습니다. 게임 엔진을 개발자 용 exe 파일로 배포하여 파일을로드하려고합니다. 내부적으로 객체로 저장되고있다 : 나는 개발자를 원하는C++ 외부 클래스로드 exe

class Gameobject 
{ 
    Vector position; 
    virtual void Update(){} 
    virtual void Render(){} 
} 

std::vector<GameObject*> gameobjects; 

만 수행하는

class ClassForGame: public GameObject 
{ 
    void Update(){} 
    void Render(){} 
} 

gameobjects.push_back(new ClassForGame()); 

는하지만 그들이이 작업을 수행 할 목록에 추가하기 파일 구조가 다음과 같은 별도의 파일 :
MyGameEngine.exeGame.cpp

파일을 사용하기 위해 파일과 클래스를 어떻게로드합니까?

외부 라이브러리를 사용하지 않으려면 g ++, Ubuntu 및 glut을 사용하고 있습니다.
또한 게임을 배포 할 수 있도록 파일을 내 exe에 어떻게 컴파일합니까? 나는 그것들이 두 개의 분리 된 질문이라는 것을 깨닫는다.

+0

자세히 알아보기 이러한 프로젝트를 수행하기 전에 C++. 지금 당장은 다른 사람들이 귀하의 코드로부터 실제로 이익을 얻는 것에 대해 충분히 알지 못하는 것 같습니다. 이 경우 : exe는 기계어 코드입니다. 소스 파일은 프로그래밍 언어입니다. 프로그래밍 언어는 컴파일러 없이는 아무 것도 할 수 없습니다. 또한, 왜 이것을 우분투에서 신고하고 exe에 대해 이야기 했습니까? – Aziuth

+0

@Aziuth 사람들이 알고 있습니다 실행 파일입니다 –

답변

1

엔진은 실행 파일과 달리 라이브러리처럼 배포되어야합니다.

+0

감사합니다. 정적 라이브러리 또는 동적 라이브러리를 사용합니까? –

+0

원하는대로 정적 또는 동적을 사용할 수 있습니다. 프로젝트에 따라 어느 것이 더 나은지에 따라 다릅니다. 그러나 우선 아래에 의견을 제안하는 것 중에서 당신은 그들 사이의 차이점을 이해해야합니다. – Maksim

0

첫째, 프로세스 주소 공간에 대해 알아야하므로 프로세스 작동 방식을 알 수 있습니다.

개발자가 자신의 프로젝트를 만들기 위해 API를 호출하는 게임 엔진 SDK를 만들고 싶습니다.

SDK는 DLL 또는 lib로 출시 될 수 있으므로 차이점을 이해해야합니다.