2013-05-10 2 views
2

그래, 어쨌든 대부분 3D 그래픽을 다루기 때문에, 내 동부 휴가 동안 Opengl ES 2 (그리고 OpenGL 4)을 배우려고했기 때문에 아테네 나 내 그래픽 사용자 인터페이스가 필요 없다는 것을 깨달았 기 때문에. 내가NBOpenGL 정말 노력 가치가 있습니까?

NBMacGLContextDriver>>supportsCurrentPlatform 
    "obviously, for Mac intel-32 only :)" 
    ^NativeBoost platformId = NativeBoostConstants mac32PlaformId 

내 맥에 오류를 얻을 데모를 실행하려고 할 때 그래서

을 (내 프로젝트 "Ephestos"도 "믹서"를 참조 pharo의 3D 응용 프로그램을 작성하는 노력이 될 것입니다) "분명히"32 비트가 아니라 64 비트이지만, pharo는 32 비트 만 있기 때문에 문제가되는지는 모릅니다. 이 버그는 분명합니다. mac32PlatformId이 아니고 mac32PlaformId이 아니어야합니다.

나는 수정하고 계속 여기

NBMacGlApi>>glApiCall: fnSpec index: fnIndex attributes: attributes context: contextToRetry 

    ^[ 
     (NBCallFailureHandler for: contextToRetry) retryWith: [ :targetClass :targetMethod | 
      (NBFFICallout 
       targetClass: targetClass targetMethod: targetMethod fnSpec: fnSpec) 
       stdcall; 
       generate: [ :gen | self emitCall: fnIndex generator: gen ] 
     ] 
    ] on: NBNativeCodeError do: [:err :handler | 
     err errorCode = ErrorFnNotAvailable ifTrue: [ 
      "Native code is installed, but function pointer not loaded yet. 
      Try to load function and retry the call" 
      (self tryGetFunctionPointer: (self class glFunctions at: fnIndex)) ifFalse: [^err pass ]. 
      ^handler retrySend 
      ]. 
     err pass  
    ] 

에 새로운 오류를 나에게 문제를이 시간을 제공 NBCallFailureHandler은 아무데도 찾을 수 있다는 것입니다. 처음에 나는 내가 스몰 토크 허브에서 최신 구성을 다운로드 내 NB 버전에서 뒤쳐져 있다고 생각하고

ConfigurationOfNativeboost loadStable

했다.

오류없이 업데이트되었지만 여전히 그 클래스는 찾을 수 없습니다.

그래서 내 질문이 더 나은이 자신을 어떻게 Nativeboost 작품을 배우고 Opengl을 사용하는 것입니다 NBOpengl 또는 투쟁 할 정말 가치 않습니다입니까?

답변

1

나는 그렇다고 대답 할 것입니다. NBOpenGL은 NativeBoost를 사용하여 OpenGL에 미리 작성된 래퍼이므로 수동으로 달리 수행해야하는 작업을 제공하므로 시간을 절약 할 수 있습니다. 바인딩을 다시하는 데 많은 시간을 소비하는 것보다 구성을 수정하는 것이 더 좋습니다.

+0

감사합니다. 제 생각에는 적어도 제 신청서에 필요한 부분을 수정하려고합니다. 나는 도서관과 그 문제를 사용하고 이해 한 경험이 많은 더 작은 소음기의 의견을 원했다. – Kilon

+0

예 ... 구성이 제대로 작동해야합니다. 작동하지 않으면 메일 링리스트에보고하여 관리자가 해결할 수 있도록하십시오 :) – EstebanLM