mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-04 09:00:44 +00:00
69324f8e07
* The apply button used to be below the text box but now can be hard to see with the saved formats also in the way.
242 lines
13 KiB
XML
242 lines
13 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<ui version="4.0">
|
|
<class>BufferFormatSpecifier</class>
|
|
<widget class="QWidget" name="BufferFormatSpecifier">
|
|
<property name="geometry">
|
|
<rect>
|
|
<x>0</x>
|
|
<y>0</y>
|
|
<width>625</width>
|
|
<height>395</height>
|
|
</rect>
|
|
</property>
|
|
<property name="windowTitle">
|
|
<string>Buffer Format</string>
|
|
</property>
|
|
<layout class="QGridLayout" name="gridLayout">
|
|
<property name="leftMargin">
|
|
<number>2</number>
|
|
</property>
|
|
<property name="topMargin">
|
|
<number>2</number>
|
|
</property>
|
|
<property name="rightMargin">
|
|
<number>2</number>
|
|
</property>
|
|
<property name="bottomMargin">
|
|
<number>2</number>
|
|
</property>
|
|
<property name="horizontalSpacing">
|
|
<number>0</number>
|
|
</property>
|
|
<item row="0" column="0" colspan="2">
|
|
<widget class="QGroupBox" name="formatGroup">
|
|
<property name="sizePolicy">
|
|
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
|
<horstretch>0</horstretch>
|
|
<verstretch>0</verstretch>
|
|
</sizepolicy>
|
|
</property>
|
|
<property name="title">
|
|
<string>Format</string>
|
|
</property>
|
|
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
|
<property name="spacing">
|
|
<number>0</number>
|
|
</property>
|
|
<property name="leftMargin">
|
|
<number>0</number>
|
|
</property>
|
|
<property name="topMargin">
|
|
<number>0</number>
|
|
</property>
|
|
<property name="rightMargin">
|
|
<number>0</number>
|
|
</property>
|
|
<property name="bottomMargin">
|
|
<number>0</number>
|
|
</property>
|
|
<item>
|
|
<widget class="QTextBrowser" name="helpText">
|
|
<property name="html">
|
|
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
|
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
|
p, li { white-space: pre-wrap; }
|
|
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Exhaustive documentation can be found in the </span><a href="https://renderdoc.org/docs/how/how_buffer_format.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">online docs</span></a><span style=" font-size:8pt;">.</span></p>
|
|
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"><br /></p>
|
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Buffer format declarations are similar to HLSL or GLSL struct definitions with normal vector, matrix and base types (e.g. </span><span style=" font-family:'Courier New'; font-size:8pt;">float</span><span style=" font-size:8pt;">, </span><span style=" font-family:'Courier New'; font-size:8pt;">float4</span><span style=" font-size:8pt;"> or </span><span style=" font-family:'Courier New'; font-size:8pt;">vec4</span><span style=" font-size:8pt;">, etc). In many cases these can be copied and pasted from shader source.</span></p>
|
|
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"><br /></p>
|
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You can define and use structs. The buffer format is defined by all global variables. If there are no globals defined, the last struct defined will be used.</span></p>
|
|
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"><br /></p>
|
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Most types that can be declared in shaders can be used, including half, short, as well as the usual int, float. All of these can be matrices or arrays.</span></p>
|
|
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"><br /></p>
|
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Packing/padding rules can be specified with </span><span style=" font-family:'Courier New'; font-size:8pt;">#pack(rules)</span><span style=" font-size:8pt;">. Supported D3D rules: </span><span style=" font-family:'Courier New'; font-size:8pt;">cbuffer</span><span style=" font-size:8pt;">, </span><span style=" font-family:'Courier New'; font-size:8pt;">uav</span><span style=" font-size:8pt;">. Supported GL/VK rules: </span><span style=" font-family:'Courier New'; font-size:8pt;">std140</span><span style=" font-size:8pt;">, </span><span style=" font-family:'Courier New'; font-size:8pt;">std430</span><span style=" font-size:8pt;">, </span><span style=" font-family:'Courier New'; font-size:8pt;">scalar</span><span style=" font-size:8pt;">.</span></p>
|
|
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"><br /></p>
|
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Bitfields are supported using C syntax, enums can be defined but all enum values must have explicit decimal or hexadecimal numerical values.</span></p>
|
|
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"><br /></p>
|
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Annotations are supported for explicit layout, bitpacked types like R10G10B10A2, or alternate displays of values including RGB/hexadecimal/octal display. For a complete list see </span><a href="https://renderdoc.org/docs/how/how_buffer_format.html"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">the documentation linked above</span></a><span style=" font-size:8pt;">.</span></p></body></html></string>
|
|
</property>
|
|
<property name="textInteractionFlags">
|
|
<set>Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse|Qt::LinksAccessibleByMouse|Qt::LinksAccessibleByKeyboard</set>
|
|
</property>
|
|
<property name="openExternalLinks">
|
|
<bool>true</bool>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QWidget" name="savedContainer" native="true">
|
|
<layout class="QVBoxLayout" name="verticalLayout">
|
|
<property name="spacing">
|
|
<number>2</number>
|
|
</property>
|
|
<property name="leftMargin">
|
|
<number>2</number>
|
|
</property>
|
|
<property name="topMargin">
|
|
<number>2</number>
|
|
</property>
|
|
<property name="rightMargin">
|
|
<number>2</number>
|
|
</property>
|
|
<property name="bottomMargin">
|
|
<number>2</number>
|
|
</property>
|
|
<item>
|
|
<widget class="RDTreeWidget" name="savedList">
|
|
<property name="horizontalScrollBarPolicy">
|
|
<enum>Qt::ScrollBarAlwaysOff</enum>
|
|
</property>
|
|
<property name="sizeAdjustPolicy">
|
|
<enum>QAbstractScrollArea::AdjustIgnored</enum>
|
|
</property>
|
|
<property name="editTriggers">
|
|
<set>QAbstractItemView::AnyKeyPressed|QAbstractItemView::DoubleClicked|QAbstractItemView::EditKeyPressed|QAbstractItemView::SelectedClicked</set>
|
|
</property>
|
|
<property name="showDropIndicator" stdset="0">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="selectionMode">
|
|
<enum>QAbstractItemView::SingleSelection</enum>
|
|
</property>
|
|
<property name="selectionBehavior">
|
|
<enum>QAbstractItemView::SelectRows</enum>
|
|
</property>
|
|
<property name="indentation">
|
|
<number>0</number>
|
|
</property>
|
|
<property name="rootIsDecorated">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="itemsExpandable">
|
|
<bool>false</bool>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<layout class="QHBoxLayout" name="horizontalLayout_3">
|
|
<property name="spacing">
|
|
<number>2</number>
|
|
</property>
|
|
<property name="topMargin">
|
|
<number>0</number>
|
|
</property>
|
|
<item>
|
|
<widget class="QToolButton" name="showHelp">
|
|
<property name="toolTip">
|
|
<string>Show buffer definition help</string>
|
|
</property>
|
|
<property name="icon">
|
|
<iconset resource="../Resources/resources.qrc">
|
|
<normaloff>:/help.png</normaloff>:/help.png</iconset>
|
|
</property>
|
|
<property name="checkable">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="autoRaise">
|
|
<bool>true</bool>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<spacer name="horizontalSpacer_2">
|
|
<property name="orientation">
|
|
<enum>Qt::Horizontal</enum>
|
|
</property>
|
|
<property name="sizeType">
|
|
<enum>QSizePolicy::Expanding</enum>
|
|
</property>
|
|
<property name="sizeHint" stdset="0">
|
|
<size>
|
|
<width>0</width>
|
|
<height>0</height>
|
|
</size>
|
|
</property>
|
|
</spacer>
|
|
</item>
|
|
<item>
|
|
<widget class="QToolButton" name="delDef">
|
|
<property name="toolTip">
|
|
<string>Delete selected structure definition</string>
|
|
</property>
|
|
<property name="icon">
|
|
<iconset resource="../Resources/resources.qrc">
|
|
<normaloff>:/del.png</normaloff>:/del.png</iconset>
|
|
</property>
|
|
<property name="autoRaise">
|
|
<bool>true</bool>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QToolButton" name="saveDef">
|
|
<property name="toolTip">
|
|
<string>Update selected with current structure definition</string>
|
|
</property>
|
|
<property name="icon">
|
|
<iconset resource="../Resources/resources.qrc">
|
|
<normaloff>:/save.png</normaloff>:/save.png</iconset>
|
|
</property>
|
|
<property name="autoRaise">
|
|
<bool>true</bool>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QToolButton" name="loadDef">
|
|
<property name="toolTip">
|
|
<string>Load selected structure definition</string>
|
|
</property>
|
|
<property name="icon">
|
|
<iconset resource="../Resources/resources.qrc">
|
|
<normaloff>:/action_hover.png</normaloff>:/action_hover.png</iconset>
|
|
</property>
|
|
<property name="autoRaise">
|
|
<bool>true</bool>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
<customwidgets>
|
|
<customwidget>
|
|
<class>RDTreeWidget</class>
|
|
<extends>QTreeView</extends>
|
|
<header>Widgets/Extended/RDTreeWidget.h</header>
|
|
</customwidget>
|
|
</customwidgets>
|
|
<resources>
|
|
<include location="../Resources/resources.qrc"/>
|
|
</resources>
|
|
<connections/>
|
|
</ui>
|