244,561 Commits over 3,898 Days - 2.61cph!
Start drafting out UI navigation with controller, by traversing panels
Refactor so we can switch between panel traversal and virtual cursor based on input
Don't revert back to PanelTraversalSystem if analog is empty
Add basic working virtual cursor using PanelInput.UpdateMouse
Fixed calculation of virtual cursor position
Use stylesheet to style virtual cursor, add ScrollSpeed
Refactor, virtual cursor as its own rootpanel so we don't add a panel to every root panel we access
Disable system if mouse is moving at all
Make VirtualCursorOverlay a razor panel
Update SteamInput manifest to include joystick inputs for Menu action set
Hide mouse cursor while we have controller input active
Support processing any number of root panels, make it work in GameMenu
Scale ControllerInput.GetAnalog by Input.ControllerLookYaw(Pitch)Speed
Scale virtual cursor position movement by delta time, no wonder it felt different on GameMenu
Process inputs in MenuDll
Remove some direct controller access, use Input.AnalogMove/AnalogLook instead
VCS: only tick for panels that want mouse input
VCS: fix is-pressed style
Refactor, add ControllerOverlay, so we can add another overlay for panel traversal selection
Add PanelTraversalOverlay (for lack of a better name)
Work on finding panels from delta, fixed not finding an initial focused panel
Give eligible panels a score and give it some data to score by, focus the lowest scoring panel, also hook up selection and scrolling
Decrease block increment size, can get finer selections (i.e PackageCard modal button)
Fix FindPanelsAt never finding more than 1 panel
Sensor size matches main camera by default
Grouped settings with foldouts
Added 6th optional argument to util.ScreenShake - AirShake
defaults to false
Added SENT_AI:OnTaskFailed and others
Added NPC:GetIdealYaw, NPC:GetArrivalDirection, NPC:SetUnforgettable
Added CNavArea:MarkAsDamaging, CNavArea.IsDamaging
Experimental: input.GetCursorPos returns 0,0 when cursor is not visible
This matches behavior of gui.MousePos()
Added .dem and .vcd to file.Write whitelist
Rework and deduplicate Lua enums
Added COND.* enums
Added render.ComputePixelDiameterOfSphere
SourceTV players are considered bots for player library
Fix npc_rocket_turret spawn position
Merged Pull Requests
* Improvements to DComboBox
* Improvements to MatSelect
Minor adjustments
Fixed Player:SprintEnable not working
Also made Player:SprintEnable accept a bool optionally, and added Player.IsWalking
minor changes
Undo changes to input.GetCursorPos
Causes issues with spawnicon editor, and probably other addons too.
Delete serverplugin_empty.dll
Fixed crashes when accessing out of bounds flex controllers
This fixes crashes when rendering spawnicons of models that have more than 96 flex controllers. Probably fixes other cases as well.
Enable connection reusage for HTTP
Speeds up subsequent requests
render.Push/PopRenderTarget overflow/underflow safeguards
Also made certain render.Push* function overflowing not crash the game outright
Adjust "Failed to find any models for this addon" error
Mention what might be causing the issue
Added OnPlayerLand/OnPlayerJump hooks
Arguments are `Player, number`, where the number is the velocity/impulse of the landing/jump
Should these 2 hooks be combined into 1?
Remove OnPlayerLand hook (OnPlayerHitGround exists)
Fixed a regression with spawnmenu "no models" message
Safeguards against malformed .gma files
New VertexLitGeneric parameters
`$AllowDiffuseModulation` and `$NoTint` - both allow disabling color tint per material
Vector:Mul() now supports VMatrix
Make sure SourceTV bot is treated as bot in game code
Fixes garrysmod-issues/issues/5575
Added navmesh.CreateNavLadder
Arguments are: Vec top, Vec bottom, float width, Vec2D dir, float maxHeightAboveTopArea = 0
Weapon:GetTracerOrigin is now called for 3rd person view as well
LuaMesh.BuildFromTriangles allows modifying the mesh
This is only permitted when the vertex count matches between existing mesh, and the new mesh.
EntityEmitSound blocks CSceneEntity close captions
Added OnCloseCaptionEmit hook
Arguments are:
string soundScript
number duration
bool fromPlayer
string fullText - can be nil if token is not registered
Added gui.AddCaption( text, duration, fromPlayer )
More killicon aliases for physics kills
New Portal NPCs can be duplicated
sound.Play better optional argument handling
New default crosshair + options
Options > Multiplayer > Crosshair Customization
Make 2nd arg actually set the sound position of Global.EmitSound
Also default the 3rd parameter (entityID) to 0.
Remove unintended console message from crosshair panel
Bump gui.OpenURL limit to 2000
Added new optional argument to render.ClearDepth
bool stencil - also clear stencil buffer, defaults to true for backwards compatibility
Do not call GM:EntityRemoved and ENT:OnRemove during full updates
garrysmod-issues/issues/4675
Allow GM:OnPhysgunFreeze to be ran on non vphysics entities
The 2nd argument ( physobj ) will be NULL
world clicker panels FOV adjustment
Now uses view setup FOV, not Player:GetFOV, affects gui.ScreenToVector as well
Fix branch specific compile error
▅▋▇▆▍▇▍█ ▉▍▍▇▋ ▉▅▋█▇
▍ ▄▆▇▅▄▊ ▇▉▊▌▆▉▅ ▊▇ ▉▆▆▉ ▆▆▍▉▋▄▄▊, ▍▇▆ ▇▆ █▋ ▅▊▋▊▇ ▊▉▋▆▊'▆ █▋▋▇▍
▌▉▌▄▋ ▄ ▊▊▄▄▄█▆▇ █▍▄██▋▋▊▍ ▍▊ █▊▍█.▊▆▍▊▇█▌▇█▄▄
▄▅▉▆▊ - ▅▉▍▆ ▇▇ ▇▆▊▆▅▉ ▍▇▆ █▋▅▇▋ ▄▋▌ ▍▉▉▊▇▇▊ ▉▄▊▇▉▍
▋▋▄▇▌▊ - ▍▅▆▆ █▄ ▋▊▇▄▆█ ▉▇▊▄▊▌ ▊▍ ▌▄▊▅▌▉ ▌▇▊▄▄▄▌█▌▋▊
! ▇▄▊▊▋ ▇▉_▌▆▌▅▆▋ ▄▆▊▍▋▍▉▅█, ▍▅▇ ▍▇▍ ▆▉▄█ ▍▇▇▋▄▇▅▊▄▆▊ ▋▋▅▍▍▌▇▍▊
!▍▆█▍▅ █▇▋▄▉▉▊▌▊ ▇▇▋ █▊▊▊ ▆█▌▋▅█▅▄, ▇▅▌ ▊▇▉▋▌ █▊ ▉▍█▉ ▉▊▄▍▄▌
▉▅▇▋▇▄▊▌ ▊▅▍▄▅
▋▊█▋▄█.▅▊▉▇▌ ▄▊▆ ▋▍▅▋▆▇▇ █▆▋▅ ▆▆▌ ▍▆▆▊▉▌▋▌ ▄▍▄█▍▅ ▄▋▉▊▋▌
▍▌██▊▊▋ ▆█_▋▉▋▅▆▋ ▆▄▅▉▋ █▌▌▆▊▌ ▇▆██▆▉▉▇ ▌▄▌ ▌▍▌▅██▆
!█▆▆▋█▋▋▇▄ ▍▇▅▍▆▋_▌▇▉▋ ▍█▍▅▋█ ▊█ ▆▆▋▊ ▄█▊
!▋█▉▊ ▋▊▋▍█▊▄▋▄ ▊▄▄▉▉_▋█▋█▅█▇▋_▇█▄▇▆
!▇▋▇█▇ ▇▊▋▄▆▉ ▉▉▋▊▊▌▅ ▅▅▄▆ ▍▌▇▇▄▇▍ ▇▇▌▄▇▊▄▊▅▋▋▌
WIP invokcation cleanup using Expressions
▄▅▍▌▄ ▉▄█▆▆█ ▌▇█▋▉▊▅ ▌▆▍▌ ▋▇█▅▌▇▆ ▊▌▊▌▇▌▅▊▆▍▄█
Leaderboard backup, run #6201
CollectibleEntity and RandomItemDispenser can flag individual items as excluded for the tutorial.
Disable hemp seeds, worms and grubs for Hemp, when in the tutorial.
PackageLoader rewrite
* GameMenu games can have a Main method instead of a menu
* Decoupled TypeLibrary and assembly loading
* PackageLoader is responsible for loading packages into a LoadContext
* PackageLoader.Enroller is responsible for enrolling loaded assemblies into TypeLibrary etc
* A PackageLoader can have multiple Enrollers (needed for Editor)
* Round the chunks in Graphics.Draw so when drawing Triangles they don't end up hanging over the chunk boundary
* Add Draw.SolidTriangle
Change this Info to a Trace
further clean up TypeLibrary
Enable fast hotload by default
Rename PackageLoader2 to PackageLoader
Move GameAssemblyManager to clientdll
Refactor static GameAssemblyManager to instance NetworkedAssemblyManager
ClientDll uses PackageLoader
Remove all the now unused junk from TypeLibrary
Check to see if an asset gets deleted from explorer - and mark it as deleted in the asset system
Update asset browser list on content.changed
Fix tooltips not being visible in the main menu, removed unused main menu style
Minor edit to SceneLoader; formatting
Gave SceneLoader some extra checks and scenes, plus keyboard shortcuts. Removed "Open Bootstrap Scene" from the Rust Editor menu and moved it to the new Scenes menu.
blaze upgrade
flammable poison upgrade
starter pack upgrade
sticking bomb upgrade
Show the number of cubemaps built
C# entity definitions for env_cubemap_box (do box first, env_cubemap is the same but with a sphere influence)
Remove env_cubemap_box from fgd
Network tables for env_cubemap_box
Create SceneCubemap from entity properties
Add indoor_outdoor_level (priority)
Add internal BakeResourceAttribute until we can phase out tool objects and the bake resource shit
Experiment with rendering cubemaps for SceneCubemaps
Set renderToCubemap and environmentMaps pipeline attributes from camera attributes
CCameraRenderer::RenderToTexture uses msaa value from attributes
Fix dstStride in GetPixels
Move the important parts of ggxcubemapblurhelper to rendertools until we can reasonably do this in C#
After source cubemap is created, go through render tools to mip it to the cubemap array
Add function to render tools to copy texture to cubemap slice
Calculate radiance SH from cubemap source, reads texture pixels until we can move this to compute shader
Get the size of texture when calculating SH, don't assume 256
Bump up cubemap camera zfar
Create env map constant buffer
SceneCubemap sets box projection and influence radius based on projection mode
C# env_cubemap, mostly the same as env_cubemap_box, use a base cubemap entity
Remove env_cubemap from fgd
Remove render_depth_map and always_check_depth, I don't see these being set or used in any meaningful way
Load cubemap_feathering
Rip out WorldRenderer/EnvironmentMapCacheSize, we didn't have it enabled and it's awful anyway
Remove UploadToCubemapArray
Remove the cube cross stuff on cubemap builder, just to make things more clear
Remove ggx_cubemap_blur_accumulation_pass_count - unused
Remove depthmaptexture
Remove customcubemaptexture bool
Fix flipping when copying texture with shaders
Flip Y when copying rendered view to cubemap
Use the same rendering code as cubemap build system to narrow down differences
update convolve_environment_map to latest
Remove build cubemaps game system, don't need you anymore
Remove hammer external helper
Move cubemap building to scenesystem
Don't need to include these
Queue scene object update job for calculating radiance SH
Don't use RGBA32323232F unnecessarily
Increase zfar
Create scenecubemap even if the entity doesn't have a texture, they're gonna be built on map load
Remove "build cubemaps on load" hammer shite
Remove minimap shit while I'm at it
env_light_probe_volume in C#
default values
If we create light probe from managed, create a debug grid object for it
Add more voxel size choices
C# env_combined_light_probe_volume, this is an ugly copy paste job because of it trying to be 2 entities in one, wont matter when we get rid of them
Delete lights.fgd, nothing left in here now
Use black cube for envmap if we try to calculate SH on error texture
Remove ReloadTexture from scene cubemap, no longer needed
Delete native CEnvCubemap and CEnvCubemapBox
Delete native CEnvCombinedLightProbeVolume and CEnvLightProbeVolume
Fix basic_setup.vmap properties of combined light probe
Move basecubemap toolobject from game to mapdoclib
Delete env_cubemap
Remove base light probe usage from light query game system, this whole system will need to be remade anyway
Move base light probe from game to mapdoclib
Delete env_lightprobevolume
Remove anything unused from cubemap.h
Use EnvironmentMapFaceSize when rendering cubemaps to play it safe
Remove cubemapfaceinfo
Make voxel_size a float instead of enum to avoid parsing errors
Fix handshake and array index not working, entity properties can't be internal!
Move cubemap building from scenesystem to sceneutils, makes more sense
Don't build cubemaps when cubemap texture is user provided
Add min max for voxel_size
Build cubemaps in rendering world session frame boundary until we find a better place for it
Print timings for building cubemaps
Don't show the tutorial highlight in the crafting menu if the item is in the crafting queue
Refactored the crafting queue UI component to reduce allocations
Leaderboard backup, run #6197
Print timings for building cubemaps
Build cubemaps in rendering world session frame boundary until we find a better place for it
Add min max for voxel_size
Don't build cubemaps when cubemap texture is user provided
Fix events not removing properly
Fix exception when finishing tutorial
Don't show bag count after placing a sleeping bag
Various typo fixes
Serverdll uses PackageLoader2, delete PackageLoader
Move cubemap building from scenesystem to sceneutils, makes more sense
Merge HomingMissileLauncher -> Main
Added scene loader script - top menu to quickly load specific editor scene files
Quick compile fix, needs a proper fix
Scene loader script - adds menu to quickly load scene files
Added auto panel closer to start of tutorial panel
Added debug.starttutorial
Merge HomingMissileLauncher -> Main. Adds ADS.
Merge HomingMissileLauncher/ADS -> HomingMissileLauncher
Fixed visual UI swap time
Fixed hunt chicken objective not completing
Shrunk crosshair UI to to better cover the actual lockable area
Homing launcher UI functionality