1,445 Commits over 1,277 Days - 0.05cph!
No need for a mutex on AllocateTransforms
Use MSAA friendly discard for foliage, cleanup
Object files for base addon shaders
Yank the internal includes out of foliage shader, make it work in our API
Make Water compile with our new API, optimize it, have more accurate reflectance constant
Add USE_CUSTOM_SHADING flag to skip default combos
Make ToMaterialMultiblend compatible with our new API
Object compile of base shaders with structured buffers working as intended 🙏
Temp disable multiview instancing combo to speed up compiles
remove F_UNLIT and F_DISABLE_TONE_MAPPING from Complex, unlikely to help
Trim complex a bit more
Adjustments, refactoring, cleanups and new strategy to bind transform buffers
Rename BindTransformTextureAndInstanceIDBuffer to something friendlier
Use thread safe allocations for transforms, fix transform alignment
Allow usage of VS_INPUT in geometry shaders
Add new shaders with new transform slot sequence strategy
Add toon example shader
Iterate example toon shading, add outlines
Squashed merge structured transform buffers
Merge branch 'master' of sbox
Add toon example shader
Cleanup
Use precision padding to make up for low precision upload to GPU, fix instancing padding on vr_lighting
Refactor and detangle instancing and transform buffer shaders, makes much better use of hlsl SIMD
Remove unused EXTRA_SHADERDATA_TINTRGBA32, some other unused methods
Remove any other references to a 2D transformation buffer, make transformations use CUtlMemory for cleaner memory lifetime
Further refactoring
Make TypeLibrary.Create<T>( int ident ) public so we can create types from their (int) ident again
Merge branch 'master' of github.com:Facepunch/sbox
Merge branch 'master' of sbox
Fixed MinMaxAttribute not working in Hammer
Fix static/dynamic colors not working on [EditorModel] ( This is only used for light modes, weird fucking place? )
No point in having EnvironmentLightEntity derive from ModelEntity
Hammer property titles once again generate with spaces
[HideInEditor] works on asset properties
Give [GameResource] a default question_mark icon so it's not null by default (also fix DrawMaterialIcon shitting the bed with null)
Fix classes with [Net] malfunctioning if they have child classes
Add TypeLibrary.FindStaticMethods
Add PropertyDescription
Fix MenuAttribute
Support copying graphemes outside TextEntry too
Improve console text selection
Improve behaviour of label selection if drag rect is negative size
Add GameResource to Recent opened list when saving in inspector
Add GameResourceEditor
Fix Replicated ConVar's not replicating locally
Fixed certain types being displayed as structs in Inspector
Namely double and int64
Fixed non public methods not working as Hammer inputs
Trim all the unused addon stuff out of IApplication etc
Fix error in JsonSerializerOptionsUpgrader on hotload
Don't give alternate flags when querying DX11 display mode list
Fix crash when registering the minidump handler due to addon stuff being removed
Fixed verbose hotload log formatting
Improve tonemap controller preview in Hammer
Pain day 3 for game template
Network Client.IsUsingVR
New Outfit Piece! - Summer Shorts
New outfit for a hot day out for terry, as well as some needed adjustments to the leather gloves skinning and rigging.
Summer shorts also have LODs.
https://files.facepunch.com/daniel/1b2411b1/Photoshop_4cUauBlWsq.jpg
Make [UseTemplate] work properly on consolidated builds (used for s&works) - instead of the generator trying to guess root directories feed it a map of physical paths -> virtual paths for all the cs files
Fixed MinMaxAttribute using min as max in Hammer
Display( Description = .. to Description( .. in engine
Merge in drawhud
Draw2D.TextSize returns a Rect
Vector3.ToScreen can take a ScreenSize, returns nullable Vector2
Citizen/animgraph: second draft of big weapon branch refactor
intercom
pallet - tweaks
fixed broken normal map on pallet
Revert changes to SetupPhysicsFromUnscaledModel - Some users have been reporting overlap tests etc sometimes failing. This change was to fix slow downs when loading maps with triggers covering the map, the fixes were only needed on the trigger entity, not native code
Remove vconsole tools we're definitely never gonna use
.. and some more
Fix clothes showing in wardrobe multiple times
Add morph inheriting for in game models
Mouse wheel zoom in and out of face on avatar dresser
LOD override dropdown
Add sbox_feature_inheritlods
Update material icons
Balaclava LOD fixes
Fixes to Lods so no longer clipping in the head model!
Add clear context menu to asset property
Add DressSceneObject to ClothingContainer, to condense code repetition
SceneObject can replace materials based on attribute value
Clothing has EyeMaterial
Add gown clothing item
Add replacement attribute to citizen skin/eyes
Fix skins to use new system
Allow right click > open in editor for asset properties
Delete junk
Fix dress layers
Skin5 eyes
Citizen/animgraph: pelvis additive now uses "proper" on-the-fly compositing + gets disabled when sitting
& more comments
Fix NRE in WaterController if PhysicsGroup is not valid
Citizen: added note about citizen.SetMaterialOverride on MaterialGroupList prefab
Added failing hotload test for static initonly HashSets
Added ConcurrentQueueUpgrader
Fixed in-place hotload of a HashSet<T>
Allow individual types to be added to hotload SkipUpgrader
Skip hotload for types in System.Net.Http and System.Text.RegularExpressions
Fixed some false negatives when checking if a type is blittable
Added ConcurrentDictionaryUpgrader, fixed ConcurrentQueueUpgrader
Only start addon worker threads when first needed
Make sure hotload verbose log works with and without -tools
Cache which static fields need to be watched in hotload
Some extra timing info for hotload
Added InstanceUpgrader.GetUpgraderOrDefault<T>()
DefaultUpgrader field caching, now uses auto-skip
Update groups.vgc
Added networked attribute based material replacement to ModelEntity
Don't force GC collect on hotload, since we're doing it 3x for every compile
More persistent caching between hotloads
HotloadManager name consistency
More timings
Revert "Disabled transform structured buffer by default, will be reenabled soon"
This reverts commit 72c3854218d52e769ba267ad84d8e6e0394e7f22.
Fix instance ID buffer on structured buffers
Reenable multiview instancing on shader
Update core shaders with structured buffers
Cleanup some things and set baseline before major transformation logic refactor
Part 2 of baseline cleanup
Merge branch 'structured-transforms' of sbox into structured-transforms
Remove m_transformAllocator, trim most redundant code out of transfomation
Cleanup some things and set baseline before major transformation logic refactor
Part 2 of baseline cleanup
Update core shaders with structured buffers
Make TypeLibrary.Create<T>( int ident ) public so we can create types from their (int) ident again
Fixed MinMaxAttribute not working in Hammer
Fix static/dynamic colors not working on [EditorModel] ( This is only used for light modes, weird fucking place? )
No point in having EnvironmentLightEntity derive from ModelEntity
Hammer property titles once again generate with spaces
[HideInEditor] works on asset properties
Give [GameResource] a default question_mark icon so it's not null by default (also fix DrawMaterialIcon shitting the bed with null)
Fix classes with [Net] malfunctioning if they have child classes
Add TypeLibrary.FindStaticMethods
Add PropertyDescription
Fix MenuAttribute
Revert "Disabled transform structured buffer by default, will be reenabled soon"
This reverts commit 72c3854218d52e769ba267ad84d8e6e0394e7f22.
Fix instance ID buffer on structured buffers
Reenable multiview instancing on shader
Revert "Disabled transform structured buffer by default, will be reenabled soon"
This reverts commit 72c3854218d52e769ba267ad84d8e6e0394e7f22.
Merged new-shader-api
Disabled transform structured buffer by default, will be reenabled soon
Update base.vfx with the base from standard.vfx
Cleanup
Update thirdpartylegalnotices
More cleanup
Add ExtraLightData for area lights and LightTypeAreaType_t to make it easy to expand
Add Area Light postprocessing methods
Iterate lighting and shading data
Fix spazzing on structured buffers on unskinned meshes
Some rework on structured transform buffers, pass correct offsets (in theory)
Fix sphere reflection, add smooth fade
Add adjustable roughness and metalness configuraiton to lpv debug grid
Merge branch 'light_probe_volume_debug_grid' of sbox into light_probe_volume_debug_grid
Fix some shading problems
Ball impostors for layla
https://cdn.discordapp.com/attachments/967087958266114048/970305957269762048/unknown.png
C++ part of ball impostors
Merge branch 'light_probe_volume_debug_grid' of sbox into light_probe_volume_debug_grid
Add class and interface language support to VFX Compiler
Make base class an optional parameter for VFX classes
Allow members to be static or have other identifiers on VFX
Add class_member_definition to VFX variable parser on ANTLR
Flag to renderdevice that we want to use structured buffers
Adjustments to structured buffer transforms
Tag code as NOT using constant buffers, as we are using structured buffers now
Support for both Constant and Structured buffer
Strip texture transform entirely from scenesystem
Fix shader code related to structured buffer transforms
Move away from a cbuffer to a structured buffer
Set the config on transform_buffer correctly
Merge branch 'new-shader-api' of sbox into new-shader-api-premerge
Iterate on shading, cleanup internal sbox_pixel
Add new standard.vfx ubershader
Merge branch 'master' of sbox into new-shader-api-premerge
Mixed light support
Iterate on new shader api, make inputs take preprocessed shaderparams rather than pixelinput and material data
Boost ambient occlusion on hemispheric light coming from up-down
Merge branch 'master' of sbox into new-shader-api-premerge
Lightmapped direct light support, better define shading struct
Merge branch 'master' of sbox into new-shader-api-premerge
Merge branch 'master' of sbox into new-shader-api-premerge
Start using classes for shading itself
Merge branch 'master' of sbox into new-shader-api-premerge
Remove warnings, iterate on class-based shading, cleanup
tidy up api
Strip ShadeParams from lighting data, that should be exclusive to shading classes
More indirect lighting work
DFG Lookup table
Unclustered seamless cubemaps, fix view ray
Add DFG texture sampler to shader
Have position offset on orbitcamera
Better air control, tap for short hops, hold for long jump
https://cdn.discordapp.com/attachments/963075472437178449/965698988047233124/sbox_0002.mp4
Add walljump
Add ledge grab
Improved waljump
https://i.imgur.com/CBaoXjJ.mp4
Tidy up ledgegrab
Adjust jump power for new jump behaviour
Adjust walljump and ledgegrab
add LedgeGrab and WallJump to PlatformController
Disable camera collision for now until I finish orbiting camera, make camera orbit player if we move camera manually
Merge branch 'main' of sbox-platformer
Add shading methods, cleanup api
Use world normals for material, start implementing IndirectLight, MixedLight and StaticLight, cleanup, move ambient occlusion to IndirectLight
Iterate over new lighting api, cleanup, add stubs for MixedLight and IndirectLight, add LightShade struct
Make base class an optional parameter for VFX classes
Allow members to be static or have other identifiers on VFX
Use classes for dynamic light
Add class_member_definition to VFX variable parser on ANTLR
Add multi select combo box, use it for enum flags in property editor https://files.facepunch.com/layla/1b0511b1/sbox-dev_bxdOgE3sui.png
Remake multi select combo box for enum flags in pure C# (needs styling)
Adjust input settings layout to scroll
Input settings style tweaks
Fix out of range exception
Fix map & resource path lists shrinking in addon editor
Fix CheckBox not pulling package meta bool binds
Fix up/down arrow caret navigation on multiline inputs
Fix caret position on newline characters
Previous fix missed an edge case and did not work with emojis, hope this way isn't shit
Documentation and other minor code adjustments
Prop gibs now inherit material group
Delete engine break commands, and replace some useful ones with c# implementations
ModelDoc: Give the user a chance to copy a model into an addon dir if they try to import a model from outside an addon dir
Remove engine break commands code
Citizen: updated unicycle pedaling animation
Switch to new api urls
Tools doesn't need its own package query function
Force CBasePlayer transmit always
Fix NRE when deserializing a dictionary that ends up with a null key
Citizen/unicycle: added sequences for fast pedaling and leaning
Citizen/unicycle: updated pedaling animations so that feet are always flat relative to pedals
Citizen/unicycle: updated balance sequences
Citizen/unicycle: fixed a couple mistakes
Recompile sbox_glass
Remove usage of PropertyAttribute in Decal asset
Get rid of Alpha/RenderFX properties from base.fgd in favor of RGBA color properties
Removed Hammer inputs/outputs from all engine entities to stop confusion, since they do not work anyway
Theme consistency
Fix StartLobby errors
Upgrade "Use IDictionary<{1}, {2}> instead of Dictionary<{1}, {2}>" to an error instead of a warning
Ignore ResetLatched in IV_PHASE_RENDERING
Populate main menu screen with trending games
SceneSystem - ignore objects with invalid bounds
if it ain't in this spawn group, how can it be in the pvs?
Fast return if setting model but model didn't change
Fix menu exception when gameicon doesn't have info yet
ContainsInterpolationVarsForPhase return false if rendering
Package Updated/Created is DateTimeOffset
Icon showing updated within last day
Simplify switching to local api
Fixed client not knowing particle names
Add class and interface language support to VFX Compiler
Iterate on lighting for new api, split baked and dynamic lighting
Trim core shader code, add pixel.lighting.hlsl
Start work on new base shader, remove old emissive combos
Accidentally removed ripple collision, let's put it back
Merge branch 'master' of sbox
Merge branch 'master' of sbox
Tweak ripplecompute, clamp collision and ripple size
Fix missing summary tag close on ScenePortal
Better way to do ripples for moving water surfaces
https://i.imgur.com/xWvwdAg.mp4
Refactor water, allow for moveable surfaces
Add ripples simulation forces for moveable water
https://cdn.discordapp.com/attachments/834319259458994216/958656107813941258/sbox_0054.mp4
Clamp water xRes and yRes to not overflow dynamic vertex buffers, allows for water bodies of any size, revisit for env_sea
Fix reflection vector on simple reflections
Add source files for Gauss
https://i.imgur.com/zMD4T9I.jpg
Fix underwater caustics
Pass Time.Delta to shader parameters
Fix water collisions being wonky
Minor tweaks on water
Add surface roughness slider to water
Simulate ripples on bullet impact
https://imgur.com/a/8eGjZdj
Don't use nullable for water properties, set default value instead
New ripple simulation with collisions
Add drag to fluid simulation and collisions
Cleanup ripplecompute and how ripples are added
Fix seamless entry on water, better water caustics, remove options for tesselation other than on/off, iterate on waves
Cleanup hull base shader
Cleanup ripple collision and propagation
Adjust ripple strength
New underwater surface method
Port eyeball shader to use our shared code, fixes clip planes on water
Add fog support to water surface, cleanup
Clamp radius of water directly on C# side, send D_VIEW_INTERSECTION combo
Put water combos right into place, upload water shader objects (including ripple)
Propagate ripple by framerate, fixes it slowing down on low framerates
Don't put r_water_ripples inside RippleCompute.cs, breaks when pushing it to shader
Add render bounds for water, only render water if we are are looking at it's bounds
Use two tone fog by default on test water
Push latest water shader objects
New ripple simulation with collisions
Add drag to fluid simulation and collisions
Cleanup ripplecompute and how ripples are added
Fix seamless entry on water, better water caustics, remove options for tesselation other than on/off, iterate on waves
Cleanup hull base shader
Cleanup ripple collision and propagation
Adjust ripple strength
New underwater surface method
Port eyeball shader to use our shared code, fixes clip planes on water
Add fog support to water surface, cleanup
Clamp radius of water directly on C# side, send D_VIEW_INTERSECTION combo
Put water combos right into place, upload water shader objects (including ripple)
Propagate ripple by framerate, fixes it slowing down on low framerates
Don't put r_water_ripples inside RippleCompute.cs, breaks when pushing it to shader