From 8e880ed09ddb8c9dd0be65b5c2253dbe264de38c Mon Sep 17 00:00:00 2001 From: Zwitschi Date: Mon, 9 Nov 2026 12:29:46 +0100 Subject: [PATCH] =?UTF-8?q?perf:=200.2.0=20re-measured=20at=201440p=20?= =?UTF-8?q?=E2=80=94=20379=20fps=20average,=206.3x=20the=20floor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -qaselftest at 2560x1440, TSR on, VSync off, no frame generation: 759 frames, avg 2.64 ms (379 fps), p50 2.54, p95 3.39, p99 3.76, max 4.05 ms. The body, skin material and animation add about 2 % over 0.1.5's 2.61 ms. The same run passed every QA check: walk, reset 0 cm from spawn, pause/unpause, transect 1456 samples with 0 holes, wall probe 0/35, facade probe 0/9. Series committed as Docs/perf/0.2.0-walk-frametimes.csv and the result recorded in the release-checks table next to the 0.1.0 and 0.1.5 numbers. --- Docs/perf/0.2.0-walk-frametimes.csv | 760 ++++++++++++++++++++++++++++ Docs/release-checks.md | 1 + TODO.md | 2 +- 3 files changed, 762 insertions(+), 1 deletion(-) create mode 100644 Docs/perf/0.2.0-walk-frametimes.csv diff --git a/Docs/perf/0.2.0-walk-frametimes.csv b/Docs/perf/0.2.0-walk-frametimes.csv new file mode 100644 index 0000000..f208f97 --- /dev/null +++ b/Docs/perf/0.2.0-walk-frametimes.csv @@ -0,0 +1,760 @@ +frame,ms +0,2.428 +1,2.633 +2,2.238 +3,3.606 +4,2.431 +5,2.649 +6,4.050 +7,2.011 +8,2.735 +9,3.390 +10,2.901 +11,2.237 +12,2.686 +13,2.383 +14,2.451 +15,3.412 +16,2.458 +17,2.474 +18,2.588 +19,2.556 +20,2.478 +21,3.150 +22,2.667 +23,2.349 +24,2.568 +25,2.580 +26,2.393 +27,2.575 +28,3.132 +29,2.536 +30,2.508 +31,2.710 +32,2.348 +33,2.537 +34,2.820 +35,3.162 +36,2.163 +37,2.562 +38,2.619 +39,2.323 +40,2.628 +41,3.075 +42,2.512 +43,2.448 +44,2.505 +45,2.454 +46,2.607 +47,3.128 +48,2.476 +49,2.562 +50,2.434 +51,3.385 +52,2.076 +53,3.435 +54,2.672 +55,2.550 +56,1.998 +57,2.583 +58,2.518 +59,2.777 +60,3.920 +61,2.934 +62,2.675 +63,2.320 +64,2.309 +65,2.520 +66,3.947 +67,2.596 +68,2.708 +69,2.291 +70,2.404 +71,2.551 +72,3.715 +73,2.100 +74,2.539 +75,2.682 +76,2.273 +77,2.442 +78,3.952 +79,2.233 +80,2.374 +81,2.686 +82,2.407 +83,2.654 +84,3.613 +85,2.320 +86,2.685 +87,2.744 +88,2.357 +89,2.565 +90,3.756 +91,2.672 +92,2.128 +93,2.583 +94,2.546 +95,2.391 +96,2.935 +97,3.624 +98,1.934 +99,2.509 +100,2.603 +101,2.449 +102,2.802 +103,3.678 +104,2.336 +105,2.509 +106,2.551 +107,2.576 +108,2.997 +109,3.208 +110,2.301 +111,2.359 +112,2.484 +113,2.646 +114,2.801 +115,3.226 +116,2.635 +117,2.325 +118,2.501 +119,2.602 +120,2.564 +121,3.151 +122,3.149 +123,2.235 +124,2.596 +125,2.432 +126,2.665 +127,2.648 +128,3.884 +129,2.087 +130,2.375 +131,2.586 +132,2.734 +133,2.338 +134,3.617 +135,2.418 +136,2.350 +137,2.713 +138,2.758 +139,2.239 +140,3.585 +141,2.565 +142,2.787 +143,2.115 +144,2.435 +145,2.489 +146,3.062 +147,2.958 +148,2.402 +149,2.425 +150,2.516 +151,2.505 +152,2.543 +153,3.690 +154,2.060 +155,2.510 +156,2.428 +157,2.603 +158,2.491 +159,3.178 +160,2.496 +161,2.424 +162,2.495 +163,2.667 +164,2.434 +165,3.040 +166,2.949 +167,2.094 +168,2.510 +169,2.586 +170,2.395 +171,3.004 +172,3.009 +173,2.288 +174,2.548 +175,2.337 +176,2.598 +177,2.498 +178,3.526 +179,2.533 +180,2.134 +181,2.560 +182,2.541 +183,2.436 +184,2.635 +185,3.361 +186,2.261 +187,2.566 +188,2.383 +189,2.529 +190,2.645 +191,3.190 +192,2.523 +193,2.523 +194,2.346 +195,2.865 +196,2.348 +197,2.879 +198,3.657 +199,1.824 +200,2.551 +201,2.449 +202,2.607 +203,3.085 +204,3.163 +205,2.404 +206,2.327 +207,2.553 +208,2.576 +209,2.544 +210,3.193 +211,2.647 +212,2.332 +213,2.544 +214,2.767 +215,2.429 +216,3.103 +217,2.861 +218,2.318 +219,2.552 +220,2.587 +221,2.352 +222,3.128 +223,2.621 +224,2.461 +225,2.422 +226,2.601 +227,2.748 +228,2.545 +229,3.224 +230,2.206 +231,2.459 +232,2.530 +233,2.461 +234,2.570 +235,3.271 +236,2.405 +237,2.424 +238,2.671 +239,2.450 +240,2.644 +241,2.510 +242,3.023 +243,2.461 +244,2.618 +245,2.350 +246,2.551 +247,2.472 +248,3.642 +249,2.576 +250,2.548 +251,3.599 +252,1.992 +253,2.424 +254,3.752 +255,2.241 +256,2.360 +257,2.522 +258,2.584 +259,2.653 +260,2.871 +261,2.827 +262,2.369 +263,2.482 +264,2.599 +265,2.294 +266,2.686 +267,3.428 +268,2.240 +269,2.435 +270,2.468 +271,2.619 +272,2.519 +273,3.247 +274,2.539 +275,2.442 +276,2.518 +277,2.489 +278,2.463 +279,2.839 +280,2.907 +281,2.786 +282,2.211 +283,2.615 +284,2.378 +285,2.671 +286,3.219 +287,2.435 +288,2.509 +289,2.323 +290,2.502 +291,2.526 +292,3.292 +293,2.468 +294,2.526 +295,2.500 +296,2.431 +297,2.481 +298,2.921 +299,3.009 +300,2.415 +301,2.600 +302,2.344 +303,2.533 +304,2.618 +305,3.458 +306,2.455 +307,2.469 +308,2.495 +309,2.568 +310,2.473 +311,3.179 +312,2.694 +313,2.503 +314,2.587 +315,2.317 +316,2.609 +317,2.590 +318,3.211 +319,2.392 +320,2.490 +321,2.515 +322,2.496 +323,2.483 +324,3.157 +325,2.540 +326,2.422 +327,2.574 +328,2.468 +329,2.547 +330,2.788 +331,3.075 +332,2.231 +333,2.537 +334,2.577 +335,2.584 +336,2.473 +337,3.415 +338,2.126 +339,2.506 +340,2.374 +341,2.721 +342,2.418 +343,3.259 +344,2.509 +345,2.519 +346,2.436 +347,2.472 +348,2.504 +349,2.858 +350,3.250 +351,2.161 +352,2.586 +353,2.376 +354,2.651 +355,2.504 +356,3.399 +357,2.353 +358,2.381 +359,2.513 +360,2.633 +361,2.566 +362,3.615 +363,2.593 +364,2.084 +365,2.411 +366,2.653 +367,2.521 +368,2.825 +369,2.891 +370,2.576 +371,2.302 +372,2.582 +373,2.513 +374,2.598 +375,3.790 +376,2.352 +377,2.306 +378,2.434 +379,2.514 +380,2.708 +381,2.978 +382,2.813 +383,2.327 +384,2.502 +385,2.446 +386,2.605 +387,3.033 +388,3.091 +389,2.206 +390,2.648 +391,2.732 +392,2.296 +393,3.406 +394,2.490 +395,2.424 +396,2.443 +397,2.601 +398,2.628 +399,2.477 +400,3.241 +401,2.573 +402,2.422 +403,2.384 +404,2.505 +405,2.575 +406,2.909 +407,2.897 +408,2.486 +409,2.431 +410,2.691 +411,2.342 +412,2.733 +413,3.518 +414,2.391 +415,2.160 +416,2.671 +417,2.505 +418,2.241 +419,3.355 +420,2.775 +421,2.395 +422,2.864 +423,2.290 +424,2.469 +425,2.977 +426,2.759 +427,2.460 +428,2.456 +429,2.497 +430,2.362 +431,2.874 +432,2.812 +433,2.559 +434,2.283 +435,2.670 +436,2.482 +437,2.495 +438,3.118 +439,3.018 +440,2.252 +441,3.222 +442,2.483 +443,2.436 +444,3.209 +445,3.169 +446,2.455 +447,2.432 +448,2.464 +449,2.500 +450,2.967 +451,2.958 +452,2.390 +453,2.494 +454,2.523 +455,2.473 +456,2.516 +457,3.527 +458,2.262 +459,2.377 +460,2.840 +461,2.135 +462,2.520 +463,3.285 +464,2.940 +465,2.256 +466,2.496 +467,2.705 +468,2.395 +469,3.031 +470,3.104 +471,2.411 +472,2.630 +473,2.468 +474,2.416 +475,2.559 +476,2.732 +477,2.441 +478,2.624 +479,2.536 +480,2.458 +481,2.516 +482,2.507 +483,2.606 +484,2.616 +485,2.881 +486,2.358 +487,2.469 +488,2.513 +489,3.250 +490,2.606 +491,2.545 +492,2.407 +493,2.437 +494,2.663 +495,3.346 +496,2.349 +497,2.481 +498,2.613 +499,2.483 +500,2.417 +501,2.923 +502,3.059 +503,2.483 +504,2.373 +505,2.525 +506,2.530 +507,2.431 +508,2.917 +509,2.559 +510,2.623 +511,3.172 +512,2.304 +513,2.331 +514,3.287 +515,2.544 +516,2.429 +517,2.690 +518,2.464 +519,2.406 +520,2.804 +521,2.899 +522,2.461 +523,2.536 +524,2.414 +525,2.380 +526,2.616 +527,3.236 +528,2.499 +529,2.558 +530,2.584 +531,2.309 +532,2.447 +533,3.039 +534,3.133 +535,2.170 +536,2.583 +537,2.505 +538,2.666 +539,2.567 +540,3.307 +541,2.177 +542,2.495 +543,2.441 +544,2.638 +545,2.521 +546,3.527 +547,2.460 +548,2.362 +549,2.520 +550,2.439 +551,2.572 +552,3.087 +553,2.707 +554,2.475 +555,2.283 +556,2.604 +557,2.529 +558,3.094 +559,3.051 +560,2.085 +561,2.365 +562,2.711 +563,2.351 +564,2.572 +565,2.979 +566,2.805 +567,2.373 +568,2.744 +569,2.340 +570,2.285 +571,2.791 +572,3.447 +573,2.208 +574,2.518 +575,2.448 +576,3.917 +577,1.540 +578,2.923 +579,2.632 +580,2.404 +581,2.582 +582,2.508 +583,2.413 +584,3.602 +585,2.342 +586,2.482 +587,2.584 +588,3.062 +589,2.070 +590,2.726 +591,2.937 +592,2.385 +593,2.734 +594,2.188 +595,2.582 +596,2.487 +597,3.339 +598,2.535 +599,2.414 +600,2.459 +601,2.510 +602,2.547 +603,3.414 +604,2.314 +605,2.399 +606,2.550 +607,2.541 +608,2.355 +609,2.709 +610,3.067 +611,2.502 +612,2.467 +613,2.899 +614,2.177 +615,2.719 +616,3.049 +617,2.673 +618,2.259 +619,2.566 +620,2.383 +621,2.420 +622,3.318 +623,2.807 +624,2.348 +625,2.595 +626,2.433 +627,2.569 +628,2.620 +629,2.652 +630,3.140 +631,2.945 +632,2.571 +633,2.546 +634,2.428 +635,3.436 +636,2.393 +637,2.491 +638,2.511 +639,2.485 +640,2.603 +641,3.363 +642,2.442 +643,2.344 +644,2.462 +645,2.508 +646,2.617 +647,2.909 +648,2.824 +649,2.528 +650,2.424 +651,2.511 +652,2.517 +653,2.583 +654,3.331 +655,2.436 +656,2.455 +657,2.380 +658,2.570 +659,2.582 +660,2.789 +661,2.917 +662,2.526 +663,2.538 +664,2.447 +665,2.423 +666,2.695 +667,3.143 +668,2.616 +669,2.126 +670,2.596 +671,2.464 +672,3.092 +673,2.681 +674,2.641 +675,2.311 +676,2.551 +677,2.551 +678,2.837 +679,2.532 +680,3.006 +681,2.289 +682,2.521 +683,2.556 +684,2.593 +685,2.552 +686,3.173 +687,2.415 +688,2.429 +689,2.733 +690,2.286 +691,2.476 +692,3.256 +693,2.897 +694,2.528 +695,2.377 +696,2.518 +697,2.504 +698,3.074 +699,2.814 +700,2.433 +701,2.338 +702,2.476 +703,2.458 +704,3.141 +705,2.551 +706,2.717 +707,2.300 +708,2.527 +709,2.446 +710,2.469 +711,2.866 +712,2.776 +713,2.507 +714,2.457 +715,2.520 +716,2.450 +717,2.568 +718,3.192 +719,2.471 +720,2.790 +721,2.337 +722,2.548 +723,2.435 +724,3.313 +725,2.274 +726,2.461 +727,2.451 +728,2.556 +729,2.546 +730,2.869 +731,3.308 +732,2.293 +733,2.428 +734,2.686 +735,2.562 +736,2.523 +737,3.309 +738,2.311 +739,2.498 +740,2.485 +741,2.568 +742,2.392 +743,3.260 +744,2.534 +745,2.550 +746,2.355 +747,2.768 +748,2.319 +749,3.039 +750,2.721 +751,2.490 +752,2.378 +753,2.539 +754,2.823 +755,2.480 +756,3.533 +757,2.285 +758,2.365 diff --git a/Docs/release-checks.md b/Docs/release-checks.md index f702b29..33df923 100644 --- a/Docs/release-checks.md +++ b/Docs/release-checks.md @@ -42,6 +42,7 @@ Measured at 1440p on the development workstation: Bazzite, Ryzen 7 7700X, 64 GB | `0.1.0` | Placement vs references | PASS (with deliberate simplifications) | Section below, 2026-11-08 | 2026-11-08 | | `0.1.0` | Collision and packaging | PASS — no blocking collision, no invisible walls, no seam gaps (see audit note) | `-qaselftest` on the packaged build, 2026-11-08 | 2026-11-08 | | `0.1.0` | 60 FPS at 1440p | PASS — 2.42 ms avg (414 fps), p99 3.01 ms at 2560×1440, TSR on, VSync off, no FG | `-qaselftest` perf capture, `Docs/perf/0.1.0-walk-frametimes.csv` | 2026-11-08 | +| `0.2.0` | 60 FPS at 1440p | PASS — 2.64 ms avg (379 fps), p50 2.54, p95 3.39, p99 3.76, max 4.05 ms at 2560×1440, TSR on, VSync off, no FG | `-qaselftest` perf capture, `Docs/perf/0.2.0-walk-frametimes.csv` | 2026-11-09 | | `0.1.0` | Fresh checkout build | PASS — clean clone of `main` (`4bc41e9`), `git lfs pull` + `check-lfs.sh` OK (130 LFS files), both `GigLineEditor` and `GigLine` targets built with the documented engine | `/tmp/fresh-check`, 2026-11-08 | 2026-11-08 | | `0.1.0` | Packaged Linux build | PASS — packaged Development build launches straight into DemoMap, no missing-asset/linker errors; controls shown in-game and in `Docs/controls.md` | measurement recorded 2026-11-08; the capture was removed from the repository 2026-11-09 | 2026-11-08 | diff --git a/TODO.md b/TODO.md index d06da0e..887a555 100644 --- a/TODO.md +++ b/TODO.md @@ -34,7 +34,7 @@ Actionable task list for this project. This file is the single, central place fo - [x] Third-person traversal works end-to-end in the demo area. **Walking is captured and verified 2026-11-09**: `demo-third-person-walk` shows the body mid-stride in profile (legs apart, arms counter-swinging), and the run logs `walk=1 speed=28 clip=GigLine_Walk`. Getting there needed two harness fixes, both found by probing rather than guessing: the camera must track the pawn (`ShotFollow`), and the call that enables walking had to move out of the sequencer's `BeginPlay` — it ran before the player pawn existed, so the cast silently found nothing and `speed` stayed 0 while the probe reported `clip=Idle` every frame. - [ ] No blocking animation or rig defects. -- [ ] Performance target still met at 1440p. +- [x] Performance target still met at 1440p. Measured 2026-11-09 at **2560×1440, no frame generation, VSync off**: **759 frames, avg 2.64 ms (379 fps), p50 2.54, p95 3.39, p99 3.76, max 4.05 ms** — 6.3× the 60 fps floor. Body, skin material and animation cost about 2 % against `0.1.5`'s 2.61 ms. Series: `Docs/perf/0.2.0-walk-frametimes.csv`. The same run passed every QA check: walk, reset 0 cm, pause/unpause, transect 1456 samples / 0 holes, wall probe 0/35, façade probe 0/9. - [ ] Tag `v0.2.0` and write `CHANGELOG.md` entry; then remove this section. ## 0.2.1 — Rig fixes (patch)