Commit Graph

  • 7fe261a36e added grounded state, attempted to try and snap velocities for grounded bodies with small enough velocities (but it doesn't seem to prevent jittering bodies that resolve collision-from-gravity......) master ecker 2025-09-22 20:44:00 -0500
  • 52fa565eb5 some more menial tasks (implemented triangleAabb as composing the AABB as a triangulated box since it seems better that way, added inertia calculations for meshes even though I think the approach for inertia tensors and rotations seems really wrong) ecker 2025-09-21 19:30:11 -0500
  • 3ac3022f88 this is saner (although selectively querying for specific mesh attributes on view construction, just to have an interface to access them by name seems extremely silly), also triangleAabbSAT for stability (it's marginally more stable) ecker 2025-09-17 12:34:11 -0500
  • 58dee945f8 proper pre-computing of mesh views (with equally horrid code) ecker 2025-09-15 18:05:15 -0500
  • 16062f8135 fixed the bottleneck....... (mesh.makeViews incurred a very heavy penalty per triangle, currently naively caching the mesh views until I can be bothered to muck up the function headers) ecker 2025-09-15 17:28:13 -0500
  • 1e548265ad more optimizations by making node bounds an AoS instead and some other tweaks and fixes (even though it doesn't seem to amount to much tangible results because the scene explodes when I make props in mds_mcdonalds dynamic) ecker 2025-09-15 16:01:05 -0500
  • 7dee5ccd53 lol... ecker 2025-09-15 07:13:26 -0500
  • 8dd83f7f49 I guess I'll try and do some work (something about trying to force inline the vector operators but failing, and ensuring the internal physics system should work for the dreamcast with its quantized meshes (maybe, it's still quite underperforming compared to RP3D), probably some other things from a week or so ago) ecker 2025-09-14 20:37:34 -0500
  • 36612f9ce9 fixed AABBs calculated from the graph system being wrong because for whatever reason i was transforming the bounds to world space, and this never mattered when using RP3D because it was always fed local extents...... ecker 2025-09-05 21:25:59 -0500
  • cb36936411 more refinements and optimizations for the physics ecker 2025-09-05 19:08:07 -0500
  • fff258917e fixed dynamic/static split BVHs because of some dumb assumptions, fixed contacts being order dependent from not flipping the normals for '*Mesh' contacts generated, some other things (scenes don't lag to high hell but my props and doors aren't collidable...) ecker 2025-09-04 22:22:08 -0500
  • e1d824a5ac further ironing out the underlying math lib / SIMD intrinsics (theoretically now if -march=native binaries are shipped they shouldn't crash through multi-versioning) ecker 2025-09-04 19:39:22 -0500
  • c87eac5e05 bigly refractors vector/quaternion/matrix all around (and beginning to ensure SIMD optimizations for physics) ecker 2025-09-04 00:46:01 -0500
  • 593bdc93cd physics optimizations (lots...) ecker 2025-09-02 21:51:00 -0500
  • a66f56ad9f refractor to try and minimize differences between reactphysics and internal physics engine (that i really need to optimize now), reverted some things with the graph system to get it to work again on scenes with more than one mesh (because for some reason instance IDs need to be global and i cant for the life of me figure out how to properly remap them) ecker 2025-09-01 23:16:43 -0500
  • 3b5db2c32c finally it works (to-do: support for reading from fp16/bf16/quantized vertex data, some method of emitting contact information to the colliding bodies, collision masking, per-body gravity, fix sinking occuring when using the collider offset, some other things) ecker 2025-09-01 14:51:46 -0500
  • 461894741f using a PSG solver is almost stable sans some weird oddities, would love to use a block solver but the current one is flawed ecker 2025-09-01 00:13:20 -0500
  • 40da94c422 wasted a week on trying to roll out my own physics system just to be humbled when it almost works but doesn't work well enough (probably a bad solver, will probably revisit it at a later date) ecker 2025-08-30 15:52:30 -0500
  • 65cf3887b7 finally nailed a memory leak because past me made assumptions RP3D cleared the triangle parts on body destruction per the documentation (although I still crash after a while on the DC build from fragmentation at 9MiB consumed......), crammed filetype preference to resolveURI since everything should be using that anyways, some other cruft I forget trying to nail down this memory leak ecker 2025-08-24 20:47:32 -0500
  • 532c4054b6 audio cleanup or something (because it's lagging the dreamcast build when emitting sounds) ecker 2025-08-24 11:38:37 -0500
  • 9f23e22eb3 more clang asan checks (and getting it to compile on MSYS2/clang) ecker 2025-08-23 18:21:50 -0500
  • 044839bb81 bug hunting through address sanitizer (at least for opengl) mrq 2025-08-23 15:58:38 -0500
  • 8ccf468c2a fixes from the slop mrq 2025-08-23 11:36:36 -0500
  • c5f0ec69b2 crammed linux support and spent several hours trying to hunt down static initialization demons just for my .so lib to be made wrong ecker 2025-08-23 01:50:57 -0500
  • 0fb2e3b750 removed storing model/prev-model matricies and color for every instance entry (by adding another indirection via objectID...), fixed rt pipeline because the BLAS's weren't being generated ecker 2025-08-21 22:54:49 -0500
  • a099c562a2 remove the weird redundancy of having drawcommands + instances + primitives (which store draw commands and instances) (although i should probably do the opposite to not tie instances to draw commands) ecker 2025-08-21 18:25:29 -0500
  • 9f2f51c644 before overhauling the graph system to not depend on pod::Graph ecker 2025-08-20 22:13:23 -0500
  • e5de1491f2 skip rendering the next frame under vulkan, as this fixes the crash on scene load when the scene graph storage buffers need to be resized (even though nothing makes sense) ecker 2025-08-20 15:22:35 -0500
  • 81a3125fcd fixed graph buffers not getting updated (for opengl, vulkan still crashes...) ecker 2025-08-19 23:36:48 -0500
  • 114bed0d5d pre-emptive opengl fixes (it at least works fully which is mostly what I care about) ecker 2025-08-19 19:33:57 -0500
  • 0a29063869 realized past me realized that aliasing buffers isn't foolproof and added a system to fetch buffer descriptors by name from a source, yet never used it (re-bind buffer descriptors on mesh updates, need to fix the crash for graph storage when it resizes...) ecker 2025-08-19 19:18:12 -0500
  • 6d4837e3cc fixed DC texconv having some weird quad issue by just rebasing from the original file and de-QTing / reconverting ecker 2025-08-19 00:30:34 -0500
  • e796fee762 more dependency cleanup / updating ecker 2025-08-18 20:55:44 -0500
  • 8298fcec2d more cleanup, crammed DC texconv into here for later use ecker 2025-08-18 20:47:25 -0500
  • ba9f5c8323 some fixups for the scene tick loop, try and reuse existing buffers when reading buffers into them to avoid unnecessary allocations, fixed non-safe running a lua script because I didn't pass in the env ecker 2025-08-17 23:13:29 -0500
  • c9448f9b74 lua optimizations to remove as much overhead as possible (to almost nothing), adjusted how metadata is accessed in lua (it requires explicit pasting of macros) ecker 2025-08-17 20:48:20 -0500
  • 0a299a3fd2 removing unused dependencies, noted quirks with Dreamcast compilation ecker 2025-08-17 17:53:10 -0500
  • f7fba27753 fixed OpenGL crash + Dreamcast oddities (past me did in fact realize that userdata never called destructors and handled it for opengl pseudo-command buffers) ecker 2025-08-16 15:56:41 -0500
  • 62bc086659 also updated nlohmann/json to latest ecker 2025-08-16 12:20:38 -0500
  • 5f8a80c25f resolved an oversight past me never realized where you still need to call destructors on placement new'd memory (and other things to resolve a memory leak that was very noticeable with 16MB of RAM) ecker 2025-08-16 12:19:55 -0500
  • 9858cf9800 for opengl, have uniform colors bind to a draw command via pointer like an actual shader uniform (and also have it prioritize vertex colors instead) ecker 2025-08-16 00:46:00 -0500
  • cb1d9c4daf some gui hook cleanup, added keyboard/controller input for selecting gui options, fixed a crash when loading larger scenes because of low buffer size (or at least I believe it was that) ecker 2025-08-16 00:25:06 -0500
  • b10ee9975a updated dc rp3d to 0.9.0 (0.10.0 overhauled triangle meshes and I cannot be assed to shove every draw call mesh into a collision body) and that did in fact fix the issue of collision breaking when remaking the mesh collider ecker 2025-08-15 01:00:56 -0500
  • d5e58ccb9b somehow broke and fixed mesh quantization breaking again after streaming mesh data (need to dequantize first because naively just resetting the descriptors is wrong) (although I might need to update RP3D because collision breaks only when streaming mesh data and DC uses an older version) ecker 2025-08-15 00:07:13 -0500
  • ab9aa0ae13 fixed oversight in uf::Mesh::convert, fixed texture streaming not working in OpenGL (the graphic.material.textures weren't updated) fixed missing texture being used in VXGI for vulkan (think it was from reinitializing the texture object itself if it was aliased rather than just resetting the handles) ecker 2025-08-14 23:32:08 -0500
  • 9ec35a26e6 added texture/animation streaming (to-do: fix textures for OpenGL), serendipitously fixed animations when loading from a graph ecker 2025-08-14 19:09:58 -0500
  • eadf732ee5 more agony (oversight fixes and dreamcast build works again (although it doesn't resolve my outstanding issues of too large of a scene mesh......)) ecker 2025-08-13 22:12:38 -0500
  • bc406d5b62 agony (added streaming in mesh data if it's out of range (but for the worldspawn only), re-enabled mesh slicing because I commented it out months ago and didn't remember why, some other things probably in the quest of getting this added) ecker 2025-08-13 19:46:05 -0500
  • a9b5a03f94 shuffled code around for when I figure out how I want to stream a partitioned mesh (even though this defeats the purpose of re-implementing the chunk/region system because I do not want to go about splitting each region into its own model-entity-graph-whatever) ecker 2025-08-11 21:14:30 -0500
  • cf9a4c9a9d some more cleanup, use march=native + lto for dev (non-release), only do mesh quantization when available (when using my GLdc fork), removed unused headers ecker 2025-08-10 20:29:40 -0500
  • add0b88248 re-added libext.dll being compiled separately (to serve as a way to segregate non-engine into here) ecker 2025-08-10 19:07:57 -0500
  • 87ed97408f migrated (most of) ./ext/ into the core engine (because in reality I don't think it'd be easy to make them optional) ecker 2025-08-10 18:58:27 -0500
  • acfadd5c2d barebones documentation, commit in case I butcher code migration ecker 2025-08-10 18:31:20 -0500
  • 0b40786798 properly color a gui element under opengl, some cleanup for dead code that's not needed ecker 2025-08-09 13:35:04 -0500
  • 2186e41641 fixed text rendering in opengl (and the culling issue), use libtremor for dreamcast because vorbis is too taxing on the SH4, fixed uf::io::exists by just trying to open the file instead of stating it, probably some other things ecker 2025-08-05 18:39:56 -0500
  • aeb648595f dreamcast build compiled and somewhat running (required patching kernel/arch/dreamcast/hardware/cdrom.c), also fixed GUI elements not rendering under opengl ecker 2025-08-04 23:34:37 -0500
  • c49dfb9b8c some stuff to get the dreamcast build working again (or at least compiling, reading from the CD through KOS in emulators broke so I can't test much) ecker 2025-08-04 17:51:43 -0500
  • 4299be4646 waveform from vall-e is directly converted to 16-bit pcm ecker 2025-08-03 19:55:35 -0500
  • 81da764d6b added wav (from file) and PCM (from memory buffer) playback, modified hook to VALL-E TTS to now either directly play the audio or invoke a callback (currently only hooked via sound emitter) ecker 2025-08-03 13:45:31 -0500
  • 73ca9bb168 crammed in vall_e.cpp support to finally justify creating it (and a bunch of other things) ecker 2025-08-02 23:02:49 -0500
  • 4f1ce314a5 ensured this builds from a clean clone bundle ecker 2025-08-02 00:07:38 -0500
  • 4063105847 trimming things ecker 2025-08-01 23:14:52 -0500
  • 596affe488 nicer VXGI settings, updated reference screenshot ecker 2025-08-01 21:27:28 -0500
  • 8ba6214cc4 repaired barycentric-based deferred rendering ecker 2025-08-01 21:11:55 -0500
  • 85696bd8f6 some small vxgi tweaks mrq 2025-07-29 15:39:19 -0500
  • d519af9cc3 stabilized voxelization with a bunch of cringe mrq 2025-07-28 23:31:15 -0500
  • 67f0456352 some tweaks or something mrq 2025-07-26 20:42:32 -0500
  • a566e07756 attempted to fix mouse look being agonizing, fixed doors not rotating because at some point physics state completely overridden local transforms (to-do: expose some interface that will magically handle this mess) mrq 2025-05-31 16:14:59 -0500
  • 3aa9a084ae fixed gui render mode not working every other scene, due to some very specific circumstances mrq 2025-05-30 22:30:56 -0500
  • 91cf9665fe small fixes (although gui on next scene transition breaks) mrq 2025-05-30 21:32:55 -0500
  • 1ef5798017 Fixed bloom mrq 2024-12-08 11:41:00 -0600
  • e076b2f53d This one trick adds free FPS (do not do VXGI on completely transparent pixels) mrq 2024-12-05 00:11:57 -0600
  • 6b37b2fa0e Repaired OpenGL / Dreamcast build mrq 2024-12-03 19:00:47 -0600
  • a521f045ba Repaired meshopt integration, it's preferable to instead optimize on meshlets instead of the raw mesh mrq 2024-12-03 15:46:41 -0600
  • 5c8edbbcdc Screenshot mrq 2024-12-02 23:11:52 -0600
  • f817e1c372 This one line fixed VXGI mrq 2024-12-02 22:59:47 -0600
  • b81962a355 Hand-written commit mrq 2024-12-02 18:48:18 -0600
  • bb356ee399 Commit for 2024.12.01 23-07-01.7z mrq 2024-12-01 23:07:00 -0600
  • f1ab22c4a0 Commit for 2023.10.25 00-13-51.7z mrq 2023-10-25 00:13:00 -0500
  • 1c8721f615 Commit for 2023.02.04 22-48-51.7z mrq 2023-02-04 22:48:00 -0600
  • fa1e54c7f7 Commit for 2023.01.27 22-55-56.7z mrq 2023-01-27 22:55:00 -0600
  • f3800abb21 Commit for 2023.01.06 12-19-28.7z mrq 2023-01-06 12:19:00 -0600
  • 28cf6a7d8f Commit for 2022.12.30 20-20-07.7z mrq 2022-12-30 20:20:00 -0600
  • de54bcad8f Commit for 2022.12.21 16-25-26.7z mrq 2022-12-21 16:25:00 -0600
  • e816814186 Commit for 2022.11.27 13-25-40.7z mrq 2022-11-27 13:25:00 -0600
  • 7668f1f9bf Commit for 2022.11.24 15-35-53.7z mrq 2022-11-24 15:35:00 -0600
  • 38f1437330 Commit for 2022.10.09 22-47-36.7z mrq 2022-10-09 22:47:00 -0500
  • f556532dd4 Commit for 2022.08.14 23-37-12.7z mrq 2022-08-14 23:37:00 -0500
  • cbde0b92d1 Commit for 2022.08.06 22-41-07.7z mrq 2022-08-06 22:41:00 -0500
  • 96ca870586 Commit for 2022.08.04 23-27-32.7z mrq 2022-08-04 23:27:00 -0500
  • cfdb877ed3 Commit for 2022.07.31 22-17-30.7z mrq 2022-07-31 22:17:00 -0500
  • 212347ee9c Commit for 2022.07.31 00-20-46.7z mrq 2022-07-31 00:20:00 -0500
  • ae28b31d02 Commit for 2022.07.29 00-31-45.7z mrq 2022-07-29 00:31:00 -0500
  • 5a12332ad8 Commit for 2022.07.28 00-11-47.7z mrq 2022-07-28 00:11:00 -0500
  • 40e346f71c Commit for 2022.07.27 00-01-19.7z mrq 2022-07-27 00:01:00 -0500
  • 61cd2a6b5c Commit for 2022.07.26 15-00-39.7z mrq 2022-07-26 15:00:00 -0500
  • 928945e727 Commit for 2022.07.21 23-48-52.7z mrq 2022-07-21 23:48:00 -0500
  • 64dd96692c Commit for 2022.07.20 00-37-19.7z mrq 2022-07-20 00:37:00 -0500
  • 686a4f5e3e Commit for 2022.07.19 16-59-42.7z mrq 2022-07-19 16:59:00 -0500
  • 0c76838ea1 Commit for 2022.07.18 00-44-24.7z mrq 2022-07-18 00:44:00 -0500