14,046 Commits over 1,583 Days - 0.37cph!
Give our shader programs debug names so we can see them in debugger/renderdoc
Geometry shaders still need access to VS_INPUT
Log stack traces
Handle badly defined GameResource more gracefully
Aoproxy sceneobjects are children of their parents and inherit visibility - stops them lingering when entities are hidden
Fix not correctly rebuilding .editor.dll when recompiling dependant game dll
Ambient occlusion proxies made by SceneSystem instead of entity system
Protocol::Network++ because I removed CEnvVolumetricFog classes earlier
Tools replaces and uses GameMenu PackageLoader/HotloadManager
Add TypeIcon, TypeName, TypeTitle to SerializedObject,
Clean layout separator style
OOG Volumetric Fog
* Added SceneCamera.VolumetricFog and SceneFogVolume
* Fog volumes are part of SceneSystem instead of managed separately
* Delete volumetric fog gamesystem, game entities and fgd entries, replace with C# game entities for volumetric fog controller & volumes
* SceneMapLoader loads SceneFogVolumes and light_rect
Fix editor sometimes loading base tools package in the wrong order
NavigationMesh available out of game
* Supports runtime generation
* Pathfinding all in c#
* Save/Load navmesh
* Added Triangle struct
Headgear adjustments and Tanktop skinning fixes
Look for .sbproj in DownloadCloudProjectAsync instead of .addon
Delete left over worldrenderer vpc
Remove more references to dota global light
Remove anything in ENABLE_LOD, keep the baked lod builder around though in case we want to try rendering it in the future
Fix cubemap ggx mipgen crashing on AMD, caused by sbox/commit/4df698bcf80ca9346240fdb473ca74fe45df2371
Force flush source cubemap before generating mips on dx11, same amd bug we had before
Don't make dest cubemap array texture a render target, unnecessary
Remove halo gizmo from light ents
Ensure screenshot folder exists when recording video
Stop hunk detected showing all the time
Editor folders (#1265)
- A folder named Editor in your game project's code folder will become an Editor project
- Editor projects can access both the editor and the game addon
- Editor projects are not sandboxed
- These access the GameMenu instance - not client or server
- To avoid conflicts, some editor apis changed.
- - Cookies => EditorCookies
- - TypeLibrary => EditorTypeLibrary
- - Event=> EditorEvent
SceneCamera viewports (#1253)
▅▄▇▅▄▌▄█▉▊█: ▅▄▋▊▅▄██ ▅▉▉█▋▅ ▌▆▇▌▆▊ ▇█▌▉█ ▌▋ ▆▇'▆ ▆▇▍▋▄▇ ▍▆▋▉▊▆▉▇ ▉▊▉ ▄▅▊▋▉▇▄▅ ▋▅▆▅▆
| | ▆▅▅▍▇▅ | ▉▍▄█▇▄▄▊▍ | ▅▌▉▍▌▆▊ |
|---------------|---------|-----------|---------|
| ▄▊▉▊▄▌▊.*/* | ✅ | ✅ | ✅ |
| ▇▆▋▄▉▇█.*/* | ✅ | ✅ | ❌ |
| ▅▊▍▇▄▊.*/* | ❌ | ❌ | ❌ |
Slight adjustments to the boxing headgear textures
Add raytracing pipeline support to rendersystemvulkan & vfx_vulkan
* Add UtlVector::ByteCount(), UtlVector::EnsureCountZeroed( int num )
* rendersystemvulkan: support raytracing pipelines
* vfx / vfx_vulkan: support compiling rtx shader blocks targeting vulkan 1.2
* CRayTraceSceneWorld without lights for now
Hammer uses managed DockManager
Makes the docking more flexible like our main game frame and lets editor projects add docks to Hammer like `[Dock( "Hammer", "Asset Browser", "snippet_folder" )]` and lets us start replacing native widgets with our own managed widgets easily.
New Outfit Piece! - Boxing Headgear
https://files.facepunch.com/daniel/1b1511b1/HEADGEAR_02.png
Another piece to add to the boxing outfit combo. LODs coming asap!
Extra Vis Hint Options + Fixed boxes on Vis Hint & Info Cull
Fixed numerous prefabs and tilesets + a few new tilesets
Added methods for reading / writing from raw byte buffer to net message
Only try Convert.ChangeType if value implements IConvertible
Prefab editor 2 (#1262)
Cleans up prefab editor. Makes it possible to make prefabs without using the entity system.
▄▉▄▇▄▄▋▊.▍▇▋▆▄▄▆▊▇▌█▅() ▅▉▆▆▄▇ ▉▄ ▋▌▌▍▇▄ ▆▄▌▅ ▊▊▆▇▄▉ ▉▄▊▅█▄▄ ▉▅▆▊▉▆
Validate constructors as part of AccessControl
Make m_SymLinks a CUtlMap
Prioritize local files over downloaded (symlinked) files
Editor: set gamemode to CurrentGame, loading map manually / from hammer should use active game
Editor: Add Min/MaxLength to ProjectConfig.Title to match asset manifest spec
Editor: Add Project.Config.Title to review wizard
Editor: check for validation attributes on review wizard page, can't continue if it fails
Updated trace solver from valve
Added Tags to Surface (HasTag, HasAnyTag, HasAllTags - define tags in resource)
Remove ClientEntity.HasPermission (unused)
Shadergraph: Save prompt when closing with unsaved changes
Remove global light usage (used in dota pipeline?)
Remove unused deferred_light files
Delete sprite entities, mostly to get rid of the toolobject
Texture editor (#1259)
Creates 2D textures and basic 2D sprite sheets to avoid having to write vtex and mks by hand
Set known Game.Server fields when running Game.Menu.StartServerAsync (sboxgame/issues#3980)
Make Hammer gizmo sceneworld get added to view again
Sizes passed to ImageRect.Calculate with Undefined unit will correctly use default size
Default text overflow to "None", spec default is clip but ours behaves differently - this will do for now
Give `line-height`, `letter-spacing` and `word-spacing` default values, no need to null check them
Don't implicitly clamp backgrounds if background-size is `cover`
Handle LengthUnit.Undefined gracefully, document