TG Telegram Group Link
Channel: Log: Games Performance Optimization
Back to Bottom
Harness Apple GPUs with Metal

Create visually stunning, high-performance apps and games when you combine the power of Apple GPUs with Metal, the modern foundation for GPU-accelerated graphics on Apple platforms. Discover the architecture and capabilities of the Apple GPU and how Metal harnesses its tile-based deferred rendering (TBDR) architecture to achieve measurable performance gains in apps and games. In this session, we'll discuss the efficiency of Apple GPUs and show how TBDR applies to an array of modern rendering techniques. You should come to the session with a basic knowledge of Metal and graphics rendering. For a great introduction, check out “Modern Rendering with Metal” to orient yourself.

https://developer.apple.com/videos/play/wwdc2020/10602/

#rendering #metal #info
Optimizing C and C++ Code

Embedded software often runs on processors with limited computation power, thus optimizing the code becomes a necessity. In this article we will explore the following optimization techniques for C and C++ code developed for Real-time and Embedded Systems.

https://www.eventhelix.com/RealtimeMantra/Basics/OptimizingCAndCPPCode.htm

#optimizing
CppCon 2014: Mike Acton "Data-Oriented Design and C++”

The transformation of data is the only purpose of any program. Common approaches in C++ which are antithetical to this goal will be presented in the context of a performance-critical domain (console game development). Additionally, limitations inherent in any C++ compiler and how that affects the practical use of the language when transforming that data will be demonstrated.

https://www.youtube.com/watch?v=rX0ItVEVjHc
World of Tanks Blitz: Automated performance testing for modern graphics needs

In this blog, read about performance testing with modern graphics. This is a guest blog entry from Pavel Busko.

https://community.arm.com/developer/tools-software/graphics/b/blog/posts/world-of-tank-blitz

#profiling #ci
Optimize Your Mobile Game Performance

Poor performance not only causes unexpected delays in your game, but also hardware problems such as reduced battery life, thermal control issues, and limitations on how many devices you can reach.

In one of our most comprehensive guides ever, we’ve collected over 75 actionable tips and advice from Unity’s expert team of support engineers on how you can optimize your mobile game to run smoothly on as many devices as possible while providing players with the best experience.

Created by our Success and Accelerate Solutions engineers, these in-depth tips gathered from real-life engagements with some of the top studios, will help you get the most out of Unity and boost your mobile game’s performance.

https://create.unity3d.com/optimize-mobile-game-eBook

#book #unity #mobile #optimizing
Arm® Mali GPU Best Practices Developer Guide

Revision: Version 2.2

This guide provides recommendations for efficient API usage on Mali GPUs.

https://developer.arm.com/documentation/101897/latest

#optimizing #BestPractices
PowerVR Performance Recommendations Introduction

These recommendations are aimed at developers who wish to get the best possible graphics performance from their applications running on PowerVR hardware. The recommendations range from the fairly high-level to very low-level, and have varying amounts of performance gain.

https://docs.imgtec.com/Profiling_and_Optimisations/PerfRec/topics/c_PerfRec_introduction.html

#optimizing #BestPractices
Qualcomm® Adreno GPU Best Practices

This guide outlines the various technologies and subsystems provided by the Adreno GPU to support the graphics developer.

https://developer.qualcomm.com/sites/default/files/docs/adreno-gpu/developer-guide/gpu/best_practices.html#gpu-best-practices

#optimizing #BestPractices
Speeding up Blender .obj export

A short story how a float formatting curiosity led to accidentally speeding up Blender's obj exporter.

https://aras-p.info/blog/2022/02/03/Speeding-up-Blender-.obj-export/
ShaderVariantTool for Unity

This tool lists out all shader keywords and variant counts that are being included in player build.
i.e. If a shader keyword is being stripped, you won't see the keyword on the list.

https://github.com/cinight/SimpleTools/tree/master/Assets/Editor/ShaderVariantTool

