Add updated iOS App support to the Vulkan examples (#1119)
* Fix clang Objective-C++ flags for macOS command line builds * Fix getAssetPath() and getShaderBasePath() for macOS command line builds * Protect debugUtilsMessageCallback() from failing when pMessageIdName is NULL * Fix a few clang function override and mismatched type warnings * Fix validation layer warnings on exit for computeraytracing example * Fix regression in text visibility toggle for textOverlay example * Support VK_USE_PLATFORM_METAL_EXT vs. deprecated VK_USE_PLATFORM_MACOS_MVK / DVK_USE_PLATFORM_IOS_MVK * Check dynamic state features before enabling capabilities in dynamicstate example * Fix vkCmdDraw() vertexCount argument (PARTICLE_COUNT) in particlesystem example * Update examples list and restore benchmarking script (to top level) * Fix validation warning in descriptorindexing example * Fix device max recursion depth validation warnings in ray tracing examples * Fix OpenMP build settings for texture3d example on all platforms * Update and simplify build instructions for macOS * Update CI script with correct library path for libomp on macOS x86_64 * Update CI scipt to install libomp prior to macOS builds * Trying one more time to get the CI script working for macOS libomp * Fix vertexCount argument using calculated size in particlesystem example * Fix combined image descriptor offset calculation in descriptorbuffer example * Add iOS App support for Vulkan examples on simulator and physical devices * Add continuous integration (CI) script for iOS * Update CI script to build iOS using Xcode 14 via macos-12 runner-image * Update iOS project docs for Xcode 14 and rename ios folder to apple * Update macOS docs and CI script to use LIBOMP_PREFIX for OpenMP library path * Delete benchmark-all-validate.py Delete benchmark script as per feedback from Sascha Willems * Update debugprintf example documentation in examples.h
This commit is contained in:
parent
3d4446fa15
commit
ba927eab6c
38 changed files with 2755 additions and 9 deletions
42
apple/MVKExample.h
Normal file
42
apple/MVKExample.h
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
/*
|
||||
* MVKExample.h
|
||||
*
|
||||
* Copyright (c) 2016-2017 The Brenwill Workshop Ltd.
|
||||
* This code is licensed under the MIT license (MIT) (http://opensource.org/licenses/MIT)
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "vulkanexamplebase.h"
|
||||
|
||||
// Wrapper class for the SW VulkanExample instance.
|
||||
class MVKExample {
|
||||
|
||||
public:
|
||||
void renderFrame();
|
||||
void displayLinkOutputCb(); // SRS - expose VulkanExampleBase::displayLinkOutputCb() to DemoViewController
|
||||
|
||||
void keyPressed(uint32_t keyChar); // SRS - expose keyboard events to DemoViewController
|
||||
void keyDown(uint32_t keyChar);
|
||||
void keyUp(uint32_t keyChar);
|
||||
|
||||
void mouseDown(double x, double y); // SRS - expose mouse events to DemoViewController
|
||||
void mouseUp();
|
||||
void rightMouseDown(double x, double y);
|
||||
void rightMouseUp();
|
||||
void otherMouseDown(double x, double y);
|
||||
void otherMouseUp();
|
||||
void mouseDragged(double x, double y);
|
||||
void scrollWheel(short wheelDelta);
|
||||
|
||||
void fullScreen(bool fullscreen); // SRS - expose VulkanExampleBase::settings.fullscreen to DemoView (macOS only)
|
||||
|
||||
MVKExample(void* view, double scaleUI); // SRS - support UIOverlay scaling parameter based on device and display type
|
||||
~MVKExample();
|
||||
|
||||
protected:
|
||||
VulkanExampleBase* _vulkanExample;
|
||||
};
|
||||
|
||||
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue