11,168 Commits over 1,308 Days - 0.36cph!
Add Preferences class with sensitivity and fov
Input uses sensitivity preference
CharacterController uses SceneTrace, added GroundObject, GroundCollider, TraceDirection( dir ), added auto IgnoreGameObjectHierarchy
CharacterControllerHelper uses SceneTrace
Link to new documentation on the welcome screen
Fix CitizenAnimationHelper NRE's
Handle func_brush creation
Handle prop_physics etc
Fix and tidy up terrain data serialization
Set SceneObject shadow casting flag before setting model / transform so we don't need to update the object again
Re-plug in speech synthesizer play return
Framing a GameObject switches to SceneView
Add GameObjectFlags.Deserializing when deserializing
Fix performance hit by setting SceneObject properties unnecessarily
Only draw envmap bbox when selected
Scene.GetAllComponents<T> can find interfaces
Use GetAllComponents where we were doing recursive ActiveScene.Components.GetAll
Removed SceneObject.Angles (Rotation works exactly the same)
Don't render game view when not visible (fixed)
Clear QPixmap on create so it's not full of uninitialized data
Add InitializeFromLegacy for SkyBox2D
Add InitializeFromLegacy for VolumetricFogVolume
Add InitializeFromLegacy for EnvmapProbe
Handle env_combined_light_probe_volume
Guard unnessecary transform change in managed instead of native
Fix build failing, can't access TerrainData cref in sandbox.engine
Only set body group defaults on model change when sceneobject exists so it doesn't get reset on deserialize
Compress TerrainData heightmap/controlmap data with deflate, simple rle is probably best
Shadergraph: Transform Normal can output in tangent or world space (default is tangent to match material output)
Don't save the file 9 times everytime in Asset.SaveToDisk
Store TerrainData in a versioned gameresource with custom serialization, so we can reuse it in multiple scenes and not have absurd file sizes
If the collider is static, make the rigidbody static, fixes colliders trying to add keyframed body twice
Notify transform change when changing parent #4386
GetAuthToken returns string without quotes
Fixes sbox-issues/issues/4381
UI: Apply `image-rendering` mode to masks
Smaller PackageCard
Add Maps List
Fix hitbox GameObject weirdness
Don't trim Label content
Add Button.Disabled
Delete FormGroup.razor
Clean CreateGameModal (refactoring to Launcher)
Add Launcher to project Launch mode
Add support for `white-space: pre;`
Fixes sbox-issues/issues/4345, can see this being useful for rich text,
syntax highlighting, etc.
VR: when saving off the HMD matrix, use the one we get directly from openvr - don't do any processing or bullshit
2D Skybox has inifnite bounds too
When a map is re-compiled from Hammer reload any MapInstance components to reflect the changes
Meant to upload spritecard not skin
ToolsVisHandleTransmissiveLighting just takes two params now
Move UpdateAmbientOcclusionProxy from SceneObject_PostFlagsUpdate, was causing asserts
Don't change SceneObject transform if it didn't change
Don't render GameView when it's not visible (in editor)
Update citizen with per-vertex curvature and update materials to match new shader changes
https://i.imgur.com/Dt9X3Vv.mp4
Put CubemapFog and Tonemapping in Post Processing category
Menu close the game properly
Add Game.Close() - properly clears launch params
Fixed not loading the startup scene fallback when loading a project
Only mount projects in editor mode
Fix not always finding the map from a map package
Fix StartupResources being filled with duplicates
Show Launch With Map.. option
Use map launch startup scene
Fixed decals projecting down instead of forward
Can use HideInEditor to hide components in component selector
Fixed play toggle not working while focused on the game
You'll probably need to bind this manually, so if it still doesn't work for you, type "bind F5 play_toggle" in console
MenuPanel.Open oipens in the right place
Start using webpanel for modals
Game doesn't try to put cursor into UI mode if the game isn't playing
Update SceneCamera from Component as part of the render
Fix map loading stripping off path
Reduce shader compile spam (add -robot)
MapCollider's physics body will resolve to component
Fix NRE in scene trace filter
Model renderer resets body groups to models default mesh group mask on model change
Fix directional lights dissapearing after going away a wee bit from origin, set up a bounding box that's big enough to enclose the whole universe
Don't try to normalize a black texel for hue/saturation shift on baked light cookies, fixes NaN when using cookies on baked lights
CSceneSunLightObject doesnt exist anymore
Add transmission debug view
Fix subsurface scattering shadowing, let transmissive mask be computed at lighting level, unify transmissive terms from skin and whatever else, should fix transmission in non-shadowd lights as well
https://i.imgur.com/3h3yvhH.png
Update skin shader
Add GameObject.IsRoot, GameObject.Root
Simulate UI in main tick, rather than during output
Game project can set MapStartupScene
Add MapInstance.OnMapLoaded
Don't close previous map until new one is downloaded and ready
Add Scene.Directory.FindByName
Add a bunch of helper ActionGraph components
https://files.facepunch.com/ziks/1b0311b1/sbox-dev_jQKi0PFKho.png
When we dispose of a SceneCamera, queue the native volumetric fog to be disposed of at frame end since a render view with it is likely already queued
GameObject flags for "loading" and "error"
Add Range to some post processing
Show load/error status in GameObject tree