
OpenFL 프로젝트는 게임 및 애플리케이션 개발자의 요구에 대한 오픈 소스 답변으로 브라우저 플러그인과 같은 특정 구현에 의존하지 않고 창의적인 걸작을 제공하는 빠르고 간단한 접근 방식을 찾고 있습니다.
OpenFL은 혁신적인 Haxe 프로그래밍 언어를 사용하여 하나의 코드베이스를 사용하여 매우 다른 플랫폼을 지원합니다. 한 대상 유형에서 다른 대상 유형으로 전환하는 것은 간단하며 대상 환경의 강점을 유지합니다. OpenFL은 기본 C ++, Neko 또는 Flash Bytecode 또는 JavaScript로 빌드하여 최대의 호환성 및 런타임 성능을 가능하게합니다.
OpenFL은 사용하기 쉬운 명령 줄 도구를 갖춘 LIME에 의존하며 백엔드 지원을 제공합니다.
현재 OpenFL은 다음 플랫폼을 지원합니다.
OpenFL을 콘솔로 가져 오려는 커뮤니티 노력도 있습니다. OpenFL은 다음과 같습니다.
콘솔 지원에 대한 자세한 내용은 향후에 제공 될 예정입니다.
OpenFL은 추가 환경에서도 사용되고 있습니다.
OpenFL은 많은 라이브러리와 호환되거나 ActionScript에서 포팅되거나 원래 Haxe에서 작성된 다음을 포함하여 다음을 포함합니다.
Openfl은 또한 Stencyl과 같은 다른 플랫폼에 전력을 공급합니다.
플러그인은 많은 코드 편집기를 위해 작성되었지만 Haxe 및 OpenFL 개발에 사용되는 가장 인기있는 편집자는 다음과 같습니다.
OpenFL에는 각 대상 플랫폼에서 빌드, 패키지, 설치 및 실행하는 데 필요한 도구가 포함되어 있습니다.
예를 들어, openfl test html5 HTML5 프로젝트를 생성하고 로컬 웹 서버를 생성하고 기본 브라우저를 엽니 다.
일부 플랫폼은 표준 SDK를 구축해야합니다 (예 : Visual Studio C ++ 또는 Xcode). OpenFL에는 이러한 표준 도구를 설치하는 데 도움이되는 "설정"명령이 포함되어 있습니다.
OpenFL은 주로 2D 개발을 위해 설계되었지만 OpenGLRenderer API를 사용하여 자신의 WebGL 스타일 코드를 작성하고 OpenFL 디스플레이 아키텍처와 혼합 할 수 있습니다.
OpenFL은 또한 Stage3D API를 지원합니다. 마음에 드는 경우 직접 사용할 수 있거나 Away3D 또는 Starling과 같은 라이브러리를 사용할 수도 있습니다.
기본 플랫폼을 타겟팅 할 때 출력은 True Native C ++이므로 플랫폼 기능 및 타사 SDK와 깊은 통합을 가능하게합니다. Haxe 클래스를 C ++ 라이브러리에 직접 연결하기위한 표준 Haxe "CFFI"API가 있습니다.
우리는 또한 Java 기반 확장을 추가하기위한 간단한 안드로이드 라이브러리 프로젝트 API를 개발했습니다. 기본 확장은 또한 의존성을 유연하게 제어하기 위해 표준 라임 프로젝트 형식을 사용하거나 추가 자산을 추가하거나 프로젝트 출력을 조정할 수 있습니다.
결과는 서로를 깨지 않고 프로젝트로 교환 적으로 떨어 뜨릴 수있는 기본 확장입니다. 우리는 Air Native Extensions 시스템을 모방하려는 시도를하지 않았으며, 이는 생성하기가 훨씬 어렵고 유연성이 떨어집니다.
Openfl은 크로스 플랫폼 프로젝트 개발의 기초 인 Lime에 의존합니다.
HXCPP는 라임 도구에서 자동으로 사용하여 각 플랫폼의 C ++ 컴파일 프로세스를 관리하고 C ++ 지원을위한 HAXE 표준 라이브러리를 제공합니다.
OpenFL은 MIT 라이센스에 따라 무료의 오픈 소스 소프트웨어입니다.
Openfl.org의 지시 사항을 따르십시오.
변경 사항이 있으면 OpenFL은 밤마다 구축됩니다. 빌드는 여기에서 다운로드 할 수 있습니다.
개발 빌드를 설치하려면 "Haxelib Local"명령을 사용하십시오.
haxelib local openfl-haxelib.zip
OpenFL 저장소를 복제하십시오.
git clone https://github.com/openfl/openfl
OpenFL의 개발 사본이 설치된 위치를 Haxelib에 알려주십시오.
haxelib dev openfl openfl
릴리스 빌드로 돌아 가기 위해 :
haxelib dev openfl
라임 설치의 개발 빌드가 필요할 수도 있습니다.