好的,所以我在东部假期期间尝试学习Opengl ES 2
(和 opengl 4),因为我意识到我的 GUI 并不真的需要雅典或矢量图形,因为无论如何我将主要处理 3d 图形。(我的项目“Ephestos”将致力于为 pharo 创建一个 3d 应用程序,另请参见“blender”)
因此,当我尝试运行演示时,出现错误
NBMacGLContextDriver>>supportsCurrentPlatform
"obviously, for Mac intel-32 only :)"
^ NativeBoost platformId = NativeBoostConstants mac32PlaformId
我的 Mac“显然”不是 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 版本落后,所以我从 smalltalk Hub 下载了最新的配置并做了
ConfigurationOfNativeboost loadStable。
它更新没有错误,但仍然找不到那个类。
所以我的问题是,它真的值得挣扎还是学习如何工作和使用自己NBOpengl
会更好?Nativeboost
Opengl