20,894 Commits over 1,522 Days - 0.57cph!
Remove engine break commands code
Documentation and other minor code adjustments
Prop gibs now inherit material group
Delete engine break commands, and replace some useful ones with c# implementations
Merge branch 'master' of sbox
ModelDoc: Give the user a chance to copy a model into an addon dir if they try to import a model from outside an addon dir
Sandbox.Tools gets addons compiled from Sandbox.Engine - Hammer uses these instead of recompiling them itself plus they're avaliable for other tools to reflect on too
Fix caret position on newline characters
Previous fix missed an edge case and did not work with emojis, hope this way isn't shit
Fix up/down arrow caret navigation on multiline inputs
Fix CheckBox not pulling package meta bool binds
Fix map & resource path lists shrinking in addon editor
Fix out of range exception
Adjust input settings layout to scroll
Input settings style tweaks
Remake multi select combo box for enum flags in pure C# (needs styling)
Add multi select combo box, use it for enum flags in property editor https://files.facepunch.com/layla/1b0511b1/sbox-dev_bxdOgE3sui.png
Start work on new base shader, remove old emissive combos
Some WIP shit from a while ago on getting editor window up to parity, pushing for @cr4yz
Obsolete [Spawnflags] it's confusing for mappers and hacky to implement - you should use a property of an enum with [Flags] on it
Removed Spawnflags from BaseTrigger, the only flags that did anything were Clients|Everything - everything should just work with tags instead.
FuncPhysbox spawnflags turned into a flags enum property instead (old maps will still work just fine)
Get rid of FGDType( "flags" ) usages, we just derive this automatically now from [System.Flags]
Street name - two variations of street name sign designs
Merge branch 'master' of sbox
Animgraph: Hook up num frames, frame rate and duration for clip properties
Animgraph: Clip drag drop creates single frame anim node for anims with 1 frame
Animgraph: Handle selection changed in anim clip widget
PathPlatformEntity properly resets its LocalVelocity
Also warp the platform to the first node on spawn, and prevent infinite velocities
Move IModelBreakCommand stuff to a separate file
ent_fire tells you when it failed to find any entities to fire an input on
C# GameData.LoadConfig should be synchronous so Hammer blocks until everything is loaded - actual loading from each dll is still done in parallel though
Enum properties create and populate their backing native GDIVItemSet
New: Enums marked with [Flags] now get treated as flags properly in Hammer now
Restore Hammer.CustomHeaderAttribute but obsolete it so it doesn't break older addons
Animgraph: Add option for default network mode for newly created nodes https://files.facepunch.com/layla/1b0411b1/sbox-dev_jelIpRdlUW.png
Animgraph: Add animation clips window to easily drag in animation nodes https://files.facepunch.com/layla/1b0411b1/432432.mp4
Actually ship new compiler dll
Working test gpu raytracing scene
GameData (.fgd) is now managed, game entities are now loaded at runtime from their type information instead of from .fgd files. This also runs both ways and let's us access all GameData from C#.
* Managed classes for GameData, can be loaded directly from LocalAddon or RemotePackage.
* Map compiler doesn't load .fgds, make Hammer serialize g_pGameData to KV3 and load it in the map compiler
* Clean up native GameData code (fgdlib) making it a shit load less confusing to work with, name globals, classes, vars.. properly, delete legacy code, document stuff etc.
* Copy native GameData (loaded from core .fgd) back to C# GameData for usage in tools addon
* [Hammer] attributes rewritten to not use StringBuilder, pass dictionary / list references and fill those up, obsolete the old tihngs
* Remove FGDWriter for game entities, no longer need to serialize it every game start
* Remove .fgds of anything that has a managed type, remove legacy syntax on remaining .fgd files (use KV3 so we can remove a lot of code)
Give all entities nice [Display, Category, Icon] attributes
Glue Hammer Entity tool UI to C#, can use entities for games straight from here, searchable, show what game it's from etc. needs a bit more work to not look shit though
read/write files properly you twat
Set CGameDataClass parent properly when reading from KV3
load our serialized gamedata here in the map compiler too
Begin raytracing, Update dx11 shader compiler
Accidentally removed ripple collision, let's put it back
Merge branch 'master' of sbox
Merge branch 'master' of sbox
Tweak ripplecompute, clamp collision and ripple size
Make map compiler load GameData from temp KV3 written by Hammer, instead of trying to collect and load fgds again, especially since we're not using fgds for managed stuff.
Entity tool searchable entities and toggle to display ent_class_names
give a shit load of entities nice [Display] names
Make paths and path nodes work with new hammer entity shit
Entity selector should only show entities
Use hex, it's nicer to read than dec for masks
Initial point light ray finding
Begin light importance tracing
Make compute dispatch thread division optional
Pass textures to compute shader
Pass materials & instances
Move push buffer routine to a dynamic combo
Ensure our random samples are valid & passed correctly
Set our global rt params as a parent to our local attributes
Begin execution of rt
Compute is now dispatched & isolated from the game
initial test shader case for push constants
Clothing: updated all LOD switch distances to 0/10/20/40
Clothing: updated LODs on Jeans
Citizen: added bone culling (with prefabs) to LOD 2+3
Citizen: fixed vertex normal seams on LOD3
Fix mistake when converting degree to radian for set float particle function
Add renderdoc_nextframe too
attach_renderdoc & detatch_renderdoc to let renderdoc capture vrad3 gpu passes