256,321 Commits over 4,018 Days - 2.66cph!

37 Days Ago
Fixed StateLayerController never cancelling its FadeOutLayer invokes, causing client performance issue with moving horses
37 Days Ago
Some description tweaks
37 Days Ago
Siege weapon item descriptions
37 Days Ago
Catapult default pose set to idle, fixes the noticeable change when spawning them
37 Days Ago
Galloping speed bonus when on road
37 Days Ago
Revert "Bindless lightmaps/Lightmap Combo Removal (#1765)" This reverts commit 1fdcdeab689851f1093853faa8d8b4d6041d63f7. # Conflicts: # game/addons/base/Assets/postprocess/ObjectHighlight/objecthighlight.shader_c # game/addons/base/Assets/shaders/atmosphere_sky.shader_c # game/addons/base/Assets/shaders/blendable.shader_c # game/addons/base/Assets/shaders/foliage.shader_c # game/addons/base/Assets/shaders/fur.shader_c # game/addons/base/Assets/shaders/gizmo/gizmo_grid.shader_c # game/addons/base/Assets/shaders/gizmo/gizmo_line.shader_c # game/addons/base/Assets/shaders/glass.shader_c # game/addons/base/Assets/shaders/line.shader_c # game/addons/base/Assets/shaders/lpv_debug.shader_c # game/addons/base/Assets/shaders/sprite.shader_c # game/addons/base/Assets/shaders/terrain.shader_c # game/addons/base/Assets/shaders/terrain_brush.shader_c # game/addons/base/Assets/shaders/terrain_preview.shader_c # game/addons/base/Assets/shaders/tiled_light_culling_cs.shader_c # game/addons/base/Assets/shaders/ui_backdropfilter.shader_c # game/addons/base/Assets/shaders/ui_basic.shader_c # game/addons/base/Assets/shaders/ui_borderwrap.shader_c # game/addons/base/Assets/shaders/ui_cssbox.shader_c # game/addons/base/Assets/shaders/ui_cssshadow.shader_c # game/addons/base/Assets/shaders/ui_dropshadow.shader_c # game/addons/base/Assets/shaders/ui_filter.shader_c # game/addons/base/Assets/shaders/ui_text.shader_c # game/addons/base/Assets/shaders/vertex_color.shader_c # game/addons/base/Assets/shaders/water.shader_c # game/core/shaders/black_unlit.shader_c # game/core/shaders/cables.shader_c # game/core/shaders/complex.shader_c # game/core/shaders/complex_reflections.shader_c # game/core/shaders/cs_volumetric_fog.shader_c # game/core/shaders/debug_wireframe_2d.shader_c # game/core/shaders/decal.shader_c # game/core/shaders/depth_only.shader_c # game/core/shaders/eyeball.shader_c # game/core/shaders/generic.shader_c # game/core/shaders/hair.shader_c # game/core/shaders/post_process.shader_c # game/core/shaders/projected_decals.shader_c # game/core/shaders/projected_sheet_decals.shader_c # game/core/shaders/simple.shader_c # game/core/shaders/skin.shader_c # game/core/shaders/sky.shader_c # game/core/shaders/spritecard.shader_c # game/core/shaders/static_overlay.shader_c # game/core/shaders/tools_shading_complexity.shader_c # game/core/shaders/tools_solid.shader_c # game/core/shaders/tools_visualize_collision_mesh.shader_c # game/core/shaders/tools_wireframe.shader_c # game/core/shaders/ui.shader_c # game/core/shaders/visualize_cloth.shader_c # game/core/shaders/visualize_nav.shader_c # game/core/shaders/visualize_physics.shader_c # game/core/shaders/vr_tools_shading_complexity.shader_c Build shaders If we have any command line arguments from the Steam client (sbox.game -rungame), parse it via ISteamApps.GetLaunchCommandLine Expose Application.ShutdownUnitTest() Throws if not currently running a unit test Make sure it doesn't run in headless (errors out on dedicated server) Some tidy up - data table ReadFilter instead of other method, reset delta snapshot cache on owner change and after network refresh is received Add Simulate Packet Loss alongside Simulate Lag in editor network options - it's working for simulating outgoing lost packets from the host right now VR: Remove obsolete controller checking bools that nobody's using VR: Add IsHandTracked bool to VRController, update fpxr to 5cf7ff24f5b157166102c8e4898bb84b4accb952 VR: Add MotionRange to VRController.GetJoints, update fpxr to 8822f0461709fbd2eda8fe004d51af79d47e6aa9 e.g. ```csharp Input.VR.LeftHand.GetJoints( MotionRange.Hand ); // default Input.VR.LeftHand.GetJoints( MotionRange.Controller ); // tries to wrap hands around the controller ``` VR: Better controller interactions in menu, move panel to a more comfortable height Reapply "Bindless lightmaps/Lightmap Combo Removal (#1765)" This reverts commit de7b93d17c7a036a567347794ca51163132ef42a. Reapply BATCH_FLAGS_CONTROLLING_COMBO_CHANGES for legacy shaders, accidentally removed binding lightmap for legacy shaders Initialize vertex output of lightmap uv when lightmapping is disabled Update drivers with bindless lightmaps & amd fix Humans/animgraph: added Sprint_NW & Sprint_NE Don't accept "game" command while Application.IsEditor Compute Shader Skinning (#1786) Calculate skinning in compute shader instead of vertex shader Compile shaders Can now right click on a Shader to "Create Material" from it. https://files.facepunch.com/CarsonKompon/2025/January/24_17-29-EmptyPony.png Fix typo in MaterialMenu add octohedral_encoding.fxc include Forward+ Decals (#1606) GPU driven tile culled decals that modify their surfaces PBR properties. No additional draw calls for any decals. * PBR modification: Albedo, Normal, Roughness, Metal, AO * Works with transparent surfaces as it's not projecting based on depth * Color Tinting + Opacity * Angle attenuation * Automatic sort order + override * Future compataibility with extra data flags to add 100 more things * Decal::Apply( ... ) API Make shaders compile with Vulkan 1.2, allows for wave ops instructions used in new SSR, etc Microsoft/DirectXShaderCompiler/wiki/Wave-Intrinsics Bitch when variables are uninitialized in HLSL, can cause all sorts of weird undefined behavior in certain drivers Fix warnings on all shaders, remove D_EYE_WHITE (bullshit?) Avoid sampling diffuse cubemap for fog at lod0 to not have fireflies like in Eagle One Rain Demo Disable compute skinning temporarily while descriptor set crash is being debugged Mark used resources in buffered descriptor set a few frames in advance, they're being deleted while still used Texture Generators (#1779) * Add ResourceGenerator * Add ResourceGeneratorContext * Add TextureGenerator * Add Bitmap * Add Sandbox.Utility.ForAsync * Add IPopupEditor<T>, EditorUtility.OpenControlSheet looks for this interface when creating a popup * Rename ControlSheetPopup to PopupEditor, * Add Color.Rgba16 (half based color) * Managed can override compiling of any resource * Add Texture.GetBitmap * Add transient filesystem in editor * Add Texture.IsError * Add Margin.IsNearlyZero * Fix asset picker ignoring AdditionalTypes * Add Widget.GetDescendants<T> * Add MainThread.Wait() * Expose TypeDescription.Order Fix Json exception when compiling texture Fix NRE in CreateBoneObjects Add VTexWriter - clean up the texture compile process In FloatBitMap_t::Pixel(, clamp the sample Allow non power of 2 textures in native compiletexture Update stb_dxt.h Add Bitmap.IsOpaque() Don't use stb for dx5 it's shit Automatically work out texture compression format Merge branch 'master' into json-free-clone2
37 Days Ago
Add VTexWriter - clean up the texture compile process In FloatBitMap_t::Pixel(, clamp the sample Allow non power of 2 textures in native compiletexture Update stb_dxt.h Add Bitmap.IsOpaque() Don't use stb for dx5 it's shit Automatically work out texture compression format
37 Days Ago
Firing the catapult will block the push interaction for 2 seconds
37 Days Ago
Can't feed swimming horses
37 Days Ago
merge from primitive
37 Days Ago
GetCurrentIngredientProgressAmount NRE fix for client ahead of the server
37 Days Ago
Fix Json exception when compiling texture Fix NRE in CreateBoneObjects
37 Days Ago
Med ak item setup
37 Days Ago
Don't attempt to auto equip bags and shields when taking from weapon racks
37 Days Ago
Texture Generators (#1779) * Add ResourceGenerator * Add ResourceGeneratorContext * Add TextureGenerator * Add Bitmap * Add Sandbox.Utility.ForAsync * Add IPopupEditor<T>, EditorUtility.OpenControlSheet looks for this interface when creating a popup * Rename ControlSheetPopup to PopupEditor, * Add Color.Rgba16 (half based color) * Managed can override compiling of any resource * Add Texture.GetBitmap * Add transient filesystem in editor * Add Texture.IsError * Add Margin.IsNearlyZero * Fix asset picker ignoring AdditionalTypes * Add Widget.GetDescendants<T> * Add MainThread.Wait() * Expose TypeDescription.Order
37 Days Ago
Leaderboard backup, run #17117
37 Days Ago
Add TextureGenerator boilerplate TextureControlWidget poc Fix NRE in SpriteRenderer when texture is null TextureControlWidget creates a child ResourceControlWidget instead of trying to be one Draw texture preview Standardize internal way to async replace placeholder textures Add Sandbox.Utility.ForAsync TextureGenerators are async Add IPopupEditor<T>, EditorUtility.OpenControlSheet looks for this interface when creating a popup Rename ControlSheetPopup to PopupEditor, make more modular so we can override important bits Add TextureEditorPopup Clean up TextureControlWidget Add Color.Rgba16 (half based color) Add Bitmap class More bitmap stuff Bitmap draw and bitmap pen Bitmap drawing fixes Bitmap clone, IDisposable, IValid Wrap IResourceCompilerContext Find "$compiler" in resource json and launch compiler Add more ResourceCompiler functionality Managed can override compiling of any resource Add Texture.GetBitmap Simple texture compiling from managed Add Bitmap.ToFormat( ImageFormat format ) Add TextureBuilder.WithMips() - auto mip count Bitmap.ToTexture supports mipmaps ResourceCompiler.Compile is async (but we have to run it syncronously) ResourceCompiler,. ResourceCompilerContext are in Engine Add transient filesystem Add Texture.IsError Compile embedded textures to transient folder Double height texturcontrolwidget Remove debug Add Bitmap.DrawText Clean up Lock FontManager cache when accessing Refactor Generated resources get weak cached in memory for re-use Cleanup floatbitmap, add LoadFromInMemoryTGA Load Bitmap.CreateFromBytes supports tga Better tooltips on TextureControlWidget Don't support mipmaps if npot (until we figure out how/why) Create Bitmap.Filters.cs Bitmap supports psd loading Fix a bunch of bitmap filters Add Margin.IsNearlyZero Fix blur/sharpen thinking the edge of the bitmap is the end Control widget tweaks Pass ResourceCompiler in ResourceGenerator options, allowing us to add references Fix asset picker ignoring AdditionalTypes Move ColorTextureGenerator Move RandomTextureGenerator to engine, allow normals creation Add Widget.GetDescendants<T> Expose OpenColorPopup on ColorControlWidget Add [TextureImagePath] - allows selecting an image or a texture Don't cache resource if hash changed while generating Expose CreateEmbeddedResource on TextureResource Bitmap.Rotate resizes the texture TextureControlWidget has shortcut buttons for selecting a file, or color Add bitmap SVG loader Return white for default colors, instead of transparent Add MainThread.Wait() Add EngineFileSystem.Mounted (!) Create TextTextureGenerator.cs Create RadialGradientTextureGenerator.cs Create LinearGradientTextureGenerator.cs Create ImageFileTextureGenerator.cs Expose Svg texture generator Expose TypeDescription.Order TextTextureGenerator tweaks Fix warnings and errors Use classname when setting ResourceGenerator Fix bitmap.clear not using floating point color Fix NRE in ImageFileTextureGenerator
37 Days Ago
Mark used resources in buffered descriptor set a few frames in advance, they're being deleted while still used
37 Days Ago
Merge from primitive
37 Days Ago
Shield cannot be raised if the player has less than 1s of time in the progress bar
37 Days Ago
Hammer is no longer usable with shield (was a bit of a downgrade since you had to unequip the shield to access upgrade options)
37 Days Ago
Hopefully fixed recurring issue where the player would be stuck in blocking state if their shield breaks while it is raised
37 Days Ago
Disable compute skinning temporarily while descriptor set crash is being debugged
37 Days Ago
Recoil when a player sucessfully blocks a hit is now applied to the attacker, not the defender, only applied for melee Left in the screenshake for local player on blocking a hit as it looks good
37 Days Ago
Bucket FX WIP.
37 Days Ago
Applied a new collider to all shields to increase the amount of coverage the legs and head receive, particularly while blocking
37 Days Ago
DepthNormalPrepassLayer stub, DepthNormal shader class consumes from S_MODE_DEPTH DepthNormals mode, uses values directly instead of Material, attach it to ShadingModels Ignore and don't compile combo if it's not referenced by a mode or feature instead of erroring out, e.g. We want to reference DepthNormal.hlsl everywhere in Class.hlsl, but we want to only have combos for it if we're using a DepthNormal mode without complicating the codebase, this way when adding a new mode that references that combo, it's added to the shader without convoluting the source, argue with me if you think this is shit behavior Temp bind FindOrCreateRenderTarget and use managed rendertarget for depthnormalprepasslayer Should be continue rather than break, fix undefined identifier if S_MODE_DEPTH_NORMAL is not set Pass MSAA value from pipeline, make DepthNormals a dynamic combo instead of a mode, conditional Add Normals.hlsl, with fallback if no depthnormals are available, add Bindless::GetTexture2DMS Adjustments, Depth Prepass Depth Only under a convar, do depthnormals without size cull threshold GTAO uses Normals::Sample() instead of recalculating normals from depth https://files.facepunch.com/sampavlovic/1b1711b1/sbox-dev_e5dHGELNmU.mp4
37 Days Ago
Make shaders compile with Vulkan 1.2, allows for wave ops instructions used in new SSR, etc Microsoft/DirectXShaderCompiler/wiki/Wave-Intrinsics Bitch when variables are uninitialized in HLSL, can cause all sorts of weird undefined behavior in certain drivers Fix warnings on all shaders, remove D_EYE_WHITE (bullshit?) Avoid sampling diffuse cubemap for fog at lod0 to not have fireflies like in Eagle One Rain Demo
37 Days Ago
Catapult firebomb fire spread/lifetime/damage matches the incendiary rocket Slower ballista hammerhead bolt Minor build cost indicator color fix
37 Days Ago
Stop leading when horse starts ragdolling Can't lead a ragdolled horse
37 Days Ago
New decal
37 Days Ago
Forward+ Decals (#1606) GPU driven tile culled decals that modify their surfaces PBR properties. No additional draw calls for any decals. * PBR modification: Albedo, Normal, Roughness, Metal, AO * Works with transparent surfaces as it's not projecting based on depth * Color Tinting + Opacity * Angle attenuation * Automatic sort order + override * Future compataibility with extra data flags to add 100 more things * Decal::Apply( ... ) API
37 Days Ago
Fixed repair cost UI not showing as red (caused by 111605)
37 Days Ago
Fix
37 Days Ago
Tweaked mounted ballista colliders
37 Days Ago
▋▊▋▆▋▆▋▇▉ ▇▍▄▅▆▆▇ ▋▊▅▇█▇ ▄▉ ▉█▉▋
37 Days Ago
Static ballista rig setup Updated icon
37 Days Ago
Clean up, remove unused properties, destroy buffer, 64 decals per screen tile
37 Days Ago
merge from primitive/deployable_ballista
37 Days Ago
Mounted ballista detailed colliders
37 Days Ago
Reverted 111575 (restored mounted ballista rig)
37 Days Ago
Constructable entities now require the correct amount of resources Added UI showing the required resources when aiming at a constructable entity
37 Days Ago
Forward+ Decals GPU driven tile culled decals that modify their surfaces PBR properties. No additional draw calls for any decals. * PBR modification: Albedo, Normal, Roughness, Metal, AO * Works with transparent surfaces as it's not projecting based on depth * Color Tinting + Opacity * Angle attenuation * Automatic sort order + override * Future compataibility with extra data flags to add 100 more things * Decal::Apply( ... ) API
37 Days Ago
Crash FX.
37 Days Ago
Make sure to reset leading flag when leader player dies
37 Days Ago
add octohedral_encoding.fxc include
37 Days Ago
▄█▄ ▌ ▋▊▌▋▆▇▌ █▉▉▉ █▅ ▌▌▄ ▍▊▆▋▉█▄ ▍▆▅▍ ▆▍▅▊▄▋█▆▅ ▋▅▊▊▍▊ ▅▅▄▍▇▋█ ▋▍ █▆▆▇▇▉▍▉▄ █▊▉▇▌█▋▊▊ ▋▇▌▍ ▉▋▍ ▆▌▍▇▌▅▋ ▆▆▆▌ █▄▌▉ ▌▉▊ ▆▇▄▌ ▆▉▆▊▅▊█ ▄█▊▉█▅ ▊▍▅ ▅▆▌▇ ▄▊▊▆▊▋▆ █▆▇▇█▌█ ▉▇ ▄▆▄▅▋▆▋▅▍ ▊▋▌▌ ▇█▍▉▋▋▊ ▍▍ ▍▇█ ▍▌▄
37 Days Ago
Can now right click on a Shader to "Create Material" from it. https://files.facepunch.com/CarsonKompon/2025/January/24_17-29-EmptyPony.png Fix typo in MaterialMenu
37 Days Ago
GraphCompiler will now resolve inputs for parameters within subgraphs Make sure DefaultEditor draws the correct Default Value GraphCompiler now pulls the Default Value set on a SubgraphNode if input has no connection Fix infinite loop when saving some graph configurations Cleanup GraphCompiler.Result() and remove debug logs Fix DefaultEditor NRE Label default properties as "Default {x}" Fix Subgraph preview not compiling properly after new changes to GraphCompiler
38 Days Ago
WIP refactor * Allow MovieClip to be a resource, so doesn't reference GameObjects directly * Make MovieTrack more general, to support action blocks in the future etc * MovieTrack stores compiled version of curves / constants, so fast to read and doesn't assume anything about how the data is created in the editor Simple movie maker test scene Getting things working again Test with QuadraticInOut easing