The document discusses the Lightweight Render Pipeline (LWRP) in Unity. It provides an overview of LWRP, including what it is, why developers should care about it, and how to set it up in a Unity project. It also describes the core rendering process in LWRP, including initializing camera data, culling, and executing render passes. Key aspects like shader constants, visible lights, and rendering data are explained.
Unity mobile game performance profiling – using arm mobile studioOwen Wu
本議程將使用實際的Unity專案來說明如何在手機上有效的進行效能分析,除了介紹使用Unity本身的效能分析工具外,也會介紹如何使用Arm Mobile Studio來做更為精確的效能分析。
目標對象與預期收穫
Unity遊戲工程師可以從本議程中學習到有效的手機遊戲效能分析知識及技巧,從而能快速且正確地找出手機遊戲的效能瓶頸。
The past few years have seen a sharp increase in the complexity of rendering algorithms used in modern game engines. Large portions of the rendering work are increasingly written in GPU computing languages, and decoupled from the conventional “one-to-one” pipeline stages for which shading languages were designed. Following Tim Foley’s talk from SIGGRAPH 2016’s Open Problems course on shading language directions, we explore example rendering algorithms that we want to express in a composable, reusable and performance-portable manner. We argue that a few key constraints in GPU computing languages inhibit these goals, some of which are rooted in hardware limitations. We conclude with a call to action detailing specific improvements we would like to see in GPU compute languages, as well as the underlying graphics hardware.
This talk was originally given at SIGGRAPH 2017 by Andrew Lauritzen (EA SEED) for the Open Problems in Real-Time Rendering course.
Course presentation at SIGGRAPH 2014 by Charles de Rousiers and Sébastian Lagarde at Electronic Arts about transitioning the Frostbite game engine to physically-based rendering.
Make sure to check out the 118 page course notes on: http://www.frostbite.com/2014/11/moving-frostbite-to-pbr/
During the last few months, we have revisited the concept of image quality in Frostbite. The core of our approach was to be as close as possible to a cinematic look. We used the concept of reference to evaluate the accuracy of produced images. Physically based rendering (PBR) was the natural way to achieve this. This talk covers all the different steps needed to switch a production engine to PBR, including the small details often bypass in the literature.
The state of the art of real-time PBR techniques allowed us to achieve good overall results but not without production issues. We present some techniques for improving convolution time for image based reflection, proper ambient occlusion handling, and coherent lighting units which are mandatory for level editing.
Moreover, we have managed to reduce the quality gap, highlighted by our systematic reference comparison, in particular related to rough material handling, glossy screen space reflection, and area lighting.
The technical part of PBR is crucial for achieving good results, but represents only the top of the iceberg. Frostbite has become the de facto high-end game engine within Electronic Arts and is now used by a large amount of game teams. Moving all these game teams from “old fashion” lighting to PBR has required a lot of education, which have been done in parallel of the technical development. We have provided editing and validation tools to help the transition of art production. In addition, we have built a flexible material parametrisation framework to adapt to the various authoring tools and game teams’ requirements.
An introduction to Realistic Ocean Rendering through FFT - Fabio Suriano - Co...Codemotion
A widely used approach to display realistic FFT (Fast Fourier Transform) ocean water on todays games is presented. A similar approach has been employed in movies like Titanic and Waterworld and in games like Assassin's Creed 3 and Crysis just to name a few. In this presentation we will talk about the matematical aspects that are at the heart of this technique up to the shading aspects that will represent the visual appearance of water and also how the LOD of the water mesh is managed. A demo implemented under Unreal Engine 4 or videos will be presented to better explain such a complex topic.
Unity mobile game performance profiling – using arm mobile studioOwen Wu
本議程將使用實際的Unity專案來說明如何在手機上有效的進行效能分析,除了介紹使用Unity本身的效能分析工具外,也會介紹如何使用Arm Mobile Studio來做更為精確的效能分析。
目標對象與預期收穫
Unity遊戲工程師可以從本議程中學習到有效的手機遊戲效能分析知識及技巧,從而能快速且正確地找出手機遊戲的效能瓶頸。
The past few years have seen a sharp increase in the complexity of rendering algorithms used in modern game engines. Large portions of the rendering work are increasingly written in GPU computing languages, and decoupled from the conventional “one-to-one” pipeline stages for which shading languages were designed. Following Tim Foley’s talk from SIGGRAPH 2016’s Open Problems course on shading language directions, we explore example rendering algorithms that we want to express in a composable, reusable and performance-portable manner. We argue that a few key constraints in GPU computing languages inhibit these goals, some of which are rooted in hardware limitations. We conclude with a call to action detailing specific improvements we would like to see in GPU compute languages, as well as the underlying graphics hardware.
This talk was originally given at SIGGRAPH 2017 by Andrew Lauritzen (EA SEED) for the Open Problems in Real-Time Rendering course.
Course presentation at SIGGRAPH 2014 by Charles de Rousiers and Sébastian Lagarde at Electronic Arts about transitioning the Frostbite game engine to physically-based rendering.
Make sure to check out the 118 page course notes on: http://www.frostbite.com/2014/11/moving-frostbite-to-pbr/
During the last few months, we have revisited the concept of image quality in Frostbite. The core of our approach was to be as close as possible to a cinematic look. We used the concept of reference to evaluate the accuracy of produced images. Physically based rendering (PBR) was the natural way to achieve this. This talk covers all the different steps needed to switch a production engine to PBR, including the small details often bypass in the literature.
The state of the art of real-time PBR techniques allowed us to achieve good overall results but not without production issues. We present some techniques for improving convolution time for image based reflection, proper ambient occlusion handling, and coherent lighting units which are mandatory for level editing.
Moreover, we have managed to reduce the quality gap, highlighted by our systematic reference comparison, in particular related to rough material handling, glossy screen space reflection, and area lighting.
The technical part of PBR is crucial for achieving good results, but represents only the top of the iceberg. Frostbite has become the de facto high-end game engine within Electronic Arts and is now used by a large amount of game teams. Moving all these game teams from “old fashion” lighting to PBR has required a lot of education, which have been done in parallel of the technical development. We have provided editing and validation tools to help the transition of art production. In addition, we have built a flexible material parametrisation framework to adapt to the various authoring tools and game teams’ requirements.
An introduction to Realistic Ocean Rendering through FFT - Fabio Suriano - Co...Codemotion
A widely used approach to display realistic FFT (Fast Fourier Transform) ocean water on todays games is presented. A similar approach has been employed in movies like Titanic and Waterworld and in games like Assassin's Creed 3 and Crysis just to name a few. In this presentation we will talk about the matematical aspects that are at the heart of this technique up to the shading aspects that will represent the visual appearance of water and also how the LOD of the water mesh is managed. A demo implemented under Unreal Engine 4 or videos will be presented to better explain such a complex topic.
A description of the next-gen rendering technique called Triangle Visibility Buffer. It offers up to 10x - 20x geometry compared to Deferred rendering and much higher resolution. Generally it aligns better with memory access patterns in modern GPUs compared to Deferred Lighting like Clustered Deferred Lighting etc.
Talk from SIGGRAPH 2010 and the <a />Beyond Programmable Shading course</a>
Also see <a />publications.dice.se</a> for more material and other DICE talks.
Optimizing the Graphics Pipeline with Compute, GDC 2016Graham Wihlidal
With further advancement in the current console cycle, new tricks are being learned to squeeze the maximum performance out of the hardware. This talk will present how the compute power of the console and PC GPUs can be used to improve the triangle throughput beyond the limits of the fixed function hardware. The discussed method shows a way to perform efficient "just-in-time" optimization of geometry, and opens the way for per-primitive filtering kernels and procedural geometry processing.
Takeaway:
Attendees will learn how to preprocess geometry on-the-fly per frame to improve rendering performance and efficiency.
Intended Audience:
This presentation is targeting seasoned graphics developers. Experience with DirectX 12 and GCN is recommended, but not required.
Bill explains some of the ways that the Vertex Shader can be used to improve performance by taking a fast path through the Vertex Shader rather than generating vertices with other parts of the pipeline in this AMD technology presentation from the 2014 Game Developers Conference in San Francisco March 17-21. Check out more technical presentations at http://developer.amd.com/resources/documentation-articles/conference-presentations/
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time RaytracingElectronic Arts / DICE
In this presentation part of the "Introduction to DirectX Raytracing" course, Colin Barré-Brisebois of SEED discusses some of the challenges the team had to go through when going from raster to real-time raytracing for Project PICA PICA.
Secrets of CryENGINE 3 Graphics TechnologyTiago Sousa
In this talk, the authors will describe an overview of a different method for deferred lighting approach used in CryENGINE 3, along with an in-depth description of the many techniques used. Original file and videos at http://crytek.com/cryengine/presentations
Past, Present and Future Challenges of Global Illumination in GamesColin Barré-Brisebois
Global illumination (GI) has been an ongoing quest in games. The perpetual tug-of-war between visual quality and performance often forces developers to take the latest and greatest from academia and tailor it to push the boundaries of what has been realized in a game product. Many elements need to align for success, including image quality, performance, scalability, interactivity, ease of use, as well as game-specific and production challenges.
First we will paint a picture of the current state of global illumination in games, addressing how the state of the union compares to the latest and greatest research. We will then explore various GI challenges that game teams face from the art, engineering, pipelines and production perspective. The games industry lacks an ideal solution, so the goal here is to raise awareness by being transparent about the real problems in the field. Finally, we will talk about the future. This will be a call to arms, with the objective of uniting game developers and researchers on the same quest to evolve global illumination in games from being mostly static, or sometimes perceptually real-time, to fully real-time.
A technical deep dive into the DX11 rendering in Battlefield 3, the first title to use the new Frostbite 2 Engine. Topics covered include DX11 optimization techniques, efficient deferred shading, high-quality rendering and resource streaming for creating large and highly-detailed dynamic environments on modern PCs.
Physically Based Lighting in Unreal Engine 4Lukas Lang
Talk held at Unreal Meetup Munich on 15th May 2019.
I talked about some of the theoretical background of physically based lighting, demonstrated a workflow + containing value tables needed to be able to easily use the workflow.
Rendering Techniques for Augmented Reality and a Look Ahead at AR FoundationUnity Technologies
Have you ever wondered why your virtual and real-world objects look disconnected from each other? Are you curious about how to blend virtual and physical spaces to create a seamless experience? This talk will cover advanced techniques using lighting, depth masks, occlusion, shadows and more to create a sense of immersion. You'll also get an introduction to a set of tools that will improve your development process when using Unity and AR Foundation.
Jimmy Alamparambil - Unity Technologies
Lukasz Pasek - Unity Technologies
How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019Unity Technologies
Learn how the Boat Attack demo was created using the Universal Render Pipeline. These slides offer an in-depth look at the features used in the demo, including Shader Graph, Custom Render Passes, Camera Callback, and more.
Speaker:
Andre McGrail - Unity Technologies
Watch the session on YouTube: https://youtu.be/ZPQdm1T7aRs
A description of the next-gen rendering technique called Triangle Visibility Buffer. It offers up to 10x - 20x geometry compared to Deferred rendering and much higher resolution. Generally it aligns better with memory access patterns in modern GPUs compared to Deferred Lighting like Clustered Deferred Lighting etc.
Talk from SIGGRAPH 2010 and the <a />Beyond Programmable Shading course</a>
Also see <a />publications.dice.se</a> for more material and other DICE talks.
Optimizing the Graphics Pipeline with Compute, GDC 2016Graham Wihlidal
With further advancement in the current console cycle, new tricks are being learned to squeeze the maximum performance out of the hardware. This talk will present how the compute power of the console and PC GPUs can be used to improve the triangle throughput beyond the limits of the fixed function hardware. The discussed method shows a way to perform efficient "just-in-time" optimization of geometry, and opens the way for per-primitive filtering kernels and procedural geometry processing.
Takeaway:
Attendees will learn how to preprocess geometry on-the-fly per frame to improve rendering performance and efficiency.
Intended Audience:
This presentation is targeting seasoned graphics developers. Experience with DirectX 12 and GCN is recommended, but not required.
Bill explains some of the ways that the Vertex Shader can be used to improve performance by taking a fast path through the Vertex Shader rather than generating vertices with other parts of the pipeline in this AMD technology presentation from the 2014 Game Developers Conference in San Francisco March 17-21. Check out more technical presentations at http://developer.amd.com/resources/documentation-articles/conference-presentations/
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time RaytracingElectronic Arts / DICE
In this presentation part of the "Introduction to DirectX Raytracing" course, Colin Barré-Brisebois of SEED discusses some of the challenges the team had to go through when going from raster to real-time raytracing for Project PICA PICA.
Secrets of CryENGINE 3 Graphics TechnologyTiago Sousa
In this talk, the authors will describe an overview of a different method for deferred lighting approach used in CryENGINE 3, along with an in-depth description of the many techniques used. Original file and videos at http://crytek.com/cryengine/presentations
Past, Present and Future Challenges of Global Illumination in GamesColin Barré-Brisebois
Global illumination (GI) has been an ongoing quest in games. The perpetual tug-of-war between visual quality and performance often forces developers to take the latest and greatest from academia and tailor it to push the boundaries of what has been realized in a game product. Many elements need to align for success, including image quality, performance, scalability, interactivity, ease of use, as well as game-specific and production challenges.
First we will paint a picture of the current state of global illumination in games, addressing how the state of the union compares to the latest and greatest research. We will then explore various GI challenges that game teams face from the art, engineering, pipelines and production perspective. The games industry lacks an ideal solution, so the goal here is to raise awareness by being transparent about the real problems in the field. Finally, we will talk about the future. This will be a call to arms, with the objective of uniting game developers and researchers on the same quest to evolve global illumination in games from being mostly static, or sometimes perceptually real-time, to fully real-time.
A technical deep dive into the DX11 rendering in Battlefield 3, the first title to use the new Frostbite 2 Engine. Topics covered include DX11 optimization techniques, efficient deferred shading, high-quality rendering and resource streaming for creating large and highly-detailed dynamic environments on modern PCs.
Physically Based Lighting in Unreal Engine 4Lukas Lang
Talk held at Unreal Meetup Munich on 15th May 2019.
I talked about some of the theoretical background of physically based lighting, demonstrated a workflow + containing value tables needed to be able to easily use the workflow.
Rendering Techniques for Augmented Reality and a Look Ahead at AR FoundationUnity Technologies
Have you ever wondered why your virtual and real-world objects look disconnected from each other? Are you curious about how to blend virtual and physical spaces to create a seamless experience? This talk will cover advanced techniques using lighting, depth masks, occlusion, shadows and more to create a sense of immersion. You'll also get an introduction to a set of tools that will improve your development process when using Unity and AR Foundation.
Jimmy Alamparambil - Unity Technologies
Lukasz Pasek - Unity Technologies
How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019Unity Technologies
Learn how the Boat Attack demo was created using the Universal Render Pipeline. These slides offer an in-depth look at the features used in the demo, including Shader Graph, Custom Render Passes, Camera Callback, and more.
Speaker:
Andre McGrail - Unity Technologies
Watch the session on YouTube: https://youtu.be/ZPQdm1T7aRs
Extended and embedding: containerd update & project use casesPhil Estes
A talk given at FOSDEM 2020 in the containers devroom on the current status of the CNCF containerd project as well as a dive into the ways users are extending and embedding containerd in other platforms and projects.
In this side, I introduce Webrender 1.0 (it have been updated to 2.0 after 08/03/2016) that is based on Rust language and OpenGL to develop a proof of concept to bring the game engine technology into Web browser. It mentions how Scene Graph, Batching, Composite work in this modern web browser, Servo.
OpenGL is a powerful, low-level graphics toolkit with a steep learning curve that allows access to accelerated GPU hardware. Using OpenGL, developers achieve high fidelity, animated graphics ubiquitous in games, screen productions and scientific software.
Join us for a one-hour webinar and we will give a comprehensive overview of the many aspects of OpenGL development where Qt provides advanced interfaces that let the developer focus on the tasks instead of dealing with repetitive and error-prone, platform dependent issues.
Lecture 4 from the COSC 426 graduate class on Augmented Reality. Taught by Mark Billinghurst from the HIT Lab NZ at the University of Canterbury. August 1st 2012
Rohit Yadav - The future of the CloudStack Virtual RouterShapeBlue
This talk surveys and explores the scopes and design for the next-generation network model consolidation in CloudStack and a new super-fast micro-vm based VR. The talk will discuss the scope and goals for the next-generation VR, consolidation of basic and advanced networks and zones, flexible networking topologies, UI based network designing, a standard systemvm patching mechanism and uniform VR programming interface with a lightweight secured agent, faster rules programming and zero-downtime upgrades. It will also explore new abilities to allow live/online patching, containerization of VR processes and pluggability of user-imported data/router appliances (bring your own X) such as pfsense, vyos etc for VPN, FTP, DNS, DHCP, etc.
Build your apps everywhere with Lightning Web Components Open Source, Fabien ...CzechDreamin
Did you know that several parts of the tools you’re using on the Salesforce Platform are open source? That you can create a LWR Community using Lightning Base Components and Lightning Design System and host it wherever you want? That you can benefit from new features being part of LWC but not yet available on the Platform like Light-DOM or dynamic components creation? And that some of your existing components can be reused quite easily?
If not, come and see how powerful Lightning Web Components Open Source are!
Weather service, maps and navigation, photo viewer, instant messaging, web browser, flick list or kinetic scrolling. You want all these with Qt? You get it!
Presentation by Ariya Hidayat held during Qt Developer Days 2009.
http://qt.nokia.com/developer/learning/elearning
By now you have heard about Flash Augmented Reality and how it is taking the Flash Development community by storm! Whether you are looking for how to get started, how to improve your own experiments or have a client who desperately needs AR on their site, this session is for you.
In this keynote I cover getting up and running as well as the ideal workflow for testing/deploying your creation. I also cover the basics then quickly move into how to build a FLAR Emulator for easy testing/debugging as well as general usability/performance issues. Finally we will look at my own experiments with AR, how they were built and highlight some of the best uses of Flash AR today.
The goal of this presentation is to teach you how to build a solid reusable foundation for all of your Flash AR projects which will allow you to quickly prototype your ideas. All code covered in this session is open source and free to use. Documentation on how it works will also be handed out as well.
LAS16-201: ART JIT in Android N
Speakers: Xueliang Zhong
Date: September 27, 2016
★ Session Description ★
Android runtime (ART) has evolved from an AOT compiler (in Android L & M) to a hybrid mode runtime (in Android N) which combines fast interpreter, JIT compiler and profile guided AOT compiler. In this talk, we’ll take a look at all these important changes in Android N. For example, the design and implementation of JIT, hybrid mode, tooling support, etc. This talk is meant to help Linaro members and developers to have a deeper understanding of ART in Android N, and to help them face the challenges of the new behaviors of Android runtime.
★ Resources ★
Etherpad: pad.linaro.org/p/las16-201
Presentations & Videos: http://connect.linaro.org/resource/las16/las16-201/
★ Event Details ★
Linaro Connect Las Vegas 2016 – #LAS16
September 26-30, 2016
http://www.linaro.org
http://connect.linaro.org
How to build Kick Ass Games in the CloudChris Schalk
This is a presentation given by Googlers Chris Schalk and Johan Euphrosine (Proppy) at GDD Sydney 2011 on how to build multi-platform video games using PlayN.
Optimizing HDRP with NVIDIA Nsight Graphics – Unite Copenhagen 2019Unity Technologies
Unity's High Definition Render Pipeline (HDRP) makes it possible for developers to unleash their application's full potential using a custom renderer. With this great power, comes great responsibility; more than ever you need to ensure that your application maintains optimal performance so your users can have the best experience possible. These slides look at using NVIDIA Nsight Graphics to profile and optimize your application to achieve peak performance. See how GPU Trace can help you visualize performance metrics to fully utilize your GPU; and how the brand new Shader Profile can help you to optimize your new HDRP shaders.
This session also showed how to utilize advanced features like the Acceleration Structure Viewer to debug your real-time ray tracing (DXR) application.
Speaker: Aurelio Reis – NVIDIA
Watch the session on YouTube: https://youtu.be/l_LiE1vAFhM
GraphSummit Paris - The art of the possible with Graph TechnologyNeo4j
Sudhir Hasbe, Chief Product Officer, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
Understanding Nidhi Software Pricing: A Quick Guide 🌟
Choosing the right software is vital for Nidhi companies to streamline operations. Our latest presentation covers Nidhi software pricing, key factors, costs, and negotiation tips.
📊 What You’ll Learn:
Key factors influencing Nidhi software price
Understanding the true cost beyond the initial price
Tips for negotiating the best deal
Affordable and customizable pricing options with Vector Nidhi Software
🔗 Learn more at: www.vectornidhisoftware.com/software-for-nidhi-company/
#NidhiSoftwarePrice #NidhiSoftware #VectorNidhi
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Mind IT Systems
Healthcare providers often struggle with the complexities of chronic conditions and remote patient monitoring, as each patient requires personalized care and ongoing monitoring. Off-the-shelf solutions may not meet these diverse needs, leading to inefficiencies and gaps in care. It’s here, custom healthcare software offers a tailored solution, ensuring improved care and effectiveness.
Atelier - Innover avec l’IA Générative et les graphes de connaissancesNeo4j
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Allez au-delà du battage médiatique autour de l’IA et découvrez des techniques pratiques pour utiliser l’IA de manière responsable à travers les données de votre organisation. Explorez comment utiliser les graphes de connaissances pour augmenter la précision, la transparence et la capacité d’explication dans les systèmes d’IA générative. Vous partirez avec une expérience pratique combinant les relations entre les données et les LLM pour apporter du contexte spécifique à votre domaine et améliorer votre raisonnement.
Amenez votre ordinateur portable et nous vous guiderons sur la mise en place de votre propre pile d’IA générative, en vous fournissant des exemples pratiques et codés pour démarrer en quelques minutes.
Software Engineering, Software Consulting, Tech Lead, Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Transaction, Spring MVC, OpenShift Cloud Platform, Kafka, REST, SOAP, LLD & HLD.
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeAftab Hussain
Understanding variable roles in code has been found to be helpful by students
in learning programming -- could variable roles help deep neural models in
performing coding tasks? We do an exploratory study.
- These are slides of the talk given at InteNSE'23: The 1st International Workshop on Interpretability and Robustness in Neural Software Engineering, co-located with the 45th International Conference on Software Engineering, ICSE 2023, Melbourne Australia
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
In the ever-evolving landscape of technology, enterprise software development is undergoing a significant transformation. Traditional coding methods are being challenged by innovative no-code solutions, which promise to streamline and democratize the software development process.
This shift is particularly impactful for enterprises, which require robust, scalable, and efficient software to manage their operations. In this article, we will explore the various facets of enterprise software development with no-code solutions, examining their benefits, challenges, and the future potential they hold.
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Customizing a production pipeline
1. GenerativeArt–MadewithUnity
Customizing a Production Pipeline
(Lightweight Render Pipeline)
Felipe Lira
Graphics Programmer
Unity Technologies
1
Note: If you are using a laptop download Unity 2018.2
and the following project: bit.ly/siggraph18
2. 2
Workshop Pre-requisites
●If you are on a SIGGRAPH computer
○ Start Unity and open SIGGRAPH2018-WORKSHOP
project in your Desktop
●If you are on your own computer
○ Download Unity 2018.2
○ Download the following project bit.ly/siggraph18
○ Start Unity and open the project you downloaded
●Slides: bit.ly/siggraph18_slides
3. 3
Workshop Agenda
●What is the Lightweight Render Pipeline (LWRP)
●Add LWRP to your project
●Convert a project to use LWRP
●Overview of LWRP rendering
●Customize LWRP renderer by adding custom passes
●Override LWRP renderer to implement a deferred renderer
4. 4
What is Lightweight Render Pipeline (LWRP)
●It’s a Scriptable Render Pipeline (SRP)
○ Rendering API exposed in C#
○ Open Source: https://github.com/Unity-Technologies/ScriptableRenderPipeline
●LWRP
○ Currently 1 of 2 of our inhouse Render Pipelines we are developing
○ Designed from the ground up to perform at best on mobile hardware
○ Modern APIs in mind, as well as Legacy APIs, eg GLES 2.0
5. 5
Why should you care about SRP and LWRP
●If you are
○ Student:
■ Learn Graphics Programming with a robust API
○ Game Developer:
■ Performance out of the box, explicit, lean and extensible
○ Researchers:
■ Implement, deploy and profile your research many platforms
23. 23
public void Setup(ScriptableRenderer renderer, … , RenderingData renderingData)
{
if (renderingData.shadowData.renderShadows)
renderer.Enqueue(m_ShadowPass);
bool requiresDepthPrepass = RequireDepthPrepass(renderingData.cameraData.requiresDepthTexture);
if (requiresDepthPrepass)
renderer.Enqueue(m_DepthPrepass);
renderer.Enqueue(m_SetupLightConstants);
renderer.Enqueue(m_RenderOpaquesForwardPass);
foreach (var pass in camera.GetComponents<IAfterOpaquePass>())
renderer.EnqueuePass(pass.GetPassToEnqueue(baseDescriptor, colorHandle, depthHandle));
if (camera.clearFlags == CameraClearFlags.Skybox)
renderer.Enqueue(m_RenderSkyboxPass);
renderer.Enqueue(m_RenderTransparentsPass);
if (renderingData.cameraData.postProcessEnabled)
renderer.Enqueue(m_PostProcessPass);
}
24. 24
public void Setup(ScriptableRenderer renderer, … , RenderingData renderingData)
{
if (renderingData.shadowData.renderShadows)
renderer.Enqueue(m_ShadowPass);
bool requiresDepthPrepass = RequireDepthPrepass(renderingData.cameraData.requiresDepthTexture);
if (requiresDepthPrepass)
renderer.Enqueue(m_DepthPrepass);
renderer.Enqueue(m_SetupLightConstants);
renderer.Enqueue(m_RenderOpaquesForwardPass);
foreach (var pass in camera.GetComponents<IAfterOpaquePass>())
renderer.EnqueuePass(pass.GetPassToEnqueue(baseDescriptor, colorHandle, depthHandle));
if (camera.clearFlags == CameraClearFlags.Skybox)
renderer.Enqueue(m_RenderSkyboxPass);
renderer.Enqueue(m_RenderTransparentsPass);
if (renderingData.cameraData.postProcessEnabled)
renderer.Enqueue(m_PostProcessPass);
}
● Enqueue render passes
based on received data
● ScriptableRenderPass is a
building block to a render
pipeline
25. 25
public void Setup(ScriptableRenderer renderer, … , RenderingData renderingData)
{
if (renderingData.shadowData.renderShadows)
renderer.Enqueue(m_ShadowPass);
bool requiresDepthPrepass = RequireDepthPrepass(renderingData.cameraData.requiresDepthTexture);
if (requiresDepthPrepass)
renderer.Enqueue(m_DepthPrepass);
renderer.Enqueue(m_SetupLightConstants);
renderer.Enqueue(m_RenderOpaquesForwardPass);
foreach (var pass in camera.GetComponents<IAfterOpaquePass>())
renderer.EnqueuePass(pass.GetPassToEnqueue(baseDescriptor, colorHandle, depthHandle));
if (camera.clearFlags == CameraClearFlags.Skybox)
renderer.Enqueue(m_RenderSkyboxPass);
renderer.Enqueue(m_RenderTransparentsPass);
if (renderingData.cameraData.postProcessEnabled)
renderer.Enqueue(m_PostProcessPass);
}
● Camera can contain scripts
that inject passes at specific
points in the pipeline
● IAfterOpaque is just one of
the many injecting points
26. 26
Quick Recap
●LWRP do every frame
1.Culling
2.Setup per frame and per camera data
3.IRendererSetup enqueue multiple ScriptableRenderPass
a.A custom ScriptableRenderPass can be added at many
hook points
b.The default renderer can be even completely overridden
4.Renderer execute all enqueued passes
27. 27
Adding a custom pass in LWRP
● Let’s switch to coding!
● We will:
○ Create a custom ScriptableRenderPass (MyNyanCatPass)
○ Inject the MyNyanCatPass after rendering opaques
(IAfterOpaque)
28. 28
Now it’s your time to code!
● What if I get lost?
○ Call for help!
○ Use AddPassAfterOpaqueCompleted.cs in your project as
reference
30. 30
Customizing the render pipeline
● How about we complete override the renderer now?!
● But first let’s review how to do a mobile deferred renderer
31. Tiled GPU rendering review
●Splits rendering into tiles
31
Textures Framebuffer
Main Memory
Fragment Shader Tile Memory
Geometry
Data
GPU
32. Tiled GPU rendering review
●Splits rendering into tiles
●For each tile
○ Tile LOAD Action
32
Textures
Main Memory
Geometry
Data
GPU
Fragment Shader Tile Memory
Framebuffer
33. Tiled GPU rendering review
●Splits rendering into tiles
●For each tile
○ Tile LOAD Action
○ Rendering
33
Textures
Main Memory
Geometry
Data
GPU
Fragment Shader Tile Memory
Framebuffer
34. Tiled GPU rendering review
●Splits rendering into tiles
●For each tile
○ Tile LOAD Action
○ Rendering
○ Tile STORE Action
34
Textures
Main Memory
Geometry
Data
GPU
Fragment Shader Tile Memory
Framebuffer
35. Tiled GPU rendering review
●Splits rendering into tiles
●For each tile
○ Tile LOAD Action
○ Rendering
○ Tile STORE Action
35
Textures
Main Memory
Geometry
Data
GPU
Fragment Shader Tile Memory
Framebuffer
36. Tiled GPU rendering review
●Splits rendering into tiles
●For each tile
○ Tile LOAD Action
○ Rendering
○ Tile STORE Action
36
Textures
Main Memory
Geometry
Data
GPU
Fragment Shader Tile Memory
Framebuffer
37. Traditional Deferred Rendering
●GBuffer pass
○ Allocate Images
○ Setup Framebuffer (MRT)
○ Render to MRT
○ Write tiles to main memory
Textures Framebuffer
Main Memory
GPU
Fragment Shader Tile Memory
Geometry
Data
Diffuse Specular +
Rougness
Normals LightAccum
(GI + Emissive)
Depth
38. Traditional Deferred Rendering
●Lighting pass
○ SetFramebuffer (LightAccum)
○ Load tiles from main memory
○ Read Input Textures from main memory
○ Render to LightAccumulation
○ Write tiles to main memory
Textures Framebuffer
Main Memory
GPU
Fragment Shader Tile Memory
Geometry
Data
Diffuse Specular Normals Light
Accumulation
Depth
39. 39
Rendering Efficiently on Mobile
●Minimize external memory read and writes
●Render Pass allows Tiled GPU interleaved rendering
○ Vulkan Multipass Mobile Deferred Done Right (Arntzen, GDC 2017)
Tile #0
Render GBuffer
Tile #0
Render Lighting
Tile #1
Render GBuffer
Tile #1
Render Lighting
Interleaved Rendering
40. 40
Rendering Efficiently on Mobile
●RenderPass API
○ Vulkan: Transient Buffers
○ Metal: Framebuffer Fetch
○ Emulated on all other rendering backends
41. 41
Mobile Deferred Renderer
● We will create a combined GBufferAndLighting renderpass
● For simplicity we will only support directional lights now
● It can easily be extended to support puntual lights
● Create an IRendererSetup
● Enqueue our render pass
● Add IRendererSetup to our camera
42. 42
Now it’s your time to code!
● What if I get lost?
○ Call for help!
○ Use MyDeferredRendererCompleted.cs in your project as
reference
43. 43
Before you leave!
1.Please rate this session in your SIGGRAPH app!
2.Save this link: bit.ly/siggraph18
3.We will have another awesome workshop on ShaderGraph!
a.Creating a Custom Production Ready Pipeline.
b.Same place, same hour!
4.We need to clear the booth for the next workshop.
5.Meet me outside for questions