2026-04-26T01:25:36 We don't have infinite CI time, and even when we did, some people weren't happy about semi-redundant stuff, so for the subset of stuff that we know can't only break on one platform at once so only needs testing on one platform, I think the preference would be to not redundantly test it. There would be things that would benefit from integration testing on multiple platforms, though. 2026-04-26T01:32:28 I guess I'm thinking we may benefit from running r something that merely verifies that openmw launches on all platforms when building for themโ€”not necessarily a separate step. Like the vcpkg stuff probably doesn't need an integration test (?), but rather needs a pulse check. Mac would benefit from that too. Like otherwise stuff that is only known to break on launch wouldn't be detected. But maybe the build 2026-04-26T01:32:29 scripts can include the pulse check after building rather than having a discrete step. Hmmmmm. 2026-04-26T01:33:15 Like we don't want to ship stuff that immediately crashes due to...whatever. But probably unavoidable to check for all cases so IDK 2026-04-26T12:47:21 hi, just quickly wanted to introduce myself here. I raised an issue last week and found and tested a fix and created a merge request (https://gitlab.com/OpenMW/openmw/-/merge_requests/5298). I work as a dev IRL but I'm new to non-self-hosted GitLab and so a bit confused about all these compute limits I seem to run into. Couldn't even CI the fix in my fork because of this. Just wanted to say I hope this is not causing 2026-04-26T12:47:22 any trouble with the official repo and I didn't waste anyone's compute time or something. thanks ๐Ÿ™‚ 2026-04-26T12:54:58 you're not causing any troubles, it's an unfortunately known issue 2026-04-26T12:55:59 thank you for your MR by the way, it's always nice to see people taking enough of an interest in OpenMW to contribute to it! 2026-04-26T13:04:36 oh fk, you don't use depth prepass.. I thought you are, I need to follow MR space more.. 2026-04-26T13:09:56 thanks for your reply. and thank you very much for the nice words. yeah, was a ton of fun to figure this out looking at SDL and MyGUI code and so on. I don't take a full sudden shutdown of my system lightly and wanted to find out why it happened ๐Ÿ˜„ also thanks for your comment on the MR, I just replied. 2026-04-26T13:16:33 huh? 2026-04-26T13:22:04 I was implementing something and it uses depth prepass because I knew someone is working on clustered implementation.. I made my own prepass so I could continue that work in the meantime but I was thinking it's gonna be there in openmw eventually and now I read your MR and you don't even use the prepass.. tldr -> I am wasting my time even more than usually ๐Ÿ˜„ 2026-04-26T13:35:34 what do you need it for 2026-04-26T13:56:22 you can also take the timeout as an affront to everything that is just and beautiful, and send MR to reduce the build times :> 2026-04-26T14:01:33 We don't even run the regular tests on all platforms yet, so the integration tests are a distant dream. 2026-04-26T14:05:24 Allow me to be annoying a lil 2026-04-26T14:06:30 Any news on bone transform getter lua api? 2026-04-26T14:09:44 No 2026-04-26T18:58:00 Another CI related question: we use the build stage for things that include usable packages and not. Should we make a new stage called 'release' (or deploy, or whatever, it doesn't matter to me) and pull out windows, mac, and the future linux tarballโ„ข into it? It seems more sensible to split stages. So the jobs that actually deliver something run last after everything else. 2026-04-26T18:58:26 so you have a stage that is basically 'build deliverable packages' versus...building for other purposes (i.e. tests, coverage) 2026-04-26T18:59:27 I'm envisioning this would be easier on random people testing MRs to be able to easily know which job to choose to download artifacts from to get a build 2026-04-26T19:03:01 I guess if you can set that up so they still start running at the same time they do now, reorganizing for the sake of clarity makes sense 2026-04-26T19:03:52 hmm, yeah, that doesn't seem possible with gitlab, they run sequentially 2026-04-26T19:04:12 but wouldn't that be desirable so we are only burning windows/mac time if the test builds and such pass? 2026-04-26T19:05:00 I guess hmm 2026-04-26T19:06:05 like most of the build stuff that isn't windows/mac is like...coverity and linux stuff. What is the point of the linux builds if they aren't delivering builds that can be run? Are they really 'checks' or 'test' stage?? 2026-04-26T19:06:05 You generally want to know if things compile everywhere. And the Windows builds already take forever so waiting longer to find out something is broken doesn't seem appealing ๐Ÿ˜› 2026-04-26T19:06:14 true 2026-04-26T19:06:35 You can definitely run jobs in parallel, unless I'm misunderstanding what you're saying 2026-04-26T19:07:05 https://docs.gitlab.com/ci/yaml/#stages 2026-04-26T19:07:05 I'm talking about stage grouping in gitlab CI 2026-04-26T19:08:44 Oh yeah, stages by definition are essentially sequential 2026-04-26T19:08:59 I generally open MRs when the Clang and GCC builds succeed without waiting for the Windows build. I figure for people not compiling Windows locally, doing the reverse makes more sense 2026-04-26T19:20:10 @liammellofarley Thanks for the showcase, that was nice getting it cleared up. 2026-04-26T19:20:45 I can recommend it for my laptop using friends 2026-04-26T19:21:35 Sweet, I'm gonna keep testing it and try for my own tests to add all the buffers needed for temporal FSR3 if I can, so I can eventually report back on how messy that is and how much better it looks. 2026-04-26T20:40:28 its been rebased by a couple of people over a long period of time so wouldnt surprise me if there was issues from that. hopefully wont be too difficult to resolve 2026-04-26T21:48:27 Have you found the reason for the janky collision regression where you get stuck to silly things like in Vanilla 2026-04-26T21:49:44 It used to not happen even in earlier iterations. 2026-04-26T22:00:26 i havent but ive narrowed it down to the jolt update branch i think, ill add that to my todo list to investigate further 2026-04-26T22:44:32 Isn't vtastek doing depth prepass in mgexe to get AO working flawlessly with blended materials? 2026-04-26T22:44:58 I get the feeling it's useful for lots of things. 2026-04-26T22:49:45 IDK I don't think it's worth the cost 2026-04-26T22:50:46 Maybe if PBR shaders end up making the object shaders super expensive it would even out, but I don't think even wareyas PBR shaders come close to justifying it. 2026-04-26T22:55:50 With bindless depth prepass should be dirt cheap (even more so if MSOC gets attention), but we're far from that. It wouldn't hurt to have an option for it, but it would effectively be useless unless we shipped it with a feature (like AO) and basically be a button you click which made your fps go down :todd: 2026-04-26T22:59:56 So it becomes properly viable after bindless, noted 2026-04-26T23:00:25 Though I suppose vtastek will be getting an idea of the performance cost himself right now 2026-04-26T23:01:09 I already did it in OpenMW, it was just one scene but it was an extra ms or two..which makes sense. Look at cost of shadow maps, for example 2026-04-26T23:12:19 AON3 gave something to try which requires no additional pass, but I simply never got around to testing it. It's the thing where you output the AO contribution in a separate render target, and then in post you do scene - scene_ao * caluclated_ao (or something like that). @liammellofarley I dunno if you know anything about this 2026-04-26T23:13:20 But that would not fix the problem with blended things. 2026-04-26T23:17:52 Combined with doing AO between the opaque and translucent passes, it would, but then we hit all the MSAA issues. 2026-04-26T23:26:30 Does the prepass avoid those MSAA issues? 2026-04-26T23:28:32 Personally I would give up a ms or two if it meant the post process AO, sky and fog (which apparently everyone uses) is no longer broke as hell. 2026-04-26T23:34:02 Again, this only helps with AO. Sky and fog have their own issues. 2026-04-26T23:37:17 Really, even the prepass? 2026-04-26T23:37:41 Alpha-blended things still have to be shaded ๐Ÿ™‚ 2026-04-26T23:40:16 Oh well, I return to my usual position that these things like sky, fog and AO should be forward pass solutions instead of post process whuch have fundamental issues. 2026-04-26T23:43:36 You can already port that fog and see how expensive it is, it doesn't rely on any depth information other then itself 2026-04-26T23:44:17 And skys already use shaders, so there's nothing stopping anyone really. 2026-04-26T23:45:09 Which fog to be ported do you mean? 2026-04-26T23:45:19 The one you're having trouble with 2026-04-26T23:45:53 Oh, it can be put in forward pass almost as-is? 2026-04-26T23:46:23 yes 2026-04-26T23:47:01 but I haven't tried cause rafaels version is 2500 lines and I can't be bothered 2026-04-26T23:48:39 I still don't see any problem with that. 2026-04-26T23:49:30 AO is weird almost all the time then its not weird with that. 2026-04-26T23:52:30 I hope whatever volumetric clouds implementation someone might add would be the one from Rising World. 2026-04-26T23:52:46 Its almost cost free, on my PC at least. 2026-04-26T23:53:17 And looks very convincing. 2026-04-26T23:55:51 Right now the issue for OpenMW users is you either use the post process fog which cause issues or you're stuck with fixed function fog from 2002. 2026-04-26T23:58:18 I'm a little confused about the ambient contribution thing. What does that change/solve? Does it just mean areas with post AO can have their specular and stuff overridden to get a slightly cleaner look than just darkening? If so I can definitely implement it, that seems ideal for my test fork because it would let me kill PBR specular and stuff in screenspace shadows and for AO.