2012-03-13 9 views
0

Flash가 Stage3D와 Unreal Engine에 대한 기본 지원을 모두 갖추고 있다는 점을 감안할 때 Scaleform (현재 형식)이 필요할지 여부는 궁금합니다. 언리얼 엔진 게임).Scaleform 대 Stage3d

나는 이것을 호기심 때문에 주로 묻습니다. 그리고 UE가 Flash로 어떻게 작동하는지에 대한 정보를 너무 많이 찾을 수 없었습니다. 또한 스케일 폼 (Scaleform)을 사용해 보지도 않았고, 단지 그것을 읽었습니다. (Scaleform workflow), 그들은 어디서나 stage3d를 언급하지 않았습니다.

이것이 Scaleform (Scaleform 태그가없는 것 같습니다)에 대해 물어볼 수있는 가장 적합한 곳인지 모르겠지만 지금은 그들과 stage3d 사이에 일종의 다리가 있어야합니다.

너희들은 어떻게 생각하니?

답변

3

Stage3D는 3D 게임 및 앱을 렌더링하기위한 것입니다. Scaleform은 Unreal Engine이 메뉴 및 게임 내 HUD에 큰 효과를주기 위해 사용하는 2D UI 도구 (3D 공간에서 2D UI 요소를 렌더링하는 확장 기능 포함)입니다.

스테이지 3D는 언리얼을 브라우저 창으로 렌더링하지만 Unreal은 Scaleform을 사용하여 UI를 렌더링합니다. 그렇습니다. Scaleform이 여전히 필요합니다. Scaleform 워크 플로우는 UI 개발을 매우 쉽게 만들어 주며, Scaleform의 GPU 가속화, 멀티 스레드 코어 아키텍처 및 렌더러는 커스텀 툴과 함께 게임 업계에서 가장 널리 사용되는 UI 미들웨어가되도록 도와줍니다.

대부분의 개발자는 모바일 게임이 Scaleform을 엔진으로 사용하기 시작한 & 개의 PC 제목으로 UI를 만드는 데이 엔진을 사용하고 있습니다. (Scaleform을 사용하여 iOS에서 최초로 상용화 된 Globz - TwinSpin 참조). Unreal 및 Unity와 같은 엔진을 브라우저 창으로 이동하면 Stage3D 덕분에 Scaleform은 브라우저 기반 3D 타이틀의 UI를 개발하는 데 의심의 여지가 없습니다.

+0

좋은 답변은 몇 가지를 정리했습니다. Scaleform을 사용하여 non-stage3d 플래시를 사용해야 UI가 만들어져 Stage3d를 사용하는 브라우저에서 나중에 재생할 수있는 게임에 들어가는 것이 이상하다고 생각했습니다. 그러나 Scaleform이 플래시 코드를 언리얼 스크립트 (unrealscript)와 같은 다른 것으로 변환한다고 가정하기 때문에 이해가됩니다. 또한 3d 공간에서 2 차원 인터페이스에 대해 살펴 보았지만 실제로는 3d 레이어가 아니라 2 차원 레이어 만 있으면 좋을 것입니다. – Spectraljump

+0

Scaleform은 실제로 플래시를 UnrealScript로 변환하지 않지만 AS를 사용하지 않고 UI를 만들 수 있으며 Scaleform DirectAccess API를 사용하여 UnrealScript (또는 C++)에서 타임 라인 애니메이션, 색상 변형, 크기 조절, 회전, 변환 등의 타임 라인 애니메이션을 제어 할 수 있습니다.). Scaleform은 Flash 파일 자체 내의 3D 공간에서 2D 플래시 객체를 렌더링하고 (z 깊이 변환 및 x/y/z 회전) 전체 플래시 동영상을 gameworld의 3D 객체에 렌더링합니다. 그러나 Stage3D와 같은 3D 렌더링 엔진은 아닙니다. UI 요소를 렌더링 할 때 True 3D는 일반적으로 필요하지 않습니다. Scaleform의 핵심 작업입니다. –

+0

흥미 롭습니다. 그렇다면 플래시가 비디오 게임 내에서 어떻게 돌아가고, 그렇지 않으면 3D로 가속화됩니까? 게임 엔진이 플래시가 실행될 수있는 환경 같은 브라우저를 제공합니까? 나는 그것이 사실이 아닌 것을 전혀 몰랐다. – Spectraljump

1

Scaleform은 근본적으로 Stage3D와 매우 다릅니다.

Stage3D는 3D 공간에서 영상을 렌더링하는 Actionscript 용 그리기 API입니다. Stage3D는 OpenGL의 추상 레이어입니다. 또한 Flash Player는 악의적 인 공격으로부터 최종 사용자를 보호해야하기 때문에 기능이 제한적입니다. Stage3D는 원본 플래시 디스플레이 트리와 완전히 별개입니다.

Scaleform은 Flash Player 자체이며 AIR와 Stage3D가 비슷합니다. 근본적으로 Scaleform은 플래시 표시 트리를 사용하고 테셀레이션 알고리즘을 통해 Vector 에셋을 다각형으로 변환합니다. 이러한 폴리곤은 실행중인 Scaleform 플레이어에 따라 OpenGL 또는 DirectX로 렌더링됩니다. 작성자는 도면 데이터에 대한 완전한 하드웨어 액세스 권한을가집니다. Scaleform에는 해석 된 AS3 코드 또는 C++ 드라이브 요소를 스테이지에서 실행할 수있는 기능이 있습니다.

일반적으로 Stage3D는 Flash Player에서 3D 액세스를 제공합니다. Scaleform은 주로 플레이어가 웹에서 경험하는 것과 비슷한 수준의 풍부한 UI 경험을 개발하는 데 사용됩니다.

1

진정한 3D 단지 UI 요소

우리는 우리의 레이싱 게임에서 3D 메뉴 (예를 들어, 먼지 대결을) 사용을 렌더링 할 때 일반적으로 필요하지 않습니다 그래서 가능하면 사용 및 게임을 개선 할 수 있습니다.

가 나는

스케일 폼 텍스처에 렌더링 진정한 3D 아니라고 몰랐다. 내부적으로 2.5D를 사용합니다. 즉, 플랫 텍스처에서 뷰 방향을 위조 할 수 있습니다. 이 텍스처는 3D 세계에서 독립 실행 형 카메라로 렌더링되어 오버레이 느낌을 주더라도 게임 세계에서 사용됩니다.

또한 렌더링 자체가 GPU 가속화되어 YouTube에서 모양을 렌더링하는 데 사용되는 메쉬를 보여주는 샘플을 찾을 수 있습니다. 네이티브 플래시는 소프트웨어 (CPU)에서이 작업을 수행합니다. 장점과 단점이 있지만, 지식에 대한 진정한 필요가 없다면 오래 오래 이야기를하고 싶지 않습니다.