2009-10-08 4 views
2

를 사용하여 컴파일되지 않습니다, 나는 내 질문이 생각 :Haxe Flash 프로젝트가 잘 컴파일하지만 요약 hxcpp

내가 플래시 8 haxe 코드를 컴파일 할 hxcpp을 강제 할 방법

?

여기에 내가있는 곳이 있습니다. 나는 haxe에 새로 온 사람, 여기에서 샘플을 얻기 위해 노력하고 있어요 :

http://tilestudio.sourceforge.net/flash/Demo.html

이 haxe 컴파일 된 응용 프로그램은 아이폰에서 작동 방식을 볼 수 내 테스트에서, hxcpp를 사용하여 컴파일 할 수 있습니다.

나는 잘 컴파일하고 아이폰에 넣어 다른 샘플을 입수했습니다,하지만 난이 샘플을 컴파일 할 때, 그것은 같은 것들로 불평 :

Demo.hx:32: characters 17-53 : Class not found : flash.MovieClip 
Demo.hx:42: characters 20-36 : Class not found : flash.Key 
Demo.hx:44: characters 43-60 : Class not found : flash.Stage 

내가 언급 한 바와 같이, 이것은을 사용하여 미세 컴파일

-main Demo.hx 
-lib nme 
-lib neash 
-swf-lib DemoRes.swf 
--remap neko:cpp 
--remap flash:neash 
-cpp cpp 
이 (cpp.hxml)를 사용하여 위에 설명 된대로

-swf Demo.swf 
-swf-lib DemoRes.swf 
-main Demo.hx 
-swf-header 480:320:100:808080 

하지만 실패 hxml 파일 (flash.hxml를) 다음

그래서 문제는 hxcpp가 Flash 버전 9 swf를 대상으로하고 haxe 코드가 Flash 8을 대상으로한다는 것입니다. "-swf-version 8"을 사용하여 Flash 8 구문을 받아들이려고했으나 작동하지 않습니다. 같은 오류를 준다).

답변

1

Neash는 꽤 완벽하지만 플래시 API의 100 %를 매핑하지는 못합니다. 그건 네스와 함께 작동하지 않을 -swf-lib에 관한 문제를 확실히 가지고있다. 플래시보다 다른 플랫폼에서 swf 파일을 임베드하는 것은 불가능합니다. 자산을 다르게 관리해야합니다. 아주 먼 미래에 swf 리소스를 포함시키는 것이 가능할 수도 있지만, 우선 누군가가 원하는 대상에 맞게 변환하는 멋진 디 컴파일러를 작성해야합니다.

+0

감사합니다! 런타임에 swf를로드하는 예제가 있기 때문에 hxcpp에 대해 swf-lib를 사용하여 swf를 임베드하는 것은 효과가 없을 수도 있지만, 생각할 수 있습니다. (usr/lib/haxe/lib/neash/1,0,1/samples/06 -SWF)를 컴파일하고 아이폰에로드합니다. swf는 매우 간단하지만 일부 잔디 위에 튀어 오르는 원을로드하고 표시하며 작동합니다. 그래서 swf를 lib로 사용하는 것은 neash가 디스플레이 용으로 간단한 swf를로드하고 파싱하는 것처럼 작동 할 수 있다고 생각했습니다. –

+0

분명히 Neash API의 일부를 완전히 놓쳤습니다. 그럼에도 불구하고 예제의 SWF는 런타임에로드되며 컴파일 타임에는로드되지 않습니다. Swf를 Neash에서 올바르게 구문 분석 할 수 있다면 에뮬레이트해야하는 가장 가까운 것 : -swf-lib가 리소스를 리소스로 포함합니다. http : //haxe.org/doc/advanced/resources 문서의 예제는 텍스트 파일을 참조하지만 바이트도 사용할 수 있습니다. –

+0

@Brad 안녕하세요, Brad, 어떻게 관리했는지에 대한 자습서가 있습니까? 나는 haXe/iPhone에서 할 수있는 모든 것을 흡수하려고 노력하고 있지만 그 순간에는 그 밖의 것이 거의 없습니다. 건배 – Paul