Commit Graph

13353 Commits

Author SHA1 Message Date
baldurk cf4bc68806 Disable shortening/shadow warnings on android
* There are a lot of these issues in system or LLVM headers
2022-08-05 14:08:45 +01:00
baldurk be4f10557c Update vulkan header files to latest 2022-08-05 13:29:16 +01:00
baldurk 33ea305efd Show message in connection window for unsupported API capture
* This is helpful when the normal overlay is not available or visible such as in
  VR headsets
2022-08-05 13:03:32 +01:00
baldurk 69378f5c73 Fix warning on integer cast 2022-08-04 18:54:58 +01:00
baldurk 94d1ce3917 Cache text for GPUAddress values properly 2022-08-04 16:56:32 +01:00
baldurk ea6f8186fb Expose lower_bound function in rdcflatmap 2022-08-04 16:55:52 +01:00
baldurk 958f73cfec Treat GPU pointers as 8-byte unsigned integers for typing purposes 2022-08-04 16:55:42 +01:00
baldurk f1d513f313 Refactor reserved slots in opaque pointer variables to use helpers 2022-08-04 13:39:48 +01:00
Remi Palandri 04a18ac735 disable loadOp override if fastest level 2022-08-04 10:08:14 +01:00
baldurk c387234c7f Fix compile error 2022-08-03 22:37:58 +01:00
baldurk 234fdc886b Fix signed compile warning 2022-08-03 22:23:38 +01:00
baldurk 826ec45594 Add missing struct reference in docs 2022-08-03 22:23:11 +01:00
baldurk 41769fe232 Fix missing DOCUMENT() 2022-08-03 18:56:20 +01:00
baldurk e1cc50dd08 Match "arrayed" bindings correctly in D3D12 2022-08-03 17:44:11 +01:00
baldurk 19d8a064d6 Fix invalid DXIL for clamping D3D12 bindless feedback 2022-08-03 17:44:11 +01:00
baldurk ea35f0df0c texture formats that aren't matrices shouldn't be marked row major 2022-08-03 17:44:11 +01:00
baldurk db1f17476e Track variables being changed across steps/runs
* This allows us to more accurately display those that have been modified since
  the last step, when a source-level step covers multiple instruction-level
  steps.
* We also do our own sorting of source variables based on how recently they were
  updated. This applies in both directions, so stepping backwards and
  'reversing' a variable change will also count as a recent update.
2022-08-03 17:44:11 +01:00
baldurk 935fa49c98 Store source vars data per-instruction rather than per-state
* Since the source vars data doesn't change for a given instruction, we can pre-
  calculate it and save time on re-calculating per-state.
* Note callstack *can* change per-state on SPIR-V where the same instruction can
  be reached by different flow paths, so the callstack remains part of the per-
  state data.
2022-08-03 17:44:11 +01:00
Robin Liu b06df5dd47 Supress shadow warning for ggp platform. 2022-08-03 17:43:35 +01:00
Robin Liu 80935c1657 Fix compilation warnings for ggp platform.
This fix the warning about comparison of integers of different signs.
2022-08-03 17:43:35 +01:00
Remi Palandri 6b0c3a51ce remove unecessary log entries in vk_core 2022-08-03 10:32:32 +01:00
baldurk d59e0bd70a Only ignore files with no filename and no contents. Closes #2673 2022-08-03 10:30:22 +01:00
baldurk 423da6b377 Clamp invalid descriptor indices in D3D12 to avoid writing out of bounds 2022-08-01 20:40:03 +01:00
baldurk f78570dcb3 Fix some D3D12 debug warnings 2022-08-01 20:40:03 +01:00
baldurk 65581ca322 Subtract per-draw index byte offset from index buffer size 2022-08-01 20:40:03 +01:00
baldurk 50919f5cfa Fix wrong API being used for cloned child GL contexts 2022-08-01 20:40:02 +01:00
Jake Turner b1b17efb9c Support dummy Wrapped Metal objects for replay
Metal replay serialization uses dummy wrapped metal objects ie.

case MetalChunk::MTLLibrary_newFunctionWithName:
  return m_DummyReplayLibrary->Serialise_newFunctionWithName(ser, NULL, NULL);
case MetalChunk::MTLRenderCommandEncoder_setRenderPipelineState:
  return m_DummyReplayRenderCommandEncoder->Serialise_setRenderPipelineState(ser, NULL);
case MetalChunk::MTLBlitCommandEncoder_endEncoding:
  return m_DummyReplayBlitCommandEncoder->Serialise_endEncoding(ser);

