248,561 Commits over 3,928 Days - 2.64cph!
New: Editor viewer for binary profile snapshots
- Very rudimentary, needs more work
- Also added how many marks there are in a thread profile for binary snapshot export
Reveals that I have a bug in binary exporter - looks like I double up the threads somewhere.
Tests: opened a snapshot from the editor in the tool
Adjust contest meta tags, add longer description field
Use sceneobjects for spline model instances instead of Graphics.Draw
Update SpriteTools
Tiles now properly serialize all data to the save file. Fix edge case where Tiles wouldn't be saved at all.
Update `[HostSync]` -> `SyncFlags.FromHost`
- Attempts to fix parenting on drawbridges
- Wheel LOD fix
Don't create an invalid Tileset state when no autotiles are present
Depth downsampling -> managed render pipeline
t1 smg viewmodel - Fixed left arm causing camera clipping issues when wearing some hazmats
- Ballista Gibs and material changes
Clean out all the old unused files
▍▆▄▊▇▌ ▆▉.█▊▌▍▉▅█▆▄▋ ▆▊ ▉▋▌▋ ▅▌█▄ ▌▊▌ ▌.▍▌ ▅▊ ▇.▄▌, ▅▍▊▅▌ ▌▋▊▅▊▋ ▅▌▊▍▍ ▆▇▇▉▉▇▅▊ ▌▋▄▄▋▄▌
Fixed side areas on constructable tower
Clean: removing unnecessary backticks
- And more styling improvements
Setup Siege Tower LODs 0-3
Clean: minor styling changes
Update: Split into Core + DLL
- Also added an empty linux project
- Separated out platform specific code into WinDLL
Tests: ran in unity couple times
Update: Removing PCH use from Core
MSBuild does not expose PCH for Linux target, and we don't really need it
Compilfix: adding cstring header
Turns out gcc doesn't include it via string_view
Compilfix: move exporting section to OS specific project
Avoids having me write an export macro for either Win32 or Linux
New: first building version of Linux server profiler
Still need to clean up how projects are organized
Update: referencing core files directly in WInDLL
- This follows same convention as LinuxSO - hoping it'll avoid confusion
- Removed PCH usage (since shared files didn't use pch)
- Added filters to separate core files vs project-specific files
Clean: removing Core project (but keeping the files)
Since these sources are built as part of DLL projects, there's no point to keep this lib project
Update: replacing lib name with a proper one
- also adding a comment explaining the export code
Update: Linux binary named same way as Windows, but with .so extension
Update(linux): only get already-loaded dylib instead of trying to load a new one
Update: properly export API on linux
- Also compile as std20
Had to redo my approach to code duplication - gcc was ignoring my annotated forward decl(probably because it was encountered after full definition).
Tests: checked with `nm` - symbols were demangled. Tried running server on linux - crashes immediately
Bugfix: use different memory offset in MonoClass
There's a clash between MSVC and GCC in how to pack the structure, causing the image to be offset on GCC and causing an illegal memory read
Tests: ran linux server - it now runs
Update: moving the output of WinDLL project inside the project folder
Update: improving documentation
- Mentioning Linux
- Adding Credits
Clean: minor styling changes
Update: moving the output of WinDLL project inside the project folder
Update: improving documentation
- Mentioning Linux
- Adding Credits
Don't show "Include Source Files" checkbox when publishing type that always includes their source files (libraries)
Update: Exposing binary exporter
- Added missing features from ServerProfiler.Core
- Can be triggered via profile.perfsnapshot last argument
I need it to be able to investigate and fix hard-to-reproduce issues - hopefully it'll speed up the workflow.
Tests: in Editor on craggy took a binary snapshot - it exported succesfully
Added GetTextureFromFrame docs
Support 3x3m and 3x3c guides with new TextureAtlas approach
TextureAtlas.GetTextureFromFrame now grabs proper coordinates for all ratios
Fix NRE in TextureAtlas.FromSpritesheet
Optimize TextureAtlas class and fix random green pixels in TextureAtlas.GetTextureFromFrame
Use TextureAtlas for Autotile Guides
TextureAtlas.GetPreviewTexture no longer has 1px padding or texture bleed
Refactor over-complicated tile caching process and do everything from TileAtlas
Condense individual guide images into single images. Saves on a ton of space.
Fixed some broken prevent building colliders
- Improved the siege tower collisions on stage changes
- Removed invisible doorway colliders on constructable stages
Bugfix: don't access invalid memory when exporting Linux snapshot
Same GCC vs MSVC issue in the native libs, but this time on Managed side (since I have a copy of these structs for name resolving purposes).
Tests: Built a linux server, ran it on WSL and triggered a snapshot - it generated. But periodically select frames export incorrectly, investigating further
merge from garage_door_collider_optim
Fix mass center override gizmo not updating when not dynamic (editor forces rigidbody to static)
▉▍█▌▆ ▄▅▉▆ ▍▊▌_▆▌▌▍█▉▋▊▅_▆▌█▇▆▍▌▌▅_▆▅
Added a combined "Clean and Generate" Codegen option that seems to work (fixed a bunch of issues with it, but still testing)
added ClientIOLineParentClampedBounds to manage IO points on garage doors
- actual collider parent movement doesn't match the visuals, so we define a local bounds (re-mapped to OBB on awake) that the points are clamped to be within
3p mini corssbow anims updated
split vm mini crossbow reload anim into 3 parts and removed skinned mesh arrows from its rig
gibs import settings change
Bugfix: new ServerProfiler.Core dynamic libs
- Fixes Linux exporting symbols with name mangling
- Fixes GCC vs MSVC struct packing inconsistency, causing Linux server to crash when instrumenting functions
Tests: DLL tested in editor on Craggy, SO tested in WSL standalone server (snapshot export fails though)
Bugfix: use different memory offset in MonoClass
There's a clash between MSVC and GCC in how to pack the structure, causing the image to be offset on GCC and causing an illegal memory read
Tests: ran linux server - it now runs
sanity editor script to find doors using ClosedColliderRoots (only the garage doors are)
separated closed collider flags on garage door into mutually exclusive closed and busy collider sets - should significantly reduce the number of active colliders in a sealed base
Tweak stat recording
tweak contest button
Fixed network updates, for example from parenting changes, interfering with smooth movement for entities that are currently lerping
Removed Jarryd's interpolator SnapToEnd demo workaround
Prefab file loads cached scene on post load if needed - Fixes prefabs referenced in resources not loading the prefab scene
Set TSPEC_TEXTURE_GEN_MIP_MAPS on RenderTargets with mips
Whitelist error event analytics
[ThreadStatic] AccessControl.Location because we test types in multiple threads and this was gibberish
Fix duplicating a spline point with shift not copying roll & scale
Ensured constructable entities update state on the serverside as well as the clientside