. Coherent Labs

Gameface 게임 페이스 모든기능.

업무 흐름

단 몇 초 안에 해결되는 반복 작업

Developer 도구를 이용하여 게임이 작동되는 동안 UI를 수정하고, 변화된 작업을 즉각적으로 확인하세요. 또는, 파일이 변경될 때마다 UI를 자동으로 재 로딩하여 게임을 세팅할 수 있습니다.

자주 사용되는 JavaScript 라이브러리 사용

React + Redux, Preact, WebPack, jQuery, Anime.js 등 다른 기능을 사용하고, 끊임없이 증가하는 웹 세상 안의 지식과 도구들의 혜택을 누리세요.


ReactDOM.render(
  

Hello, Gameface!

, document.getElementById('root') );

스크립팅 최소화

게임과 UI 상태를 연동하는 데에 필요한 코드(특히 지루한 코드)의 양을 최소화 하기 위해 당사의 declarative 데이터 바인딩 기능을 사용 하십시오.


업무 사항 분리

연속적 작업 - UI와 관련된 모든 것은 C++가 없이는 Gameface 내에서 이루어질 수 없습니다. 게임이 아직 준비가 되지 않았나요? 당사의 테스트 앱을 이용하여 게임 없이 테스팅을 해보십시오. 데이터가 나타나지 않나요? JavaScript 내에서 모의 시험을 해 보십시오. UI 가 어떻게 작동하는 지를 잘 모르시겠나요? QA 를 자동화 하십시오.


// Create some mock data
engine.createJSmodel("player", {
	stats: {
		health: 55,
		mana: 33
	}
});

 

표준 사양을 뛰어넘는 지원

Gameface는 표준 컴플라이언트 HTML5 엔진입니다 - 당사는 게임 UI 제작에 필요한 모든 요소를 지원합니다. 더해서, 표준 HTML5는 현재 게임 UI 가 필요로한 몇 가지의 주요 기능들을 가지고 있지 않아, 당사는 커스텀 CSS 및 Javascript 로 연동시켜 기존에는 도저히 다룰 수 없었던 방법을 가능케 합니다.

See the Pen Simple Health bar by Nikola Dimitroff (@nikoladimitroff) on CodePen.

비주얼 퀄리티

각종 효과들

모든 시각적 효과를 가능하게 합니다 - 각종 필터와 블렌딩 모드, 3D 및 2D 트랜스폼 UI 요소를 사용하고, 파티클 효과를 위해 선명한 영상을 사용하십시오.


Credits for the above video go to CyberWebFX

확장 가능 UI

여러분은 어떠한 해결책을 사용자가 지속해서 사용할 지에 대해 고민하지 않아도 될 것입니다. 여러분의 UI 는 다음의 규칙을 사용해 여러분이 의도한 바와 동일하게 나타나게 될 것입니다.

  • 모든 해상도에서 선명한 폰트 렌더링
  • 벡터 그래픽 지원(SVGs)
  • 현 뷰포트 사이즈에 기반한 역동적인 스케일링 구성요소들

필요한 모든 종류의 이미지 지원

구체적인 플랫폼의 텍스처 포맷 (DDS, KTC, ASTC) 또는 포토샵(PSD)에서 곧바로 이미지를 추출하고 싶으신가요? 이 또한 가능합니다.

여러분 스스로 UI 텍스처를 로드하고 싶으신가요? 이 또한 가능합니다.

UI 내에 화면 캡처본을 디스플레이하고 싶으신가요? (예를 들어 3D 플레이어 아바타와 같은) 이 또한 가능합니다.

통합

Deep Unreal Engine 4 and Unity3D- 딥 언리얼 엔진4 및 Unity3D

Unreal Engine 4 또는 Unity3D를 사용하고 있는 경우, 설치 방법은 1-2-3과 같은 숫자만큼 쉬울 것입니다. 두 가지의 엔진에 대한 당사의 플러그인은 여러분이 당사의 기술이 마치 엔진에, 기존에 존재하던 부분처럼 자연스럽게 느낄 수 있을 것입니다.

  • 커스텀 컴포넌트는 현장에서 어떠한 게임 대상에 적용 가능
  • Blueprints에 대한 완전한 스크립팅 지원 / C#
  • 에디터의 서브 메뉴는 제품의 모든 기능에 여러분으로 하여금 쉽게 접근할 수 있도록 도움
  • 양 엔진의 구버전과 신버전을 동일하게 지원

놀라운 퍼포먼스

당사의 제품은 어디에서도 가장 빠른 UI 기술이며, 복구할 수 있는 데이터와 증명서를 가지고 있습니다. 일반적으로 HTML 엔진은 속도가 느리다고 알고 계셨을 것입니다 - 하지만 Gameface는 게임 UI만을 위해 개발되었으며 게임 UI를 극대화하는 데에만 집중합니다. 예를 들어, 이전의 bullet의 UI 에서는 표준 Ps4(PS4 프로가 아닙니다!)에서는 1ms 이하의 속도로 구현됩니다.

화이트 박스

당사의 기술이 여러분의 게임에서 단독으로 작동하지 못한다는 것을 당사는 인지하고 있습니다. 최상의 퍼포먼스를 위해서는, 당사가 제공할 수 있는 최대한도의 서브 시스템 제어 권한을 부여합니다.

  • SDK가 메모리를 배분하고 리소스를 로딩하며, 로그 파일을 생성하고 입력 내용을 읽는 방법을 제어할 수 있습니다.
  • DirectX11, DirectX12, OpenGL, GLES2, GLES3, Metal, 구체적 콘솔의 APIs 에 대해서는 특수 렌더러를 사용하거나 고유의 코드를 작성하십시오
  • 희망하는 스레드의 개수 및 종류에 대한 당사의 패럴렐 코드를 사용해 주세요 – SDK 스스로 스레드를 생성하지 않습니다


void OnWorkAvailable(void*, cohtml::WorkType WorkType, cohtml::TaskFamilyId TaskFamily)
{
	MyEngine::EnqueueWorkOnSomeThread([WorkType, TaskFamily]()
	{
		cohtml::Library::HintThreadUsage(WorkType);
		CohtmlLibrary->ExecuteWork(WorkType, cohtml::WEM_UntilQueueEmpty, TaskFamily);
	});
}

클린 API

코드는 당사 측에서 작성하므로 여러분이 작성할 필요는 없습니다. 여러분은 당사의 API 사용법만을 숙지하면 되고, 이는 약 한 시간 정도만 소요됩니다.

  • 설치는 1-2-3 만큼 쉽습니다
  • 원하는 설정 요소들을 설정해 주세요
  • Backwards Compatibility(역 호환성)을 유지하는 것이 가장 중요한 목표입니다. 당사는 최소한 적으로 해당 사항에 관여하며, 관여하는 경우 충분한 설명을 제공합니다
  • 모듈러 아키텍처는 여러분의 필요에 따라 기능을 활성화 및 비활성화할 수 있게끔 합니다. 비디오와 HTTP 지원과 같은 기능을 사용하지 않을 때는 전체 서브 시스템을 자유롭게 끌 수 있습니다.


// your game loop
while (true)
{
	// Update UI
	uiSystem->Advance(MyEngine::CurrentTime);
	auto frameId = uiScreen->Advance(MyEngine::CurrentTime);
	uiScreenRenderer->Paint(frameId);
	DrawUITextureOnScreen();

	// Update engine simulation
}