브라우저에서 Direct3D를 어떻게 작동하게합니까?


9

브라우저에서 재생할 수있는 3D 게임을 보았습니다. 작동하려면 플러그인을 설치해야합니다. 플러그인이 브라우저 내부에 D3D 창을 생성한다고 생각합니다.

비슷한 것을 구현하려면 어떻게해야합니까?


흥미로운 질문
— Notabene

답변:


8

Unity 웹 플레이어 (윈도우 용)는 DirectX와 OpenGL을 윈도우에서 사용할 수 있습니다 (단, API에 대한 액세스는 추상화합니다).

또 다른 방법은 ActiveX (Internet Explorer 용) 또는 NPAPI (다른 브라우저 용 )를 사용하여 DirectX 플러그인을 구현하는 것 입니다.

NPAPI를 사용하는 경우 플러그인이 시작되면 원하는 것을 그릴 수있는 창 핸들 (D3D 창 포함)이 제공됩니다. 이 경로를 사용하면 본질적으로 클라이언트 컴퓨터에서 기본 코드를 실행하는 것입니다.


이 새로운 웹 게임 (점점 더 잘 지원 받고 추가 플러그인을 필요로하지 않습니다) WebGL이 같은 다른 기술을 사용하는 것이 좋습니다 있도록 NPAPI이 중단가는 그 길에 있습니다
— DMGregory

5

플레이중인 게임은 WebGL http://en.wikipedia.org/wiki/WebGL 또는 파이어 폭스 플러그인과 같은 이국적인 것을 사용할 수 있지만 파이어 폭스 플러그인에 머신 코드를 포함시킬 수는 없다고 생각합니다. 확실하지 않습니다. 약간의 보안 결함이 될 것입니다).

Unity는 엔진의 웹 플러그인 버전을 구현하며 ActiveX를 사용하는 것 같습니다. Mac에서 구현되는지 모르겠습니다 ...하지만 궁금합니다.

이 게임에서 3D API 또는 다른 종류의 플러그인을 사용하는 방법을 확인하는 가장 좋은 방법은 페이지의 HTML 소스를보고 객체 또는 ActiveX 또는 기타를 찾는 것입니다.


왜 다운 투표?
— CiscoIPPhone

4
어리석은 제안에 대해서는 "firefox 플러그인에 머신 코드를 내장 할 수 없습니다". 플러그인의 핵심은 "네이티브"코드 세트로 웹 컨텐츠를 보완하는 것입니다.

물론 우리는 여전히 등 부가 기능, 확장, 플러그인, 모드에 대한 사전으로 항목을 논의 할 수 ... 그것은 ... 무엇을 무엇에 대해 정확하게 아직도 낫다
— jokoon

4
"plugin"은 Netscape Navigator 2 이후 클라이언트 시스템에서 샌드 박스 처리되지 않은 (기본 또는 다른) 코드 실행을 참조한 것과 정확히 일치합니다.

3
넷스케이프 네비게이터 2, 당신은 SUV의 어떤 차에 대해 이야기하고 있습니까? 질문과 관련이 없습니다 ...
— jokoon

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