18,657 Commits over 1,399 Days - 0.56cph!
Revert "m_nInstanceStepRate not used anywhere get rid"
This reverts commit 512a3827c2d47ee6976ca8b0dfe63cc448fe369d.
Use a callback for izLinearCast so we can override it and do our own
Allow non-static method shortcuts since there seems to be a good chunk of those
Stop feeding shortcut to Options for now
Fix size of Editor Keybinds page
Fix using the wrong widget for non-static shortcuts
Move EditorPreferences.Keybinds over to new [Shortcut] attribute system on each function
Completely remove EditorPreferences.Keybinds
Change name/groups for a few shortcuts
Order categories by name in PageKeybinds
Remove some debug logs
Create Texture Editor and Actiongraph shortcuts
Create ShaderGraph, Hotspot Editor and some more scene shortcuts
Add GameObject/Transform shortcuts and fix static method issues.
Made grid size shortcuts Window type instead of Widget type
Make all the different editors share a few binds (So there's not a Copy,Cut,Paste,Undo,Redo,ect. per-editor)
Make classes with [Shortcut] attribute properly rebindable (used for editortools)
Implement CastRayMultiple, CastShapeMultiple
Shape casts can have a start rotation ( cast rotated box, capsule, etc)
Oops, DrawInstanced was needed !
Created EditorKeybinds.cs with a few starting keybinds
Move Keybinds into EditorPreferences since that makes more sense
Add RegisterShortcuts() function whenever shortcuts are registered and use the EditorPreferences keybind instead of hardcoded string
Added Editor Keybinds page to EditorPreferencesWindow
Subscribe all RegisterShortcut voids to keybinds.update EditorEvent
https://files.facepunch.com/CarsonKompon/2024/July/10_21-46-TautDuck.mp4
Create shortcut for EditorCycleViewMode
Make Keybinds page scrollable, add Reset to Default button, and add Are You Sure popup to Reset button
Use TitleAttribute for keybind names
https://files.facepunch.com/CarsonKompon/2024/July/10_22-23-FakeGourami.png
Add AllowModifiers to KeyBind widget, set to true for Editor Keybinds Page (Allows you to bind CTRL+SHIFT+ALT+Whatever)
Some FileOption binds, but they dont auto-update yet. Will need to find a good way to do that for Option entries
Call keybinds.update EditorEvent on Reset to Default
Created EditorShortcuts.cs to eventually replace EditorPreferences.Keybinds
Need to call this after EditorTypeLibrary is created
Register shortcuts elsewhere and remove some option shortcuts
Change default shortcut type
Register shortcuts on hotload
Convert some older shortcuts into the new [Shortcut] attribute
Change shortcut defaults
Update EditorShortcuts to include Identifier and Keys, including method to get current keys from overrides (player defined overrides)
Display [Shortcut] shortcuts in Editor Keybinds page instead of EditorPreferences.Keybinds
EditorShortcuts rebinding actually works now, much more lightweight than prior version
Make user overrides save properly
Get Name and Group properly, allow attributes to override.
Get keys from shortcut name in Option.cs
This doesn't need to be DrawInstanced
Fix loading ui textures not updating when they finish loading
Box casts can optionally have a convex radius (skin) this allows things like player movement to move to end position without the next trace becoming stuck and needing to fuck about
Reset should probably use that local/world toggle too
Added toggle for displaying transforms in local/world space, resolves Facepunch/sbox-issues#5019
Whitelist AggregateException
Get keys from shortcut name in Option.cs
Call keybinds.update EditorEvent on Reset to Default
Created EditorShortcuts.cs to eventually replace EditorPreferences.Keybinds
Need to call this after EditorTypeLibrary is created
Register shortcuts elsewhere and remove some option shortcuts
Change default shortcut type
Register shortcuts on hotload
Convert some older shortcuts into the new [Shortcut] attribute
Change shortcut defaults
Update EditorShortcuts to include Identifier and Keys, including method to get current keys from overrides (player defined overrides)
Display [Shortcut] shortcuts in Editor Keybinds page instead of EditorPreferences.Keybinds
EditorShortcuts rebinding actually works now, much more lightweight than prior version
Make user overrides save properly
Get Name and Group properly, allow attributes to override.
m_nInstanceStepRate not used anywhere get rid
c# managed vertexlayout, create layout automatically
Prevent renaming assets to something mental or illegal or empty (!), resolves Facepunch/sbox-issues#3500
Add Rename to scene hierarchy context menu, tidy the menu a bit
Small improvements
Min. radius set on selecting samples. Improved angular distribution (starting angle now function of screen space position so not constant across screen pixels ). Couple of math ops optimised away.
Shift + click to recursively expand treeview nodes, resolves Facepunch/sbox-issues#5642
Terrain: add flatten sculpt tool (https://files.facepunch.com/tony/1b1111b1/sbox-dev_bCkllHylC8.mp4)
Update how superluminal instrumentation works, avoid allocations, wrong names
Don't render widgets that we can't see (!)
Remove BytePack.ISerializer from Connection for now - need to solve something first
Initial commit for Network Priority for Network Objects. The idea is that you can mark a networked object as Low, Medium or High (default) network priority, this will dictate how frequency updates are sent out about that object.
Compute shaders for Auto Exposure - not yet used
For generating the histogram for auto-exposure as used by tonemapping. These 2 shaders will geenerate the histogram and weighted average. They are not yet used. Currently Valve use occlusion queries and generate it as part of tonemapping.cpp. These shaders may prove better than that system.
Inspector properties: increase context-menu area beyond label text, let control handle copy/pasting to match what's displayed (eg pasting colors from hexcode), exclude quotation marks when copying
Add Graphics.CameraPosition
Make sure SceneCamera is not null in UpdateSceneCameraTransform
BytePack.ISerializer implementation for Connection. Also make sure we clear Connection._mockConnections on ResetEnvironment because I think this dictionary would never clear otherwise. Remove long-time unused net_lerptime ConVar.
Remove publish types, fall back to asset
"display: none" the main menu when we're not using it
Add AllowModifiers to KeyBind widget, set to true for Editor Keybinds Page (Allows you to bind CTRL+SHIFT+ALT+Whatever)
Some FileOption binds, but they dont auto-update yet. Will need to find a good way to do that for Option entries
Create shortcut for EditorCycleViewMode
Make Keybinds page scrollable, add Reset to Default button, and add Are You Sure popup to Reset button
Use TitleAttribute for keybind names
https://files.facepunch.com/CarsonKompon/2024/July/10_22-23-FakeGourami.png
Remove more unused from interface
Created EditorKeybinds.cs with a few starting keybinds
Move Keybinds into EditorPreferences since that makes more sense
Add RegisterShortcuts() function whenever shortcuts are registered and use the EditorPreferences keybind instead of hardcoded string
Added Editor Keybinds page to EditorPreferencesWindow
Subscribe all RegisterShortcut voids to keybinds.update EditorEvent
https://files.facepunch.com/CarsonKompon/2024/July/10_21-46-TautDuck.mp4
ApplyLinearImpulseAtWorldSpace just uses ApplyLinearImpulseAt, same thing
Get rid of all this shit, it's no good
Hulls sweep with a radius
Resolve hit penetration (should add to trace API?)
Trace direction is wrong way around
Panel background rendering optimizations
Do 'external changes detected' prompt for open prefabs too, refresh popup a bit
Grab triangle on base mesh so that it should work for both mesh and heightmap
Use our filtering in cast callbacks
Initial VR scene for main menu
https://files.facepunch.com/alexguthrie/1b2011b1/sbox_pKFaTyqkgq.png
UI: Fix worldpanel depth issues, treat worldpanel roots as layers
Render VR menu at 4k, scale down to fit
Basic VR world input component, menu works properly
https://files.facepunch.com/alexguthrie/1b2511b1/Desktop%202024.06.25%20-%2015.51.37.05.mp4
Line hands up better in VR menu scene
Quick little test map just so I'm not staring at an orange texture
CManagedSceneObject main thread is optional
Remove mainthread enforcement from "safe" internal managed sceneobjects
Make grabbedTextures a thread static
ParticleSpriteRenderer builds verts in render thread