ios: Pass CAMetalLayer instead of void* to Obj-C++ bridging header

This commit is contained in:
wheremyfoodat 2025-03-08 22:11:56 +02:00
parent e378a52b5a
commit 90279e6f9e
4 changed files with 14 additions and 6 deletions

View file

@ -30,9 +30,15 @@ IOS_EXPORT void iosCreateEmulator() {
printf("Created emulator\n");
}
IOS_EXPORT void iosRunFrame(void* layer) {
IOS_EXPORT void iosRunFrame(CAMetalLayer* layer) {
printf("Running a frame\n");
emulator->getRenderer()->setMTKLayer(layer);
// void* layerBridged = (void*)CFBridgingRetain(layer);
void* layerBridged = (__bridge void*)layer;
emulator->getRenderer()->setMTKLayer(layerBridged);
emulator->runFrame();
CFRelease(layerBridged);
// CFBridgingAutorelease(layerBridged);
printf("Ran a frame\n");
}