1,584 Commits over 1,127 Days - 0.06cph!
libprotobufd
Remove all these unused old protobuf .lib
this even older protobuf also wasn't being used
Fix infinite loop, I'm very curious why this doesn't cause problems on master when it very obviously should
Turn on c++20 and see what fucks up
Thats a lot of errors - lets do /permissive for now
tier0: c++20 fixes
More
Update protobuf to 24.3, patch for source2
That's everything to make it compile
Dunno how this got corrupted
Latest master compiled DXC now that bugs are fixed
Minor HLSL2021 fix catching bad for loop scope
Unload vfx dll at very end of vfxcompile
Use -fvk-invert-y on geometry shaders too, works as expected on core shaders so "fix" it in objecthighlight shader
Don't do these Pix events under Vulkan, incomprehensible
Stop trying to destroy aoproxy manually, it's a child now so it'll happen automatically and not risk double delete
Give our shader programs debug names so we can see them in debugger/renderdoc
Geometry shaders still need access to VS_INPUT
Aoproxy sceneobjects are children of their parents and inherit visibility - stops them lingering when entities are hidden
Ambient occlusion proxies made by SceneSystem instead of entity system
Protocol::Network++ because I removed CEnvVolumetricFog classes earlier
Ambient occlusion proxies made by SceneSystem instead of entity system
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
Make these entities internal, no need for public use in legacy entity system
Make sure entities have default values in Hammer
Remove IsMaster from volumetric fog controller entity, it doesn't do anything
VolumetricFogVolume use BoundsHelper
Helper for baking fog
Make baked fog work again
Work out global bounds in the CVolumetricFog so we don't have to worry about it anywhere else
Remove the bullshit from VolumetricFog, setting bounds make no sense (and does nothing) when they're exclusively made from volume bounds
SceneMapLoader loads light_rect
Clean up SceneFogVolume, document and add strength/falloff
Expose SceneCamera.VolumetricFog
SceneMapLoader loads SceneFogVolumes
Make fog volumes part of the scenesystem, change our API to a SceneFogVolume class belonging to SceneWorlds
Delete volumetric fog gamesystem, game entities and fgd entries
C# entity definitions for volumetric fog controller & volumes
Everything got to be networked in this shit way
First pass getting all of volumetric fog creation in C#
Stop hunk detected showing all the time
SceneCamera viewports (#1253)
▅▄▇▅▄▌▄█▉▊█: ▅▄▋▊▅▄██ ▅▉▉█▋▅ ▌▆▇▌▆▊ ▇█▌▉█ ▌▋ ▆▇'▆ ▆▇▍▋▄▇ ▍▆▋▉▊▆▉▇ ▉▊▉ ▄▅▊▋▉▇▄▅ ▋▅▆▅▆
| | ▆▅▅▍▇▅ | ▉▍▄█▇▄▄▊▍ | ▅▌▉▍▌▆▊ |
|---------------|---------|-----------|---------|
| ▄▊▉▊▄▌▊.*/* | ✅ | ✅ | ✅ |
| ▇▆▋▄▉▇█.*/* | ✅ | ✅ | ❌ |
| ▅▊▍▇▄▊.*/* | ❌ | ❌ | ❌ |
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.
QHammerMainWnd is a managed DockWindow, start moving Hammer dock widgets over to DockManager
Everything in hammer is added through managed DockManager
Asset browser doesn't need to be made from native, use [Dock]
DockManager manages View toolbars menu, delete all native for it
Dock widgets dont need to be QDockWidget anymore
Use StateCookie to save Hammer layout, add a default layout
Mdi area is fine, but lets give it a proper name
ToggleFullscreenLayout
Only try Convert.ChangeType if value implements IConvertible
Make m_SymLinks a CUtlMap
Prioritize local files over downloaded (symlinked) files
Don't iterate the SceneCameras yet, we should iterate the Scene for Camera components when that's in
Experiments with layering cameras and multiple viewports
Don't recycle depth from aoproxies for dynamic reflections, loses a fast depth prepass but focus on correctness first
Fix hi-z depth chain with offsetted viewports
SceneCamera.Enabled, WeakRef in Directory, ClearFlags -> bools
QHammerMainWnd is a managed DockWindow, start moving Hammer dock widgets over to DockManager
Everything in hammer is added through managed DockManager
Asset browser doesn't need to be made from native, use [Dock]
DockManager manages View toolbars menu, delete all native for it
Dock widgets dont need to be QDockWidget anymore
Use StateCookie to save Hammer layout, add a default layout
BoxShooter can only grab Prop models
Make Hammer gizmo sceneworld get added to view again
▄▇▇▋▅▄▋▅▉ ▌▌██▉▆▄ ▌█▅▉▆ ▇▊▍▊▊█▋ ▅█▅▌▌▆.▍▇▆▅█▇▄▇▉▄▆▆▋▌▅ █▊▌ ▍▅▊▊▊.▇▅█▊▍
Experiments with layering cameras and multiple viewports
Add SceneCamera.Skybox, port sky entities & client logic to C#
Cleanup & document
These should be Entity.IsValid() checks
Use SkyboxScale not Scale
Scale safety check
Experiments with layering cameras and multiple viewports
Actually use the sky_camera position
Fix rebase error
I don't think anyone has ever used this command
This cubemap code wasn't even setting any used attributes?
Cleanup
CEnvCubemapFog compatability with C# sky_camera, temp cause we're gonna move that to C# soon enough
Add SceneCamera.Skybox for rendering 3D skyboxes in the world
sky_camera and skybox_reference ported to C# removing unused properties
Remove dead spherical vignette code from user shading model
Remove C++ game code for skyboxes, delete sky_camera and skybox_reference
C# classes for skybox_reference and sky_camera
Add SceneCamera.Skybox accessor
Actually use the provided skybox world
3D skybox can consist of multiple sceneworlds
Took me too long to figure out client.dll path needs the worldgroupid to UpdateObjectsForRendering
Initialize CRnWorld::m_debugDrawFilter
Remove C++ game code for skyboxes, delete sky_camera and skybox_reference
C# classes for skybox_reference and sky_camera
Add SceneCamera.Skybox accessor
Experiments with layering cameras and multiple viewports
Remove unused spherical vignette from renderingpipeline and core shaders
Unused viewport shit in camera renderer
CCameraRenderer inherits SceneCamera Name for debugging