22,418 Commits over 1,614 Days - 0.58cph!
Avatar screen subcategories and clothing variations (#626)
Adds Parent to the Clothing GameResource
Clothings with a Parent will be displayed as a variation in a separate panel
Categorizes clothing items by their subcategory
Updated a few items to have subcategories and parents
Show all leaderboards in menu again
Basic support for {map} leaderboard name substitution
Only supported for MapSelect.Official
Clothing parent documentation and description
Style & layout arrangements
Group items by subcategory
Give glasses and necklace a subcategory
Tweaks
List item variations separately
Setup beanie variations
Cleanup
Style tweaks
Move category buttons to sidebar
Group null/empty subcategory names the same
Scroll back to top when changing categories
Subcategorize tattoos, eyebrows, eyelashes
Style tweaks & cleanup
Fixing LOD1 of Tactical Vest
Lower DEFAULT_ASSET_SYNC_COUNT to 8
Added hotload_log engine convar
ModelDoc: Added more info to "not in CONTENT folder" error message
Citizen/clothing: disabled jiggle on hard hat
Test content building with parallelization barriers
PackageSelector: Re-added #local to local packages
Documented BaseItemWidget Actions, added ItemDeselected, ItemsSelectedTo
Remove AddonProperty, replaced usage with PackageSelectorProperty, added defaultSelection to PackageSelector, added placeholder UI to see current selection https://files.facepunch.com/devultj/1b2011b1/devenv_OUH7xVz5AK.mp4
Partial fix for audio breaking when sounds are played really far away
Menu: Open video settings navlink by default
Don't assume a SrgbResourceView is valid if we don't actually have a m_pShaderResourceViewSrgb
Sample default direction if we don't have a lightprobe
Fix VR perspective on directional AO and reflections
Put ShapeManager on SceneWorld rather than in a singleton, fixes flickering with multiple panels
Revert some experiments that shouldn't be in this branch
Update shader files
Add Application.CursorPosition setter (used for locking cursor in tools)
Revert "Move ParticleAttachment to engine, this is something we'll need in tools, not just game"
This reverts commit 1c9df82ec6bb1371f321125a19b915be853016eb.
Add SceneParticles.SetControlPoint for rotation and transform
Move ParticleAttachment to engine, this is something we'll need in tools, not just game
Group null/empty subcategory names the same
Scroll back to top when changing categories
Subcategorize tattoos, eyebrows, eyelashes
Only try to sample from reflection buffer if we have reflections defined at all on the shader
Move category buttons to sidebar
PackageSelector uses Package.FindAsync Api
Added multi-select support to Hammer's Entity Tool selector https://files.facepunch.com/devultj/1b1911b1/sbox_6eFNVff4fk.mp4
Removed GameSelectorDialog, renamed AddonSelectorDialog to PackageSelector
Solves #621
List item variations separately
Setup beanie variations
Cleanup
Style tweaks
Validate AddonSelectorDialog org thumb - we've got 3 panels doing the same thing here, I'll unify them in the next couple of days
Validate organization thumbnails for asset.party selectors
backup material builder incase changing features after material creation doesn't make sense
Add SetRemoteDestination to trigger_teleport
Fixed certain assets showing 2 icons in the browser
AssetType.PrefersIconForThumbnail is now set correctly
Remaining asset type/system docs
AssetSystem & GameData docs
Sort asset references in inspector by type and name
Makes it easier to see what's what. Also reduced vertical whitespace a bit.
Added confirmation popups for deletion of assets/projects
This also lets the user know what exactly will happen to the asset and project files upon removal/deletion.
fixed holes and added LODs to the telegraph pole
Don't save color states, just parse it from variable state
Fixed text panels not updating when string changed
Style & layout arrangements
Group items by subcategory
Give glasses and necklace a subcategory
Tweaks
Clear background image if setting to a missing/invalid image
Add Package.FindAsync (new api) replaces Package.Query
Only compile runtime local addons if they need compiling
Load runtime addon resources on activate (so sounds work etc)
Add active property to button
Don't render game ui in VR, it showing was a regression from render hooks. We can revisit this if we end up doing a separate desktop view for VR games
Added PhysicsBody.SurfaceMaterial, deprecated SetSurface/GetDominantSurface
Obsolete Entity.IsFollowingEntity & FollowedEntity
Documentation & cleanups
Launcher: when adding local game config, append game ident with #local, fixes not loading into the correct games
ScenePortal docs
Entity bone methods throw on out of bounds input
Updated the Project Page to use game selectors for Game Support, Parent Game and Target Game instead of having to manually enter semi-colon separated values
Merge branch 'master' into custom-client-input
Ensure custom selector properties are reset when new project is selected + fix for QWidget error if Update is called at end of async FetchPackages method but widget is no longer valid
Merge branch 'master' into custom-client-input
Menu is allowed to access engine convars - unfucks all the settings menus
Use TryGetMeta instead of being a nob
Merge branch 'master' of github.com:Facepunch/sbox
Merge branch 'master' into custom-client-input
Use TryGetMeta instead of being a nob
Merge branch 'master' of github.com:Facepunch/sbox
Menu is allowed to access engine convars - unfucks all the settings menus
Ensure custom selector properties are reset when new project is selected + fix for QWidget error if Update is called at end of async FetchPackages method but widget is no longer valid
Updated the Project Page to use game selectors for Game Support, Parent Game and Target Game instead of having to manually enter semi-colon separated values
Get default, min and max values of variable desc
Set slider property default and min max values
Set checkbox property default
Editor window and preview widget
Fix material adding duplicate params
Get material description, as json
Build features description for material
Serialize feature descriptions
Features list UI https://files.facepunch.com/layla/1b0911b1/sbox_AQUvbCPcCn.mp4
group combo and label (really should make a radio selection widget for this)
Remove GetKV3MaterialDescription binding
Grab variable descriptions based on feature state
Add group to variable description
Display variables
Decode sort key (todo: do this in C#)
Only show variable groups that have at least one enabled variable, don't create widget for disabled variable
Add state cookie to variable list expanders
Sort variable groups
Create property widgets for variables
Create correct property widgets for variables
Custom tab widget to tab multiple sessions
Try to grab feature state from material
Move material editing to a session class so we can have multiple sessions going at once
Don't add duplicate variable desc to kv3, don't know why these are showing up, probably because I'm not recompiling material on feature change
Bind CompileAndReplaceResource and DiscardInMemoryReplacement
Discard in memory replacement on session close
Create new tab for new sessions
Get active session from current tab page
Change preview material on session change
Allow Material.Create to set feature states
Only skip duplicate variable descs that are disabled (no idea why there are duplicates in the first place)
Recreate new unsaved materials when features change
Don't update material variables through events
Switch tab when adding new session
Allow sessions to be closed
Process in memory compile reload requests after replacing resource
Add dummy material in core for material editor to piggy back off of
Recompile material when features or textures change
Recompile material on session change
Include params in replacement resource
Don't forget checkboxes
Undo passing features to Material.Create, no longer using this for material editor
Restore texture property state when rebuilding variable list
Do the same for color, float and checkbox properties
Build material output so we can save it, check against feature and variable desc for what key values should be output
Allow tab pages to be closeable or not
Save session to file, register asset
Format colors and floats so old material editor can read them
Reset session preview on hotload, fixes preview breaking on hotload
Switch page after on page close callback so we don't stomp material with replacement discard
Only discard replacement if asset isn't being used in another session
Include session name in window title
Fix non closable pages not switching
Add raw output tab
Fix NRE adding new session, keep a copy of material output
Use text edit for output
Hook up menu bar to actions
Menu bar shortcuts
Open file dialog
Create session for opened material
Parse material to get feature and variable states
Parse color states
Add new line after every variable group in output
Remove Material.GetFeaturesState, parse material in tool code instead
Allow modified material to be saved
Do a recompile before saving, resource replacement is getting stomped
Dock the preview, might want to have it fullscreen
ScenePortal docs
Entity bone methods throw on out of bounds input
Launcher: when adding local game config, append game ident with #local, fixes not loading into the correct games
Fix Shape Buffer not being generated and being cleared at wrong moment
Prototype directional AO, fix reflections not showing up on shaders
Send proxy mesh info as proper capsules rather than ellipsoids (which has always been silly), unify debug overlay code for them
implement capsules in shader, encode directionality https://i.imgur.com/RMaTU6Q.png
Implement capsule shape on reflections too
https://i.imgur.com/ZEf0dxa.png
Unify all aoproxy code so it's not a mess all around, makes it easier to add new shape types, add stubs for cylinder aoproxies
Cylinder aoproxy meshes https://i.imgur.com/T36lRDH.png
Dot product with geometric normals to avoid double occlusion on AO, fixes most artifacts
Remove edge artifacting with ambient shadows
https://i.imgur.com/GV8SXq3.png
Misc tweaks and fixes, set default AO distance to 40, better self occlusion filter
Move reflection compositing code to base code, add option to check if high quality reflctions are enabled to shader without a combo
Disable aoproxy caching on models with animgraphs
update shader objects
Cleanup, better do vignietting
Finish directional AO code before cleanup, use lightmap directionality if we are compositing to one
Fix aoproxy shapes of most standard props
Add support for high quality reflections in Complex shader
Add high quality reflection option to complex
Cleanup directional AO, have softer vigniette
Some more prop aoproxy adjustments
Fix flickering on directional AO probes
Readd AOProxy instancing, batch AOProxies by LPV
Increase precision of SDF tracing