3,083 Commits over 1,552 Days - 0.08cph!
Don't say we have a shader program if there's no vcs data for it, might fix us not being able to decompress some static combos
More breadcrum info
Warn us if we can't open file stream for static combo decompression, I don't know if CUtlStreamBuffer warns us
Drop some shader related breadcrums
Load spritecard shader with the main shader manager manifest so hopefully map compiler always has it loaded
Add mat_free_shaders so I can see how many unreferenced shaders can be destroyed
SetDefaultToRendersystemEmpty for vfxcompile, this should allow it to run on build server I hope
Fix foliage shader always failing MD5 check, rare situation where the shader has a program defined (geometry shader) with no code inside
Blocking load static combo requests, seeing little or no benefit to async and it's fucking us over
Fix mat_reloadshaders not finding all the proper materials it needs to reload
Revert back to the old way of reloading materials, blocking resource reload isn't stable
Fix mat_reloadshaders not trimming properly, check if shader resource file even exists for good measure
Remove some parts of material editor still assuming .vfx so we can start phasing it out
Fallback to error shader if setting up static combos for mode fails
Add back ogniks fix for sboxgame/issues/issues/2533
Remove refcount from vfx, the resource now has the refcount
Actually load all modes for error material, check for the actual error shader was wrong
Don't try to deallocate error resource, because this is a thing that happens apparently :S
Dont use GetErrorResource, it's fucking us up
Don't try to set default textures for raw material that has error shader
assign layer shader to error resource if it couldn't load the shader we want
null check resource data when deallocating shader resource (can this even happen tho?)
Make mat_print_shader_info work again
Make mat_print_shaders work again, mostly just for my own use
Just get rid of FreeAllUnreferencedData, shaders are destroyed when resource is, so this shouldn't be needed and if it is we can do it better anyway
particle procedural mat uses shaders/spritecard.shader for shader keyvalue
Don't free shaders for unused static combos until I figure out why it's crashing
Copy over changes for shader resources
Remove old .vfx, .vcs
Forgot some vpc files
Build content
Update assettypes.txt
Update resourcecompilersystem.cpp
Forgot shader asset type images
Impl GetErrorResource for shader type manager so we get an error shader when shader can't be found
Enable all modes for error shader
Recompile all core shader resources from master
Update high_quality_reflections shader
Recompile base shaders
Update Graphics.Paint and PanelRenderer
Update shaders.def
Make damn sure all shaders are packed from vcs from master
Material doesn't grab shaders from resource system anymore until I figure out why it was fucking up
Switch back to using resource system to get shaders for material, remove vfx dictionary
Free shaders for static combos that have zero ref count
Destroy static combo shaders when deallocating shader resource
Create all modes for error material.. again
Switch to error resource if setting up static combos for mode fails
Switch to ResourceIsError for other places that need to check if a shader is error
Remove deallocate logs
Simplify mat_reloadshaders, just do a shader and used materials blocking reload
Fix assert on material layer destructor, static combo ref count should be fine to be zero here, we probably should reloaded shader
update all_shaders.txt
Allow access to material attributes without asserting, if modes have loaded
Delete me_shaderselect.cpp
Don't publish core/*.shader to steam 🦆
Update vfx_compile_helpers_d3d11.cpp
update content from master
Merge branch 'master' into shader-resources
update core materials from master
Add shader macros back in
Fix crash hopefully stopping build-content from failing
Merge pull request #651 from Facepunch/shader-resources
Shader resources
Add SceneParticles.SetControlPoint that takes a snapshot
Add a dict of native to manged materials so we can grab them from native
Fix material editor not writing to image meta, fixes texture settings
Fix ParticleSnapshotVertex_t being incorrect
Add ParticleSnapshot resource class
Bind UpdateParticleSnapshotFromVertices
Add Particles.SetSnapshot from resource
Allow procedural particle snapshot to be created from managed
Add ParticleSnapshot.Vertex
Update particle snapshot from vertices
Documentation
Include creation time in snapshot vertex
Add disable mesh merging setting to prop_static
Add Model.MaterialGroupCount and Model.GetMaterialGroupName
Add tooltips to collapsed sidebar of entity selector
Add Model.AnimationCount and Model.GetAnimationName
Add Application.CursorPosition setter (used for locking cursor in tools)
Revert "Move ParticleAttachment to engine, this is something we'll need in tools, not just game"
This reverts commit 1c9df82ec6bb1371f321125a19b915be853016eb.
Add SceneParticles.SetControlPoint for rotation and transform
Move ParticleAttachment to engine, this is something we'll need in tools, not just game
Hammer: Support drag drop from entity tree view because I keep finding myself trying to drag them in https://files.facepunch.com/layla/1b0311b1/sbox_TbxTgCp7lS.mp4
Fix strange bug accessing DragData.Url if it wasn't set, checking for null would somehow fail?
Change model thumbnail rendering back to an animated pose, forgot I had changed this
Remove useless line of code
Add menu option to create multiple sound events from selection https://files.facepunch.com/layla/1b0311b1/sbox_ctRq5YvZNX.png
Fix StartVoiceRecording and StopVoiceRecording being called continuously when it doesn't have to
Fix particle preview rotation https://files.facepunch.com/layla/1b0211b1/sbox-dev_DE9zLfakRV.mp4
AssertIsMainThread for SetupPhysicsFromModel, this is not safe to do
Assert trying to make scene model with meshless model, sceneobjects aren't created if there's no meshes
Do the same for sceneobject
Fix crash trying to render thumbnail of model with no meshes
Fix crash trying to preview model with no meshes
Enable client authoritative mesh groups when setting a client side procedural model so server doesn't stomp mesh groups
Fix crashes when trying to set an animgraph on a model with no bones (still allowed because they may have morphs)