8,073 Commits over 3,806 Days - 0.09cph!
Fixed cases where the wrong stage is selected when leaving speedrun
Better subdivision axis choice
Get rid of auto-merging vertices during modification
CreateBox
Subdivide when too many faces
Octree debug drawing, some flood fill optimization
Added some profiling
Got rid of some allocations
Test speedrun
Speedrun pause / game over string tweaks
Speedrun replays
Speedrun leaderboard replay attachment fix
Speedrun stage completion time fixes
Expirable SyncContext refactor
* Rename MainThreadContext to ExpirableSynchronizationContext
* ExpirableSynchronizationContext supports having multiple live instances on different threads
* Added SyncContext static class to handle resetting on session end
* MainThreadContext.Instance is now SyncContext.MainThread etc
More control over addon tasks running on worker threads
* Added an ExpirableSynchronizationContext for worker tasks
* WorkerThread.Start() spawns a bunch of long running tasks to process addon tasks off the main thread
* WorkerThread.Stop() causes those worker tasks to exit, can be restarted later
* Stop worker threads during hotload
* Fixed case where addon tasks that refuse to cancel could keep running forever on a worker thread
Fixed errors after rebase
Expirable SyncContext refactor
* Rename MainThreadContext to ExpirableSynchronizationContext
* ExpirableSynchronizationContext supports having multiple live instances on different threads
* Added SyncContext static class to handle resetting on session end
* MainThreadContext.Instance is now SyncContext.MainThread etc
More control over addon tasks running on worker threads
* Added an ExpirableSynchronizationContext for worker tasks
* WorkerThread.Start() spawns a bunch of long running tasks to process addon tasks off the main thread
* WorkerThread.Stop() causes those worker tasks to exit, can be restarted later
* Stop worker threads during hotload
* Fixed case where addon tasks that refuse to cancel could keep running forever on a worker thread
Fixed errors after rebase
Added all speedrun categories
Speedrun text tweaks
Fixed case where pause time was counted for speedruns
Speedrun game over time display tweaks
Removed duplicate restart button on pause screen
Keyboard-only button prompt fixes
Speedrun mode initial work
Speedrun score submission
Added iarc certificate id
Edge stitching in convex decomposer
Edge stitching
Handle very small intersections
Mesh plot script
Another edge case fixed
Revert modification if an exception occurs
Re-creating demo from v1
Another case to fix
Working on vertex attribute interpolation
Some edge cases fixed
More edge cases
Last edge case?
Edge edge case
Stability
Gradually adding functionality back in
Semi-functional again
Fixed !switch build error
Skip replay tests on !switch build
Added debug slider for film grain !switch
Initial commit
Mesh generation
Mesh copying, transformation
Working on CSG operators
About to do a mesh modification rewrite
Almost found cut faces
Find edge loops for cut faces
Handle intersections fully inside a face
Flood fill faces
Find faces for both lhs and rhs meshes
Support for different operators
When surfaces don't intersect, check to see if we should keep faces
Attribute refactor
WIP generating convex faces
More convex face progress
Convex decomposition almost working
More decomposition fixes
Working on edge cases
Expirable SyncContext refactor
* Rename MainThreadContext to ExpirableSynchronizationContext
* ExpirableSynchronizationContext supports having multiple live instances on different threads
* Added SyncContext static class to handle resetting on session end
* MainThreadContext.Instance is now SyncContext.MainThread etc
More control over addon tasks running on worker threads
* Added an ExpirableSynchronizationContext for worker tasks
* WorkerThread.Start() spawns a bunch of long running tasks to process addon tasks off the main thread
* WorkerThread.Stop() causes those worker tasks to exit, can be restarted later
* Stop worker threads during hotload
* Fixed case where addon tasks that refuse to cancel could keep running forever on a worker thread
Expirable SyncContext refactor
* Rename MainThreadContext to ExpirableSynchronizationContext
* ExpirableSynchronizationContext supports having multiple live instances on different threads
* Added SyncContext static class to handle resetting on session end
* MainThreadContext.Instance is now SyncContext.MainThread etc
More control over addon tasks running on worker threads
* Added an ExpirableSynchronizationContext for worker tasks
* WorkerThread.Start() spawns a bunch of long running tasks to process addon tasks off the main thread
* WorkerThread.Stop() causes those worker tasks to exit, can be restarted later
* Stop worker threads during hotload
* Fixed case where addon tasks that refuse to cancel could keep running forever on a worker thread
Exposed hotload skip attrib and callback interfaces
Deleted empty INotice.cs
Added cl_hotload_log and sv_hotload_log console vars
Fixed possible NRE when setting up console vars
SkipHotloadAttribute now supports properties
Fixed hotload test assemblies having wrong package ID
Replaced hotload callback interfaces with IHotloadManaged
Destroyed() returns a state dictionary that is passed to Created() in the new instance
Don't let Hotload see some sensitive fields
IHotloadManaged.Destroyed() now passes in a dictionary ready for use
Exposed hotload skip attrib and callback interfaces
Deleted empty INotice.cs
Added cl_hotload_log and sv_hotload_log console vars
Fixed possible NRE when setting up console vars
SkipHotloadAttribute now supports properties
Fixed hotload test assemblies having wrong package ID
Replaced hotload callback interfaces with IHotloadManaged
Destroyed() returns a state dictionary that is passed to Created() in the new instance
Don't let Hotload see some sensitive fields
IHotloadManaged.Destroyed() now passes in a dictionary ready for use
Cleanup texture builders to reduce loads of code duplication
Bring Texture3d, TextureArray & TextureCube builders extra properties
Make Texture2DBuilder a struct
Generic gibs are now based on the entity's physics material
Moved generic gibs and added break sound to Surface asset
Added PhysicsBody.GetDominantSurface, PhysicsShape.SurfaceMaterial and Surface.GetRandomGib
Allow breakable glass to use assigned UV mapping (requires map entity recompile)
Fix glass texture coords when breaking shards that have moved away from the panel
Whitelist System.Half
Fix base shader not compiling
Fix alpha testing for shaders
Allow foliage shader to be compiled again
Don't bother trying to compile 32 bit PCM so you don't damage your ears if you try
Merge pull request #168 from Facepunch/texture-builder
Cleanup texture builders to reduce loads of code duplication
Create Developer-GenerateSolutions.bat
Completely removed vscript from anim system
Update Developer-GenerateSolutions.bat
Few more script references in anim projects
Remove WithMips for texture cube for the time being
Add constructor parameters for CreateCube & CreateArray
Remove anonymous param from Texture Finish
Create WithAnonymous for textures instead of passing it as a parameter to Texture Finish
Remove anything marked as [Obsolete] 3+ months ago
Obsolete Entity.EyePos/Rot => Entity.EyePosition/Rotation
delete some legacy c++ concommands: god, say, give, etc. these didn't work anyway and if they should work they should be done in c#
reimplement cl_showpos in c# so it uses the pawn, remove cl_showfps (there's much better ways to see it now)
Fix compile error and strip Panorama stuff from the particle host
Remove more legacy player concommands and whatevers left of impulse
remove env_message
Allow menu tasks to persist between sessions
string.QuoteSafe takes a bool, if true the quotes are optional
DataNode sorts children on creation (fixes no children)
Make scrollbar more apparent (todo make qt scrollbars all hover type)
Added LocalAddon GetRootPath(), GetCodePath(), GetAssetsPath()
Fixed QuoteSafe not handling empty/null strings
Bind listview/treeview activated
Add TreeView.SetExpanded
Less abrasive qt errors/warnings
Get access to MRU assets from c#
Allow @ in QuoteSafe
Add DataNode.RemoveAllChildren
Add TreeView.Indentation
Asset Browser has filters etc
If filtering by recent, then order by recent
WheelEvent has HasAlt, HasCtrl, HasShift
Ctrl wheel in asset list changes list type/icon size
Add "Everything" category
Add toggle for recursive folders
Add TaskCanceledException to whitelist
Put it where it belongs
Access to AssetType
Initialize interop to nullptr
Packaged games properly update their hash for networking, fixes net vars in packaged games
Add "content" addon type
Update addon list on asset browser when they change
Addon switcher shows paths
TreeNodes support context menus, added context menus to asset browser folders
Create in folder options
Updated Citizen blendshapes. Updated Citizen AO now you can sometimes see the inner lip
Merge branch 'master' of sbox
Loading screen can access game/map packages
Don't let Hotload see some sensitive fields
Merge branch 'master' into hotload-api
Don't let Hotload see some sensitive fields
IHotloadManaged.Destroyed() now passes in a dictionary ready for use
Expirable SyncContext refactor
* Rename MainThreadContext to ExpirableSynchronizationContext
* ExpirableSynchronizationContext supports having multiple live instances on different threads
* Added SyncContext static class to handle resetting on session end
* MainThreadContext.Instance is now SyncContext.MainThread etc
More control over addon tasks running on worker threads
* Added an ExpirableSynchronizationContext for worker tasks
* WorkerThread.Start() spawns a bunch of long running tasks to process addon tasks off the main thread
* WorkerThread.Stop() causes those worker tasks to exit, can be restarted later
* Stop worker threads during hotload
* Fixed case where addon tasks that refuse to cancel could keep running forever on a worker thread
Allow menu tasks to persist between sessions
Allow menu tasks to persist between sessions
Replaced hotload callback interfaces with IHotloadManaged
Destroyed() returns a state dictionary that is passed to Created() in the new instance
Don't let Hotload see some sensitive fields
Fixed hotload test assemblies having wrong package ID
Exposed hotload skip attrib and callback interfaces
Deleted empty INotice.cs
Added cl_hotload_log and sv_hotload_log console vars
Fixed possible NRE when setting up console vars
SkipHotloadAttribute now supports properties
Fixed possible NRE when setting up console vars
SkipHotloadAttribute now supports properties
Added cl_hotload_log and sv_hotload_log console vars
Removed obsolete test replay
Fixed possible NRE on game exit
Fixed case where changed input bindings wouldn't save to file