Update readme

This commit is contained in:
yanchith 2018-02-27 13:48:24 +10:00
parent 7f62211d43
commit 9aafe04b54

View file

@ -7,7 +7,7 @@
Copyright (c) 2016-2017 [The Brenwill Workshop Ltd.](http://www.brenwill.com). Copyright (c) 2016-2017 [The Brenwill Workshop Ltd.](http://www.brenwill.com).
This document is licensed under the MIT license (MIT) (http://opensource.org/licenses/MIT) This document is licensed under the MIT license (MIT) (http://opensource.org/licenses/MIT)
*This document is written in [Markdown](http://en.wikipedia.org/wiki/Markdown) format. *This document is written in [Markdown](http://en.wikipedia.org/wiki/Markdown) format.
For best results, use a Markdown reader.* For best results, use a Markdown reader.*
@ -16,7 +16,7 @@ For best results, use a Markdown reader.*
Introduction Introduction
------------ ------------
The *Xcode* project in this folder builds and runs the *Vulkan* examples in this The *Xcode* project in this folder builds and runs the *Vulkan* examples in this
repository on *iOS* and *macOS*, using the **MoltenVK** *Vulkan* driver. repository on *iOS* and *macOS*, using the **MoltenVK** *Vulkan* driver.
@ -26,7 +26,7 @@ repository on *iOS* and *macOS*, using the **MoltenVK** *Vulkan* driver.
Installing MoltenVK Installing MoltenVK
------------------- -------------------
The examples in this repository can be run on *iOS* and *macOS* by using The examples in this repository can be run on *iOS* and *macOS* by using
the [**MoltenVK**](http://www.moltengl.com/moltenvk/) *Vulkan* driver. the [**MoltenVK**](http://www.moltengl.com/moltenvk/) *Vulkan* driver.
These examples require **MoltenVK 0.18.0** or greater. These examples require **MoltenVK 0.18.0** or greater.
@ -34,16 +34,16 @@ These examples require **MoltenVK 0.18.0** or greater.
Follow these instructions to install **MoltenVK**: Follow these instructions to install **MoltenVK**:
1. [Download](https://moltengl.com/free-trial/) the **Molten** free evaluation trial. 1. [Download](https://moltengl.com/free-trial/) the **Molten** free evaluation trial.
This free trial includes **MoltenVK**, is full-featured, and is not time-limited. This free trial includes **MoltenVK**, is full-featured, and is not time-limited.
You must purchase a license if you wish to use **MoltenVK** for a production You must purchase a license if you wish to use **MoltenVK** for a production
application or game, but you can use the evaluation version to run these examples. application or game, but you can use the evaluation version to run these examples.
2. Unzip the **Molten** package, and move it to a folder outside this repository. 2. Unzip the **Molten** package, and move it to a folder outside this repository.
3. Open a *Terminal* session and navigate to the directory containing this document, 3. Open a *Terminal* session and navigate to the directory containing this document,
remove the existing `MoltenVK` symbolic link in this directory, and create a new remove the existing `MoltenVK` symbolic link in this directory, and create a new
symbolic link pointing to the `MoltenVK` directory in the **Molten** package: symbolic link pointing to the `MoltenVK` directory in the **Molten** package:
cd path-to-this-directory cd path-to-this-directory
rm MoltenVK rm MoltenVK
ln -s path-to-Molten-package/MoltenVK ln -s path-to-Molten-package/MoltenVK
@ -55,13 +55,13 @@ Follow these instructions to install **MoltenVK**:
Installing AssImp Installing AssImp
----------------- -----------------
The examples in this repository make use of the [*AssImp*](http://assimp.sourceforge.net) The examples in this repository make use of the [*AssImp*](http://assimp.sourceforge.net)
library to load resource assets from files. To run the examples you must download and library to load resource assets from files. To run the examples you must download and
install *AssImp* library as follows. install *AssImp* library as follows.
>***Note:*** Due to the way that *AssImp* makes use of the *CMake* utility, an installation >***Note:*** Due to the way that *AssImp* makes use of the *CMake* utility, an installation
of *AssImp* can only be built for a single platform. To create *AssImp* libraries for both of *AssImp* can only be built for a single platform. To create *AssImp* libraries for both
*iOS* and *macOS*, download a separate copy of the *AssImp* directory for each platform *iOS* and *macOS*, download a separate copy of the *AssImp* directory for each platform
(or create a copy of the downloaded *AssImp* directory for each platform before building). (or create a copy of the downloaded *AssImp* directory for each platform before building).
@ -73,7 +73,7 @@ of *AssImp* can only be built for a single platform. To create *AssImp* librarie
3. Open the file `assimp-3.3.1-ios/port/iOS/IPHONEOS_ARM64_TOOLCHAIN.cmake` file and comment 3. Open the file `assimp-3.3.1-ios/port/iOS/IPHONEOS_ARM64_TOOLCHAIN.cmake` file and comment
out the following lines: out the following lines:
#SET (CC "${DEVROOT}/usr/bin/llvm-gcc") #SET (CC "${DEVROOT}/usr/bin/llvm-gcc")
#SET (CXX "${DEVROOT}/usr/bin/llvm-g++") #SET (CXX "${DEVROOT}/usr/bin/llvm-g++")
#CMAKE_FORCE_C_COMPILER (${CC} LLVM) #CMAKE_FORCE_C_COMPILER (${CC} LLVM)
@ -81,13 +81,13 @@ of *AssImp* can only be built for a single platform. To create *AssImp* librarie
4. Open a *Terminal* session and navigate to the `assimp-3.3.1-ios/port/iOS` directory, 4. Open a *Terminal* session and navigate to the `assimp-3.3.1-ios/port/iOS` directory,
and run the following build command: and run the following build command:
cd path-to-assimp-3.3.1-ios/port/iOS cd path-to-assimp-3.3.1-ios/port/iOS
./build.sh --stdlib=libc++ --archs="arm64" --no-fat ./build.sh --stdlib=libc++ --archs="arm64" --no-fat
5. In the `assimp` directory within this directory, remove the existing `assimp-ios` 5. In the `assimp` directory within this directory, remove the existing `assimp-ios`
symbolic link, and create a new symbolic link pointing to the `assimp-3.3.1-ios` directory: symbolic link, and create a new symbolic link pointing to the `assimp-3.3.1-ios` directory:
cd path-to-this-directory/assimp cd path-to-this-directory/assimp
rm assimp-ios rm assimp-ios
ln -s path-to-assimp-3.3.1-ios assimp-ios ln -s path-to-assimp-3.3.1-ios assimp-ios
@ -99,16 +99,18 @@ of *AssImp* can only be built for a single platform. To create *AssImp* librarie
2. Unzip and rename the directory to `assimp-3.3.1-macos`. 2. Unzip and rename the directory to `assimp-3.3.1-macos`.
3. Open a *Terminal* session and navigate to the `assimp-3.3.1-ios/port/macOS` directory, 3. Open a *Terminal* session and navigate to the `assimp-3.3.1-macos` directory,
and run the following build commands: and run the following build commands:
cd path-to-assimp-3.3.1-macos cd path-to-assimp-3.3.1-macos
cmake CMakeLists.txt -G 'Unix Makefiles' cmake CMakeLists.txt -G 'Unix Makefiles'
make make
4. In the `assimp` directory within this directory, remove the existing `assimp-macos` * If compilation fails, fix typo in `assimp-3.3.1-macos/code/D3MFImporter.cpp` and try `make` again
4. In the `assimp` directory within this directory, remove the existing `assimp-macos`
symbolic link, and create a new symbolic link pointing to the `assimp-3.3.1-macos` directory: symbolic link, and create a new symbolic link pointing to the `assimp-3.3.1-macos` directory:
cd path-to-this-directory/assimp cd path-to-this-directory/assimp
rm assimp-macos rm assimp-macos
ln -s path-to-assimp-3.3.1-macos assimp-macos ln -s path-to-assimp-3.3.1-macos assimp-macos
@ -126,17 +128,17 @@ in this repository on either *iOS* or *macOS*. To do so, follow these instructio
1. Open the `examples.xcodeproj` *Xcode* project. 1. Open the `examples.xcodeproj` *Xcode* project.
2. Specify which of the many examples within this respository you wish to run, by opening 2. Specify which of the many examples within this respository you wish to run, by opening
the `examples.h` file within *Xcode*, and following the instructions in the comments the `examples.h` file within *Xcode*, and following the instructions in the comments
within that file to indicate which of the examples you wish to run. within that file to indicate which of the examples you wish to run.
3. Run either the `examples-iOS` or `examples-macOS` *Xcode Scheme* to run the example in *iOS* 3. Run either the `examples-iOS` or `examples-macOS` *Xcode Scheme* to run the example in *iOS*
or *macOS*, repectively. or *macOS*, repectively.
4. Many of the examples include an option to press keys to control the display of features 4. Many of the examples include an option to press keys to control the display of features
and scene components: and scene components:
- On *iOS*, tap on the scene to display the keyboard. Tap again on the scene to hide the keyboard. - On *iOS*, tap on the scene to display the keyboard. Tap again on the scene to hide the keyboard.
- On both *iOS* and *macOS*, use the numeric keys (*1, 2, 3...*) instead of function keys (*F1, F2, F3...*). - On both *iOS* and *macOS*, use the numeric keys (*1, 2, 3...*) instead of function keys (*F1, F2, F3...*).
- On both *iOS* and *macOS*, use the regular keyboard *+* and *-* keys instead of the numpad *+* and *-* keys. - On both *iOS* and *macOS*, use the regular keyboard *+* and *-* keys instead of the numpad *+* and *-* keys.
- On both *iOS* and *macOS*, use the *delete* key instead of the *escape* key. - On both *iOS* and *macOS*, use the *delete* key instead of the *escape* key.