This document provides an introduction and overview of creating a basic game using XNA Game Studio. It discusses the necessary tools including Visual Studio and XNA Game Studio. It then walks through creating a basic game structure and adding graphics, user input, and interaction such as firing cannonballs and detecting collisions. The document suggests areas to expand the game such as adding particle systems or porting it to Windows Phone 7.
The document discusses optimization techniques used at YAGER including:
1. A performance tracker that monitors frame rate, hitches, and predicts future performance to inform subsystems on how to optimize based on the current performance state.
2. Combining multiple animated objects into a single component to reduce draw calls and complexity by merging skeletal meshes and animation.
3. Network pooling reusable objects to reduce the expensive cost of object creation by reusing pooled objects through internal referencing.
Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...Unity Technologies
In this session, the Unity Demo team provides their best tips and tricks for optimizing detailed, complex environment scenes for modern console performance.
Speakers:
Rob Thompson (Unity Technologies)
Presentation Video : http://tinyurl.com/pfhz96m
Stage 3D introduction in Adobe Flash Player and Adobe AIR lets you use techniques such as deferred lighting, screen space dynamic shadow, MRT, and more through vertex and fragment shaders. Join Jean-Philippe Doiron, Principal Architect R&D at Frima Studio, and Jean-Philippe Auclair, R&D Architect, for a deep dive into GPU programming with the new Flash Player, and discover how to produce beautiful GPU effects that are reusable in your games and applications.
Use a game engine to create a video game. Its reusable components provide the general functionality. Define resources and building blocks.
What are the key elements of a game engine?
This document provides an introduction and overview of creating a basic game using XNA Game Studio. It discusses the necessary tools including Visual Studio and XNA Game Studio. It then walks through creating a basic game structure and adding graphics, user input, and interaction such as firing cannonballs and detecting collisions. The document suggests areas to expand the game such as adding particle systems or porting it to Windows Phone 7.
The document discusses optimization techniques used at YAGER including:
1. A performance tracker that monitors frame rate, hitches, and predicts future performance to inform subsystems on how to optimize based on the current performance state.
2. Combining multiple animated objects into a single component to reduce draw calls and complexity by merging skeletal meshes and animation.
3. Network pooling reusable objects to reduce the expensive cost of object creation by reusing pooled objects through internal referencing.
Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...Unity Technologies
In this session, the Unity Demo team provides their best tips and tricks for optimizing detailed, complex environment scenes for modern console performance.
Speakers:
Rob Thompson (Unity Technologies)
Presentation Video : http://tinyurl.com/pfhz96m
Stage 3D introduction in Adobe Flash Player and Adobe AIR lets you use techniques such as deferred lighting, screen space dynamic shadow, MRT, and more through vertex and fragment shaders. Join Jean-Philippe Doiron, Principal Architect R&D at Frima Studio, and Jean-Philippe Auclair, R&D Architect, for a deep dive into GPU programming with the new Flash Player, and discover how to produce beautiful GPU effects that are reusable in your games and applications.
Use a game engine to create a video game. Its reusable components provide the general functionality. Define resources and building blocks.
What are the key elements of a game engine?
Lessons learned from RENOIR - GAME ACCESS ‘16Martin Pernica
The document discusses lessons learned from developing the game RENOIR. It describes some of the key challenges in developing the recording system to replay player movements accurately, approaches to rendering lighting and shadows, simulating cloth and sprite rendering. The overall lesson is to focus on iterative prototyping and achieving a workable solution before over-engineering code, even for core gameplay mechanics.
Martin Pernica presented his experience moving from Unity3D to Unreal Engine 4 as an indie game studio. Some key reasons for the switch were UE4's lower monthly subscription costs, the ability to continue using the engine after canceling a subscription, and UE4's built-in tools for visual scripting and material editing that improved the workflow between designers and programmers. UE4 also provided better visual quality out of the box and access to the source code allowed for customization and hotfixes.
BSidesDelhi 2018: Headshot - Game Hacking on macOSBSides Delhi
Presenter: Jai Verma
Abstract: Game hacking is a major contributor to the hacking economy. People shell out a lot of money for hacks which help them cheat at multiplayer games. These hacks can range from enhancing in-game abilities for gaining an upper hand in the game, to bypassing in-app purchases. With the advent of anti-cheat such as VAC (Valve Anti Cheat), the techniques employed by hackers to cheat at games have become increasingly refined. These techniques are comparable to those utilised in sophisticated malware and rootkits. These techniques include runtime process injection, function interposition, and proxying network traffic to name a few. To avoid detection, hackers even resort to custom kernel drivers to interact with the game process. This talk will detail a few of the techniques utilised by game hackers and malware developers alike, through the hacking of an open-source game. I will showcase some hacks for an open-source FPS game by describing the method in detail for the macOS platform. While the demo will be macOS specific, the approach applies to all modern operating systems.
The document discusses Oculus, its virtual reality headsets like the Rift DK2, and the Oculus SDK. It provides details on Oculus' history and products, the capabilities of the Rift DK2 like its screens and sensors, how the SDK supports features like positional tracking and low latency, and the SDK roadmap to further improve support and reduce latency.
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...Unity Technologies
The Elder Scrolls Blades strove to produce high-quality visuals on modern mobile devices. This talk will describe the challenges of achieving that level of quality in procedurally generated 3D environments.
Speakers:
Simon-Pierre Thibault - Bethesda Game Studios
Sergei Savchenko - Bethesda Game Studios
Watch the session here: https://youtu.be/KbxiGH6igBk
Oculus insight building the best vr aaron daviesMary Chan
The rapid growth of the VR industry has brought to light new opportunities. Best Practices are emerging to guide developers in creating experiences which will thrill and excite them, while at the same time providing a safe and comfortable VR interaction. Find out what works, why VR is important, and learn of the important actions you can take to deliver the highest quality consumer grade VR interaction possible.
A post mortem about one of the highly anticipated but "launch failed" pojects I did. This is THE talk I was sued about by the publisher as I was too honest.
2D Endless Runner in Unity for Mobile - GDG DevFest Istanbul 2014Murat Gürel
This talk will cover technical design choices, tips & tricks for creating an endless runner platformer for Android & iOS in Unity, with real examples from our own game Evliya Celebi: Olumsuzluk Suyu, which include: character controls, animations & state machine, level design & generation, performance optimisations, gui elements, cross-platform design, level editor.
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...Gerke Max Preussner
A high-level overview of Unreal Engine 4, its game framework, the Slate user interface library, Unreal Motion Graphics, and Editor and Engine extensibility. Presented at GDC Europe in Cologne, Germany.
Also includes bonus slides on concurrency and parallelism features, general tips for programmers and Epic's build and automation infrastructure.
An overview of Apple's game development technologies, followed up by tips and techniques for using UIKit for game development. The later third of the talk is an overview of games I've worked on in UIKit.
Introduction to daydream for AnDevCon DC - 2017Jared Sheehan
This document provides an introduction and overview of virtual reality (VR) and Google's Daydream VR platform. It begins with an explanation of the differences between augmented reality and VR. It then discusses VR use cases and hardware requirements, including displays, tracking, and controllers. The document outlines Google's Daydream VR platform, including new features like WorldSense inside-out tracking. It also covers developing for Daydream using tools like Unity and publishing apps to meet quality standards. In closing, it discusses challenges and the future of Daydream VR.
2 Dimensions Of Awesome: Advanced ActionScript For Platform Games by Iain Lobbmochimedia
The document discusses various techniques for 2D game development, including:
1) It compares classic Flash games to modern 2D games on consoles, noting improvements like HD graphics, smooth scrolling cameras, and parallax layers.
2) It demonstrates a "BunnyMark" benchmark for rendering thousands of bunny sprites using different rendering methods like bitmaps and canvas.
3) It introduces techniques like cameras, zooming, parallax scrolling, and hit detection points.
4) It covers topics like projectiles, collision detection, level editing, character animation using sprite sheets, and more.
Write retrogames in the web and add something more with AzureMarco Parenzan
Mi piacciono i retrogames, sin da quando ho iniziato a usare i computer con il mio amato Commodore 64 negli anni ottanta. Così nel mio (poco) tempo libero cerco di reimplementare, non come sviluppatore professionista, i giochi più semplici e coinvolgenti con cui ho giocato, portandoli sul web con JavaScript e Phaser.io. Quindi voglio condividere la mia esperienza.
Poi, dato che lavoro con Azure e i giochi diventano delle Web App, cerco di evolvere i giochi aggiungendo alcune nuove e moderne funzionalità, così per sperimentare un po' i vari servizi di Azure, soprattutto quelli che normalmente uso meno.
This document provides an overview of resources for learning how to develop virtual reality applications using Unreal Engine. It begins by listing several high-profile VR projects created with Unreal Engine, then outlines learning resources available, including documentation, tutorials, courses, and community content. Key areas covered include getting started with VR platforms, best practices, motion controller setup, and using the VR editor. Updates from Epic on new templates, optimizations for VR development, and expanded platform support are also summarized.
In this session, Yan will share some of his experiences of building a successful MMORPG for a social audience and insights into some of the technical challenges that his team has had to overcome along the way.
How can we use Adobe Flash Stage 3D to make a multiplayer game on multiple devices using the same codebase?
This session will detail the challenges encountered when attempting to maintain high performance specifications on mobile devices and the guidelines used to succeed.
We will talk about the required production pipeline, provide performance tips and techniques, provide guidelines for deploying and debugging on iOS and Android and give an overview of the process, from start to finish
Maximize Your Production Effort (English)slantsixgames
This document discusses how to maximize production efficiency through efficient content authoring tools and pipelines for inter-studio asset development. It covers topics like infrastructure, content authoring, data conversion, game runtime considerations, and asset sharing. The key recommendations are to identify and reduce latency throughout the production pipeline, automate processes as much as possible, prioritize tool and workflow improvements, and treat outsourcing partners like internal team members to maximize output.
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...IJECEIAES
Medical image analysis has witnessed significant advancements with deep learning techniques. In the domain of brain tumor segmentation, the ability to
precisely delineate tumor boundaries from magnetic resonance imaging (MRI)
scans holds profound implications for diagnosis. This study presents an ensemble convolutional neural network (CNN) with transfer learning, integrating
the state-of-the-art Deeplabv3+ architecture with the ResNet18 backbone. The
model is rigorously trained and evaluated, exhibiting remarkable performance
metrics, including an impressive global accuracy of 99.286%, a high-class accuracy of 82.191%, a mean intersection over union (IoU) of 79.900%, a weighted
IoU of 98.620%, and a Boundary F1 (BF) score of 83.303%. Notably, a detailed comparative analysis with existing methods showcases the superiority of
our proposed model. These findings underscore the model’s competence in precise brain tumor localization, underscoring its potential to revolutionize medical
image analysis and enhance healthcare outcomes. This research paves the way
for future exploration and optimization of advanced CNN models in medical
imaging, emphasizing addressing false positives and resource efficiency.
More Related Content
Similar to Development and Optimization of GearVR games using Unreal Engine
Lessons learned from RENOIR - GAME ACCESS ‘16Martin Pernica
The document discusses lessons learned from developing the game RENOIR. It describes some of the key challenges in developing the recording system to replay player movements accurately, approaches to rendering lighting and shadows, simulating cloth and sprite rendering. The overall lesson is to focus on iterative prototyping and achieving a workable solution before over-engineering code, even for core gameplay mechanics.
Martin Pernica presented his experience moving from Unity3D to Unreal Engine 4 as an indie game studio. Some key reasons for the switch were UE4's lower monthly subscription costs, the ability to continue using the engine after canceling a subscription, and UE4's built-in tools for visual scripting and material editing that improved the workflow between designers and programmers. UE4 also provided better visual quality out of the box and access to the source code allowed for customization and hotfixes.
BSidesDelhi 2018: Headshot - Game Hacking on macOSBSides Delhi
Presenter: Jai Verma
Abstract: Game hacking is a major contributor to the hacking economy. People shell out a lot of money for hacks which help them cheat at multiplayer games. These hacks can range from enhancing in-game abilities for gaining an upper hand in the game, to bypassing in-app purchases. With the advent of anti-cheat such as VAC (Valve Anti Cheat), the techniques employed by hackers to cheat at games have become increasingly refined. These techniques are comparable to those utilised in sophisticated malware and rootkits. These techniques include runtime process injection, function interposition, and proxying network traffic to name a few. To avoid detection, hackers even resort to custom kernel drivers to interact with the game process. This talk will detail a few of the techniques utilised by game hackers and malware developers alike, through the hacking of an open-source game. I will showcase some hacks for an open-source FPS game by describing the method in detail for the macOS platform. While the demo will be macOS specific, the approach applies to all modern operating systems.
The document discusses Oculus, its virtual reality headsets like the Rift DK2, and the Oculus SDK. It provides details on Oculus' history and products, the capabilities of the Rift DK2 like its screens and sensors, how the SDK supports features like positional tracking and low latency, and the SDK roadmap to further improve support and reduce latency.
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...Unity Technologies
The Elder Scrolls Blades strove to produce high-quality visuals on modern mobile devices. This talk will describe the challenges of achieving that level of quality in procedurally generated 3D environments.
Speakers:
Simon-Pierre Thibault - Bethesda Game Studios
Sergei Savchenko - Bethesda Game Studios
Watch the session here: https://youtu.be/KbxiGH6igBk
Oculus insight building the best vr aaron daviesMary Chan
The rapid growth of the VR industry has brought to light new opportunities. Best Practices are emerging to guide developers in creating experiences which will thrill and excite them, while at the same time providing a safe and comfortable VR interaction. Find out what works, why VR is important, and learn of the important actions you can take to deliver the highest quality consumer grade VR interaction possible.
A post mortem about one of the highly anticipated but "launch failed" pojects I did. This is THE talk I was sued about by the publisher as I was too honest.
2D Endless Runner in Unity for Mobile - GDG DevFest Istanbul 2014Murat Gürel
This talk will cover technical design choices, tips & tricks for creating an endless runner platformer for Android & iOS in Unity, with real examples from our own game Evliya Celebi: Olumsuzluk Suyu, which include: character controls, animations & state machine, level design & generation, performance optimisations, gui elements, cross-platform design, level editor.
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...Gerke Max Preussner
A high-level overview of Unreal Engine 4, its game framework, the Slate user interface library, Unreal Motion Graphics, and Editor and Engine extensibility. Presented at GDC Europe in Cologne, Germany.
Also includes bonus slides on concurrency and parallelism features, general tips for programmers and Epic's build and automation infrastructure.
An overview of Apple's game development technologies, followed up by tips and techniques for using UIKit for game development. The later third of the talk is an overview of games I've worked on in UIKit.
Introduction to daydream for AnDevCon DC - 2017Jared Sheehan
This document provides an introduction and overview of virtual reality (VR) and Google's Daydream VR platform. It begins with an explanation of the differences between augmented reality and VR. It then discusses VR use cases and hardware requirements, including displays, tracking, and controllers. The document outlines Google's Daydream VR platform, including new features like WorldSense inside-out tracking. It also covers developing for Daydream using tools like Unity and publishing apps to meet quality standards. In closing, it discusses challenges and the future of Daydream VR.
2 Dimensions Of Awesome: Advanced ActionScript For Platform Games by Iain Lobbmochimedia
The document discusses various techniques for 2D game development, including:
1) It compares classic Flash games to modern 2D games on consoles, noting improvements like HD graphics, smooth scrolling cameras, and parallax layers.
2) It demonstrates a "BunnyMark" benchmark for rendering thousands of bunny sprites using different rendering methods like bitmaps and canvas.
3) It introduces techniques like cameras, zooming, parallax scrolling, and hit detection points.
4) It covers topics like projectiles, collision detection, level editing, character animation using sprite sheets, and more.
Write retrogames in the web and add something more with AzureMarco Parenzan
Mi piacciono i retrogames, sin da quando ho iniziato a usare i computer con il mio amato Commodore 64 negli anni ottanta. Così nel mio (poco) tempo libero cerco di reimplementare, non come sviluppatore professionista, i giochi più semplici e coinvolgenti con cui ho giocato, portandoli sul web con JavaScript e Phaser.io. Quindi voglio condividere la mia esperienza.
Poi, dato che lavoro con Azure e i giochi diventano delle Web App, cerco di evolvere i giochi aggiungendo alcune nuove e moderne funzionalità, così per sperimentare un po' i vari servizi di Azure, soprattutto quelli che normalmente uso meno.
This document provides an overview of resources for learning how to develop virtual reality applications using Unreal Engine. It begins by listing several high-profile VR projects created with Unreal Engine, then outlines learning resources available, including documentation, tutorials, courses, and community content. Key areas covered include getting started with VR platforms, best practices, motion controller setup, and using the VR editor. Updates from Epic on new templates, optimizations for VR development, and expanded platform support are also summarized.
In this session, Yan will share some of his experiences of building a successful MMORPG for a social audience and insights into some of the technical challenges that his team has had to overcome along the way.
How can we use Adobe Flash Stage 3D to make a multiplayer game on multiple devices using the same codebase?
This session will detail the challenges encountered when attempting to maintain high performance specifications on mobile devices and the guidelines used to succeed.
We will talk about the required production pipeline, provide performance tips and techniques, provide guidelines for deploying and debugging on iOS and Android and give an overview of the process, from start to finish
Maximize Your Production Effort (English)slantsixgames
This document discusses how to maximize production efficiency through efficient content authoring tools and pipelines for inter-studio asset development. It covers topics like infrastructure, content authoring, data conversion, game runtime considerations, and asset sharing. The key recommendations are to identify and reduce latency throughout the production pipeline, automate processes as much as possible, prioritize tool and workflow improvements, and treat outsourcing partners like internal team members to maximize output.
Similar to Development and Optimization of GearVR games using Unreal Engine (20)
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...IJECEIAES
Medical image analysis has witnessed significant advancements with deep learning techniques. In the domain of brain tumor segmentation, the ability to
precisely delineate tumor boundaries from magnetic resonance imaging (MRI)
scans holds profound implications for diagnosis. This study presents an ensemble convolutional neural network (CNN) with transfer learning, integrating
the state-of-the-art Deeplabv3+ architecture with the ResNet18 backbone. The
model is rigorously trained and evaluated, exhibiting remarkable performance
metrics, including an impressive global accuracy of 99.286%, a high-class accuracy of 82.191%, a mean intersection over union (IoU) of 79.900%, a weighted
IoU of 98.620%, and a Boundary F1 (BF) score of 83.303%. Notably, a detailed comparative analysis with existing methods showcases the superiority of
our proposed model. These findings underscore the model’s competence in precise brain tumor localization, underscoring its potential to revolutionize medical
image analysis and enhance healthcare outcomes. This research paves the way
for future exploration and optimization of advanced CNN models in medical
imaging, emphasizing addressing false positives and resource efficiency.
Discover the latest insights on Data Driven Maintenance with our comprehensive webinar presentation. Learn about traditional maintenance challenges, the right approach to utilizing data, and the benefits of adopting a Data Driven Maintenance strategy. Explore real-world examples, industry best practices, and innovative solutions like FMECA and the D3M model. This presentation, led by expert Jules Oudmans, is essential for asset owners looking to optimize their maintenance processes and leverage digital technologies for improved efficiency and performance. Download now to stay ahead in the evolving maintenance landscape.
Applications of artificial Intelligence in Mechanical Engineering.pdfAtif Razi
Historically, mechanical engineering has relied heavily on human expertise and empirical methods to solve complex problems. With the introduction of computer-aided design (CAD) and finite element analysis (FEA), the field took its first steps towards digitization. These tools allowed engineers to simulate and analyze mechanical systems with greater accuracy and efficiency. However, the sheer volume of data generated by modern engineering systems and the increasing complexity of these systems have necessitated more advanced analytical tools, paving the way for AI.
AI offers the capability to process vast amounts of data, identify patterns, and make predictions with a level of speed and accuracy unattainable by traditional methods. This has profound implications for mechanical engineering, enabling more efficient design processes, predictive maintenance strategies, and optimized manufacturing operations. AI-driven tools can learn from historical data, adapt to new information, and continuously improve their performance, making them invaluable in tackling the multifaceted challenges of modern mechanical engineering.
Rainfall intensity duration frequency curve statistical analysis and modeling...bijceesjournal
Using data from 41 years in Patna’ India’ the study’s goal is to analyze the trends of how often it rains on a weekly, seasonal, and annual basis (1981−2020). First, utilizing the intensity-duration-frequency (IDF) curve and the relationship by statistically analyzing rainfall’ the historical rainfall data set for Patna’ India’ during a 41 year period (1981−2020), was evaluated for its quality. Changes in the hydrologic cycle as a result of increased greenhouse gas emissions are expected to induce variations in the intensity, length, and frequency of precipitation events. One strategy to lessen vulnerability is to quantify probable changes and adapt to them. Techniques such as log-normal, normal, and Gumbel are used (EV-I). Distributions were created with durations of 1, 2, 3, 6, and 24 h and return times of 2, 5, 10, 25, and 100 years. There were also mathematical correlations discovered between rainfall and recurrence interval.
Findings: Based on findings, the Gumbel approach produced the highest intensity values, whereas the other approaches produced values that were close to each other. The data indicates that 461.9 mm of rain fell during the monsoon season’s 301st week. However, it was found that the 29th week had the greatest average rainfall, 92.6 mm. With 952.6 mm on average, the monsoon season saw the highest rainfall. Calculations revealed that the yearly rainfall averaged 1171.1 mm. Using Weibull’s method, the study was subsequently expanded to examine rainfall distribution at different recurrence intervals of 2, 5, 10, and 25 years. Rainfall and recurrence interval mathematical correlations were also developed. Further regression analysis revealed that short wave irrigation, wind direction, wind speed, pressure, relative humidity, and temperature all had a substantial influence on rainfall.
Originality and value: The results of the rainfall IDF curves can provide useful information to policymakers in making appropriate decisions in managing and minimizing floods in the study area.
Batteries -Introduction – Types of Batteries – discharging and charging of battery - characteristics of battery –battery rating- various tests on battery- – Primary battery: silver button cell- Secondary battery :Ni-Cd battery-modern battery: lithium ion battery-maintenance of batteries-choices of batteries for electric vehicle applications.
Fuel Cells: Introduction- importance and classification of fuel cells - description, principle, components, applications of fuel cells: H2-O2 fuel cell, alkaline fuel cell, molten carbonate fuel cell and direct methanol fuel cells.
An improved modulation technique suitable for a three level flying capacitor ...IJECEIAES
This research paper introduces an innovative modulation technique for controlling a 3-level flying capacitor multilevel inverter (FCMLI), aiming to streamline the modulation process in contrast to conventional methods. The proposed
simplified modulation technique paves the way for more straightforward and
efficient control of multilevel inverters, enabling their widespread adoption and
integration into modern power electronic systems. Through the amalgamation of
sinusoidal pulse width modulation (SPWM) with a high-frequency square wave
pulse, this controlling technique attains energy equilibrium across the coupling
capacitor. The modulation scheme incorporates a simplified switching pattern
and a decreased count of voltage references, thereby simplifying the control
algorithm.
Design and optimization of ion propulsion dronebjmsejournal
Electric propulsion technology is widely used in many kinds of vehicles in recent years, and aircrafts are no exception. Technically, UAVs are electrically propelled but tend to produce a significant amount of noise and vibrations. Ion propulsion technology for drones is a potential solution to this problem. Ion propulsion technology is proven to be feasible in the earth’s atmosphere. The study presented in this article shows the design of EHD thrusters and power supply for ion propulsion drones along with performance optimization of high-voltage power supply for endurance in earth’s atmosphere.
Null Bangalore | Pentesters Approach to AWS IAMDivyanshu
#Abstract:
- Learn more about the real-world methods for auditing AWS IAM (Identity and Access Management) as a pentester. So let us proceed with a brief discussion of IAM as well as some typical misconfigurations and their potential exploits in order to reinforce the understanding of IAM security best practices.
- Gain actionable insights into AWS IAM policies and roles, using hands on approach.
#Prerequisites:
- Basic understanding of AWS services and architecture
- Familiarity with cloud security concepts
- Experience using the AWS Management Console or AWS CLI.
- For hands on lab create account on [killercoda.com](https://killercoda.com/cloudsecurity-scenario/)
# Scenario Covered:
- Basics of IAM in AWS
- Implementing IAM Policies with Least Privilege to Manage S3 Bucket
- Objective: Create an S3 bucket with least privilege IAM policy and validate access.
- Steps:
- Create S3 bucket.
- Attach least privilege policy to IAM user.
- Validate access.
- Exploiting IAM PassRole Misconfiguration
-Allows a user to pass a specific IAM role to an AWS service (ec2), typically used for service access delegation. Then exploit PassRole Misconfiguration granting unauthorized access to sensitive resources.
- Objective: Demonstrate how a PassRole misconfiguration can grant unauthorized access.
- Steps:
- Allow user to pass IAM role to EC2.
- Exploit misconfiguration for unauthorized access.
- Access sensitive resources.
- Exploiting IAM AssumeRole Misconfiguration with Overly Permissive Role
- An overly permissive IAM role configuration can lead to privilege escalation by creating a role with administrative privileges and allow a user to assume this role.
- Objective: Show how overly permissive IAM roles can lead to privilege escalation.
- Steps:
- Create role with administrative privileges.
- Allow user to assume the role.
- Perform administrative actions.
- Differentiation between PassRole vs AssumeRole
Try at [killercoda.com](https://killercoda.com/cloudsecurity-scenario/)
5. Unreal 4
• Released in 2012
• We did chose it for the “Dinos do Brasil” project
• Excelent lightning and materials
• Good VR support at the time
6. Unreal 4 for GearVR
• We had familiarity with it
• Some mobile optimizations that Unity3d had weren’t availble on
it.
• Even so, we delivered a game that had a good reception and paid
its development
7. GearVR
• Virtual reality headset from Samsung in colaboration with Oculus
• Has lenses, interial sensor, a trackpad and one or two buttons
• Its brains is compatible Samsung Galaxy Phone
9. GearVR
• A bit more than a plastic box
with some lenses
• Has the same intertial sensors
than the rift, way more
acurate than the phone ones
10. GearVR
• A Back button and a trackpad
• Optional Controllers
11. Gameplay
• The player can look at virtual objects
• They have acces to a trackpad
• The back button has limited use
• The user can have a joypad or motion controller(Not required)
12. Think your gameplay
• The player can gaze at virtual objects and interact using the
trackpad as big button
13. Think your gameplay
• Moving the head can have direct action in the game.
• But, just orientation
14. Think your gameplay
• Although it can be not very acurate, you ca use gestures in the
trackpad
15. Thinking about performance
• Low framerates induce more VR Sickness
• You want that the players have a good experience with your game
16. Thinking about performance
• The GearVR has Asynchronous TimeWarp, which
translate the image based on head movements
• Animations and head locked objects can look strange
• Black borders
18. Thinking about performance
• Ideally you will want to run
at 0 or 1 CPU and GPU levels
• You don’t want to see this
screen
19. Galaxy S6
• Weakest, and cheapest, device compatible with the GearVR
consumer edition
• Our perfomance target
20. Galaxy S6
• 2 CPU cores at up to 1.5 GHz
• 8 GPU “cores” at up to544MHz
• Will overheat in about 10 minutes at those frequencies
21. Profiling on GearVR
• Android device monitor
• Stat Unit
• stat startfile
(SD/UE4Game/nomeDoJogo/Saved/Profiling/UnrealStats/level/level.ue4
stats)
• Other stat commands work, but reduce performance and are hard to
read
22. Problems
• Number of drawcalls
• Number of ticking objects
• Move overlap Events
• Shading cost
23. Drawcall
• The engine defines some properties and send then to the GPU
• The data goes through the driver
24. Drawcalls
• Common mobile problem
• Each Mesh/Material sends a drawcall
• Avoid more than 50 in the same frame
• Don’t go over 100
25. Drawcalls
• Unreal doesn’t batch meshs
• One could ask an artist to merge then
• Or you could try the merge actors function of the Editor
30. Tick
• In our second game we had many moving
objects
• Each one moved itself on its tick event
• We put managers to handle objects movement
31. Tick
• This cut about 3ms of our processor time
• Still not enough
32. C++
• The enemies manager was moved to C++
• This reduced our processing time in another 2ms
• Those changes moved our game time from 14ms to 9ms per frame
33. Move Overlap
•The device was still heating up pretty rapdly
•Next thing we noted on our profiling was the
time updating the overlaps
34. Move overlap
• Each moved objevt moved its collision mesh
• After that all collision and overlap events were recalculated
35. Move Overlap
• Our game could ran on simplified physics model
• All the collision detection was then done on our custom code
36. Move overlap
• We also turned off the option to generate Overlap Events in each
one of our game objects
• Our game time was further reduced to about 6ms
37. Nativization
• Since the version 4.12 Unreal Engine has an option to nativize the
blueprints
• We had already experimented some success using this feature in
another project
38. Nativization
• But the project wasn’t packaging using it
• Later we found that accesing enums in level blueprints caused it.
39. Nativization
• Moved the enum access to other classes, then it worked
• With nativization we cut another 1.5ms
• Probably would’ve be more if we weren’t already doing
things in C++
40. Other things
• We also started moving some distant objects at 30fps
• And stopped moving meshes while they weren’t being seen
41. Results
• After all those optimizations, the game was taking only 4ms to
process the gameplay
• Good in keeping the framerate and also minimizing the overheat
42. Graphics
• We wanted missions in different times of day
• We even thought about adding some missions from the sunset until
evening
43. Graphics
• Early in the project we decided to keep the player somewhat
static and move the world
• It is a game about avoiding other cars and it would be kind of
boring if those cars were static
44. Graphics
• This made using lights baked by the editor
infeasible
• We tried dynamic and stationary lights
45. Graphics
• At first we were below even 30fps
• Turning the shadows off increased performance
to 45 fps
• With a bit more optimization we reached 50fps
46. Graphics
• But we needed 60fps
• We forego using the Unreal Lightning pipeline
and implemented our own
• Once again based on the Robot Recall Blimp
54. Graphics
• In mostly static scenes you can use static lights
• Then, for objects with a little movement you can use this option
• Remember to set a big enough lightmap resolution