Reuse the same constructor with NULL real metal object instead of making a new constructor
2022-08-01 12:35:59 +01:00
Jake Turner 32d4856a0c Metal-CPP: correct NS::View::setLayer parameter
Change parameter to be "CA::Layer*" instead of "void*"
2022-08-01 12:35:18 +01:00
Jake Turner 92fdfa097f Remove unused ObjC helper methods
This helper method is now implemented by Metal-CPP
void ObjC::Get_defaultLibraryData(bytebuf &buffer);
2022-08-01 12:35:18 +01:00
Jake Turner 4e3d43bb36 Use NS::Bundle* & NS::Data* API instead of helpers
Replaced call to ObjC::Get_defaultLibraryData() by using NS::Bundle* and NS::Data* methods directly from C++
2022-08-01 12:35:18 +01:00
Jake Turner 02a1ac8192 Metal-CPP: extend NS:Data* & NS::Bundle* methods
Add:
NS::String* NS::Bundle::pathForResource(const class String* pName, const class String* pExt) const;
NS::Data *NS::Data::dataWithContentsOfFile(const String* path);
const void* NS::Data::bytes() const;
2022-08-01 12:35:18 +01:00
Jake Turner fdb5aade87 Remove unused ObjC helper methods
These helper methods are now implemented by Metal-CPP

Deleted:
MTL::Texture *ObjC::Get_Texture(MTL::Drawable *drawable);
CA::MetalLayer *ObjC::Get_Layer(MTL::Drawable *drawable);
void ObjC::CAMetalLayer_Set_drawableSize(void *layerHandle, int w, int h);
void ObjC::CAMetalLayer_Set_device(void *layerHandle, MTL::Device *device);
void ObjC::CAMetalLayer_Set_pixelFormat(void *layerHandle, MTL::PixelFormat format);
CA::MetalDrawable *ObjC::CAMetalLayer_nextDrawable(void *layerHandle);
void CALayer_GetSize(void *layerHandle, int &width, int &height);
2022-08-01 12:35:18 +01:00
Jake Turner bb87da9dbd Use CA::MetalDrawable* API instead of ObjC helpers 2022-08-01 12:35:18 +01:00
Jake Turner e938d4eea2 Metal-CPP: extend CA::MetalLayer* methods
Added:
void setDevice(const MTL::Device *pDevice);
void setPixelFormat(const MTL::PixelFormat format);
void setDrawableSize(const CGSize size);
CA::MetalDrawable* nextDrawable();
CGFloat contentsScale() const;
CGRect bounds() const;
2022-08-01 12:35:18 +01:00
baldurk 44a1de01d4 Bump version to v1.22 2022-07-28 17:52:50 +01:00
baldurk 98a93408c6 Handle subpasses with unused color attachments in pixel history v1.21 2022-07-27 14:56:43 +01:00
baldurk a33eb5fcb1 Allow reinterpreting formats of constant blocks that have bytes backing
* Even without a true buffer, as long as we have access to the bag of bytes and
  a non-opaque layout we can allow reinterpreting.
2022-07-25 10:08:59 +01:00
baldurk 5d51b524c6 Fix interpreting and declaring buffer formats that include pointers 2022-07-25 10:08:59 +01:00
Jake Turner ce60dd40b1 Tweak to compile with Apple Clang v13.0
macos-11 Apple Clang does not support -Wno-unused-but-set-variable

To fix CI

error: unknown warning option '-Wno-unused-but-set-variable'; did you mean '-Wno-unused-const-variable'? [-Werror,-Wunknown-warning-option]
2022-07-22 18:45:45 +01:00
Jake Turner f6baad2a0f Update mac CI to use macos-11 instead of 10.15
To fix Mac CI

The macOS-10.15 environment is deprecated, consider switching to macos-11(macos-latest), macos-12 instead. For more details see https://github.com/actions/virtual-environments/issues/5583
2022-07-22 18:45:45 +01:00
Jake Turner 529ed4ffe8 Fix new compile errors in Metal EndFrameCapture
Enabling -Wshorten-64-to-32 PR overlapped with this code landing
2022-07-22 18:45:45 +01:00
baldurk 6e33222115 Fix missing documentation type declaration 2022-07-22 18:45:20 +01:00
baldurk c98b16fd8c Fix compile warnings 2022-07-22 18:16:09 +01:00
baldurk 0b187934de Track bytes written for hidden SO counters. Closes #2662
* The D3D11 spec is unclear but checking sources including D3D11On12 it looks
  like the defined behaviour for SO counters is to calculate the number of bytes
  written and divide that by the VB stride on draw.
* Old captures can't be updated to work with this because the stride is unknown,
  but new captures will work correctly as well as any data that is stream'd out
  mid-capture.
2022-07-22 16:10:59 +01:00
baldurk aafd0ec788 Fix a bug with variables in loop coming into existence multiple times 2022-07-22 16:10:59 +01:00
baldurk e6100167aa Don't track first pointer writes when we have debug info 2022-07-22 16:10:59 +01:00
baldurk a967805a24 Don't use StringFormat for SPIR-V GetRawName 2022-07-22 16:10:59 +01:00
baldurk fda5c4819a Scroll shader viewer to entry point file & line using debug info 2022-07-22 16:10:59 +01:00
baldurk c053912608 Add explicit DXIL shader encoding 2022-07-22 16:10:59 +01:00
Jake Turner ac719cecd8 Fix Clang 14 compile warning
Disable "-Wtautological-constant-out-of-range-compare" when compiling "3rdparty/compressonator/BC6_Encode_kernel.cpp"
2022-07-21 11:49:49 +01:00