22,418 Commits over 1,614 Days - 0.58cph!
Final code/doc cleanup, fix Controller.All returning disconnected ones
Fixed collisions on metal beam tileset model
Added 16 width beam for metal beam tileset
Updated metal beam tile set with 16 width and better corners
Addon remove option works
Can change active status
filesystem.RemoveSearchPaths accepts a wildcard pattern
Remove mod_* searchpaths when adding addon paths
Actually add new addons
Native reads new .addon format, can add addons without restarting
Be more conservative on quality-related optimizations now that we have a good enough speedup on reflections
Add Reflection as a supported rendermode in gameinfo.gi
Add ToMaterialMultiblend helper
Add multiblend to high_quality_reflections shader
Composite reflections with new multipass reflection buffer rather than tracing on the shader itself, fix stuff on the pipeline
Add multiline text entry to ui tests
Fix incorrect carat position when backspacing in a TextEntry
Updated pipe material to have correct surface properties
Addition models for tileset
Pipe_a Tileset https://files.facepunch.com/louie/1b1111b1/sbox_KUq94DR0F5.png
Remove env_spark, point_tesla, logic_lineto, physics_cannister, point_gamestats_counter from the base.fgd
Fix description of ent_path_platform.StartBackwards
Added Rect corner accessors
Force scrollarea background to transparent
Addon list
Add Input.GetAnalog( InputAnalog ) returns a Vector2 of either Move, Look or Trigger - can be used serverside too.
Strip XInput / Joystick methods completely from InputSystem, remove workarounds / hacks around it since we just do it all in C# now
Add Input.GetGlyph( InputAnalog ) - split InputAnalog.Trigger into LeftTrigger, RightTrigger so you can get the glyphs
Add action manifest file with PS4 / Xbox One configs ( other controllers should derive nicely from these )
Very simple controller settings button in main menu to open bindings
Don't cache invalid handles in the Controller API, seems to be a few ms where handles are invalid when a controller is plugged in.
Server addon loading
Rename AddonConf to LocalAddon
Clean up logging
Add a repeat counter on console message repeat
Update Steamworks SDK 1.53
Resolve deprecated SteamNetworkingSockets usage
Controller API in Sandbox.Engine wrapping Steam Input internally with proper async glyph loading
Use Controller API for Input, all InputButton are bindable from Steam Input.
New methods:
* Input.UsingController - true if the last input from a user was from a controller (accessible serverside too)
* Input.GetGlyph( InputButton ) - Get a controller-specific glyph texture for the bound InputButton ( if using controller )
* Input.GetButtonOrigin( InputButton ) - Get context specific button, e.g InputButton.Jump would return 'SPACE' or 'A Button'
InputButton: Obsolete a bunch of unused/unbound buttons that made no sense
Remove old Steam Controller initialization from C++ engine and disable XInput
Remove dead or legacy code / tidy InputSystem/UserCmd
Addon Config, Solution Folders
DataModel tooltip, statustip, selection
TextEdit.GetAnchorAt
Clickable objects in console
Asset List filtering
Start organising for addon manager
Aircon - adjusted mount so its easier to place on walls in hammer
Merge branch 'master' of sbox
Remove redundant overload and add extra documentation
Allow choices to be optional for SpeechRecognition
Simple Speech API (Limited) (#144)
* Very simple listen method purely with dictation or listen method with a set of possible choices
Co-authored-by: Chloe Marcec <dmarcecguzman@gmail.com>
Allow specifying HTTP headers in WebSocket.Connect (some are not allowed though)
Set appropriate User-Agent and Origin headers (not customizable)
Added Paint.AntiAliasing
Add Widget.ToolTip, Widget.StatusTip
FloatEditor can have an icon instead
Add Angles Editor
Add Paint.SetBrush( image )
Color editor
Select server entity, if available
Split classes into files
Allow getting DisplayInfo to type to not inherit
Inspector navbar
Add Option.Enabled
Inspector back/forward with history
PropertySheet header wip
Add mp4 support to CMovieRecorder so we have a working mp4 recorder that we can speed up for runtime use
Iron Fences - revised post design and improved texture resolution
iron fence - roughness tweak for paint
Move sliders from menu to base
Make CoC Smoother for shader
Initial dev camera DOF UI
Remove old DOF stuff from devcam
Add the ability to use old CoC
Update entity list when entity parent changes
Cleanup var names
Correct focal point for old coc
Merge pull request #143 from Facepunch/dof-settin-devcam
DOF Settings menu with devcam.
Hold TAB:
https://files.facepunch.com/ognik/1b0711b1/2022-01-21_02-16-6a51e513-aa5a-4419-a390-0c91b867974e-ZdXU8wWx.png
Disable videomode settings when in tools as it's handled by the widget (prevents user getting into an infinitely tiling window state)
Fixed weird ghosting on DOF edge
If in full screen tools mode and open the console, disable full screen
Added console command "tcmd", which can be used to run events in tools realm
Added tool event commands editor.fulltoggle, editor.fulloff, editor.fullon
Bind f3 "tcmd editor.fulltoggle"
Add Input.GetBindingForButton( string buttonName )
Pressing F keys in editor will run those binds in game, even if the game doesn't have direct focus
Removed broken/ fixed Core particles
Removed old test maps from /core
Updated tags for particles
Cleaned up explosion particle
Metal Railing Tileset https://files.facepunch.com/louie/1b0711b1/sbox_JRSGuE8OgJ.png
Addition models for railing tileset
Initial SDF tracing optimizations until multipass rewrite
Fix DoF on AMD
Allow specifying root namespace
Refactoring
Expose the ModelEntity's Model as a property
Moved Model, Material, Texture into Engine.dll
Remove unused RouteDamageToNative
ModelProperty placeholder
Chop off a pixel when mp4 recording is an odd size so any size can be recorded
Aircon - aircon, gibs and mount lod0
Organize Qt defs
Bind pixmap
Create IAsset.def
Create IAssetPreviewSystem.def
Create IAssetSystem.def
Add Paint.Draw( rect, pixmap )
Add Utility.GetAssetThumb( path )
ModelProperty draws thumbnail
AssetSystem hooks
Better fix for AMD driver bug on DoF, wrap around problematic instruction
Fix startup assert related to duplicate QT layout
Fixed start up exception due to a malformed comment
Remove glass hack, try and put quad basis into entity key values instead
Merge pull request #145 from Facepunch/root-namespace
Allow specifying root namespace in the .addon file
```
{
"sharedassets": "*.*",
"type": "game",
"ident": "ognik.spectest",
"rootnamespace": "Poop"
}
```
https://files.facepunch.com/ognik/1b0811b1/2022-01-18_36-07-333a9692-b006-45ae-9291-ba9d4a2e701b-EM3ZWSxJ.png
Icon Attribute, MaterialIcon enum
MaterialIcon lookup fix
ListView control
Add Vector3.Clamp
Add min max variant to ClampLength
Asset Listing tests
Fix Vector3.ClampLength( float minLength, float maxLength )
Fix menu clipping with maps & local games
Merge pull request #138 from Facepunch/websocket-headers
Allow specifying HTTP headers in WebSocket.Connect
Merge branch 'master' into speech
Fix warnings
Fix titlebar dragging
Merge branch 'master' into speech
Render reflections in quarter res reflection layer, pass it to pipeline
Add new sceneobject flags and flag objects to be rendered in reflection buffer
Allow specifying HTTP headers in WebSocket.Connect (some are not allowed though)
Set appropriate User-Agent and Origin headers (not customizable)
Merge pull request #138 from Facepunch/websocket-headers
Allow specifying HTTP headers in WebSocket.Connect
Fix menu clipping with maps & local games
Fix Vector3.ClampLength( float minLength, float maxLength )
Introduce [this] flag to native bindings
Move RenderContextPtr to managed
Add min max variant to ClampLength
MaterialIcon lookup fix
ListView control
SrgbGammaToLinear for color, SetRenderViewTarget,
Initial exposure of scratch render targets
Mark PipelineRenderTargetInfo fields as public
HighPrecisionLightingOffset
Begin abstraction of handles, add CRenderAttributes.GetRenderViewTarget
Take the first few steps into the pipeline
Icon Attribute, MaterialIcon enum
Allow specifying root namespace
Merge pull request #145 from Facepunch/root-namespace
Allow specifying root namespace in the .addon file
```
{
"sharedassets": "*.*",
"type": "game",
"ident": "ognik.spectest",
"rootnamespace": "Poop"
}
```
https://files.facepunch.com/ognik/1b0811b1/2022-01-18_36-07-333a9692-b006-45ae-9291-ba9d4a2e701b-EM3ZWSxJ.png
Remove glass hack, try and put quad basis into entity key values instead
Fix startup assert related to duplicate QT layout
Fixed start up exception due to a malformed comment
Better fix for AMD driver bug on DoF, wrap around problematic instruction
Organize Qt defs
Bind pixmap
Create IAsset.def
Create IAssetPreviewSystem.def
Create IAssetSystem.def
Add Paint.Draw( rect, pixmap )
Add Utility.GetAssetThumb( path )
ModelProperty draws thumbnail
Aircon - aircon, gibs and mount lod0
Chop off a pixel when mp4 recording is an odd size so any size can be recorded
Refactoring
Expose the ModelEntity's Model as a property
Moved Model, Material, Texture into Engine.dll
Remove unused RouteDamageToNative
ModelProperty placeholder
Allow specifying root namespace