20,876 Commits over 1,522 Days - 0.57cph!
Load all entities from our local base addon dll
Make resource types on properties work properly, Texture Model etc. - handle Tags on map classes and start parsing [Input]
New Hair -Drawn on Eyebrows
For the people who shaved off their eyebrows! New quick eyebrow option, goes quite well with the bob-cut hairstyle.
Merge branch 'master' of sbox
Fixed listen servers not joinable
New Hair - Eyelashes!
We have beautiful new eyelashes!
Change root node to use input connection instead of child id
CAnimGraphFixedData::GetUpdateNode asks the node for the actual update node when output id is valid
Never add a update node for child nodes that have a valid output id (nodes connected to groups)
Cleanup
Try to update secondary highlights for group nodes
FidelityFX Super Resolution
Rework the resolution rescaler to use FSR instead of bilinear to provide a higher quality image when rescaling from a smaller resolution scale back to native
Merge pull request #182 from Facepunch/fsr-working
Implement Fidelity FX Super Resolution for resolution scaling
Better way of bypassing group nodes when creating update nodes but still not ideal
Check all nodes in graph when replacing node id references from copy paste, not just the ones in the current node manager
Make sure the child node is resynced last
Resync graph nodes for parents when attribute is modified, they may have been refreshed
Simulate ripples on bullet impact
https://imgur.com/a/8eGjZdj
Don't use nullable for water properties, set default value instead
New ripple simulation with collisions
Add drag to fluid simulation and collisions
Cleanup ripplecompute and how ripples are added
Fix seamless entry on water, better water caustics, remove options for tesselation other than on/off, iterate on waves
Cleanup hull base shader
Cleanup ripple collision and propagation
Adjust ripple strength
New underwater surface method
Port eyeball shader to use our shared code, fixes clip planes on water
Add fog support to water surface, cleanup
Clamp radius of water directly on C# side, send D_VIEW_INTERSECTION combo
Put water combos right into place, upload water shader objects (including ripple)
Propagate ripple by framerate, fixes it slowing down on low framerates
Don't put r_water_ripples inside RippleCompute.cs, breaks when pushing it to shader
Add render bounds for water, only render water if we are are looking at it's bounds
Use two tone fog by default on test water
Push latest water shader objects
Can manually dispatch CI workflow to force a full rebuild for when incremental builds get fucked
Delete loads of C++ entities that were removed from fgd ages ago or just legacy as fuck, clean up loads of shit because of it too.
Important we do delete these after removing them from fgds because the engine will still create them if a map has specified them previously
Remade break piece nodes on traffic cone model
Recompiled traffic cone and gibs
Updated asset tags
Refresh references to input/output node ids in group node if they're old
Fix crash in graph binding if group output isn't hooked up to anything
Delete the old output edges and recreate them with the new node
Fix output pins of group input not connecting up to input pins of group output properly
Make sure output plug edges are removed and recreated on node refresh
Add CAnimNodeBase::GetGraph so we don't always have to go through the context to grab the graph
Bypass group nodes when creating update nodes for graph binding
Get the correct child id when bypassing group nodes
Switch blend anim node to use input/output ids as a test
kv3 conversion for CBlendAnimNode
Draw node stacks differently with secondary highlight
Map class variables type themselves from the C# Property Type now and their default value is set too. Clean this shit up using partial classes keep it nice and tight.
Citizen: updated unicycle pedaling animation with 8% leg X scaling
Fixed Entity IO output arguments sometimes getting an unexpected prefix
Updated Screen Space particle overlay
Fixed missing bollard base LODs
Added simple map to toolscenelightrigs
Citizen: added unicycle pedaling animation (basic for now)
Citizen: first Unicycle Frenzy sequences + more animgraph comments
Fix exception when generating thumb
Added failing test involving JsonSerializerOptions
Moved special handling hotload upgraders
Special json hotload handling, fixes #213
Fixed bug hotloading lambdas in generic methods
Add getters for post processing, removed unused dof texture render target, removed parent requirements
Make post process VignetteSettings so you can read and they have defaults
@ogniK5377 can you do this for all the others?
BaseWeapon: don't return trace if no hit
Fix UI scaling causing unevenness
Add Render.Draw2D.BlendMode
Run deferred UI deletes before layout, so they don't appear there
Don't force perspective last, transforms are left to right. Negate translate for perspective
New ripple simulation with collisions
Add drag to fluid simulation and collisions
Cleanup ripplecompute and how ripples are added
Fix seamless entry on water, better water caustics, remove options for tesselation other than on/off, iterate on waves
Cleanup hull base shader
Cleanup ripple collision and propagation
Adjust ripple strength
New underwater surface method
Port eyeball shader to use our shared code, fixes clip planes on water
Add fog support to water surface, cleanup
Clamp radius of water directly on C# side, send D_VIEW_INTERSECTION combo
Put water combos right into place, upload water shader objects (including ripple)
Propagate ripple by framerate, fixes it slowing down on low framerates
Don't put r_water_ripples inside RippleCompute.cs, breaks when pushing it to shader
Warning Fix
Warn if ui template not found
Update transforms test
Allow maps to specify which games they support
Get rid of bindings & rt pipeline init
Add entities to Hammer GameData straight from games assembly data (skipping fgd)
Use an AssemblyLoadContext for game binaries in Tools/Hammer so we can use real Reflection instead of Cecil
We can load entities from remote packages too, put it all into a simple `Hammer.LoadEntitiesFromPackage( "facepunch.minigolf" )`
Clean up GDVar code a bit to keep our changes manageable, we don't need S1 fgd parser or game units/items
Turns out we were using the legacy stuff, switch it all over to KV3
Populate entity gamedata properties
Make structured MapClass w/ mirroring to native GameData so we have access to map entity classes in managed easily
Port Hammer Entity tool to C#, can pick s&works games from within the tool and use the game entities straight away
Don't output entities with FGDWriter
Load entities from all active LocalAddon when Hammer is started, split the API for local/remote package to make it saner
Load entities straight from Sandbox.Game.dll too
Hammer: don't load any .fgds from addons, we only load core/fgd/s&box.fgd now for remaining C++ entities
Remove DotaMaxTrees
Load managed GameData after engine fgd is read, copy native engine entities to our managed lists and then mirror our managed game classes back to native
Copy variables to native
Make our entity tool properly functional and less shit, add a button that pops up a dialog to use entities from remote games.
Move Rank/Leaderboard config to meta, GameConfiguration is dead 🙌
ComboBox/EnumBox can have tooltips/descriptions
Move MapSelect stuff to meta
When a datasource bind errors, tell us which one
Panel binding properties don't need a [Property]
Server button resolve map name
Local addons can store metadata in their config
Include local metadata when uploading addon
MinPlayers/MaxPlayers in meta
Remove GameConfiguration.MinPlayers, MaxPlayers
Package.Meta will use local addon if available
EnumBox handles int and JsonElement
Move GameConfiguration.NetworkType to addon meta
Remove DotaMaxTrees
Load managed GameData after engine fgd is read, copy native engine entities to our managed lists and then mirror our managed game classes back to native
Remove cur spv
Set buffer data
Create attributes & start binding our buffers
Strip out TLAS & BLAS, we dont want hw specific specs
Get a render device initialized
Get rid of vk rt init
Switch scene buffers to structured buffers and const buffers
Hooking up nodes to group node input now works
Save input connection map for group node
Generate a unique id for connection proxy output
Do the same for output node
Add util for saving/loading hash table but direct value instead of ptr value (annoying, why can't the schema shit just handle hash tables?)
Save input connection for connection proxy items
Rename ianimgroup to igroupanimnode
Auto create group input/output nodes when creating group node
Hook up group node input/output node IDs
Create group node child/parent plugs using their input/output nodes
Fix lobby map being overwritten when map selection is hidden
Load entities straight from Sandbox.Game.dll too
Hammer: don't load any .fgds from addons, we only load core/fgd/s&box.fgd now for remaining C++ entities