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
Jake Turner
240fcf3373
Disable -Wshadow & -Wshorten-64-to-32 for ihv/arm
...
Error triggers in 3rdParty code ie.
renderdoc/driver/ihv/arm/official/lizard/include/lizard/lizard_counter.hpp:66:5: error: declaration shadows a variable in namespace 'lizard' [-Werror,-Wshadow]
2022-07-21 11:49:49 +01:00
Jake Turner
cb2e4f1253
Fix "-Wshorten-64-to-32" errors in Apple code
...
Also rename AndroidCallstack -> AppleCallstack in apple_callstack.cpp
2022-07-21 11:49:49 +01:00
Jake Turner
9ab43e6c5a
Fix "-Wshorten-64-to-32" errors in socket APIs
...
socket APIs take an int for the socket file descriptor
send() and recv() return ssize_t not int
bind() takes "socklen_t" for the length of the sockaddr structure
2022-07-21 11:49:49 +01:00
Jake Turner
8c37978212
Fix "-Wshorten-64-to-32" error with ftell() use
...
ftell() returns a long not an int
2022-07-21 11:49:49 +01:00
Jake Turner
fb04266122
Disable Clang "-Wshorten-64-to-32" for files
...
3rdParty source files and some renderdoc files which include 3rdparty header files
Disable "-Wshorten-64-to-32" for the whole of qrenderdoc render_python.cxx triggers the warning
2022-07-21 11:49:49 +01:00
Jake Turner
0d02425a87
Enable Clang warning "-Wshorten-64-to-32"
2022-07-21 11:49:49 +01:00
Jake Turner
955695d948
Fix "-Wshadow" errors in Apple code
...
WrappedMTLDevice CaptureCmdBufCommit() & CaptureCmdBufEnqueue() rename parameter "record" to "cbRecord"
2022-07-21 11:49:49 +01:00
Jake Turner
062bc2b470
Fix "-Wshadow" error on "read" variable
2022-07-21 11:49:49 +01:00
Jake Turner
1622667bf8
Disable Clang "-Wshadow" for specific files
...
3rdParty source files and some renderdoc files which include 3rdparty header files
Disable "-Wshadow" for the whole of qrenderdoc render_python.cxx triggers the warning
2022-07-21 11:49:49 +01:00
Jake Turner
d7f286fb7d
Enable Clang warning "-Wshadow"
2022-07-21 11:49:49 +01:00
Jake Turner
97efa7cf04
Capture support for the presented MTLDrawable
...
Generate the capture thumbnail image from the presented `MTLTexture`
Serialize the capture `PresentedImage` ID in the `CaptureEnd` chunk.
2022-07-21 10:32:32 +01:00
Jake Turner
9e8be2400f
Deleted ObjC::CAMetalLayer_Set_framebufferOnly
...
Use the metal-cpp implementation instead of the helper version
2022-07-21 10:32:32 +01:00
Jake Turner
8a0af20c1e
metal-cpp : add CA::MetalLayer::setFramebufferOnly
...
Minor code formatting tidy on a couple of previous changes to better match the surrounding code style
2022-07-21 10:32:32 +01:00
Nicola Cerone
43462ea3c9
Fix arcball navigation by updating the basis matrix.
2022-07-20 10:38:38 +01:00
baldurk
3b00cf247e
Fix crash when structured exporting on D3D
2022-07-19 10:11:31 +01:00