2012-05-09 2 views
4

플래시로 레코딩하지 않거나 자바 애플릿으로 만들지 마세요! C++ 앱인으로 유지하면 사이트 방문자가 게임을 할 수 있도록 웹 페이지에 퍼가기위한 방법이 있습니까?어떻게 C++ 게임을 웹 페이지에 삽입 할 수 있습니까?

우리는이 게임이 평균 플래시 게임의 크기 또는 더 얇은 게임이라고 생각할 수 있습니다.

해당 게임은 Allegro 라이브러리로 1000 줄의 코드로 작성되었습니다.

가능합니까?

+0

https://developers.google.com/native-client/devguide/tutorial 내가 믿는 – Flexo

+1

입니다 JavaScript C++ 인터프리터/컴파일러를 구현하거나 C++ 코드를 JavaScript 코드로 컴파일하면 그렇게 할 수 있습니다. –

+0

@Alex : 원칙적으로 Come을 C++로 컴파일 한 다음 Clue (http://cluecc.sourceforge.net/)가 C를 Javascript로 컴파일합니다. 면책 조항 : 이것은 실제로 작동하지 않을 수도 있습니다. 단서가 Comeau가 출력하는 모든 C 기능을 받아들이는지, 브라우저가 Clue의 출력이 얼마나 브라우저 가능한지, 그리고 (가장 중요하게) 순수한 C++에는 GUI가 없기 때문에, 이 특정 애플 리케이션은 분명 플랫폼 관련 라이브러리를 사용합니다. –

답변

5

빠른 답변 : 아니요 수 없습니다.

C++ 응용 프로그램은 웹 페이지 안에 삽입 할 수 없으므로 다운로드해야하며 사용자는 클라이언트 컴퓨터에서 응용 프로그램을 실행해야합니다.

세부 사항 : 어떻게 든 가능 합니다만, 은 브라우저간에 호환되지 않습니다. 예를 들어 Internet Explorer에는 ActiveX 구성 요소가 있습니다 (C++ 응용 프로그램이 될 수 있으며, 다운로드되고 설치되며 웹 페이지 내에서 실행됩니다). 다른 브라우저는이를 구현하는 다른 메커니즘을 가지고 있습니다 (예 : Chrome에는 네이티브 클라이언트).하지만 실제로 쓸만한 것을 쓸 수는 없으며 사용하는 모든 제한 사항이 있습니다.

+1

Emscripten을 사용하면 크로스 브라우저 자바 스크립트 코드를 생성 할 수 있습니다! – kovacsmarcell

+0

흥미로운 프로젝트! JavaScript에 _compile_하려면 C++에서 아무 것도 쓰지 않겠지 만 아이디어 자체는 재미 있습니다. 요즘에는 다른 대안도 있지만 일부 재 작성이 항상 필요합니다. emscripten이 귀하의 케이스에서 작동하면 좋은 캐치! –

0

기본 확장 기능으로 Chrome 브라우저 용 플러그인으로 만 가능합니다.

2

가 emscripten 프로젝트를 시도 ...

http://doom.pdox.net/

사실

http://code.google.com/p/nativeclient/

이 오래된 소식은 가능하다 LLVM Clang을 기반으로 C++ 파일을 JS 파일로 컴파일 한 다음 브라우저에서 실행할 수 있습니다. . Emscripten를 설치 한 후 이것을 사용하면 helloWorld.cpp이 저장된다고 가정

#include <iostream> 

int main() 
{ 
    using namespace std; 

    cout << "Hello World" << endl; 
    return 0; 
} 

.

$ emcc helloWorld.cpp -o helloWorld.html 

이제 브라우저에 helloWorld.html을 열고 직접 확인하십시오. Emscripten에 대한 좋은 점은, 그것은 등 SDL을 포함하여 바탕 화면 라이브러리의 넓은 범위를 지원하는

http://kripken.github.io/emscripten-site/

+0

앱이 크로스 플랫폼 인 동안 Emscripten이 처리 할 수 ​​있습니다. 사용중인 라이브러리의 OpenGL ES 2 또는 OpenGL ES 2 호환 OpenGL 코드 사용 중! – kovacsmarcell

+0

알레그로와 함께 작동합니다! – kovacsmarcell

관련 문제