#unity #shaders
Optimize for Android (Go edition)

The Android operating system brings the power of computing to everyone. This vision applies to all users, including those on entry-level phones that face real constraints across data, storage, memory, and more.
This was especially important for us to get right because, when we first announced Android (Go edition) back in 2017, people using low-end phones accounted for 57% of all device shipments globally.

Part 1
Part 2
Part 3

#optimizing #BestPractices #android
Media is too big
VIEW IN TELEGRAM
Arm Mobile Studio: Graphics optimization case studies

This talk will use step-by-step case studies from real-world examples to show how developers can use our profiling tools to improve the performance of their Android games. For each case study this talk will introduce the key graphics concepts, before showing how to use the Mobile Studio profiling tools to measure the on-device performance and identify bottlenecks. For each problem identified, the talk will then explain the rendering API best practice and use it to make changes to improve the performance of each sample. We will then use the tools to confirm the impact of applied optimizations.

#optimizing #android
Introducing Pixel Local Storage: an extension ahead of its time

Back in 2014 . Since then, many things have happened that have transformed mobile Graphics, particularly the release of the first Vulkan version in February 2016. Built from the ground up, Vulkan was intended to replace OpenGL as the main Graphics API, after OpenGL had successfully served the industry for more than 20 years. The new Graphics API was expected to provide a set of benefits across multiple platforms that the graphics community recognizes and values today.

As expected, the transition from OpenGL to Vulkan is taking several years. Although today the default API in the main game engines is Vulkan, all of them still support OpenGL ES 3.x for Android. OpenGL ES 3.1 brought compute to mobile graphics, and OpenGL ES 3.2 added the Android Extension Pack, bringing the mobile API's functionality significantly closer to its desktop counterpart – OpenGL. OpenGL ES 3.2 is supported in Android 6.0 and higher if the device itself supports this graphics pipeline, which is reflected in the high use of OpenGL ES by game developers.

Part 1 in this blog series explores the PLS extension from today’s perspective, but also from when it was launched. We highlight the main benefits it introduced, so developers can make the most of it when coding their games using OpenGL ES. Some representative examples are described and links to relevant publications and presentations are provided.

https://community.arm.com/arm-community-blogs/b/graphics-gaming-and-vr-blog/posts/introducing-pixel-local-storage

#graphics #mobile
Vulkanised 2023: Getting started on mobile and best practices for Arm GPUs

This talk was originally presented at Vulkanised 2023 (Feb 7-9, Munich Germany) and was recorded afterwards due to some technical issues with the original live recording.

Vulkanised is organised by the Khronos Group and is the largest event dedicated to 3D developers using the Vulkan API. The event provides a unique opportunity to bring the Vulkan developer community together to exchange ideas, solve problems and help steer the future development of the Vulkan API and ecosystem..

https://www.youtube.com/watch?v=BD1zXW7Uz8Q

#vulkan #BestPractices #android
Practical Optimizations

So with all the talk about optimization happening on Twitter, some people who saw me give this talk at a private conference asked for me to do a public version.

https://www.youtube.com/watch?v=NAVbI1HIzCE

#optimizing
Branching on a GPU

If you consult the internet about writing a branch of a GPU, you might think they open the gates of hell and let demons in. They will say you should avoid them at all costs, and that you can avoid them by using the ternary operator or step() and other silly math tricks. Most of this advice is outdated at best, or just plain wrong.
Let’s correct that.

https://medium.com/@jasonbooth_86226/branching-on-a-gpu-18bfc83694f2

#shaders
Media is too big
VIEW IN TELEGRAM
ASTC texture compression for developers

ASTC is an advanced texture compression format which has now reached ubiquity in the mobile graphics ecosystem. This session with discuss how to use the ASTC effectively, and highlight the optimization work Arm has been doing to significantly improve compression performance and usability of our "astcenc" texture compressor.

#TextureCompression #ASTC
HTML Embed Code:
2024/05/17 21:59:25
Back to Top