From 89945f711d1614769ee6bd36e4f010f4af463e0b Mon Sep 17 00:00:00 2001 From: baldurk Date: Fri, 28 Jul 2017 10:37:12 +0100 Subject: [PATCH] Switch to SVG topology diagrams * We need to custom paint the SVG at the right devicepixelratio because Qt seems to be busted at scaling up - nothing I can see causes the SVG to be rendered at higher than it's default resolution, so you end up with plain bilinear upscale. * Since we're doing custom palette swap anyway, it's not much harm to just render ourselves, as we already basically had a dependency on QtSvg - just need to add the include files to the dependencies. --- qrenderdoc/Code/Resources.h | 20 +++++----- qrenderdoc/Resources/resources.qrc | 20 +++++----- .../Resources/topologies/topo_linelist.png | Bin 716 -> 0 bytes .../Resources/topologies/topo_linelist.svg | 1 + .../topologies/topo_linelist_adj.png | Bin 1164 -> 0 bytes .../topologies/topo_linelist_adj.svg | 1 + .../Resources/topologies/topo_linestrip.png | Bin 930 -> 0 bytes .../Resources/topologies/topo_linestrip.svg | 1 + .../topologies/topo_linestrip_adj.png | Bin 1287 -> 0 bytes .../topologies/topo_linestrip_adj.svg | 1 + .../Resources/topologies/topo_patch.png | Bin 3677 -> 0 bytes .../Resources/topologies/topo_patch.svg | 1 + .../Resources/topologies/topo_pointlist.png | Bin 472 -> 0 bytes .../Resources/topologies/topo_pointlist.svg | 1 + .../Resources/topologies/topo_trilist.png | Bin 1679 -> 0 bytes .../Resources/topologies/topo_trilist.svg | 1 + .../Resources/topologies/topo_trilist_adj.png | Bin 3942 -> 0 bytes .../Resources/topologies/topo_trilist_adj.svg | 1 + .../Resources/topologies/topo_tristrip.png | Bin 2703 -> 0 bytes .../Resources/topologies/topo_tristrip.svg | 1 + .../topologies/topo_tristrip_adj.png | Bin 6428 -> 0 bytes .../topologies/topo_tristrip_adj.svg | 1 + .../PipelineState/D3D11PipelineStateViewer.ui | 2 +- .../PipelineState/D3D12PipelineStateViewer.ui | 2 +- .../PipelineState/GLPipelineStateViewer.ui | 2 +- .../PipelineState/PipelineStateViewer.cpp | 35 ++++++++++++------ .../VulkanPipelineStateViewer.ui | 2 +- qrenderdoc/qrenderdoc_local.vcxproj | 10 ++--- 28 files changed, 62 insertions(+), 41 deletions(-) delete mode 100644 qrenderdoc/Resources/topologies/topo_linelist.png create mode 100644 qrenderdoc/Resources/topologies/topo_linelist.svg delete mode 100644 qrenderdoc/Resources/topologies/topo_linelist_adj.png create mode 100644 qrenderdoc/Resources/topologies/topo_linelist_adj.svg delete mode 100644 qrenderdoc/Resources/topologies/topo_linestrip.png create mode 100644 qrenderdoc/Resources/topologies/topo_linestrip.svg delete mode 100644 qrenderdoc/Resources/topologies/topo_linestrip_adj.png create mode 100644 qrenderdoc/Resources/topologies/topo_linestrip_adj.svg delete mode 100644 qrenderdoc/Resources/topologies/topo_patch.png create mode 100644 qrenderdoc/Resources/topologies/topo_patch.svg delete mode 100644 qrenderdoc/Resources/topologies/topo_pointlist.png create mode 100644 qrenderdoc/Resources/topologies/topo_pointlist.svg delete mode 100644 qrenderdoc/Resources/topologies/topo_trilist.png create mode 100644 qrenderdoc/Resources/topologies/topo_trilist.svg delete mode 100644 qrenderdoc/Resources/topologies/topo_trilist_adj.png create mode 100644 qrenderdoc/Resources/topologies/topo_trilist_adj.svg delete mode 100644 qrenderdoc/Resources/topologies/topo_tristrip.png create mode 100644 qrenderdoc/Resources/topologies/topo_tristrip.svg delete mode 100644 qrenderdoc/Resources/topologies/topo_tristrip_adj.png create mode 100644 qrenderdoc/Resources/topologies/topo_tristrip_adj.svg diff --git a/qrenderdoc/Code/Resources.h b/qrenderdoc/Code/Resources.h index 422302355..8b193a286 100644 --- a/qrenderdoc/Code/Resources.h +++ b/qrenderdoc/Code/Resources.h @@ -76,16 +76,16 @@ RESOURCE_DEF(wireframe_mesh, "wireframe_mesh.png") \ RESOURCE_DEF(wrench, "wrench.png") \ RESOURCE_DEF(zoom, "zoom.png") \ - RESOURCE_DEF(topo_linelist, "topologies/topo_linelist.png") \ - RESOURCE_DEF(topo_linelist_adj, "topologies/topo_linelist_adj.png") \ - RESOURCE_DEF(topo_linestrip, "topologies/topo_linestrip.png") \ - RESOURCE_DEF(topo_linestrip_adj, "topologies/topo_linestrip_adj.png") \ - RESOURCE_DEF(topo_patch, "topologies/topo_patch.png") \ - RESOURCE_DEF(topo_pointlist, "topologies/topo_pointlist.png") \ - RESOURCE_DEF(topo_trilist, "topologies/topo_trilist.png") \ - RESOURCE_DEF(topo_trilist_adj, "topologies/topo_trilist_adj.png") \ - RESOURCE_DEF(topo_tristrip, "topologies/topo_tristrip.png") \ - RESOURCE_DEF(topo_tristrip_adj, "topologies/topo_tristrip_adj.png") \ + RESOURCE_DEF(topo_linelist, "topologies/topo_linelist.svg") \ + RESOURCE_DEF(topo_linelist_adj, "topologies/topo_linelist_adj.svg") \ + RESOURCE_DEF(topo_linestrip, "topologies/topo_linestrip.svg") \ + RESOURCE_DEF(topo_linestrip_adj, "topologies/topo_linestrip_adj.svg") \ + RESOURCE_DEF(topo_patch, "topologies/topo_patch.svg") \ + RESOURCE_DEF(topo_pointlist, "topologies/topo_pointlist.svg") \ + RESOURCE_DEF(topo_trilist, "topologies/topo_trilist.svg") \ + RESOURCE_DEF(topo_trilist_adj, "topologies/topo_trilist_adj.svg") \ + RESOURCE_DEF(topo_tristrip, "topologies/topo_tristrip.svg") \ + RESOURCE_DEF(topo_tristrip_adj, "topologies/topo_tristrip_adj.svg") \ RESOURCE_DEF(action, "action.png") \ RESOURCE_DEF(action_hover, "action_hover.png") diff --git a/qrenderdoc/Resources/resources.qrc b/qrenderdoc/Resources/resources.qrc index e5859ba83..5063fa540 100644 --- a/qrenderdoc/Resources/resources.qrc +++ b/qrenderdoc/Resources/resources.qrc @@ -3,16 +3,16 @@ glsl.xml hlsl.xml logo.svg - topologies/topo_linelist.png - topologies/topo_linelist_adj.png - topologies/topo_linestrip.png - topologies/topo_linestrip_adj.png - topologies/topo_patch.png - topologies/topo_pointlist.png - topologies/topo_trilist.png - topologies/topo_trilist_adj.png - topologies/topo_tristrip.png - topologies/topo_tristrip_adj.png + topologies/topo_linelist.svg + topologies/topo_linelist_adj.svg + topologies/topo_linestrip.svg + topologies/topo_linestrip_adj.svg + topologies/topo_patch.svg + topologies/topo_pointlist.svg + topologies/topo_trilist.svg + topologies/topo_trilist_adj.svg + topologies/topo_tristrip.svg + topologies/topo_tristrip_adj.svg action.png action@2x.png action_hover.png diff --git a/qrenderdoc/Resources/topologies/topo_linelist.png b/qrenderdoc/Resources/topologies/topo_linelist.png deleted file mode 100644 index a9078db14f06e591dc74d52bacbeb7e0caacb6a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 716 zcmeAS@N?(olHy`uVBq!ia0vp^EkJC^!3HG13pDcpDaPU;cPEB*=VV?2IV|apzK#qG z8~eHcB(eheoCO|{#S9F5he4R}c>anMprBNVYeY$Kep*R+Vo@qXKw@TIiJqTph(ejM zo~fRpfx(xeg$xW#)}AhoAr*0N=Pb+)3uHLDe?vkvexUlcsYcKK zbpEByxAskb{$$Ps{S&U1t>1I(B97Hf(X$bMGMkazPI>zi?aB=gaxKlD%a$^5kwqx6jV|6kcCCeJA8t zg@4Jyw)f|N3TD1deS1mb@2UBA-ay&QXZBgS?Kl2@&wZal+^HJ%n$(_O3h@HdZ%)2` zYz6-(R!gn&rTfK9o%Si{efHUQF6R?#T*`^`>> zr)Yils5+V5T$5Py`LXq*YcqZKDf~NlWdHi@c9Jgp6k^^S{uuAu7QJaF(6BpG^i#7X zKd}}{%3t^(xX$f__>up0Ul;nxzsqT&>kBgM diff --git a/qrenderdoc/Resources/topologies/topo_linelist_adj.png b/qrenderdoc/Resources/topologies/topo_linelist_adj.png deleted file mode 100644 index e88c035112c9554f4d2692c0a5e1369665859cfa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1164 zcmeAS@N?(olHy`uVBq!ia0vp^8-O^5gAGWYGqhh0q!^2X+?^QKos)S9a~60+7BevL9R^{>7BVm}|Mqlo45^5Fdslx=Z=uZbkJ2oT0w5G9;NmEd+m)fl(WJp)<|Du= z?I@DdrNFT$LD?XuNkM{%wXyg8Z<%!K;(70j-@m&%=X~Gy?BDO^RbNWK|NPBQ+y8a@ z(|sqYcxIM`yq#6olVZnf6;rzYRrpo8eH_Vlx;Mg0cfNAI`h1mqsQ&7p8UEZ7kNiUS zuJ{%9b#vEVwyzssxm-1x>A&`J=;pM|+h^q4eO=ncyG7^OpD#&cho>?*HByRF~CF4nZUd{dD*y?6Dku&D=Xq>kSFeDdY-lLaRP zDpEhivwhAyY_Tkvc}d)Ellf{HCWr4{Fera^{(h>_{3w&Zj#t;(&;M`s96}uhNsy1^I9-x?ag_Q4?WrMdfKkcczzU5?i|g} zK3PhiSGs`u*LHh5ne6*zb@pcoSsn=?*O;6?UNd^XNO0)5^E4J-FuRLP1{{B2T+|p!z z)IW=D$K>A&-Cg08x9{hbq}2CMj!rzgT0){UIY$)P&_^KaFBUU{_W z%l*|s@f=BZTO+1TPTqFq*=+yj3bv`=I||PnTRrm<&`&kzZ-Qg!&ap4H>9eQL%U3l# z@^jwiv)<>oUy7)zyO#4!?DN^>Kvg@w)cj|aIwNUxy2x(rtosU??=69WeCN`WPK`9C z4eFlN{WF06^VFDie!_`)DsOF*fC=T?yq!lm+nn1DEcxCs(_i|Sp{#VncU_?8pb2sM z2RTDv^jwZy)v=Ym&FsL1^8b^5nsjx)&S|*fHrxNTSN^`ATNG-4bpZqDB9EB6U#i{K z8O>Ao#7qRLvUWZBns0{xrL2cR=fA!@?g0$`-yeMxeCF=Twd=KtpK8N?x(1jfLFh_k a^lx6NX$oCg0Y^b)4TGnvpUXO@geCy^A4OCE diff --git a/qrenderdoc/Resources/topologies/topo_linelist_adj.svg b/qrenderdoc/Resources/topologies/topo_linelist_adj.svg new file mode 100644 index 000000000..19cce3556 --- /dev/null +++ b/qrenderdoc/Resources/topologies/topo_linelist_adj.svg @@ -0,0 +1 @@ + diff --git a/qrenderdoc/Resources/topologies/topo_linestrip.png b/qrenderdoc/Resources/topologies/topo_linestrip.png deleted file mode 100644 index 08dad1f0ad72dae0b7caa73101f521356597b1a9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 930 zcmV;T16}-yP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0009KNkl%jpOUiit=#{2If^0VtCGVq4Z>F59t=N7 zhG#i~q2#L;!ta)+e(h=%V(1RfX{M=gvjy}HRr1u274#>N&W*k zcD|HrBt(~Ad%kMn44c6?egeBl%0AnyO^7Ui2>GgHvt(D827`2h*M4svRsK-&RR>!< zyS^jM+G?g>izt6c`Klsq@h6+Lf0;g3<}QC|`Kp249cR?Xo3+`2zlt1KrMZ;hZ{yBw^`^2eC32pH_P zyeZf6LPvB}{#f&c!&ZJ>vekDzSQq7wIbSFYc1>~u#qqLhmMwqm`NBwp-IDAU`(T;! zoi7khoH(=YbBkZ5eCG>-i!)sB@B4|WMay@-AaV}2Ncqke#6_8NuzAaOz97!a$1>+& z^OWy=K``HUORl|>x zXFk)z!TceN8XyppMSzH1^q z$>n@O9F%-zPzi(Wk*WMolFuKUF9^OO=&StSTd^pfO3LRNf%65yi4@1k(gxcpDgS_U zz5v)TI7agIge7uRI$sc6yeWB$cRpi`F~%5UhRMpxAL2BJk)icAWB>pF07*qoM6N<$ Ef}Jz7$p8QV diff --git a/qrenderdoc/Resources/topologies/topo_linestrip.svg b/qrenderdoc/Resources/topologies/topo_linestrip.svg new file mode 100644 index 000000000..758dda14e --- /dev/null +++ b/qrenderdoc/Resources/topologies/topo_linestrip.svg @@ -0,0 +1 @@ + diff --git a/qrenderdoc/Resources/topologies/topo_linestrip_adj.png b/qrenderdoc/Resources/topologies/topo_linestrip_adj.png deleted file mode 100644 index 11978f5088049917262bcb8f46f8fa2a0590406e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1287 zcmV+i1^D`jP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv000DbNkl2h{C=?2XLZMJ7 z6bc0iAt53vI*CR^Awr^1C=?R6LTE%JL?jx8L?fagQ7RM)f)FG`+#-nk-TUm>lYi{L z``ej0XU^=*_atxj%!v8lZ@+V!b7r<<7=~dOhG7_nVHk!nH8Z4Hu2@T2>u+!Gvrep# zE=Yf*qnxN2%cr|zw}aiEB%n}Nak-e2KkHPjjrppD<*;NbF*|?`YipF z2o$}NHuTD=7w$x?<&Qk$ix(ifq8>oy3R39+-iDhC(ZBScOOceO_^ac>Z6SOM+0#9mjGrrbs!mGN{Ea5Di!wZM(U2Er8T*}PBH(ip6F0`=(3DL| z+x^uJAMj;~?llHwl4AZMz%~NArbS`G#!NqE3n`P7w)=}RJTZnAz2#=niT#k+Zx|L$ ziuo&7p@+f}^#WJSMO6ubB7vJfN0ds#a~XNN#uHLi34y$Uo4*NaareZI_+6>0gg~C8 zn7^7qz&r$0X5w6gQIlf+BETXZ&t_!F4p02s8dsbITk|}~%md9a8RRjWlwlstpM#s4 z?BD1gp76KS6-R?EkpNi}@E7Kt8P4yP__skp@c?sGEo6{KpOj%9&EEu63OxAA;=SRC z?Fo+Ob0QDNCH~_#i8TVsmwKO%q<#pPC*P~=QqM~G`6_vj?8)%S`^s6&-(;9G;pJ-Y z6OZJZ@@XkItU$hyxWKdCC$Dk-miiwsXCsq*^ zOTQ%Yink{cUf)QC_qEnb{Hg#K^r9m1Wq5qRxx2DJ@S7`CtT!qR zzok=(hmyY_tz?JfVRFn|hgWt};(J2GZ>{(@2hHFAp;CX5ygw>Ywo@nsvuwIBF8ERM zcTns_@zYzW69TIxAM^(akLGVQ7>4jc4?~Z*Rtf@J2n2kjd*r$=YUi-q?iAdY@W>j6 z`O63INa2k)GJ~;9;-bv#nZPjy*C`>eM8e}n$^7MmH!|_IvU?N|x=|_&V{qsP%tNtF xGJnO0HcYZ8Rks$L#rzqDVHk#C7$eZ>`~^}o>K~875Ay&3002ovPDHLkV1m$ESw#Q< diff --git a/qrenderdoc/Resources/topologies/topo_linestrip_adj.svg b/qrenderdoc/Resources/topologies/topo_linestrip_adj.svg new file mode 100644 index 000000000..25436e529 --- /dev/null +++ b/qrenderdoc/Resources/topologies/topo_linestrip_adj.svg @@ -0,0 +1 @@ + diff --git a/qrenderdoc/Resources/topologies/topo_patch.png b/qrenderdoc/Resources/topologies/topo_patch.png deleted file mode 100644 index 59cb92532e4adce8a0023e4d1472d8dda6bba6f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3677 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 diff --git a/qrenderdoc/Resources/topologies/topo_patch.svg b/qrenderdoc/Resources/topologies/topo_patch.svg new file mode 100644 index 000000000..53fb646e3 --- /dev/null +++ b/qrenderdoc/Resources/topologies/topo_patch.svg @@ -0,0 +1 @@ + diff --git a/qrenderdoc/Resources/topologies/topo_pointlist.png b/qrenderdoc/Resources/topologies/topo_pointlist.png deleted file mode 100644 index 9d69eb3e004408ba9bcdafad8f1c741e342e0212..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 472 zcmeAS@N?(olHy`uVBq!ia0vp^2|z5v!3HGfRqSd4QjEnx?oJHr&dIz4a#+$GeH|GX zHuiJ>Nn{1`ISV`@iy0XB4ude`@%$AjKtZVz*NBqf{Irtt#G+J&fW*wa5h zJyShH1A{L`3xUSEd%8G=WH`UQwm+*mK!UX(e7Ztj(}PQA4~7f8x#6x+$?P638#~wA zdv~c$`PNlTv+J+GRbPo_WR;*FI-qQd-{u?2U}a_aI?Rg9|Lj_5U512 z4V!-YX;F6MHT7E2UF-JW-nMty`SjlnDU;t#S2?*gbCyz@OLv5IOb_o-9ImJ{mJi-bHCQ+ z{JUgwwr|n-zdeO#7v2}JUiCOeUjA;t!xfj`rc1bezt1%-^`}RmrghGzzcR-wISzkF zKJo8V>0RqCubs)yFPx9j5nEq5kN@NROD204otf6Q=KD9DUvobPpZxyUH}<;qtm_{) zezbYtR`>X1(EXb!Vt;+4wwsul{NQhXuVZJnsqC8K7iN%88-$l>#J{_leQViO``sV` MPgg&ebxsLQ0FrLcQ2+n{ diff --git a/qrenderdoc/Resources/topologies/topo_pointlist.svg b/qrenderdoc/Resources/topologies/topo_pointlist.svg new file mode 100644 index 000000000..ff7bf0aca --- /dev/null +++ b/qrenderdoc/Resources/topologies/topo_pointlist.svg @@ -0,0 +1 @@ + diff --git a/qrenderdoc/Resources/topologies/topo_trilist.png b/qrenderdoc/Resources/topologies/topo_trilist.png deleted file mode 100644 index 7f9a647049c5d60dc0016ca4bb0f7b98b03cb1f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1679 zcmXw34LFlq9A8f#w@Y$Ul8=nKR<|}n2(v{#h72lPi7F&M^DE@2Z2E7 z`4T)yU@r$-z|tk)U+CFV33dyTNj@HkyPalAaIh%OJ-{7-sJg1F*}oVZ|9p(FD;a@U z{v2uxUQjAx!ATRUR|GYLa)^3zf6_rj(Eh`TRBNIa+2Vw~wS%?omMyBJ8wkYWAHJUM zWLnf{f0O^7@KrCqoJCa}fB)=)uBCPLM`W;{zyHFXHxIq@3tOl`wl{;%yRWbeGAbi1 zEF;AKNnmX^S|@(Ay4GOn0wWnIqjIBoVv&m=- zCdJ9Y!O*U#gJBUF8F`_ut`7h5-p3DF+aZWtnH$@0^x_H=6O*>y*RRoi_$FN@cloq) zY_(NAK(-3UacxSSlNC0T8_3f}Fpf&4O1PSnBU!V&?!>4>$RkBd@Xg8arm(Ou98*R= zaNxQ3F(w%kSyp`B=cyNrbNJc-phlrk!XrnH;H&k|rE91yU6wt($B!Q~UmhBL!wpPJ zMPP>I2tGwe~XJ<~oyIpFZ@v@1{IycWFvNlnCu%G~x zDlgN84hO8|LlVV*JZkLIs=VR8O+9PwSjZp=v3BC(!ovIQg6yKAqH;wyt4U|@3hWn4 z;HMgExK)a?gc6sXovqpGI%_yy~=`CvdD^IjiPfxG0q^x;RYhig~{c>4lykkOSi4Sz)bmkAw9@?Fro*o#$o_THUkO#*nD=TZ9kdhao6D%k5 z2wGjSJn|>0AJ-VWX}WRnC24)?%pZ^(RZpJ0jcN;=*kn{h^QvlNL8+LTnPFtN(YXc2 zNaS2IdYX8DA|5K6vvdg!I6XZ< zx$TGP6ND~;>+Z*_dc1WGXZj5ciD>25h9ECg1{7iQqJ*ihUnS-K8I|Gp6rh67607dO z3f58v7}5L?6sszby{sB3Z7-`f)#LSZNF2#sh-=lwW#ppvu`1Apk#6(FsVfAC1 zSV_j2j<9w+t@~6eRZimN(`j~l>!?co2R+UEUX;PF3DZ8E#L2S*g-DM6$lf^uJ-bYEp4 diff --git a/qrenderdoc/Resources/topologies/topo_trilist.svg b/qrenderdoc/Resources/topologies/topo_trilist.svg new file mode 100644 index 000000000..d06c24f81 --- /dev/null +++ b/qrenderdoc/Resources/topologies/topo_trilist.svg @@ -0,0 +1 @@ + diff --git a/qrenderdoc/Resources/topologies/topo_trilist_adj.png b/qrenderdoc/Resources/topologies/topo_trilist_adj.png deleted file mode 100644 index 80a4b683877dbce0e3abb0884df81be00a696344..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3942 zcmZ`+c|4R|`^U)0GE*`r1}zd}tDew^8Q~!cWf>(S>paQU7(3a8WVBcw#K=BmD`c6W z#bc{6kv%g~%#5)nhKS$od4GSr|Gf9-b1&!I=bY=h&h@>%*L9MuEltHmj)?H_@rhqD zGrq>h#}9n+JrEWGo@sc~9^l0vaLx20Uo}mR12hD2hF1*v`09wF+b;Wn_I`h}>j8Xx zkav4Gf0tjmJJ5NAVB$cq@$)1EyWlWccXyFl@+bg%T! zMD4~aSB}V&pxIv}=6rIp|0sm|q(UDSo0!)s+)ydMt>UgGeK5RkhI{P}t2&UD@0iE! z`1|kGI@C`4cR^bGd0b7yjxX-Tb=*=opz8m+(CYG1sF*P{*jNhw$>=`B#I5b;fW_5& z4~gsRK`UhW8q{(JXqa0%DjWU`lD2vg4L10q!ye&mM8Ut$&faSYUc#=h!d5@qSbeOz z*?h(;g~DS-?V?oP@75ltXwhS+YNc^irKP17(|!#lm6crcQ<5q929e0|(a{jcwkq{Q zhYmSgd*5d};7mgAl0f2ji$T9yk8Sm@m5|9^-YnX);iVHlPjjUyD$nW2-(7xhmg<;f zO}e1~8>;6w+2YY|a#jcoZtw5zPTE<12OZuVs>BrG`ty|n)?Q_?C0(u@xu;1WiPHkD zZ`=q|lY>0qaXQx*Cj9WH-3|H;w&tH!uQ$GWWt&ucQk+17_RJ}|jn#X!L&e3Do4AI- z!A%*fE8eIA1g6@!hf(gko|c-LSK^R1Sm!WRXTJK=2bi`TF6B zf0~+hHhhl9{r>RbgGqp1V*qb)vdOL~%dGiFfiN3=X<+0{&bd35WQJ0M&qU+j#^;?c zbar+Qk|z)?l%Vm01TY(||7E~1=#*s3IRgU?jY=u!sNZWIw9RP*HF;xw!msG&QTrhV zccdox>W7n@ja-;MFB&5G)(*ZLoJ7_(`~3Oym#XS&DI84~|Ghh&yq=kr)oyZht0OJ1 z6%C%7YJsqGdhKG}U`&UmEE`=OcX4sYDUWQd#u7~~sD8(*^(%qUV?^mD4)E25fJvINQF=@_zvsK?M^O_4C;sb0QW&QsODAtbXU&l$yaj&3p$;w(2?r3JtbN z4H_-{A<0I&UKn~a-f#zXS(_-5g3Ax}^xQcHt*8y;4j;CghryV^^Jbx<1Vv3OSFx2! z-BG@)dHb-O+vG#PgfMw(4B>>y?%q79D{pVR4MwI%qY3E+1x&-xM>4T;)-+zFBj8%1 z{`zRD_qs2mtvTc3$|LxrThWkMHS!@4UTG>T zcdg}V$}fteA~u#4B&rTe{~HU2ih?yDte5(9#-Td&i&>muYmE}i}( zs-m)T>*G>};~bY8CEkmzd&_NYWX%X5m!TX2+U*BL;seYXg{OuHR0#&qn&Q*M`ZyAA z-Co_FQ=rEP(n%@XzUidvyW_HcZAWR_B`;nqv@q8t25ff@y>W|&Trf32s4tmnZMfkj`Ed= z+SyQ;{(Sa*70Ud+bN^PEC}E11@>Ag^RWM;np3G5n;|!Dp_|_Dg zk8EK}ucQ81UanO}bfv(s%@bT~U*#M>{B`tWWOrYmUg%T@KL)p(l9Iw~3!~{dY5R=- zF-WIR&CP3uQ3l7EsJ}>YKd;(>3!9sptrEmfEt}(jklji(CQsv^|X)E^=$V$94fmVJtMVehMJ{(}IwSxdwGt0wBDw@aDIb znB}UdUq3mvD$AsZ(Y4?zdMItyH?g{=+T{-zjlM7FcB9Iex|^(3w7oUJ~N`& zkrAasirYuO0p7Q7pYq(?oZQF6iAJAX`@mu13cH9%OQ%eGyV%!YKkBubH4hg|pux$X zoWR#*b$oBWQXOD2m*!~IhHtidrKO}a#-&s}BN-DP#NkbpEj(Cl}G#Xc!DO zqOx=d=N0h1`%#qUdR~Zyg~h(+*}w@SPqe2I_^wP5sQ#RbQg%2cloB|E`z^D5j$UC? zCUryo&sG44=?nBX&e=tAiHV7mrbKxP*Sj0WWaWoj=5hFI98K3x{t_;a+)Ji!;4&qk zN`xBq%=qBo*^ZagiGCaKM_`NG0uwqX5W^u`DG=wE5NqQSHE8ENc7qxX`yuCMwA8!p56Ovjms?9%}9pS zUUAR)q`%uE0GAQlBo7AtE#*(+X~V}d?{=J?*PBSV!3Wn($Sbi?8ZBqFO~yy!TCGJ% zaqgopasAfhTvancRqAbEZts7J4cN)O>Ov~UHX8ClNl#Lwx$d2pVv-&9B&Wj&#o>o% zi$vkbUPfl2p_`8GZ^4a9if|Gr?x+IUVSn08#L<;Q#rwBD2fet426HZ2ssW_`a4c<^2 zoivo_F_`6G@)mDN`d;RPe>1d;05Jxz=Ku3^LUJCF7uf&m&;4yeNUe>pxEi5dk7dg5_1}7J483NsPo1>6N%A^U4gQx82G08xglL(c+ zz`g{LNj5fr?-TtU2#3dY1kS*DfLURPHhj|vW!Nct9$4~mR#xzjju=oiZRh!j>{bgx z5ZJqa(}u~1FVO)8)xWA=Rzqz0kyS#VVlb?7g!kIqP}@t<;gG=td;6&E`{ngtFtZQ8+L~lN@96_h zOqlNdms!=-)nPx&Y9^NWkQZI{VCdRvy$8cYbREztE-ZB6eJV0NG!tFEaYO*v7JH0C zgpxzm$~p|*_KzN20r20CA3w%rWo1peecn?SLueChrdx$7L>FvU{7WzxU^oiKTJ%#apre2T0$iZ2$lO diff --git a/qrenderdoc/Resources/topologies/topo_trilist_adj.svg b/qrenderdoc/Resources/topologies/topo_trilist_adj.svg new file mode 100644 index 000000000..bb7410152 --- /dev/null +++ b/qrenderdoc/Resources/topologies/topo_trilist_adj.svg @@ -0,0 +1 @@ + diff --git a/qrenderdoc/Resources/topologies/topo_tristrip.png b/qrenderdoc/Resources/topologies/topo_tristrip.png deleted file mode 100644 index 39fd59a75b24318e3190c31fde8d2bf733eb304b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2703 zcmV;A3UKv_P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv000U8Nkl4Q-pf{Lwet**O+ePDXN-LqCVEbPwC<(xC;mrURc2|NFtFW>)s-SZ$+3?uGmb^Ac?QnYbKB0oQWaMr9@qSUadB~CcXv1b>e%G!)vLXr z_rZe)Vr*=zSYKa{|H39gdfn)hr})o2=RFpSrN6ki*!P94TD8i{x*M2GCLy2~{q9}7 zc(LzyR{2mboNIK-kNM9$$H&Es7q?HHI`w__Z)$21A#1Se1~+fs?EX;iz`%ewapFYr z)~#E8d-`!_oE$^Ho7_-cXR%%7Q=DX{7WFgFg?hO(oOnwpA7Y%!8vtJOLf6BBa^ zhk(90efo3}WPQjEAM)tYBPQM8+O=yvBk3I+926%^n82JHjHVaWey>poa5pd-jn678 zEAdzJF~|*=s|~ho+a`q4TV7u7ojZ3f9wpK`}+Fu9=bs~J4VwB*%I6UT#yCA(Tm++sy`xh2y_X?%Jk{!=|iD132l^= zlz7I{Yq#5nU{Q$$!qHn@UHvRJHufkE34H-Bkd%}(W|qHm=Z?<}g6EX9(cIkZ3P&%@ zm7!B~|NecvhfX5YtItjmnkzmJH^U=02sy8$g@S?tZ@3!JTv?!f-5?UZPN#D~cb%eh z=g#ebxnj84opv{9Y;5d|L~o!|M5`M}(W|>oQB_q{pUq~&UqN`RS+j;(H>jwncpIr+ zR2v9sX=!*w7gF>>ZGb{UAFIfLj!>lif9RM@nKFesH-NdZ6upog!Ts9W+VCDah*IxM z6e8?*il8GTHKVUvw~jhDfDVb&V@8fiof|}>x2C3M5QPZaZV>1QNzLZ8xj~>qBK3G_ zs}1DP%Y1DBtHXy6AI6fUk)53#cGp2`3JVLp(dtE7y^9tt!XvVgLocokzVk;6W8AxU zFAuIEdHM1smMaZf+`#2>b;zMN;0C1E26F0Ub`=>qLULvBO`A3m?*`Bzk?R=IcjqO2 z6$ThMo+V3`;1O9Up%+$>ksExALx^s`1(K7K#aFLhVR`b<+1Uwh zKwNDASy2hSq;`sw)XPk#X#f8Gy-H>5+}vE^+`!>*xRpAlef#!#R;*ZoM`WO+UgR#| z24CY)q7&!{!6Q_Z%GOVwJP~1aQtm7ymEPXoHYN3fPN)q)Hwmbum+smCIzlLWVM)rc ze*JpSkt0X&NLy?+n_FqUd-v}3WMyUHk+!Iz_u#>Uzfs#Mx_}e^d35N=s60lef|g|9OwwC zF;@%*=Ex{JsqO~QA<;rFtg0p^CaT^k(o!!qouWN^_B=Uu>=-_Db%AvQwcWsKwYs&^ z3+o0M85ww_4qEEPwZT{ZNF$V{rlwC}uIP5V@nNgWix)4%jqU-RW7Cb#$%C{mE}Ep^yn}iDoRB~#cQqgqRi~g&d%12UNqAf zBzE24%9SfwvuDrNyk8G<Ay(l|+ly(D>^x`W_$#R2+hK6jol8}@uI$@4HW5x`{?l|MEXB_2fw z4SM0-XDAf4Sw+5d=~AwoPZ&@N=$OcHFY+%48uUWv1Zsn5-GDN^+PFbcQPHoY^o_>? zo>~`eMl%|XZd&x(?e?gjT1S&!r_=cYg`~P~$%l0T8nQ$HSWTTgd9vhppLKP0wbG;) zj&uC@@jl&Bpj7W$6q@RFieO!U)Q&+Y&^%d?>ITp!r%f+9N0Q%mL!(|)3xOM`bNAV) zQ>VUwD+y`I5&@t#05^#AxbNP*+fJii=;*+6iXwe4GR=DNbBa>@k*Xlz0;G2gLa}=F zYQf=fMAS#$xpSwRR=uUArNYvsOLe0c+(7YF%rdQ&%291r4c+cptpjYvy)@|Ruy`R=B5dhwV>2x~rXmqx0*%EbENo&kzvyhsa8kQTd zpcht=V`5@{!XYa!b#-;?Y3dk+0^A@WAz{pSYPno4syZa0fa6C~gfVLa#`Fp(WaW1Q zSQpr}YZv|~x>>$_`H%X>jCBf7!u+qZr1-eOHJ=z-cG*bNxh z3$;P?Zm?m)2FdRoCLM#pAOyd8JtrrJ*f-!rOIcZ&kdl&uM}An=i?1;K*&oRg3Dg1| z9Ub`JvIV$7e0=tFX&A#hr{7;I2;a#!{Kl^oRJwf?mx{>U_;bHMM(ev002ov JPDHLkV1fm$9bEtb diff --git a/qrenderdoc/Resources/topologies/topo_tristrip.svg b/qrenderdoc/Resources/topologies/topo_tristrip.svg new file mode 100644 index 000000000..dbd597058 --- /dev/null +++ b/qrenderdoc/Resources/topologies/topo_tristrip.svg @@ -0,0 +1 @@ + diff --git a/qrenderdoc/Resources/topologies/topo_tristrip_adj.png b/qrenderdoc/Resources/topologies/topo_tristrip_adj.png deleted file mode 100644 index 7ebcf2297c8c2753b6c973f1117f59127d286ac5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6428 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 v{FZUh diff --git a/qrenderdoc/Windows/PipelineState/D3D11PipelineStateViewer.ui b/qrenderdoc/Windows/PipelineState/D3D11PipelineStateViewer.ui index f81d358d9..7bc87327a 100644 --- a/qrenderdoc/Windows/PipelineState/D3D11PipelineStateViewer.ui +++ b/qrenderdoc/Windows/PipelineState/D3D11PipelineStateViewer.ui @@ -368,7 +368,7 @@ - :/topologies/topo_trilist.png + :/topologies/topo_trilist.svg Qt::AlignCenter diff --git a/qrenderdoc/Windows/PipelineState/D3D12PipelineStateViewer.ui b/qrenderdoc/Windows/PipelineState/D3D12PipelineStateViewer.ui index 3fe97fa59..957526f7b 100644 --- a/qrenderdoc/Windows/PipelineState/D3D12PipelineStateViewer.ui +++ b/qrenderdoc/Windows/PipelineState/D3D12PipelineStateViewer.ui @@ -432,7 +432,7 @@ - :/topologies/topo_trilist.png + :/topologies/topo_trilist.svg Qt::AlignCenter diff --git a/qrenderdoc/Windows/PipelineState/GLPipelineStateViewer.ui b/qrenderdoc/Windows/PipelineState/GLPipelineStateViewer.ui index 9b4cfd758..055b6adb5 100644 --- a/qrenderdoc/Windows/PipelineState/GLPipelineStateViewer.ui +++ b/qrenderdoc/Windows/PipelineState/GLPipelineStateViewer.ui @@ -432,7 +432,7 @@ - :/topologies/topo_trilist.png + :/topologies/topo_trilist.svg Qt::AlignCenter diff --git a/qrenderdoc/Windows/PipelineState/PipelineStateViewer.cpp b/qrenderdoc/Windows/PipelineState/PipelineStateViewer.cpp index fd87ac705..9b9b77d1c 100644 --- a/qrenderdoc/Windows/PipelineState/PipelineStateViewer.cpp +++ b/qrenderdoc/Windows/PipelineState/PipelineStateViewer.cpp @@ -24,6 +24,8 @@ #include "PipelineStateViewer.h" #include +#include +#include #include #include "3rdparty/toolwindowmanager/ToolWindowManager.h" #include "Code/Resources.h" @@ -429,22 +431,30 @@ void PipelineStateViewer::setTopologyDiagram(QLabel *diagram, Topology topo) if(m_TopoPixmaps[idx].isNull()) { - QImage im; + QSvgRenderer svg; switch(topo) { - case Topology::PointList: im = Pixmaps::topo_pointlist(diagram).toImage(); break; - case Topology::LineList: im = Pixmaps::topo_linelist(diagram).toImage(); break; - case Topology::LineStrip: im = Pixmaps::topo_linestrip(diagram).toImage(); break; - case Topology::TriangleList: im = Pixmaps::topo_trilist(diagram).toImage(); break; - case Topology::TriangleStrip: im = Pixmaps::topo_tristrip(diagram).toImage(); break; - case Topology::LineList_Adj: im = Pixmaps::topo_linelist_adj(diagram).toImage(); break; - case Topology::LineStrip_Adj: im = Pixmaps::topo_linestrip_adj(diagram).toImage(); break; - case Topology::TriangleList_Adj: im = Pixmaps::topo_trilist_adj(diagram).toImage(); break; - case Topology::TriangleStrip_Adj: im = Pixmaps::topo_tristrip_adj(diagram).toImage(); break; - default: im = Pixmaps::topo_patch(diagram).toImage(); break; + case Topology::PointList: svg.load(lit(":/topologies/topo_pointlist.svg")); break; + case Topology::LineList: svg.load(lit(":/topologies/topo_linelist.svg")); break; + case Topology::LineStrip: svg.load(lit(":/topologies/topo_linestrip.svg")); break; + case Topology::TriangleList: svg.load(lit(":/topologies/topo_trilist.svg")); break; + case Topology::TriangleStrip: svg.load(lit(":/topologies/topo_tristrip.svg")); break; + case Topology::LineList_Adj: svg.load(lit(":/topologies/topo_linelist_adj.svg")); break; + case Topology::LineStrip_Adj: svg.load(lit(":/topologies/topo_linestrip_adj.svg")); break; + case Topology::TriangleList_Adj: svg.load(lit(":/topologies/topo_trilist_adj.svg")); break; + case Topology::TriangleStrip_Adj: svg.load(lit(":/topologies/topo_tristrip_adj.svg")); break; + default: svg.load(lit(":/topologies/topo_patch.svg")); break; } - im = im.convertToFormat(QImage::Format_ARGB32); + QRect rect = svg.viewBox(); + + QImage im(rect.size() * diagram->devicePixelRatio(), QImage::Format_ARGB32); + + im.fill(QColor(0, 0, 0, 0)); + + QPainter p(&im); + + svg.render(&p); // convert the colors - black maps to Text (foreground) and white maps to Base (background) QColor white = diagram->palette().color(QPalette::Active, QPalette::Base); @@ -480,6 +490,7 @@ void PipelineStateViewer::setTopologyDiagram(QLabel *diagram, Topology topo) } m_TopoPixmaps[idx] = QPixmap::fromImage(im); + m_TopoPixmaps[idx].setDevicePixelRatio(diagram->devicePixelRatioF()); } diagram->setPixmap(m_TopoPixmaps[idx]); diff --git a/qrenderdoc/Windows/PipelineState/VulkanPipelineStateViewer.ui b/qrenderdoc/Windows/PipelineState/VulkanPipelineStateViewer.ui index e2d884ac5..c80a05e1a 100644 --- a/qrenderdoc/Windows/PipelineState/VulkanPipelineStateViewer.ui +++ b/qrenderdoc/Windows/PipelineState/VulkanPipelineStateViewer.ui @@ -432,7 +432,7 @@ - :/topologies/topo_trilist.png + :/topologies/topo_trilist.svg Qt::AlignCenter diff --git a/qrenderdoc/qrenderdoc_local.vcxproj b/qrenderdoc/qrenderdoc_local.vcxproj index e349e624d..99104b144 100644 --- a/qrenderdoc/qrenderdoc_local.vcxproj +++ b/qrenderdoc/qrenderdoc_local.vcxproj @@ -88,9 +88,9 @@ ProgramDatabase true true - $(ProjectDir);$(IntDir)generated\;$(SolutionDir)\renderdoc\api\replay;3rdparty\python\include;3rdparty\pyside\include\PySide2;3rdparty\pyside\include\PySide2\QtCore;3rdparty\pyside\include\PySide2\QtGui;3rdparty\pyside\include\PySide2\QtWidgets;3rdparty\pyside\include\shiboken2;3rdparty\qt\$(Platform)\include;3rdparty\qt\$(Platform)\include\QtWidgets;3rdparty\qt\$(Platform)\include\QtGui;3rdparty\qt\$(Platform)\include\QtCore;%(AdditionalIncludeDirectories) + $(ProjectDir);$(IntDir)generated\;$(SolutionDir)\renderdoc\api\replay;3rdparty\python\include;3rdparty\pyside\include\PySide2;3rdparty\pyside\include\PySide2\QtCore;3rdparty\pyside\include\PySide2\QtGui;3rdparty\pyside\include\PySide2\QtWidgets;3rdparty\pyside\include\shiboken2;3rdparty\qt\$(Platform)\include;3rdparty\qt\$(Platform)\include\QtWidgets;3rdparty\qt\$(Platform)\include\QtGui;3rdparty\qt\$(Platform)\include\QtCore;3rdparty\qt\$(Platform)\include\QtSvg;%(AdditionalIncludeDirectories) /Zc:strictStrings /Zc:throwingNew %(AdditionalOptions) - _WINDOWS;UNICODE;WIN32;WIN64;RENDERDOC_PLATFORM_WIN32;PYSIDE2_ENABLED=1;SCINTILLA_QT=1;MAKING_LIBRARY=1;SCI_LEXER=1;QT_NO_CAST_FROM_ASCII;QT_NO_CAST_TO_ASCII;QT_WIDGETS_LIB;QT_GUI_LIB;QT_CORE_LIB;%(PreprocessorDefinitions) + _WINDOWS;UNICODE;WIN32;WIN64;RENDERDOC_PLATFORM_WIN32;PYSIDE2_ENABLED=1;SCINTILLA_QT=1;MAKING_LIBRARY=1;SCI_LEXER=1;QT_NO_CAST_FROM_ASCII;QT_NO_CAST_TO_ASCII;QT_WIDGETS_LIB;QT_GUI_LIB;QT_CORE_LIB;QT_SVG_LIB;%(PreprocessorDefinitions) Level4 true 4100;4127;4189;4714;4718;4996;%(DisableSpecificWarnings) @@ -100,7 +100,7 @@ Windows - shiboken2.lib;python36.lib;qtmain.lib;Qt5Widgets.lib;Qt5Gui.lib;Qt5Core.lib;shell32.lib + shiboken2.lib;python36.lib;qtmain.lib;Qt5Widgets.lib;Qt5Gui.lib;Qt5Core.lib;Qt5Svg.lib;shell32.lib 3rdparty\pyside\$(Platform);3rdparty\python\$(Platform);3rdparty\qt\$(Platform)\lib;%(AdditionalLibraryDirectories) true true @@ -117,7 +117,7 @@ 0 - _WINDOWS;UNICODE;WIN32;RENDERDOC_PLATFORM_WIN32;QT_WIDGETS_LIB;QT_GUI_LIB;QT_CORE_LIB;%(PreprocessorDefinitions) + _WINDOWS;UNICODE;WIN32;RENDERDOC_PLATFORM_WIN32;QT_WIDGETS_LIB;QT_GUI_LIB;QT_CORE_LIB;QT_SVG_LIB;%(PreprocessorDefinitions) $(SolutionDir)\renderdoc\api\replay @@ -148,7 +148,7 @@ MultiThreadedDebugDLL - shiboken2.lib;python36.lib;qtmaind.lib;Qt5Widgetsd.lib;Qt5Guid.lib;Qt5Cored.lib;shell32.lib + shiboken2.lib;python36.lib;qtmaind.lib;Qt5Widgetsd.lib;Qt5Guid.lib;Qt5Cored.lib;Qt5Svgd.lib;shell32.lib