Compare commits

..

19 Commits

Author SHA1 Message Date
Ivan Avdeev
2f30db6a52 update gold images, remove prev frame leaks
Follows commit b53e7b1d in main xash3d-fwgs repo.
2025-03-04 12:19:43 -05:00
Ivan Avdeev
b857a04c4a update rendering cvars and gold images accordingly 2025-02-10 13:17:15 -05:00
Ivan Avdeev
c70b78a347 update glitched gold images 2025-02-10 12:44:54 -05:00
Ivan Avdeev
72facfb61e explicitly use xash dir for libraries path 2025-02-10 12:44:28 -05:00
Ivan Avdeev
8c3aa04318 update gold images for latest denoiser
NOTE that this gold is not fully correct itself. It has following
issues:
- indirect channel is incorrect
- missing indirect diffuse
- missing specular fresnel

See https://github.com/w23/xash3d-fwgs/issues/759

Committing it as a new gold for the sole reason of detecting changes
compared to current vulkan branch state. More correct gold will be
submitted when the issues above are fixed.

Also, changes rendertest script to use the new denoiser, and remove some
extra text messages things from the frame.
2025-02-06 14:05:01 -05:00
Ivan Avdeev
32acc7d835 write engine logs, and also json report
also, RADV_PERFTEST=rt is no longer needed, mesa enables rt by default
now
2025-02-06 14:03:30 -05:00
Ivan Avdeev
9d4dfa472a do not write flip gifs, it's handled by web stuff now 2025-02-06 14:02:48 -05:00
Ivan Avdeev
c7970f9952 improve status reporting 2025-02-06 14:00:08 -05:00
Ivan Avdeev
6e31a068ee use magick instead of legacy convert 2025-02-06 13:59:02 -05:00
Ivan Avdeev
6995a4cc46 force RGB components for all images in imagecompare
Imagemagick produces 1-bit grayscale pngs for fully black pictures. This
makes imagecompare unhappy. Enforce the 3-component RGB type for
consistency.
2025-02-06 13:55:58 -05:00
Ivan Avdeev
ceae5141c1 update stb_image.h 2025-02-06 13:55:38 -05:00
3d86ab2697 Merge pull request 'some fixes' (#17) from NightFox/HLRTest:master into master
Reviewed-on: #17
2024-12-18 03:44:24 +01:00
20d02c28e4 add focus for the selected comparison in the list; fix light theme 2024-12-18 01:03:24 +03:00
6ad2f816df fix vertical padding issue (last-child bottom padding) 2024-02-16 14:11:15 +03:00
697978420e Merge pull request 'fix #9' (#15) from NightFox/HLRTest:master into master
Reviewed-on: #15
2024-02-16 01:30:17 +01:00
2f4cf5c3be title for filter 2024-02-16 02:40:39 +03:00
3da9283b42 bonus ALT+F for focus at filter input 2024-02-16 02:38:37 +03:00
a25dee6640 fix #9 2024-02-16 02:27:50 +03:00
25faf8b0e1 new design for rendertest (#8)
Что сделано:
* Удалёны gif, тесты заметно ускорились из-за этого, даже не смотря что делаются png из tga форсировано теперь.
* Добавлены темы, но светлой уделялось мало внимания. С костылём на автотёмную тему не знаю как будет тёмная тема работать, не проверял.
* Изменён дизайн, теперь таблица-список картинок вынесена в отдельную боковую панель.
* Появились разные режимы и настройки (лень перечислять там и так всё видно).
* Исправлена ошибка сортировки которая проявлялась на chrome-подобных браузерах.
* Исправлена ошибка с ориентацией картинок (поймал у себя что они оказались перевёрнутые).
* Произошла некоторая реорганизация кодовой базы, некоторые функции были расширены, а что-то исправлено по мелочи.

Reviewed-on: #8
Co-authored-by: NightFox <nightfox@dev.null>
Co-committed-by: NightFox <nightfox@dev.null>
2024-02-15 23:35:40 +01:00
239 changed files with 1193 additions and 756 deletions

2
.gitattributes vendored
View File

@@ -1,3 +1,5 @@
*.sav filter=lfs diff=lfs merge=lfs -text *.sav filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text *.bsp filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text *.png filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.woff2 filter=lfs diff=lfs merge=lfs -text

View File

@@ -4,12 +4,8 @@
} }
@font-face { @font-face {
font-family: "OpenMojiDemoFont"; font-family: "OpenMojiDemoFont";
src: url("./fonts/OpenMoji/OpenMoji-color-colr1_svg.ttf"); src: url("./fonts/OpenMoji/OpenMoji-color-colr1_svg.woff2") format("woff2");
} }
/*@font-face {
font-family: "OpenMojiDemoFont";
src: url("OpenMoji-color-colr1_svg.woff2") format("woff2");
}*/
@font-face { @font-face {
font-family: "Twemoji Mozilla Built"; font-family: "Twemoji Mozilla Built";
src: url("./fonts/Mozilla/Twemoji.Mozilla.ttf"); src: url("./fonts/Mozilla/Twemoji.Mozilla.ttf");
@@ -28,21 +24,53 @@ html, body {
*, *:before, *:after { *, *:before, *:after {
box-sizing: inherit; box-sizing: inherit;
} }
h1,h2,h3,h4,h5 {
h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child {
margin-top: 0; margin-top: 0;
} }
.emoji { .emoji {
/*font-family: "Twemoji Mozilla Built", sans-serif;*/ font-family: "Noto Color Emoji", sans-serif;
/*font-family: "Noto Color Emoji", sans-serif;*/
font-family: "OpenMojiDemoFont", sans-serif; font-family: "OpenMojiDemoFont", sans-serif;
font-family: "Twemoji Mozilla Built", sans-serif;
font-size: 16px;
font-weight: 400; font-weight: 400;
font-style: normal; font-style: normal;
position: relative;
/*top: 1px; /* Twemoji */
} }
.emoji:after { .emoji:after {
font-variant-emoji: emoji; /* experimental and only in firefox :( */ font-variant-emoji: emoji; /* experimental feature and only in firefox :( */
content: '\FE0F'; /* fuck off, give me emoji // https://codepoints.net/U+FE0F */ content: '\FE0F'; /* fuck off, give me emoji // https://codepoints.net/U+FE0F */
} }
.emoji.Twemoji {
font-family: "Twemoji Mozilla Built", sans-serif;
font-size: 16px;
top: 2px;
}
.emoji.Noto {
font-family: "Noto Color Emoji", sans-serif;
font-size: 14px;
/*left: -1px;*/
top: 0px;
}
.emoji.OpenMoji {
font-family: "OpenMojiDemoFont", sans-serif;
font-size: 17px;
left: -2px;
top: 0px;
color: #888; /* fix outline */
}
.emoji.OpenMoji + .text-left-margin {
margin-left: 0;
}
.emoji.Noto + .text-left-margin {
margin-left: 5px;
}
.sidebar .emoji.Noto + .emoji.Noto {
margin-left: 4px;
}
footer { footer {
text-align: center; text-align: center;
@@ -133,17 +161,27 @@ table, tr, td, th {
display: grid; display: grid;
grid-gap: 2px; grid-gap: 2px;
align-items: stretch; align-items: stretch;
align-content: baseline;
}
.sidebar h2 {
font-size: 17px;
} }
#options { #options {
height: var(--options-height); height: var(--options-height);
} }
#table { } #table { }
#fail_images { #fail_images {
display: grid; display: grid;
justify-content: left;
}
#fail_images.center,
.grid-container.reversed #fail_images.center{
justify-content: center; justify-content: center;
} }
.grid-container.reversed #fail_images {
justify-content: right;
}
.panel { .panel {
display: block; display: block;
@@ -161,23 +199,27 @@ table, tr, td, th {
.content { .content {
grid-area: content; grid-area: content;
overflow: auto; overflow: auto;
justify-content: center; padding: 0px 10px;
} }
body.min { /* split feature */
body.mini { /* split feature */
width: 75%; margin: 0 auto; /* FIXME */ width: 75%; margin: 0 auto; /* FIXME */
} }
.min .sidebar { .mini .sidebar {
font-size: 12px; font-size: 12px;
/*font-weight: bold;*/
} }
.min .sidebar .panel > div { .mini .sidebar .panel > div {
line-height: 20px; line-height: 20px;
} }
.min .sidebar #options.panel { .mini .sidebar #options.panel {
height: var(--options-height-min); height: var(--options-height-min);
} }
@keyframes flash { @keyframes flash {
0% { 0% {
z-index: 1; z-index: 1;
@@ -244,11 +286,45 @@ body.min { /* split feature */
position: absolute; position: absolute;
animation: flash var(--animation-duration) infinite; animation: flash var(--animation-duration) infinite;
} }
.block-gold.anim_off { .block-gold.anim_off,
.block-gold.anim_force_off,
.all_diff .block-gold,
.split_compare .block-gold{
animation: none; animation: none;
} }
.split_compare .image-container {
cursor: col-resize;
}
.split_compare .block-gold {
overflow: hidden;
width: 50%;
position: absolute;
z-index: 10;
}
.split_compare .separator {
width: 1px;
height: 100%;
cursor: col-resize;
position: absolute;
top: 0;
left: 50%;
z-index: 10;
backdrop-filter: invert(1);
}
.split_compare .block-test:after {
left: auto;
right: 25px;
}
:root { :root {
--animation-duration: 0.7s; --animation-duration: 0.7s;
--height-image: calc((100vh - 800px) / 2); --height-image: calc((100vh - 800px) / 2);
@@ -259,23 +335,34 @@ body.min { /* split feature */
position: relative; position: relative;
} }
.meta-block h2 { .meta-block h3 {
/*display: none;*/ /*display: none;*/
font-family: monospace; font-family: monospace;
/*font-family: "Gill Sans", sans-serif;*/ /*font-family: "Gill Sans", sans-serif;*/
padding-top: 10px; padding-top: 10px;
margin-top: revert; margin-top: revert;
/*font-size: 150%;*/
font-size: 1.5em;
} }
.meta-block h2:before { .meta-block h3:before {
content: "🎯\FE0F"; /* for hedging her bets; see .emoji for details */ content: "🎯\FE0F"; /* for hedging her bets; see .emoji for details */
} }
#fail_images.padding .meta-block {
.text-link {
text-decoration: none;
}
#fail_images.vpadding .meta-block {
/*margin-block: 100vh;*/ /*margin-block: 100vh;*/
padding-top: calc(var(--height-image)); padding-top: calc(var(--height-image));
padding-bottom: 2px; padding-bottom: 2px;
/*padding-bottom: calc(50% - var(--height-image) );*/ /*padding-bottom: calc(50% - var(--height-image) );*/
} }
#fail_images.padding .meta-block h2, .meta-block:first-child h2 { #fail_images.vpadding .meta-block:last-child {
padding-top: calc(var(--height-image));
padding-bottom: calc(var(--height-image));
}
#fail_images.vpadding .meta-block h3, .meta-block:first-child h3 {
border-top: none; border-top: none;
} }
@@ -287,14 +374,27 @@ body.min { /* split feature */
/*z-index: 10;*/ /*z-index: 10;*/
} }
.block-diff.show_diff { .block-diff.show_diff,
.all_diff .block-diff {
display: block; display: block;
z-index: 2; z-index: 2;
} }
.diff_separate .block-diff {
display: block;
position: relative;
top: auto;
}
.image-container, img, .block { .image-container, img, .block {
max-width: 100%; max-width: 100%;
user-select: none;
}
/* TODO: исправить конфликт с image split compare */
.split_compare .image-container,
.split_compare img,
.split_compare .block {
max-width: unset;
} }
table { table {
@@ -322,14 +422,46 @@ th {
} }
th.table-sticky { th.table-sticky {
position: sticky; position: sticky;
top: 0; top: 2.7em; /* FIXME */
}
.mini th.table-sticky {
position: sticky;
top: 3.53em; /* FIXME */
} }
#options.sticky + #table th.table-sticky { #options.sticky + #table th.table-sticky {
top: calc(var(--options-height) + 0.07em); /* FIXME */ top: calc(var(--options-height) + 2.74em); /* FIXME */
} }
.min .sidebar #options.sticky + #table th.table-sticky { .mini .sidebar #options.sticky + #table th.table-sticky {
top: calc(var(--options-height-min) + 0.07em); /* FIXME */ top: calc(var(--options-height-min) + 3.50em); /* FIXME */
} }
.filter {
display: block;
padding: 10px 4px;
font-size: 16px;
font-weight: bold;
}
.filter * {
font-weight: normal;
}
.mini .filter {
font-size: 12px;
}
#options.sticky + #table .filter.sticky {
top: calc(var(--options-height) + 0.0em); /* FIXME */
}
.mini .sidebar #options.sticky + #table .filter.sticky {
top: calc(var(--options-height-min) + 0.0em); /* FIXME */
}
.filter input {
margin-left: 10px;
}
#options .filter.sticky {
}
input[type=range] { vertical-align: middle; } input[type=range] { vertical-align: middle; }
@@ -372,4 +504,15 @@ details[open] summary:before {
.green { .green {
color: #6b9a00; color: #6b9a00;
color: oklch(62.8% 0.25768330773615683 128.19); color: oklch(62.8% 0.25768330773615683 128.19);
} }
table th:nth-child(3) {
text-align: center;
}
table td:nth-child(3) { /* Δ, % // TODO: add class */
text-align: right;
font-family: Consolas, monospace;
}
table td:nth-child(4) { /* Passed // TODO: add class */
text-align: center;
}

View File

@@ -0,0 +1,50 @@
## License for the Code
Copyright 2016-2018, Mozilla Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
## License for the Visual Design
The Emoji art in the twe-svg.zip archive comes from [Twemoji](https://twitter.github.io/twemoji),
and is used and redistributed under the CC-BY-4.0 [license terms](https://github.com/twitter/twemoji#license)
offered by the Twemoji project.
### Creative Commons Attribution 4.0 International (CC BY 4.0)
https://creativecommons.org/licenses/by/4.0/legalcode
or for the human readable summary: https://creativecommons.org/licenses/by/4.0/
#### You are free to:
**Share** — copy and redistribute the material in any medium or format
**Adapt** — remix, transform, and build upon the material for any purpose, even commercially.
The licensor cannot revoke these freedoms as long as you follow the license terms.
#### Under the following terms:
**Attribution** — You must give appropriate credit, provide a link to the license,
and indicate if changes were made.
You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
**No additional restrictions** — You may not apply legal terms or **technological measures**
that legally restrict others from doing anything the license permits.
#### Notices:
You do not have to comply with the license for elements of the material in the public domain
or where your use is permitted by an applicable exception or limitation. No warranties are given.
The license may not give you all of the permissions necessary for your intended use.
For example, other rights such as publicity, privacy, or moral rights may limit how you use the material.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More