/vulkan-basic-samples

Primary LanguageC++Apache License 2.0Apache-2.0

Vulkan API samples

Demonstrates basic usages of Vulkan APIs.

Introduction

The project includes series of samples demonstrating a basic usage of Vulkan APIs. This repository is a replication of LunarG sample kit, refer to wiki for more background.

Getting Started

Refer to the Getting Started guide.

Screenshots

screenshot

Prerequisites

Sample Import

To import the samples, follow the steps below:

Step 1: Build shaderc in the NDK

From the command-prompt, navigate to the ${ndk_root}/sources/third_party/shaderc directory. Then, run the following command:

../../../ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=Android.mk APP_STL:=[c++_static|c++_shared] APP_ABI=[armeabi-v7a|arm64-v8a|x86|x86_64|all] libshaderc_combined -j16

For this project, the APP_STL value is set to use the c++_static, as all of the project samples are using it.

Step 2: Import the samples into Android Studio

You can use one of the following methods to install this project in Android Studio:

  • Import Android Code Sample: Choose Import an Android code sample, then search for and select Vulkan API samples. Android Studio downloads the sample code directly from Github.
  • Import Project: Use this method only if you've already cloned this project from GitHub into a local repo. From Android Studio, choose Open an existing Android Studio project and select the build.gradle file located at the root of your local repo directory.

The samples are configured to build armeabi-v7a; to build other android ARCH, change abiFilters in $your-project/build.gradle.

Note: This project includes 40+ samples and may take time to load on some platforms, such as Windows OS.

Support

If you've found an error in this sample, please file an issue: https://github.com/googlesamples/<...>/issues

Patches are encouraged, and may be submitted by forking this project and submitting a pull request through GitHub.

License

Copyright 2016 Google, Inc.

Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.