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 | 6 月前3
Make Successor Build Systems: World Tour of Build SystemsReliable, 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 | 6 月前3
Combining Co-Routines and Functions into a Job SystemHlavacs – 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 | 6 月前3
Why is my Build so SlowWhy 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 | 6 月前3
Building a Coroutine-Based Job System Without Standard LibraryZhang 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 | 6 月前3
Using Modern C++ to Build XOffsetDatastructureFanchen 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 | 6 月前3
Behavior-driven Tests for Microservices-based Algo Trading Systemfrom 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 | 6 月前3
Beyond 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 | 6 月前3
Common Package Specification: Getting Build Tools to Talk to Each OtherA Common Package Specification: Getting Build Tools to Talk to Each Other Lessons Learned From Making Thousands of Binaries Consumable by Any Build System Diego Rodriguez-Losada @ CppCon 2023Outline Z_BEST_COMPRESSION); Build system scripts Problem definition and scope 1. Define the version to use 2. Define the configuration: Windows, x86_64, VS-2022, Release, static library 3. Install (system package manager manager or language package manager), build from source by the user, with that configuration 4. Pass information to the build system so it can locate and use it successfully 4#include0 码力 | 94 页 | 1.58 MB | 6 月前3
How to Build Your First C++ Automated Refactoring Tool - CppCon 2023(const auto& i: arr){ // analyze i } } 78 78 Writing Our Own Tidy CheckReally Cool Stuff You Can Build 79 void OldAPI(int v, int m, int d){ NewAPI(m, v); } void NewAPI(int m, int v); - OldAPI(vel OldAPI(vel, mass, dist); + NewAPI(mass, vel); ABSL_DEPRECATE_AND_INLINE()Really Cool Stuff You Can Build 80 if (absl::GetFlag(FLAGS_Example_for_cpp_con)) { foo(); } else { bar(); } foo();In Conclusion0 码力 | 83 页 | 6.03 MB | 6 月前3
共 282 条
- 1
- 2
- 3
- 4
- 5
- 6
- 29
相关搜索词
SimpleRollbackSysteminC++MakeSuccessorBuildSystemsWorldTourofCombiningCoRoutinesandFunctionsintoJobWhyismysoSlowBuildingCoroutineBasedWithoutStandardLibraryUsingModerntoXOffsetDatastructureBehaviordrivenTestsforMicroservicesbasedAlgoTradingBeyondCompilationDatabasesSupportModulesCommonPackageSpecificationGettingToolsTalkEachOtherHowYourFirstAutomatedRefactoringToolCppCon2023













