usermattcancel

1,585 Commits over 1,127 Days - 0.06cph!

2 Years Ago
Native can focus on an initial asset in the AssetPicker Pass down a title / settings key from native to asset picker Can filter by multiple asset types
2 Years Ago
Pass down m_StartingViewType to our AssetPicker so native can decide if list / grid is better
2 Years Ago
Please add a 👍 to +1 a bug / feature request
2 Years Ago
Refactor the native code for opening our C# AssetPicker - make it easier to slot in for the other embedded asset browsers and easier to extend QAssetSelectionWidget ( used in propertysheets to select assets ) uses C# AssetPicker Hide these buttons in QEmbeddedAssetPicker, I'd be surprised if anyone misses them CQEmbeddedAssetPicker opens C# AssetPicker
2 Years Ago
Drop targets don't need to be public MapNode creation/deletion has to be done on main thread, add asserts Null safety checks on map node shit Update to .NET 6.0.10
2 Years Ago
nullptr checks for Hammer.ActiveMap MapEntity / MapMesh constructors will default to active map doc if not specified MapView wraps CMapView so we can use it in addon space Add `[CanDrop( string AssetFileExtension )]` that support `IMapViewDropTarget.DragEnter( Asset ... )`, make it all accessible to addon space Move MaterialDropTarget to addon space Hammer: Add SoundDropTarget - creates snd_event_point for .sound assets
2 Years Ago
Make Asset.TryLoadGameResource<T> work on compiled assets w/o source files by implementing in EngineGlue::LoadJsonAsset for compiled files
2 Years Ago
Hook up the CMapView's CToolCamera so we can have the camera pos/angles and able to build rays from 2d coords Hammer traces return their hit MapNode by managed handle so can do `if ( tr.MapNode is MapMesh mesh )` now Add MapMesh.SetMaterial( Material ) Real simple drag handler for material packages - this code is all getting shit though time to rip it up Refactored map view drop targets into an interface with attributes: `[CanDrop( Package.Type.Model )] class ModelDropTarget : IMapViewDropTarget` Once I wrap CMapView I'll make this public and make it work with standard AssetType too, so you'd be able to create custom drop targets for your game resources.
2 Years Ago
Split Hammer save/load logic into different file and document all the internals so anyone other than me can know what the fuck is going on
2 Years Ago
Hammer Map Nodes API
2 Years Ago
Make Trace work against MapWorld
2 Years Ago
unfuck block tool to work with handles
2 Years Ago
Refactor & documentation on MapNode classes, make sure it all makes sense Move these Hammer tools into their own folder Simple test window for playing with the hierarchy of MapNode from addon layer
2 Years Ago
Move GetManagedHandle to common header to avoid ambiguity of when it's defined in interop and to avoid redefinition link errors
2 Years Ago
Temp comment out the BlockToolGlue.BuildGeometry - solve this in the morning
2 Years Ago
Remove unnecessary links in toolframework2 from fucking around with another solution
2 Years Ago
Add Hammer.ActiveMap Unfuck map save / load code to use managed classes instead of native shit Unfuck all of the MapViewDropTarget code so it now uses the handle managed classes - much much simpler
2 Years Ago
Fuck it, mapdoc interop back to Hammer only since that's all I want Filthy hack for interopgen for GetManagedHandle within interop.hammer.h Not as filthy hack to only init mapdoc managed handles from hammer.dll because I could end up spending weeks figuring out how to make it all work across various dlls when all I care about is Hammer anyway
2 Years Ago
Hammer.RenderMapViewHUD gets the actual mapview as well Simple Trace API for tracing against map worlds in Hammer HandleIndex.RegisterHandle can defer to IToolsDll Give mapdoc nodes managed handles so we can use them safely, move all the interop from hammer -> tools since they're not Hammer exclusive they'd be in an invalid interop state when used elsewhere... Although this might also not work because of linking, need to play around more.
2 Years Ago
Make _metal and _trans suffixes actually work in create material from image
2 Years Ago
Asset Browser: use User order for cloud assets so you see your shit first Asset Browser: can search for cloud materials Hammer Asset Browser: double clicking a cloud material will install and set the current material to it
2 Years Ago
Allow non power of two textures in materials, strip some gameinfo image preprocessors code we'll never use too
2 Years Ago
Can publish materials to asset.party same way as models
2 Years Ago
Add Material asset type
2 Years Ago
Drop pre SM5 compile targets, GL, X360 Shaders: drop all #ifdef stuff for pre SM5 and GLSL No vfx_dx9 vfx: start stripping nCbStartRegDx9, there's some more around the serialized compiled shaders that need some thought on how to dissect
2 Years Ago
Just code cleanup to make diffs easier, NULL -> nullptr that sort of shit Backport improved DX11 buffers; these changes mainly focus on structured buffer alignment Remove DX9 only concepts from binding buffers Kill IRenderContext::SetUserClipPlane (Not supported since DX9) vfx_dx: remove dead dx9 code Smarter binding of UAV slots to not conflict with RTVs Fix MAT_OP_STORE_RS_MULTI_SAMPLE_ENABLE never working Backport GPU Buffer methods ( we should be using these for tiled / transform buffers ideally ) DX11: IBs get their SRVs bound differently to VBs Merge fixes from Valve for DX11 renderer - nothing massively major here, some asserts, wrong enum fixes, CopyTexture can use DX11 CopySubresourceRegion instead of shaders DX11: ensure there is always a viewport set for a draw - fixes warning "There are no viewports currently bound. If any rasterization to RenderTarget(s) and/or DepthStencil is performed, results will be undefined." Delete all source files for DX9 & OpenGL renderers
2 Years Ago
Hammer: Set current material from new asset browser on highlight Defer CKeepAssetCached::ReleaseAsset() until after we're done with the asset in CMapViewDropTarget::OnDrop( ... ) - fixes materials being dragged into the map not applying when they weren't being set to the current material
2 Years Ago
CResourceAsset::CanRecompile - don't care about leafiness
2 Years Ago
Kill lpv_skycoverage and lpv_sdf from vrad3 too
2 Years Ago
Get rid of unused Bake SDF compile option that made map compiles always take forever and hide deterministic charting comptations option behind dev flag since that's what its for Cloud assets use PATH_ADD_TO_TAIL so they don't get prioritized over anything you have locally
2 Years Ago
Hammer cloud models (#469)
2 Years Ago
Simplify this since Package.Fetch can handle a asset.party url
2 Years Ago
Fix game_packages being stomped by migration propery this time Progress update when downloading game package in Hammer
2 Years Ago
AssetSystem.InstallAsync can do games, but ignore downloading assemblies Don't stomp game_packages each load
2 Years Ago
Refactor game packages to use metadata, and use AssetSystem.InstallAsync to make sure we have any game assets avaliable which will resolve Facepunch/sbox-issues#1748
2 Years Ago
Fix NRE when loading a map with metadata but no cloud_packages
2 Years Ago
Don't react to assetsystem.changes in the remote asset browser, fixes flickering whilst assets are being installed as well as it refreshing on map save
2 Years Ago
Add search to remote asset browser
2 Years Ago
Refactor managed mapview drop target, add path for varying behaviour for different asset types, cleanup & comment
2 Years Ago
Add a basic asset.party location to the asset browser, remote assets have the drag data of `https://asset.party/{ Org }/{ Ident }` Move ManifestMount to Sandbox.Engine Static ToolRender class uses the current CToolRenderContext context Dropping an asset.party asset on a map view creates an empty prop_static that downloads and sets its model asynchronously Create a remote asset manifest within a map doc, save/load remote assets used within the map Simplify mapdoc remote asset manifest, no need for all these C++ bindings ResourceCompilerMap: parse the remote asset manifest and symlink mount any transient assets just before `CResourceCompilerMap::CollectMapDependencies` ResourceCompilerMap: Put the transient asset manifest in the .vpk - this will serve two purposes: publishing should mount before collecitng dependencies of the map, when loading the map locally we need to fetch/mount these transient assets Mount transient assets in resourcecompiler even earlier with a vmap.meta file, any later and the references get fucked up Clean up all this dmx crap and use Asset.MetaData on the vmap for our transient asset manifest Small cleanup in compilemap, it's okay not to have a .meta file, remove some debug logs Get the debug download text working again, use static dirtying this time so its safer / easier Fix null ref on new maps Use AssetSystem.InstallAsync when dropping a package on the map, delete all the old bullshit ManifestMount around here No need for CResourceCompilerMap::MountMapTransientAssets now, asset system mounts cloud automatically Save distinct Asset.Package idents of referenced assets on map save into the Asset.Meta, and make sure they are installed on map load Revert "Move ManifestMount to Sandbox.Engine" This reverts commit c1cbe1e2c3ce181ddde6f9633fe1861c04576bbf. Set the bounding box based on package metadata so you know how big the model is while it's still downloading - I think this metadata probably belongs in the Qt drop data Remove bad using When we're dragging on the map view with Qt, start a QTimer to run tool frames manually. This makes dragging packaged assets able to async properly since we can run our main thread synccontext and dirtied map nodes will actually re-render. Early out if the cloud assets already has the package, don't bother with any unnecessary remote fetching. Refactor and comment. Add Install to context menu of a packaged asset, have already found myself wanting this Icon indicators for installed cloud packages Remove the danger from this async code by using a reference to the CMapNode ID instead, can refactor this further but it's much less shit now Fix model getting stomped whilst dragging it around, for some reason the native free drag code restores from a baseline copy every drag event
2 Years Ago
Fix model getting stomped whilst dragging it around, for some reason the native free drag code restores from a baseline copy every drag event
2 Years Ago
Remove the danger from this async code by using a reference to the CMapNode ID instead, can refactor this further but it's much less shit now
2 Years Ago
Early out if the cloud assets already has the package, don't bother with any unnecessary remote fetching. Refactor and comment. Add Install to context menu of a packaged asset, have already found myself wanting this Icon indicators for installed cloud packages
2 Years Ago
Remove bad using When we're dragging on the map view with Qt, start a QTimer to run tool frames manually. This makes dragging packaged assets able to async properly since we can run our main thread synccontext and dirtied map nodes will actually re-render.
2 Years Ago
Revert "Move ManifestMount to Sandbox.Engine" This reverts commit c1cbe1e2c3ce181ddde6f9633fe1861c04576bbf. Set the bounding box based on package metadata so you know how big the model is while it's still downloading - I think this metadata probably belongs in the Qt drop data
2 Years Ago
Use AssetSystem.InstallAsync when dropping a package on the map, delete all the old bullshit ManifestMount around here No need for CResourceCompilerMap::MountMapTransientAssets now, asset system mounts cloud automatically Remove CAsset::IsVisibleForMod - this was causing addons assets to be invisible to other addons assets depending on the order addons were added.. This should fix cases where uploading a map wouldn't upload dependant assets from content pack addons seemingly randomly. As well as let any addon assets see assets in our cloud path so they can resolve references properly. Save distinct Asset.Package idents of referenced assets on map save into the Asset.Meta, and make sure they are installed on map load
2 Years Ago
Remove CAsset::IsVisibleForMod - this was causing addons assets to be invisible to other addons assets depending on the order addons were added.. This should fix cases where uploading a map wouldn't upload dependant assets from content pack addons seemingly randomly. As well as let any addon assets see assets in our cloud path so they can resolve references properly.
2 Years Ago
Add a basic asset.party location to the asset browser, remote assets have the drag data of `https://asset.party/{ Org }/{ Ident }` Move ManifestMount to Sandbox.Engine Static ToolRender class uses the current CToolRenderContext context Dropping an asset.party asset on a map view creates an empty prop_static that downloads and sets its model asynchronously Create a remote asset manifest within a map doc, save/load remote assets used within the map Simplify mapdoc remote asset manifest, no need for all these C++ bindings ResourceCompilerMap: parse the remote asset manifest and symlink mount any transient assets just before `CResourceCompilerMap::CollectMapDependencies` ResourceCompilerMap: Put the transient asset manifest in the .vpk - this will serve two purposes: publishing should mount before collecitng dependencies of the map, when loading the map locally we need to fetch/mount these transient assets Mount transient assets in resourcecompiler even earlier with a vmap.meta file, any later and the references get fucked up Clean up all this dmx crap and use Asset.MetaData on the vmap for our transient asset manifest Small cleanup in compilemap, it's okay not to have a .meta file, remove some debug logs Get the debug download text working again, use static dirtying this time so its safer / easier Fix null ref on new maps
2 Years Ago
Revert "Recompiled Assets" - these were recompiled on an old version This reverts commit 3859bffe7bb821a43bb261084a1aa6ce35d1b0ef.
2 Years Ago
Up VTEX_LOGICIAL_CRC_VERSION - This is going to rename all generated.vtex_c and recompile vmat_c, I know this sucks but we have to do it because we've had a determinism bug in the texture compiler for a long time and that's causing our texture manager to shit itself when it expects everything to be deterministic. Recompile all vmat_c Remove these generated.vtex_c - how did they even get past the .gitignore update stubble.vmat_c from merge