A Simple Rollback System in C++
BeyondWe still need to wait for all the player inputs to process the confirm frame…What is a rollback system?Input predictionMispredictionDoing a rollbackRollback Implementation DetailsPhysics vs Graphics game update. This allows to sequence your game frame.A Fixed TickRollback Manager InputsRollbackGame System Architecture Game systems need a function to rollback (revert to a previous state). Typically everywhere Player Character as a gameplay, physics, graphics and audio object…ECS-like architecture System and array of Components (C-struct without functionality, except operators maybe) You want to have0 码力 | 58 页 | 6.61 MB | 5 月前3Make Successor Build Systems: World Tour of Build Systems
Reliable, Fast and Safe Builds Damien co-founder, tipi.build @daminetreg / damien@tipi.build Antonio DevEx Engineer, EngFlow @TheGrizzlyDev / antonio@engflow.comA love ❤ letter to CMakeGiving CMake tackle first Memory Safety Arithmetic SafetySanitizers for C++ builds with CMake github.com/tipi-build/sanitizers-cmakeSanitizers for C++ builds AddressSanitizer (ASan) UndefinedBehaviorSanitizer (UBSsan) decent amount of CPU power Let's look at other build systemsLearning from other build-systemsParallelism How many independent targets can a build system run concurrently at most?Parallelism Level 10 码力 | 115 页 | 7.02 MB | 5 月前3Combining Co-Routines and Functions into a Job System
Hlavacs – Combining Co-Routines and Functions into a Job System - CppCon 2021 1 / 39Helmut Hlavacs – Combining Co-Routines and Functions into a Job System - CppCon 2021 2 / 39 About Myself • Professor for Functions into a Job System - CppCon 2021 3 / 39 Creating Game Engines with C++ • Vienna Game Job System + • Graphics API Abstraction Layer + • Vienna Entity Component System + Vienna Type List Library 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_resolution_clock::now(); while( !finished()0 码力 | 39 页 | 1.23 MB | 5 月前3Cross-Platform Floating-Point Determinism Out of the Box
Hargreaves, MSDN Blog “Experiments are usually reproducible only on the same machine with the same system library and the same compiler using the same options.” - STREFLOP LibraryEarlier Attempts:FAILED0 码力 | 31 页 | 3.88 MB | 5 月前3Why is my Build so Slow
Why is my build so slow? Sam Privett 12 Disclaimer: The views and opinions expressed in this presentation are solely those of the presenters and do not necessarily represent the views, positions, Visualizing Compilation IntroductionLines of Code ≈ Longer Build Times 8Lines of Code 📈 9Build Times 📈 10Build Times 📈 11Build Times 📈 12Build Times 📈 13Boiling Frog 14Developer Productivity 15 linker, etc) 18Visualization 19 - Interactive Trace Viewer - https://ui.perfetto.dev/ - Can build and run server locally as well - Chrome Event Tracing Format JSON - … and more!20 VisualizationClang0 码力 | 71 页 | 3.96 MB | 5 月前3High-Performance Cross-Platform Architecture: C++20 Innovations
Me • 35-year career in video games and embedded software • Started using C++ in 1995 • First cross-platform project in 1994Cross-Platform Architecture Goals • Take advantage of all platforms • Focus on Implement a family of quaternion classes, an illustrative example from a larger project • Project build issues • Inclusion of platform-specific header files • Concept hierarchies • Class and Function #define INCLUDE_PLT(Feature, File) INCLUDE_BUILD_FILENAME(Feature, File) • #define INCLUDE_PLT_FEATURE(Feature) INCLUDE_STRINGIZE(Feature.h) • #define INCLUDE_BUILD_FILENAME(Feature, File) INCLUDE_STRINGIZE(File0 码力 | 75 页 | 581.83 KB | 5 月前3Building a Coroutine-Based Job System Without Standard Library
Zhang tankiistanki tankijong COROUTINE JOB SYSTEM WITHOUT STANDARD LIBRARY source code of the system: https://github.com/tankiJong/cpp-coroutine-job-system Hi Everyone, Tanki here. Thanks for coming resources: https://gist.github.com/MattPD/9b55db49537a90545a90447392ad3aeb Before we dive into the system, I want to take 10 mins to have a quick recap about C++ coroutine and share some gotcha moments pretty overwhelmed by all different terms, not to mention to put them up together to form a knowledge system. I hope the following information can be helpful and I attached some links in the slides, or pointers0 码力 | 120 页 | 2.20 MB | 5 月前3Using Modern C++ to Build XOffsetDatastructure
Fanchen Su, XOffsetDatastructure, CppCon 2024 41. Title • 1 Long Title: • Using Modern C++ to Build XOffsetDatastructure: A Zero-Encoding and Zero-Decoding High-Performance Serialization Library in Fanchen Su, XOffsetDatastructure, CppCon 2024 51. Title • 1 Long Title: • Using Modern C++ to Build XOffsetDatastructure: A Zero-Encoding and Zero-Decoding High-Performance Serialization Library in migration of game data among scenes, areas, and lines requires a robust and efficient serialization system to maintain game state consistency and performance. Fanchen Su, XOffsetDatastructure, CppCon 20240 码力 | 111 页 | 3.03 MB | 5 月前3Behavior-driven Tests for Microservices-based Algo Trading System
from Columbia University. Title : Behavior-driven Tests for Microservices-based Algo Trading System Summary : Introduction : This poster will introduce a test framework we use at Bloomberg to to enable behavior-based tests in natural language style for a microservices-based algo trading system that our engineering team is responsible for. Relevance : For our electronic trading business Although microservice components can easily be unit tested, it is often non-trivial to automate the system-level tests with external dependencies. Controlling external dependencies are especially important0 码力 | 1 页 | 65.24 KB | 5 月前3Beyond Compilation Databases to Support C++ Modules: Build Databases
● 15 years working on build systems and software process ● CMake developer ○ Designing and implementing features, performance improvements ○ Maintaining and improving build systems which use CMake Pushing forward modules support in other build systems ■ xmake ■ bazel 2Outline 1. What are compilation databases? 2. How do modules change the status quo? 3. Build databases 3Compilation Databases: Overview https://clang.llvm.org/docs/JSONCompilationDatabase.html ● Widely used and available ○ Generated by build systems ○ Used by static analysis to know how to analyze sources ○ IDEs to understand how a source0 码力 | 31 页 | 585.05 KB | 5 月前3
共 283 条
- 1
- 2
- 3
- 4
- 5
- 6
- 29
相关搜索词
SimpleRollbackSysteminC++MakeSuccessorBuildSystemsWorldTourofCombiningCoRoutinesandFunctionsintoJobCrossPlatformFloatingPointDeterminismOuttheBoxWhyismysoSlowHighPerformanceArchitecture20InnovationsBuildingCoroutineBasedWithoutStandardLibraryUsingModerntoXOffsetDatastructureBehaviordrivenTestsforMicroservicesbasedAlgoTradingBeyondCompilationDatabasesSupportModules