File I/O for Game Developers: Past, Present, and Future0 码力 | 64 页 | 2.69 MB | 6 月前3
Techniques to Optimise Multi-threaded Data Building During Game Development1 Dominik Grabiec - Techniques to Optimise Multi-threaded Data Building During Game Development - CppCon 2024Hello My name is Dominik Grabiec This talk isFocusing on optimising the process around around building the data - the data build system • How many people are in Game Development? • How many people have worked in AAA? • How many are familiar with asynchronous programming? Speaker notesTALK notesTALK OVERVIEW 1. Background • What is data building? • Differences from Game Code • Assumptions and Concepts 2. Techniques • Keep Threads Busy • 3D Caching • Optimise Sorting • Avoid Blocking Threads 0 码力 | 99 页 | 2.40 MB | 6 月前3
Data Structures That Make Video Games Go RoundMade from scratch (no game engine). ● Short release cycle. ● Small, by modern standards.Today: ● 3D, Photorealistic, Physics based. ● Multi-threaded. ● Made with a game engine. ● Long development development cycles. ● Large, complex codebases.But the structure of a game is *roughly the same*Renderer Start End Gameplay Audio Initialization I/O AI Physics Rendering AudioStart End Initialization ECS Physics Rendering Audio Simulation Rendering AudioSimulation Imagine our hypothetical game is 3D with a vast world. Multiple systems ticking, ● Entity Component Systems (ECS) ● Artificial0 码力 | 196 页 | 3.03 MB | 6 月前3
Back to Basics: The Factory PatternUniversity in Boston, Massachusetts. ○ I teach courses in computer systems, computer graphics, and game engine development. ○ My research in program analysis is related to performance building static/dynamic University in Boston, Massachusetts. ○ I teach courses in computer systems, computer graphics, and game engine development. ○ My research in program analysis is related to performance building static/dynamic Objects are moving around ○ Artificial intelligence (path finding and other decision making) ○ In-game resource management is taking place 12 Command and Conquer Red AlertReal time systems (2/2) ●0 码力 | 93 页 | 3.92 MB | 6 月前3
Using Modern C++ to Build XOffsetDatastructureAbout Me • Fanchen Su • Game Research & Development Expert and Team Leader • Over 20 Years of Experience in C++ Programming • Areas of Expertise: • Modern C++ • Performance Optimization • Low Latency and Zero-Decoding High-Performance Serialization Library in the Game Industry • What • XOffsetDatastructure; Serialization Library; Game Industry. • Why • High Performance • How • Zero-Encoding & and Zero-Decoding High-Performance Serialization Library in the Game Industry • What • XOffsetDatastructure; Serialization Library; Game Industry. • Why • High Performance • How • Zero-Encoding &0 码力 | 111 页 | 3.03 MB | 6 月前3
Blazing Trails: Building the World's Fastest CameBoy Emulator in Modern C++Teacher @ Howest University of Applied Sciences within “Digital Arts and Entertainment” bachelor,r Game Development major • C++ • Algorithms • Computational System Fundamentals • *new* Retro Console and GameBoy Emulator in Modern C++ The original Game Boy DMG-01 • Released on • 21/04/1989 in Japan • 31/07/1989 in America • 28/09/1990 in Europe • The Game Boy can be considered as a portable version 8Emulating a Gameboy is easy(ish) 9And if it isn’t easy: it’s testable https://github.com/c-sp/game-boy-test-roms 10Building the World’s Fastest GameBoy Emulator in Modern C++ 11 A huge library:0 码力 | 91 页 | 8.37 MB | 6 月前3
Things Happening in SG14Things happening in SG14 Making C++ better for game development & other low-latency domains Patrice Roy, CeFTI, Université de Sherbrooke, Collège Lionel-Groulx Patrice.Roy@USherbrooke.ca, Patrice.Roy@clg Full-time professor since 1998 • Collège Lionel-Groulx, Université de Sherbrooke • I work a lot with game programmers • WG21 and WG23 member (but I missed recent WG23 meetings) • Involved quite a bit with Full-time professor since 1998 • Collège Lionel-Groulx, Université de Sherbrooke • I work a lot with game programmers • WG21 and WG23 member (but I missed recent WG23 meetings) • Involved quite a bit with0 码力 | 148 页 | 1009.97 KB | 6 月前3
A Simple Rollback System in C++Games Programming at SAE Institute Geneva ● Co-founder of indie game studio Team KwaKwa ● Co-organizer of the Suisse Romande Game Dev MeetupSplash Blast PanicDoing fast-paced online multiplayer, the Photon ● Fmod ● DearImgui Available here!One code exampleWhy is it harder to make a fast-paced online game?Network LatencyIt means we are waiting for other player inputs…Confirm frame and current frameData system?Input predictionMispredictionDoing a rollbackRollback Implementation DetailsPhysics vs Graphics game state Parallel Universes in SM64 by pannenkoek2012 in Watch for Rolling Rocks - 0.5x A Presses (Commentated)0 码力 | 58 页 | 6.61 MB | 6 月前3
Making Games Start Fast: A Story About ConcurrencyThreads ◉ Locks... ◉ … and how to avoid them ◉ Investigating threading efficiency 8Time to start a game! Showcase 1 9Demo Time! 10 🚀Some Metrics ◉ Stellaris 2.7 starts in 54s ◉ Stellaris 2.8 beta Load textures, models and audio ◉ Load game rules & databases 14Start Enumeration Read Localization Load Audio Load 2D Assets Load 3D Assets Load Game Databases CPU: 5.6s Wait: 1.2s CPU: Profile 15Start Enumeration Read Localization Load Audio Load 2D Assets Load 3D Assets Load Game Databases CPU: 0.5s Wait: 0.6s CPU: 0.9s Wait: 1.4s CPU: 4.5s Wait: 0.2s CPU: 0.2s Wait:0 码力 | 76 页 | 2.22 MB | 6 月前3
Combining Co-Routines and Functions into a Job SystemComputing Research Group • Efficiency and performance of game engines, AI, networking, VR … • Teaching: 3D Graphics, AI, Physics for games, Game Streaming, … • IFIP (International Federation for Information Creating Game Engines with C++ • Vienna Game Job System + • Graphics API Abstraction Layer + • Vienna Entity Component System + Vienna Type List Library • Vienna Physics Engine + • Vienna Game AI Engine • GUI • = Vienna Vulkan Game Engine 2.0 https://github.com/hlavacs 20Helmut Hlavacs – Combining Co-Routines and Functions into a Job System - CppCon 2021 4 / 39 The Game Loop auto prev = high_res0 码力 | 39 页 | 1.23 MB | 6 月前3
共 52 条
- 1
- 2
- 3
- 4
- 5
- 6
相关搜索词
FileforGameDevelopersPastPresentandFutureTechniquestoOptimiseMultithreadedDataBuildingDuringDevelopmentStructuresThatMakeVideoGamesGoRoundBackBasicsTheFactoryPatternUsingModernC++BuildXOffsetDatastructureBlazingTrailstheWorldFastestCameBoyEmulatorinThingsHappeningSG14SimpleRollbackSystemMakingStartFastStoryAboutConcurrencyCombiningCoRoutinesFunctionsintoJob













