New in Version 3.1 – Virtual Reality with Unity
- Virtual reality hardware support for Unity
- The Unity VR porting process
- Things to consider when porting to VR
- Reflections in VR
- The result
ARM Guide for Unity Developers v3.1
By downloading the PDF below you acknowledge that you accept the End User Licence Agreement for the ARM Guide for Unity Developers
End User Licence Agreement for the ARM Guide for Unity Developers
END USER LICENCE AGREEMENT FOR THE DELIVERABLES. THIS END USER LICENCE AGREEMENT (“LICENCE”) IS A LEGAL AGREEMENT BETWEEN YOU (EITHER A SINGLE INDIVIDUAL, OR SINGLE LEGAL ENTITY) AND ARM LIMITED ("ARM") FOR THE USE OF THE DELIVERABLES ACCOMPANYING THIS LICENCE. ARM IS ONLY WILLING TO LICENSE THE DELIVERABLES TO YOU ON CONDITION THAT YOU ACCEPT ALL OF THE TERMS IN THIS LICENCE. BY CLICKING “I AGREE” OR BY INSTALLING OR OTHERWISE USING OR COPYING THE DELIVERABLES YOU INDICATE THAT YOU AGREE TO BE BOUND BY ALL THE TERMS OF THIS LICENCE. IF YOU DO NOT AGREE TO THE TERMS OF THIS LICENCE, ARM IS UNWILLING TO LICENSE THE DELIVERABLES TO YOU AND YOU MAY NOT INSTALL, USE OR COPY THE DELIVERABLES. 1. DEFINITIONS. “Applications” means: (i) software applications; and/or (as the context permits) (ii) prefabs (including, but not limited to, pieces of script code, shaders, geometry, textures and the like); developed by you. “Deliverables” means the source code of the software accompanying this Licence, and any printed, electronic or online documentation or technical guides supplied with it. 2. LICENCE GRANT. DELIVERABLES: ARM hereby grants to you, subject to the terms and conditions of this Licence, a non-exclusive, non-transferable, royalty free, worldwide licence to: (i) (a) use, copy and modify the source code of the software provided as part of the Deliverables; (b) use and copy the documentation provided as part of the Deliverables; solely for the purpose of developing, testing, debugging, analyzing and optimizing Applications; (ii) subject to Clause 3, distribute: (a) the whole of the source code or binary code of the software (provided as part of the Deliverables); or (b) the whole or any part of the source code or binary of the software and any modified versions of the source code of the software (created pursuant to Clause 2(i)(a) of this Licence) solely as incorporated into Applications; and (iii) subject to Clause 3, permit either or both your customers and your authorised distributors to redistribute the whole or any part of the source code or binary code of the software (provided as part of the Deliverables) any any modified versions of the source code of the software (created pursuant to Clause 2(i)(a)) solely as incorporated into Applications. 3. DISTRIBUTION AND REDISTRIBUTION If you choose to redistribute the whole or any part of the source code or binary code of the software pursuant to the licences granted in Clause 2, you shall: (a) ensure that the source code or binary of the software is licensed for use only as part of Applications; (b) not use ARM’s or any of its licensors names, logos or trademarks to market Applications; (c) retain all copyright notices and other notices in the source form of the software and any modified versions of the software (pursuant to the licence granted under Clause 2(i)(a)) that you distribute as part of Applications, and preserve any copyright notices which are included with, or in, the source code of the software; and (d) include a copy of this Licence with such distribution; (e) ensure that any further redistribution is limited to redistribution by either or both your customers and your authorised distributors as part of Applications and that your customers and your authorised distributors include a copy of this Licence with such distribution. 4. RESTRICTIONS ON USE OF THE DELIVERABLES. COPYING: You shall not use or copy the Deliverables except as expressly authorised in this Licence. You may make one additional copy of the delivered Deliverables media for backup or archival purposes. REVERSE ENGINEERING: Except to the extent that such activity is permitted by applicable law you shall not reverse engineer, decompile or disassemble any of the Deliverables. If the Deliverables were provided to you in Europe you shall not reverse engineer, decompile or disassemble any of the Deliverables for the purposes of error correction. RESTRICTIONS ON TRANSFER OF LICENSED RIGHTS: The rights granted to you under this Licence may not be assigned, sublicensed or otherwise transferred by you to any third party without the prior written consent of ARM. An assignment shall be deemed to include, without limitation; (i) any transaction or series of transactions whereby a third party acquires, directly or indirectly, the power to control the management and policies of you, whether through the acquisition of voting securities, by contract or otherwise; or (ii) the sale of more than fifty percent (50%) of your assets whether in a single transaction or series of transactions. You shall not rent or lease the Deliverables, or except as expressly provided above, share them with third parties. TITLE AND RESERVATION OF RIGHTS: You acquire no rights to the Deliverables other than as expressly provided by this Licence. The Deliverables are licensed not sold. ARM does not transfer title to the Deliverables to you. In no event shall the licences granted in Clause 2 be construed as granting you expressly or by implication, estoppel or otherwise, licences to any ARM technology other than the Deliverables. You shall not remove from the Deliverables any copyright notice or other notice (whether ARM’s or its licensor’s), and you shall ensure that any such notice is reproduced in any copies of the whole or any part of the Deliverables made by you. 5. NO SUPPORT. ARM has no obligation to provide support to you or to update any of the Deliverables, but ARM may do so at ARM’s sole discretion. If ARM chooses to provide support to you, it will only be in respect of the Deliverables as delivered and not any modifications thereto. 6. NO WARRANTIES. YOU AGREE THAT THE DELIVERABLES ARE LICENSED “AS IS”, AND THAT ARM AND ANY THIRD PARTY LICENSOR EXPRESSLY DISCLAIMS ALL REPRESENTATIONS, WARRANTIES, CONDITIONS OR OTHER TERMS, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, TITLE, SATISFACTORY QUALITY, MERCHANTIBILITY, AND FITNESS FOR A PARTICULAR PURPOSE. YOU EXPRESSLY ASSUME ALL LIABILITIES AND RISKS, FOR USE OR OPERATION OF ANY APPLICATION PROGRAMS YOU CREATE WITH THE DELIVERABLES, AND YOU ASSUME THE ENTIRE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 7. LIMITATION OF LIABILITY. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL ARM OR ITS LICENSORS BE LIABLE FOR ANY INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES (INCLUDING LOSS OF PROFITS) ARISING OUT OF THE USE OR INABILITY TO USE THE DELIVERABLES WHETHER BASED ON A CLAIM UNDER CONTRACT, TORT OR OTHER LEGAL THEORY, EVEN IF ARM OR ANY SUCH LICENSOR WAS ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. ARM does not seek to limit or exclude liability for death or personal injury arising from ARM's negligence or ARM’s fraud and because some jurisdictions do not permit the exclusion or limitation of liability for consequential or incidental damages the above limitation relating to liability for consequential damages may not apply to you. NOTWITHSTANDING ANYTHING TO THE CONTRARY CONTAINED IN THIS LICENCE, THE MAXIMUM LIABILITY OF ARM TO YOU IN AGGREGATE FOR ALL CLAIMS MADE AGAINST ARM IN CONTRACT TORT OR OTHERWISE UNDER OR IN CONNECTION WITH THE SUBJECT MATTER OF THIS LICENCE SHALL NOT EXCEED THE GREATER OF THE TOTAL OF SUMS PAID BY YOU TO ARM (IF ANY) FOR THIS LICENCE AND US$5.00. THE EXISTENCE OF MORE THAN ONE CLAIM WILL NOT ENLARGE OR EXTEND THE LIMIT. 8. U.S. GOVERNMENT END USERS. US Government Restrictions: Use, duplication, reproduction, release, modification, disclosure or transfer of this commercial product and accompanying documentation is restricted in accordance with the terms of this Licence. 9. TERM AND TERMINATION. This Licence shall remain in force until terminated by you or by ARM. Without prejudice to any of its other rights if you are in breach of any of the terms and conditions of this Licence then ARM may terminate this Licence immediately upon giving written notice to you. You may terminate this Licence at any time. Upon termination of this Licence by you or by ARM you shall stop using the Deliverables and destroy all copies of the Deliverables in your possession together with all documentation and related materials. Nothwithstanding the foregoing, except where ARM has terminated this Licence for your breach, you are permitted to distribute the the source code or binary code of the software solely as part of Applications that you have developed prior to termination. The provisions of Clauses 1, 6, 7, 8, 9 and 10 shall survive termination of this Licence. 10. GENERAL. This Licence is governed by English Law. Except where ARM agrees otherwise in a written contract signed by you and ARM, this is the only agreement between you and ARM relating to the Deliverables and it may only be modified by written agreement between you and ARM. Except as expressly agreed in writing, this Licence may not be modified by purchase orders, advertising or other representation by any person. If any clause in this Licence is held by a court of law to be illegal or unenforceable the remaining provisions of this Licence shall not be affected thereby. The failure by ARM to enforce any of the provisions of this Licence, unless waived in writing, shall not constitute a waiver of ARM's rights to enforce such provision or any other provision of this Licence in the future. Re-distribution contrary to UK and US Export laws and regulations are prohibited. You agree to comply fully with all laws and regulations of the United States and other countries ("Export Laws") to assure that the Deliverables are not (1) exported, directly or indirectly, in violation of Export Laws, either to any countries that are subject to U.S.A. export restrictions or to any end user who has been prohibited from participating in the U.S.A. export transactions by any federal agency of the U.S.A. government; or (2) intended to be used for any purpose prohibited by Export Laws, including, without limitation, nuclear, chemical, or biological weapons proliferation. ARM contract reference: PRE-20757 /end
About the Guide
Unity is used to develop games and applications across multiple platforms by over 50% of all developers. The ARM Guide for Unity Developers shows you how to get the most out of Unity when developing under the unique challenges of mobile platforms.
The ARM demo team has collated in this guide all the beneficial hints, tips and techniques which have arisen during projects, which we hope beginner and intermediate developers alike will find useful.
New in Version 3.0:
- Using Enlighten in custom shaders
- Combining reflections
- Using Early-z
- Dirty lens effect
- Light shafts
- Fog effects
- Icy wall effect
- Procedural skybox
- Tangent space to world space conversion tool
New in Version 2.1:
- Real time light probes
- Specular effects
- Further optimization techniques
Version 2.0 includes highly optimized rendering techniques, which are recommended for mobile devices. The reader can find a detailed explanation and code snippets of the new shadows rendering technique based on local cubemaps. Other new sections cover shader optimization and Global Illumination with Enlighten, helping developers to better understand lighting and Unity.
Furthermore, there are several blogs outlining the techniques: Dynamic soft shadows based on local cubemap, reflections based on local cubemaps, refractions based on local cubemaps and the power of local cubemaps at UNITE APAC and the Taoyuan effect.
Unity is the most popular game engine on the planet, used to develop games and applications across multiple platforms by over 50% of all developers. The ARM Guide for Unity developers shows developers how to get the most out of Unity when developing under the unique challenges of mobile platforms. It includes:
- Visual quality enhancements for your mobile games and applications
- Optimizations for both CPU and GPU performance
- Battery life extension techniques for applications running on ARM® Cortex® CPU and ARM Mali™ GPU-based devices